From 1c55a832ef8c153ea2a5d3a61c762259a745d367 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期五, 01 四月 2022 13:18:41 +0800
Subject: [PATCH] #

---
 src/main/webapp/views/pda/stockIn.html                         |   10 
 src/main/java/com/zy/asrs/utils/VersionUtils.java              |  202 ++++++++++----------
 src/main/java/com/zy/asrs/entity/OrderDetl.java                |   24 ++
 src/main/java/com/zy/asrs/controller/LocDetlController.java    |   23 +-
 src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java    |    4 
 src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java |   15 
 src/main/webapp/views/pda/comb.html                            |   10 
 /dev/null                                                      |  152 ---------------
 src/main/java/com/zy/asrs/controller/MatCodeController.java    |    2 
 src/main/java/com/zy/asrs/entity/WaitPakin.java                |   23 ++
 src/main/java/com/zy/asrs/entity/LocDetl.java                  |   23 ++
 src/main/webapp/views/adjDetl/adjDetl_detail.html              |    8 
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java    |   14 
 src/main/java/com/zy/asrs/entity/WrkDetl.java                  |   23 ++
 src/main/webapp/static/js/order/order.js                       |    2 
 src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java  |   19 -
 src/main/java/com/zy/asrs/controller/MatController.java        |   14 +
 17 files changed, 259 insertions(+), 309 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/LocDetlController.java b/src/main/java/com/zy/asrs/controller/LocDetlController.java
index 9b722b2..34b0ba9 100644
--- a/src/main/java/com/zy/asrs/controller/LocDetlController.java
+++ b/src/main/java/com/zy/asrs/controller/LocDetlController.java
@@ -13,11 +13,10 @@
 import com.core.common.DateUtils;
 import com.core.common.R;
 import com.zy.asrs.entity.LocDetl;
-import com.zy.asrs.entity.MatCode;
+import com.zy.asrs.entity.Mat;
 import com.zy.asrs.mapper.LocDetlMapper;
 import com.zy.asrs.service.LocDetlService;
-import com.zy.asrs.service.MatCodeService;
-import com.zy.asrs.utils.VersionUtils;
+import com.zy.asrs.service.MatService;
 import com.zy.common.web.BaseController;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
@@ -34,6 +33,8 @@
     private LocDetlService locDetlService;
     @Autowired
     private LocDetlMapper locDetlMapper;
+    @Autowired
+    private MatService matService;
 
     @RequestMapping(value = "/locDetl/update")
     public R update1() {
@@ -188,10 +189,6 @@
         return R.ok();
     }
 
-
-    @Autowired
-    private MatCodeService matCodeService;
-
     @RequestMapping(value = "/locDetl/statis/auth")
     @ManagerAuth
     public R statis(@RequestParam(defaultValue = "1")Integer curr,
@@ -199,9 +196,9 @@
                     @RequestParam Map<String, Object> param) {
         Page<LocDetl> stockStatis = locDetlService.getStockStatis(toPage(curr, limit, param, LocDetl.class));
         for (LocDetl locDetl : stockStatis.getRecords()) {
-            MatCode matCode = matCodeService.selectById(locDetl.getMatnr());
-            if (matCode != null) {
-                VersionUtils.setLocDetl(locDetl, matCode);
+            Mat mat = matService.selectByMatnr(locDetl.getMatnr());
+            if (mat != null) {
+                locDetl.sync(mat);
             }
         }
         return R.ok().add(stockStatis);
@@ -215,9 +212,9 @@
     public void statisExport(HttpServletResponse response) throws IOException {
         List<LocDetl> excel = LocDetlMapper.getStockStatisExcel();
         for (LocDetl locDetl : excel) {
-            MatCode matCode = matCodeService.selectById(locDetl.getMatnr());
-            if (matCode != null) {
-                VersionUtils.setLocDetl(locDetl, matCode);
+            Mat mat = matService.selectByMatnr(locDetl.getMatnr());
+            if (mat != null) {
+                locDetl.sync(mat);
             }
         }
         response.setContentType("application/vnd.ms-excel");
diff --git a/src/main/java/com/zy/asrs/controller/MatCodeController.java b/src/main/java/com/zy/asrs/controller/MatCodeController.java
index 5c3823d..956e0fe 100644
--- a/src/main/java/com/zy/asrs/controller/MatCodeController.java
+++ b/src/main/java/com/zy/asrs/controller/MatCodeController.java
@@ -71,7 +71,7 @@
             return R.ok();
         }
         OrderDetl orderDetl = new OrderDetl();
-        VersionUtils.setOrderDetl(orderDetl, matCode);
+//        VersionUtils.setOrderDetl(orderDetl, matCode);
         orderDetl.setAnfme(0.0D);
         return R.ok().add(orderDetl);
     }
diff --git a/src/main/java/com/zy/asrs/controller/MatController.java b/src/main/java/com/zy/asrs/controller/MatController.java
index c8ef714..8616858 100644
--- a/src/main/java/com/zy/asrs/controller/MatController.java
+++ b/src/main/java/com/zy/asrs/controller/MatController.java
@@ -12,6 +12,7 @@
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.Mat;
 import com.zy.asrs.entity.MatPrint;
+import com.zy.asrs.entity.OrderDetl;
 import com.zy.asrs.entity.result.KeyValueVo;
 import com.zy.asrs.service.MatService;
 import com.zy.asrs.utils.MatExcelListener;
@@ -194,6 +195,19 @@
         return R.ok();
     }
 
+    @RequestMapping(value = "/mat/covert/{id}/auth")
+    @ManagerAuth
+    public R covert(@PathVariable("id") String id) {
+        Mat mat = matService.selectByMatnr(String.valueOf(id));
+        if (mat == null) {
+            return R.ok();
+        }
+        OrderDetl orderDetl = new OrderDetl();
+        orderDetl.sync(orderDetl);
+        orderDetl.setAnfme(0.0D);
+        return R.ok().add(orderDetl);
+    }
+
     /*************************************** 鎵撳嵃鐩稿叧 ***********************************************/
 
     @RequestMapping(value = "/mac/code/auth")
diff --git a/src/main/java/com/zy/asrs/entity/LocDetl.java b/src/main/java/com/zy/asrs/entity/LocDetl.java
index bd7eab3..50f5573 100644
--- a/src/main/java/com/zy/asrs/entity/LocDetl.java
+++ b/src/main/java/com/zy/asrs/entity/LocDetl.java
@@ -6,12 +6,16 @@
 import com.baomidou.mybatisplus.annotations.TableName;
 import com.core.common.Cools;
 import com.core.common.SpringUtils;
+import com.core.exception.CoolException;
 import com.zy.asrs.service.LocMastService;
 import com.zy.system.entity.User;
 import com.zy.system.service.UserService;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.beans.BeanInfo;
+import java.beans.Introspector;
+import java.beans.PropertyDescriptor;
 import java.io.Serializable;
 import java.text.SimpleDateFormat;
 import java.util.Date;
@@ -248,4 +252,23 @@
         return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.appeTime);
     }
 
+    public void sync(Object dest) {
+        try {
+            BeanInfo sourceBean = Introspector.getBeanInfo(this.getClass(),Object.class);
+            PropertyDescriptor[] sourceProperty = sourceBean.getPropertyDescriptors();
+            BeanInfo destBean = Introspector.getBeanInfo(dest.getClass(),Object.class);
+            PropertyDescriptor[] destProperty = destBean.getPropertyDescriptors();
+            for (PropertyDescriptor propertyDescriptor : sourceProperty) {
+                for (PropertyDescriptor descriptor : destProperty) {
+                    if (propertyDescriptor.getName().equals(descriptor.getName()) && propertyDescriptor.getPropertyType() == descriptor.getPropertyType()) {
+                        descriptor.getWriteMethod().invoke(dest, propertyDescriptor.getReadMethod().invoke(this));
+                        break;
+                    }
+                }
+            }
+        } catch (Exception e) {
+            throw new CoolException("灞炴�у鍒跺け璐�:" + e.getMessage());
+        }
+    }
+
 }
diff --git a/src/main/java/com/zy/asrs/entity/OrderDetl.java b/src/main/java/com/zy/asrs/entity/OrderDetl.java
index fc0fd35..ad19b6d 100644
--- a/src/main/java/com/zy/asrs/entity/OrderDetl.java
+++ b/src/main/java/com/zy/asrs/entity/OrderDetl.java
@@ -6,6 +6,7 @@
 import com.baomidou.mybatisplus.enums.IdType;
 import com.core.common.Cools;
 import com.core.common.SpringUtils;
+import com.core.exception.CoolException;
 import com.zy.asrs.service.OrderService;
 import com.zy.system.entity.User;
 import com.zy.system.service.UserService;
@@ -13,6 +14,9 @@
 import lombok.Data;
 import org.springframework.format.annotation.DateTimeFormat;
 
+import java.beans.BeanInfo;
+import java.beans.Introspector;
+import java.beans.PropertyDescriptor;
 import java.io.Serializable;
 import java.text.SimpleDateFormat;
 import java.util.Date;
@@ -438,4 +442,24 @@
         return null;
     }
 
+    public void sync(Object dest) {
+        try {
+            BeanInfo sourceBean = Introspector.getBeanInfo(this.getClass(),Object.class);
+            PropertyDescriptor[] sourceProperty = sourceBean.getPropertyDescriptors();
+            BeanInfo destBean = Introspector.getBeanInfo(dest.getClass(),Object.class);
+            PropertyDescriptor[] destProperty = destBean.getPropertyDescriptors();
+            for (PropertyDescriptor propertyDescriptor : sourceProperty) {
+                for (PropertyDescriptor descriptor : destProperty) {
+                    if (propertyDescriptor.getName().equals(descriptor.getName()) && propertyDescriptor.getPropertyType() == descriptor.getPropertyType()) {
+                        descriptor.getWriteMethod().invoke(dest, propertyDescriptor.getReadMethod().invoke(this));
+                        break;
+                    }
+                }
+            }
+        } catch (Exception e) {
+            throw new CoolException("灞炴�у鍒跺け璐�:" + e.getMessage());
+        }
+    }
+
+
 }
diff --git a/src/main/java/com/zy/asrs/entity/WaitPakin.java b/src/main/java/com/zy/asrs/entity/WaitPakin.java
index c295716..22fcbdb 100644
--- a/src/main/java/com/zy/asrs/entity/WaitPakin.java
+++ b/src/main/java/com/zy/asrs/entity/WaitPakin.java
@@ -3,9 +3,13 @@
 import com.baomidou.mybatisplus.annotations.TableField;
 import com.baomidou.mybatisplus.annotations.TableName;
 import com.core.common.Cools;
+import com.core.exception.CoolException;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.beans.BeanInfo;
+import java.beans.Introspector;
+import java.beans.PropertyDescriptor;
 import java.io.Serializable;
 import java.text.SimpleDateFormat;
 import java.util.Date;
@@ -215,4 +219,23 @@
         return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.appeTime);
     }
 
+    public void sync(Object dest) {
+        try {
+            BeanInfo sourceBean = Introspector.getBeanInfo(this.getClass(),Object.class);
+            PropertyDescriptor[] sourceProperty = sourceBean.getPropertyDescriptors();
+            BeanInfo destBean = Introspector.getBeanInfo(dest.getClass(),Object.class);
+            PropertyDescriptor[] destProperty = destBean.getPropertyDescriptors();
+            for (PropertyDescriptor propertyDescriptor : sourceProperty) {
+                for (PropertyDescriptor descriptor : destProperty) {
+                    if (propertyDescriptor.getName().equals(descriptor.getName()) && propertyDescriptor.getPropertyType() == descriptor.getPropertyType()) {
+                        descriptor.getWriteMethod().invoke(dest, propertyDescriptor.getReadMethod().invoke(this));
+                        break;
+                    }
+                }
+            }
+        } catch (Exception e) {
+            throw new CoolException("灞炴�у鍒跺け璐�:" + e.getMessage());
+        }
+    }
+
 }
diff --git a/src/main/java/com/zy/asrs/entity/WrkDetl.java b/src/main/java/com/zy/asrs/entity/WrkDetl.java
index 938969b..bd1f873 100644
--- a/src/main/java/com/zy/asrs/entity/WrkDetl.java
+++ b/src/main/java/com/zy/asrs/entity/WrkDetl.java
@@ -4,11 +4,15 @@
 import com.baomidou.mybatisplus.annotations.TableName;
 import com.core.common.Cools;
 import com.core.common.SpringUtils;
+import com.core.exception.CoolException;
 import com.zy.system.entity.User;
 import com.zy.system.service.UserService;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.beans.BeanInfo;
+import java.beans.Introspector;
+import java.beans.PropertyDescriptor;
 import java.io.Serializable;
 import java.text.SimpleDateFormat;
 import java.util.Date;
@@ -357,4 +361,23 @@
         return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.appeTime);
     }
 
+    public void sync(Object dest) {
+        try {
+            BeanInfo sourceBean = Introspector.getBeanInfo(this.getClass(),Object.class);
+            PropertyDescriptor[] sourceProperty = sourceBean.getPropertyDescriptors();
+            BeanInfo destBean = Introspector.getBeanInfo(dest.getClass(),Object.class);
+            PropertyDescriptor[] destProperty = destBean.getPropertyDescriptors();
+            for (PropertyDescriptor propertyDescriptor : sourceProperty) {
+                for (PropertyDescriptor descriptor : destProperty) {
+                    if (propertyDescriptor.getName().equals(descriptor.getName()) && propertyDescriptor.getPropertyType() == descriptor.getPropertyType()) {
+                        descriptor.getWriteMethod().invoke(dest, propertyDescriptor.getReadMethod().invoke(this));
+                        break;
+                    }
+                }
+            }
+        } catch (Exception e) {
+            throw new CoolException("灞炴�у鍒跺け璐�:" + e.getMessage());
+        }
+    }
+
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index a020427..d38e495 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -4,10 +4,7 @@
 import com.core.common.BaseRes;
 import com.core.common.Cools;
 import com.core.exception.CoolException;
-import com.zy.asrs.entity.MatCode;
-import com.zy.asrs.entity.Order;
-import com.zy.asrs.entity.OrderDetl;
-import com.zy.asrs.entity.WaitPakin;
+import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.param.CombParam;
 import com.zy.asrs.service.*;
 import com.zy.asrs.utils.VersionUtils;
@@ -30,7 +27,7 @@
 public class MobileServiceImpl implements MobileService {
 
     @Autowired
-    private MatCodeService matCodeService;
+    private MatService matService;
     @Autowired
     private WaitPakinService waitPakinService;
     @Autowired
@@ -68,11 +65,12 @@
             });
 
             for (DetlDto detlDto : detlDtos) {
-                MatCode matCode = matCodeService.selectById(detlDto.getMatnr());
-                if (Cools.isEmpty(matCode)) {
+                Mat mat = matService.selectByMatnr(detlDto.getMatnr());
+                if (Cools.isEmpty(mat)) {
                     throw new CoolException(detlDto.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�");
                 }
                 WaitPakin waitPakin = new WaitPakin();
+                waitPakin.sync(mat);
                 waitPakin.setZpallet(param.getBarcode());   // 鎵樼洏鐮�
                 waitPakin.setIoStatus("N");     // 鍏ュ嚭鐘舵��
                 waitPakin.setAnfme(detlDto.getAnfme());  // 鏁伴噺
@@ -81,7 +79,6 @@
                 waitPakin.setAppeTime(now);
                 waitPakin.setModiUser(userId);
                 waitPakin.setModiTime(now);
-                VersionUtils.setWaitPakIn(waitPakin, matCode);
                 if (!waitPakinService.insert(waitPakin)) {
                     throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
                 }
@@ -116,11 +113,12 @@
                 }
             });
             for (DetlDto detlDto : detlDtos) {
-                MatCode matCode = matCodeService.selectById(detlDto.getMatnr());
-                if (Cools.isEmpty(matCode)) {
+                Mat mat = matService.selectByMatnr(detlDto.getMatnr());
+                if (Cools.isEmpty(mat)) {
                     throw new CoolException(detlDto.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�");
                 }
                 WaitPakin waitPakin = new WaitPakin();
+                waitPakin.sync(mat);
                 waitPakin.setOrderNo(order.getOrderNo());   // 鍗曟嵁缂栧彿
                 waitPakin.setBatch(detlDto.getBatch());     // 鎵瑰彿
                 waitPakin.setZpallet(param.getBarcode());   // 鎵樼洏鐮�
@@ -131,7 +129,6 @@
                 waitPakin.setAppeTime(now);
                 waitPakin.setModiUser(userId);
                 waitPakin.setModiTime(now);
-                VersionUtils.setWaitPakIn(waitPakin, matCode);
                 if (!waitPakinService.insert(waitPakin)) {
                     throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
                 }
diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index a098b78..9886899 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -39,6 +39,8 @@
     private static final int DEFAULT_ROW_NO_TYPE = 1;
 
     @Autowired
+    private MatService matService;
+    @Autowired
     private WrkMastService wrkMastService;
     @Autowired
     private WrkDetlService wrkDetlService;
@@ -52,8 +54,6 @@
     private StaDescService staDescService;
     @Autowired
     private LocDetlService locDetlService;
-    @Autowired
-    private MatCodeService matCodeService;
     @Autowired
     private AdjDetlService adjDetlService;
     @Autowired
@@ -225,11 +225,11 @@
             for (LocDetlDto detlDto : dto.getLocDetlDtos()) {
                 if (detlDto.getCount()==null || detlDto.getCount() <= 0.0D) {continue;}
                 WrkDetl wrkDetl = new WrkDetl();
+                wrkDetl.sync(detlDto.getLocDetl());
                 wrkDetl.setWrkNo(workNo);
                 wrkDetl.setIoTime(now);
                 Double anfme = ioType==101?detlDto.getLocDetl().getAnfme():detlDto.getCount();
                 wrkDetl.setAnfme(anfme); // 鏁伴噺
-                VersionUtils.setWrkDetl(wrkDetl, detlDto.getLocDetl()); // 鐗堟湰鎺у埗
                 wrkDetl.setAppeTime(now);
                 wrkDetl.setAppeUser(userId);
                 wrkDetl.setModiTime(now);
@@ -298,12 +298,12 @@
             if (locDto.getAnfme()==null || locDto.getAnfme() <= 0.0D) { continue; }
             OrderDetl orderDetl = orderDetlService.selectItem(locDto.getOrderNo(), locDto.getMatnr(), locDto.getBatch());
             WrkDetl wrkDetl = new WrkDetl();
+            wrkDetl.sync(orderDetl);
             wrkDetl.setIoTime(now);
             wrkDetl.setWrkNo(workNo);
             wrkDetl.setBatch(locDto.getBatch());
             wrkDetl.setOrderNo(locDto.getOrderNo());
             wrkDetl.setAnfme(locDto.getAnfme()); // 鏁伴噺
-            VersionUtils.setWrkDetl(wrkDetl, orderDetl); // 鐗堟湰鎺у埗
             wrkDetl.setAppeTime(now);
             wrkDetl.setAppeUser(userId);
             wrkDetl.setModiTime(now);
@@ -513,10 +513,10 @@
         List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", sourceLocNo));
         for (LocDetl locDetl : locDetls) {
             WrkDetl wrkDetl = new WrkDetl();
+            wrkDetl.sync(locDetl);
             wrkDetl.setWrkNo(workNo);
             wrkDetl.setIoTime(new Date());
             wrkDetl.setAnfme(locDetl.getAnfme());
-            VersionUtils.setWrkDetl(wrkDetl, locDetl); // 鐗堟湰鎺у埗
             wrkDetl.setAppeTime(new Date());
             wrkDetl.setAppeUser(userId);
             wrkDetl.setModiTime(new Date());
@@ -598,11 +598,11 @@
                 if (adjust.getCount() == 0){
                     continue;
                 }
-                MatCode matCode = matCodeService.selectById(adjust.getMatnr());
+                Mat mat = matService.selectByMatnr(adjust.getMatnr());
                 LocDetl locDetl = new LocDetl();
+                locDetl.sync(mat);
                 locDetl.setLocNo(locMast.getLocNo());
                 locDetl.setAnfme(adjust.getCount()); // 鏁伴噺
-                VersionUtils.setLocDetl(locDetl, matCode); // 鐗堟湰鎺у埗
                 locDetl.setModiUser(userId); // 鎿嶄綔浜哄憳淇℃伅
                 locDetl.setModiTime(new Date());
                 locDetl.setAppeUser(userId);
diff --git a/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java
index 46a0c58..61b9883 100644
--- a/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java
@@ -3,12 +3,11 @@
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
 import com.core.common.Cools;
 import com.core.exception.CoolException;
-import com.zy.asrs.entity.MatCode;
+import com.zy.asrs.entity.Mat;
 import com.zy.asrs.entity.WrkDetl;
 import com.zy.asrs.mapper.WrkDetlMapper;
-import com.zy.asrs.service.MatCodeService;
+import com.zy.asrs.service.MatService;
 import com.zy.asrs.service.WrkDetlService;
-import com.zy.asrs.utils.VersionUtils;
 import com.zy.common.model.DetlDto;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -21,7 +20,7 @@
 public class WrkDetlServiceImpl extends ServiceImpl<WrkDetlMapper, WrkDetl> implements WrkDetlService {
 
     @Autowired
-    private MatCodeService matCodeService;
+    private MatService matService;
 
     @Override
     @Transactional
@@ -31,17 +30,17 @@
         }
         Date now = new Date();
         for (DetlDto dto : detlDtos) {
-            MatCode matCode = matCodeService.selectById(dto.getMatnr());
-            if (Cools.isEmpty(matCode)){
-                throw new CoolException("鐗╂枡鏉$爜鏁版嵁涓虹┖");
+            Mat mat = matService.selectByMatnr(dto.getMatnr());
+            if (Cools.isEmpty(mat)){
+                throw new CoolException(dto.getMatnr() + "鍟嗗搧缁存姢澶辫触");
             }
             // 淇濇寔宸ヤ綔妗f槑缁�
             WrkDetl wrkDetl = new WrkDetl();
+            wrkDetl.sync(mat);
             wrkDetl.setWrkNo(workNo);
             wrkDetl.setIoTime(now);
             wrkDetl.setBatch(dto.getBatch());
             wrkDetl.setAnfme(dto.getAnfme()); // 鏁伴噺
-            VersionUtils.setWrkDetl(wrkDetl, matCode); // 鐗堟湰鎺у埗
             wrkDetl.setZpallet(barcode); // 鎵樼洏鏉$爜
             wrkDetl.setAppeUser(userId);
             wrkDetl.setAppeTime(now);
diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
index 2db13f5..daba910 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -90,8 +90,8 @@
                             }
                         } else {
                             locDetl = new LocDetl();
+                            locDetl.sync(wrkDetl);
                             locDetl.setLocNo(wrkMast.getLocNo()); // 搴撲綅鍙�
-                            VersionUtils.setLocDetl(locDetl, wrkDetl); // 鐗堟湰鎺у埗
                             locDetl.setAnfme(wrkDetl.getAnfme()); // 鏁伴噺
                             locDetl.setZpallet(wrkDetl.getZpallet()); // 鎵樼洏鏉$爜
                             locDetl.setModiTime(now);
@@ -174,8 +174,8 @@
                             }
                         } else {
                             locDetl = new LocDetl();
+                            locDetl.sync(wrkDetl);
                             locDetl.setLocNo(wrkMast.getLocNo()); // 搴撲綅鍙�
-                            VersionUtils.setLocDetl(locDetl, wrkDetl); // 鐗堟湰鎺у埗
                             locDetl.setAnfme(wrkDetl.getAnfme()); // 鏁伴噺
                             locDetl.setZpallet(wrkDetl.getZpallet()); // 鎵樼洏鏉$爜
                             locDetl.setModiTime(now);
diff --git a/src/main/java/com/zy/asrs/utils/VersionUtils.java b/src/main/java/com/zy/asrs/utils/VersionUtils.java
index 07bf914..4913503 100644
--- a/src/main/java/com/zy/asrs/utils/VersionUtils.java
+++ b/src/main/java/com/zy/asrs/utils/VersionUtils.java
@@ -1,6 +1,7 @@
 package com.zy.asrs.utils;
 
-import com.zy.asrs.entity.*;
+import com.zy.asrs.entity.LocMast;
+import com.zy.asrs.entity.MatCode;
 import com.zy.common.model.LocTypeDto;
 import com.zy.common.utils.excel.matcode.MatCodeExcel;
 
@@ -9,107 +10,108 @@
  */
 public class VersionUtils {
 
+
     // 涓氬姟 ----------------------------------------------------------------------
 
-    public static void setWrkDetl(WrkDetl wrkDetl, MatCode matCode) {
-        wrkDetl.setMatnr(matCode.getMatNo()); // 鐗╂枡缂栧彿
-        wrkDetl.setMaktx(matCode.getMatName()); // 鐗╂枡鎻忚堪
-        wrkDetl.setLgnum(matCode.getStr2()); // 瑙勬牸
-        wrkDetl.setType(matCode.getStr5()); // 鍨嬪彿
-        wrkDetl.setColor(matCode.getBarcode()); // 鏉$爜
-        wrkDetl.setSupplier(matCode.getStr6()); // 鎵瑰彿
-        wrkDetl.setWarehouse(matCode.getStr7()); // 鍗曟嵁缂栧彿
-        wrkDetl.setBrand(matCode.getStr3()); // 鍝侀」鏁�
-        wrkDetl.setAltme(matCode.getStr1()); // 鍗曚綅
-        wrkDetl.setBname(matCode.getStr4()); // 瀹㈡埛鍚嶇О
-    }
-
-    public static void setWrkDetl(WrkDetl wrkDetl, LocDetl locDetl) {
-        wrkDetl.setMatnr(locDetl.getMatnr()); // 鐗╂枡缂栧彿
-        wrkDetl.setMaktx(locDetl.getMaktx()); // 鐗╂枡鎻忚堪w
-        wrkDetl.setBatch(locDetl.getBatch());
-        wrkDetl.setOrderNo(locDetl.getOrderNo());
-        wrkDetl.setLgnum(locDetl.getLgnum()); // 瑙勬牸
-        wrkDetl.setType(locDetl.getType()); // 鍨嬪彿
-        wrkDetl.setColor(locDetl.getColor()); // 鏉$爜
-        wrkDetl.setSupplier(locDetl.getSupplier()); // 鎵瑰彿
-        wrkDetl.setWarehouse(locDetl.getWarehouse()); // 鍗曟嵁缂栧彿
-        wrkDetl.setBrand(locDetl.getBrand()); // 鍝侀」鏁�
-        wrkDetl.setAltme(locDetl.getAltme()); // 鍗曚綅
-        wrkDetl.setBname(locDetl.getBname()); // 瀹㈡埛鍚嶇О
-        wrkDetl.setZpallet(locDetl.getZpallet()); // 鎵樼洏鏉$爜
-    }
-
-    public static void setLocDetl(LocDetl locDetl, MatCode matCode) {
-        locDetl.setMatnr(matCode.getMatNo()); // 鐗╂枡缂栧彿
-        locDetl.setMaktx(matCode.getMatName()); // 鐗╂枡鎻忚堪
-        locDetl.setLgnum(matCode.getStr2()); // 瑙勬牸
-        locDetl.setType(matCode.getStr5()); // 鍨嬪彿
-        locDetl.setColor(matCode.getBarcode()); // 鏉$爜
-        locDetl.setSupplier(matCode.getStr6()); // 鎵瑰彿
-        locDetl.setWarehouse(matCode.getStr7()); // 鍗曟嵁缂栧彿
-        locDetl.setBrand(matCode.getStr3()); // 鍝侀」鏁�
-        locDetl.setAltme(matCode.getStr1()); // 鍗曚綅
-        locDetl.setBname(matCode.getStr4()); // 瀹㈡埛鍚嶇О
-    }
-
-    public static void setLocDetl(LocDetl locDetl, WrkDetl wrkDetl) {
-        locDetl.setMatnr(wrkDetl.getMatnr()); // 鐗╂枡缂栧彿
-        locDetl.setMaktx(wrkDetl.getMaktx()); // 鐗╂枡鎻忚堪
-        locDetl.setBatch(wrkDetl.getBatch());
-        locDetl.setOrderNo(wrkDetl.getOrderNo());
-        locDetl.setLgnum(wrkDetl.getLgnum()); // 瑙勬牸
-        locDetl.setType(wrkDetl.getType()); // 鍨嬪彿
-        locDetl.setColor(wrkDetl.getColor()); // 鏉$爜
-        locDetl.setSupplier(wrkDetl.getSupplier()); // 鎵瑰彿
-        locDetl.setWarehouse(wrkDetl.getWarehouse()); // 鍗曟嵁缂栧彿
-        locDetl.setBrand(wrkDetl.getBrand()); // 鍝侀」鏁�
-        locDetl.setAltme(wrkDetl.getAltme()); // 鍗曚綅
-        locDetl.setBname(wrkDetl.getBname()); // 瀹㈡埛鍚嶇О
-        locDetl.setZpallet(wrkDetl.getZpallet()); // 鎵樼洏鏉$爜
-    }
-
-    public static void setWaitPakIn(WaitPakin waitPakIn, MatCode matCode) {
-        waitPakIn.setMatnr(matCode.getMatNo()); // 鐗╂枡缂栧彿
-        waitPakIn.setMaktx(matCode.getMatName()); // 鐗╂枡鎻忚堪
-        waitPakIn.setLgnum(matCode.getStr2()); // 瑙勬牸
-        waitPakIn.setType(matCode.getStr5()); // 鍨嬪彿
-        waitPakIn.setColor(matCode.getBarcode()); // 鏉$爜
-        waitPakIn.setSupplier(matCode.getStr6()); // 鎵瑰彿
-        waitPakIn.setWarehouse(matCode.getStr7()); // 鍗曟嵁缂栧彿
-        waitPakIn.setBrand(matCode.getStr3()); // 鍝侀」鏁�
-        waitPakIn.setAltme(matCode.getStr1()); // 鍗曚綅
-        waitPakIn.setBname(matCode.getStr4()); // 瀹㈡埛鍚嶇О
-    }
-
-    public static void setOrderDetl(OrderDetl orderDetl, MatCode matCode) {
-        orderDetl.setMatnr(matCode.getMatNo()); // 鐗╂枡缂栧彿
-        orderDetl.setMaktx(matCode.getMatName()); // 鐗╂枡鎻忚堪
-        orderDetl.setSpecs(matCode.getStr2()); // 瑙勬牸
-        orderDetl.setSupplier(matCode.getStr6()); // 鎵瑰彿
-    }
-
-    public static void setWaitPakIn(WaitPakin waitPakIn, OrderDetl orderDetl) {
-        waitPakIn.setMatnr(orderDetl.getMatnr()); // 鐗╂枡缂栧彿
-        waitPakIn.setMaktx(orderDetl.getMaktx()); // 鐗╂枡鎻忚堪
-        waitPakIn.setBatch(orderDetl.getBatch());
-        waitPakIn.setOrderNo(orderDetl.getOrderNo());
-        waitPakIn.setLgnum(orderDetl.getSpecs()); // 瑙勬牸
-        waitPakIn.setType(orderDetl.getModel()); // 鍨嬪彿
-        waitPakIn.setSupplier(orderDetl.getSupplier()); // 鎵瑰彿
-        waitPakIn.setAltme(orderDetl.getUnit()); // 鍗曚綅
-    }
-
-    public static void setWrkDetl(WrkDetl wrkDetl, OrderDetl orderDetl) {
-        wrkDetl.setMatnr(orderDetl.getMatnr()); // 鐗╂枡缂栧彿
-        wrkDetl.setMaktx(orderDetl.getMaktx()); // 鐗╂枡鎻忚堪
-        wrkDetl.setBatch(orderDetl.getBatch());
-        wrkDetl.setOrderNo(orderDetl.getOrderNo());
-        wrkDetl.setLgnum(orderDetl.getSpecs()); // 瑙勬牸
-        wrkDetl.setType(orderDetl.getModel()); // 鍨嬪彿
-        wrkDetl.setSupplier(orderDetl.getSupplier()); // 鎵瑰彿
-        wrkDetl.setAltme(orderDetl.getUnit()); // 鍗曚綅
-    }
+//    public static void setWrkDetl(WrkDetl wrkDetl, Mat mat) {
+//        wrkDetl.setMatnr(matCode.getMatNo()); // 鐗╂枡缂栧彿
+//        wrkDetl.setMaktx(matCode.getMatName()); // 鐗╂枡鎻忚堪
+//        wrkDetl.setLgnum(matCode.getStr2()); // 瑙勬牸
+//        wrkDetl.setType(matCode.getStr5()); // 鍨嬪彿
+//        wrkDetl.setColor(matCode.getBarcode()); // 鏉$爜
+//        wrkDetl.setSupplier(matCode.getStr6()); // 鎵瑰彿
+//        wrkDetl.setWarehouse(matCode.getStr7()); // 鍗曟嵁缂栧彿
+//        wrkDetl.setBrand(matCode.getStr3()); // 鍝侀」鏁�
+//        wrkDetl.setAltme(matCode.getStr1()); // 鍗曚綅
+//        wrkDetl.setBname(matCode.getStr4()); // 瀹㈡埛鍚嶇О
+//    }
+//
+//    public static void setWrkDetl(WrkDetl wrkDetl, LocDetl locDetl) {
+//        wrkDetl.setMatnr(locDetl.getMatnr()); // 鐗╂枡缂栧彿
+//        wrkDetl.setMaktx(locDetl.getMaktx()); // 鐗╂枡鎻忚堪w
+//        wrkDetl.setBatch(locDetl.getBatch());
+//        wrkDetl.setOrderNo(locDetl.getOrderNo());
+//        wrkDetl.setLgnum(locDetl.getLgnum()); // 瑙勬牸
+//        wrkDetl.setType(locDetl.getType()); // 鍨嬪彿
+//        wrkDetl.setColor(locDetl.getColor()); // 鏉$爜
+//        wrkDetl.setSupplier(locDetl.getSupplier()); // 鎵瑰彿
+//        wrkDetl.setWarehouse(locDetl.getWarehouse()); // 鍗曟嵁缂栧彿
+//        wrkDetl.setBrand(locDetl.getBrand()); // 鍝侀」鏁�
+//        wrkDetl.setAltme(locDetl.getAltme()); // 鍗曚綅
+//        wrkDetl.setBname(locDetl.getBname()); // 瀹㈡埛鍚嶇О
+//        wrkDetl.setZpallet(locDetl.getZpallet()); // 鎵樼洏鏉$爜
+//    }
+//
+//    public static void setLocDetl(LocDetl locDetl, MatCode matCode) {
+//        locDetl.setMatnr(matCode.getMatNo()); // 鐗╂枡缂栧彿
+//        locDetl.setMaktx(matCode.getMatName()); // 鐗╂枡鎻忚堪
+//        locDetl.setLgnum(matCode.getStr2()); // 瑙勬牸
+//        locDetl.setType(matCode.getStr5()); // 鍨嬪彿
+//        locDetl.setColor(matCode.getBarcode()); // 鏉$爜
+//        locDetl.setSupplier(matCode.getStr6()); // 鎵瑰彿
+//        locDetl.setWarehouse(matCode.getStr7()); // 鍗曟嵁缂栧彿
+//        locDetl.setBrand(matCode.getStr3()); // 鍝侀」鏁�
+//        locDetl.setAltme(matCode.getStr1()); // 鍗曚綅
+//        locDetl.setBname(matCode.getStr4()); // 瀹㈡埛鍚嶇О
+//    }
+//
+//    public static void setLocDetl(LocDetl locDetl, WrkDetl wrkDetl) {
+//        locDetl.setMatnr(wrkDetl.getMatnr()); // 鐗╂枡缂栧彿
+//        locDetl.setMaktx(wrkDetl.getMaktx()); // 鐗╂枡鎻忚堪
+//        locDetl.setBatch(wrkDetl.getBatch());
+//        locDetl.setOrderNo(wrkDetl.getOrderNo());
+//        locDetl.setLgnum(wrkDetl.getLgnum()); // 瑙勬牸
+//        locDetl.setType(wrkDetl.getType()); // 鍨嬪彿
+//        locDetl.setColor(wrkDetl.getColor()); // 鏉$爜
+//        locDetl.setSupplier(wrkDetl.getSupplier()); // 鎵瑰彿
+//        locDetl.setWarehouse(wrkDetl.getWarehouse()); // 鍗曟嵁缂栧彿
+//        locDetl.setBrand(wrkDetl.getBrand()); // 鍝侀」鏁�
+//        locDetl.setAltme(wrkDetl.getAltme()); // 鍗曚綅
+//        locDetl.setBname(wrkDetl.getBname()); // 瀹㈡埛鍚嶇О
+//        locDetl.setZpallet(wrkDetl.getZpallet()); // 鎵樼洏鏉$爜
+//    }
+//
+//    public static void setWaitPakIn(WaitPakin waitPakIn, MatCode matCode) {
+//        waitPakIn.setMatnr(matCode.getMatNo()); // 鐗╂枡缂栧彿
+//        waitPakIn.setMaktx(matCode.getMatName()); // 鐗╂枡鎻忚堪
+//        waitPakIn.setLgnum(matCode.getStr2()); // 瑙勬牸
+//        waitPakIn.setType(matCode.getStr5()); // 鍨嬪彿
+//        waitPakIn.setColor(matCode.getBarcode()); // 鏉$爜
+//        waitPakIn.setSupplier(matCode.getStr6()); // 鎵瑰彿
+//        waitPakIn.setWarehouse(matCode.getStr7()); // 鍗曟嵁缂栧彿
+//        waitPakIn.setBrand(matCode.getStr3()); // 鍝侀」鏁�
+//        waitPakIn.setAltme(matCode.getStr1()); // 鍗曚綅
+//        waitPakIn.setBname(matCode.getStr4()); // 瀹㈡埛鍚嶇О
+//    }
+//
+//    public static void setOrderDetl(OrderDetl orderDetl, MatCode matCode) {
+//        orderDetl.setMatnr(matCode.getMatNo()); // 鐗╂枡缂栧彿
+//        orderDetl.setMaktx(matCode.getMatName()); // 鐗╂枡鎻忚堪
+//        orderDetl.setSpecs(matCode.getStr2()); // 瑙勬牸
+//        orderDetl.setSupplier(matCode.getStr6()); // 鎵瑰彿
+//    }
+//
+//    public static void setWaitPakIn(WaitPakin waitPakIn, OrderDetl orderDetl) {
+//        waitPakIn.setMatnr(orderDetl.getMatnr()); // 鐗╂枡缂栧彿
+//        waitPakIn.setMaktx(orderDetl.getMaktx()); // 鐗╂枡鎻忚堪
+//        waitPakIn.setBatch(orderDetl.getBatch());
+//        waitPakIn.setOrderNo(orderDetl.getOrderNo());
+//        waitPakIn.setLgnum(orderDetl.getSpecs()); // 瑙勬牸
+//        waitPakIn.setType(orderDetl.getModel()); // 鍨嬪彿
+//        waitPakIn.setSupplier(orderDetl.getSupplier()); // 鎵瑰彿
+//        waitPakIn.setAltme(orderDetl.getUnit()); // 鍗曚綅
+//    }
+//
+//    public static void setWrkDetl(WrkDetl wrkDetl, OrderDetl orderDetl) {
+//        wrkDetl.setMatnr(orderDetl.getMatnr()); // 鐗╂枡缂栧彿
+//        wrkDetl.setMaktx(orderDetl.getMaktx()); // 鐗╂枡鎻忚堪
+//        wrkDetl.setBatch(orderDetl.getBatch());
+//        wrkDetl.setOrderNo(orderDetl.getOrderNo());
+//        wrkDetl.setLgnum(orderDetl.getSpecs()); // 瑙勬牸
+//        wrkDetl.setType(orderDetl.getModel()); // 鍨嬪彿
+//        wrkDetl.setSupplier(orderDetl.getSupplier()); // 鎵瑰彿
+//        wrkDetl.setAltme(orderDetl.getUnit()); // 鍗曚綅
+//    }
 
 
     // excel ----------------------------------------------------------------------
diff --git a/src/main/webapp/static/js/order/order.js b/src/main/webapp/static/js/order/order.js
index 69302a4..d85f0c4 100644
--- a/src/main/webapp/static/js/order/order.js
+++ b/src/main/webapp/static/js/order/order.js
@@ -306,7 +306,7 @@
                                     if (existMats.indexOf(item.value) === -1) {
                                         // 鏌ヨ鐗╂枡璇︽儏
                                         $.ajax({
-                                            url: baseUrl+"/matCode/covert/"+item.value+"/auth",
+                                            url: baseUrl+"/mat/covert/"+item.value+"/auth",
                                             headers: {'token': localStorage.getItem('token')},
                                             method: 'GET',
                                             async: false,
diff --git a/src/main/webapp/views/adjDetl/adjDetl_detail.html b/src/main/webapp/views/adjDetl/adjDetl_detail.html
index 0fbbb3d..872937f 100644
--- a/src/main/webapp/views/adjDetl/adjDetl_detail.html
+++ b/src/main/webapp/views/adjDetl/adjDetl_detail.html
@@ -44,11 +44,11 @@
         <div class="layui-inline"  style="width:31%;">
             <label class="layui-form-label"><span class="not-null">*</span>鐗╂枡缂栧彿锛�</label>
             <div class="layui-input-inline cool-auto-complete">
-                <input id="matNo" class="layui-input" type="text" lay-verify="required"  style="display: none">
-                <input id="matNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="璇疯緭鍏�..." onfocus=this.blur()>
+                <input id="matnr" class="layui-input" type="text" lay-verify="required"  style="display: none">
+                <input id="matnr$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="璇疯緭鍏�..." onfocus=this.blur()>
                 <div class="cool-auto-complete-window">
-                    <input class="cool-auto-complete-window-input" data-key="matCodeQueryBymatNo" onkeyup="autoLoad(this.getAttribute('data-key'))">
-                    <select class="cool-auto-complete-window-select" data-key="matCodeQueryBymatNoSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple">
+                    <input class="cool-auto-complete-window-input" data-key="matCodeQueryBymatnr" onkeyup="autoLoad(this.getAttribute('data-key'))">
+                    <select class="cool-auto-complete-window-select" data-key="matCodeQueryBymatnSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple">
                     </select>
                 </div>
             </div>
diff --git a/src/main/webapp/views/pda/comb.html b/src/main/webapp/views/pda/comb.html
index b2bb877..4739ffb 100644
--- a/src/main/webapp/views/pda/comb.html
+++ b/src/main/webapp/views/pda/comb.html
@@ -55,8 +55,8 @@
             cellMinWidth: 50,
             cols: [[
                 {fixed: 'left', align: 'center', field: 'count', title: '鏁伴噺', style:'color: blue', width:50},
-                {field: 'matNo', align: 'center', title: '鍟嗗搧缂栧彿'},
-                {field: 'matName', align: 'center', title: '鍟嗗搧鍚嶇О'}
+                {field: 'matnr', align: 'center', title: '鍟嗗搧缂栧彿'},
+                {field: 'maktx', align: 'center', title: '鍟嗗搧鍚嶇О'}
             ]],
             done: function (res, curr, count) {
             }
@@ -93,13 +93,13 @@
     // 娣诲姞琛ㄦ牸鏁版嵁
     var matData = [];
     function addTableData(data) {
-        if (isEmpty(data.matName)){
+        if (isEmpty(data.maktx)){
             tips("鎻愬彇澶辫触", true);
             return;
         }
         let toPush = true;
         for (var j=0;j<matData.length;j++){
-            if (data.matNo === matData[j].matNo) {
+            if (data.matnr === matData[j].matnr) {
                 matData[j].count = Number(matData[j].count) + Number(data.count);
                 toPush  = false;
             }
@@ -182,4 +182,4 @@
         }
     }
 </script>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/views/pda/stockIn.html b/src/main/webapp/views/pda/stockIn.html
index ac589c5..9384793 100644
--- a/src/main/webapp/views/pda/stockIn.html
+++ b/src/main/webapp/views/pda/stockIn.html
@@ -120,8 +120,8 @@
             cellMinWidth: 50,
             cols: [[
                 {fixed: 'left', align: 'center', field: 'count', title: '鏁伴噺', style:'color: blue', width:50},
-                {field: 'matNo', align: 'center', title: '鍟嗗搧缂栧彿'},
-                {field: 'matName', align: 'center', title: '鍟嗗搧鍚嶇О'}
+                {field: 'matnr', align: 'center', title: '鍟嗗搧缂栧彿'},
+                {field: 'maktx', align: 'center', title: '鍟嗗搧鍚嶇О'}
             ]],
             done: function (res, curr, count) {
 
@@ -181,13 +181,13 @@
     // 娣诲姞琛ㄦ牸鏁版嵁
     var matData = [];
     function addTableData(data) {
-        if (isEmpty(data.matName)){
+        if (isEmpty(data.maktx)){
             tips("鎻愬彇澶辫触", true);
             return;
         }
         let toPush = true;
         for (var j=0;j<matData.length;j++){
-            if (data.matNo === matData[j].matNo) {
+            if (data.matnr === matData[j].matnr) {
                 matData[j].count = Number(matData[j].count) + Number(data.count);
                 toPush  = false;
             }
@@ -322,4 +322,4 @@
     <option value="{{this}}">{{this}}</option>
     {{/each}}
 </script>
-</html>
\ No newline at end of file
+</html>
diff --git a/src/main/webapp/views/pdaCe/index.html b/src/main/webapp/views/pdaCe/index.html
deleted file mode 100644
index f5c7734..0000000
--- a/src/main/webapp/views/pdaCe/index.html
+++ /dev/null
@@ -1,495 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <meta charset="UTF-8">
-    <meta name="viewport" content="width=device-width, target-densitydpi=high-dpi, initial-scale=1.0, user-scalable=no"/>
-    <title>娴欐睙涓壃绔嬪簱鎶�鏈湁闄愬叕鍙�</title>
-    <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
-    <style>
-        * {
-            font-size: 12px;
-        }
-        html {
-            background-color: #fff;
-        }
-
-        .mat-msg {
-            overflow-y: scroll;
-            margin-top: 10px;
-            height: 115px;
-            background-color: #fff;
-            border-radius: 5px;
-            border: 1px solid #c2c2c2;
-        }
-        #mat-msg-table {
-            font-size: 12px;
-            border-collapse: collapse;
-            margin: 0 auto;
-            text-align: center;
-        }
-        #tthead {
-            padding-top: 4px;
-            background-color: #ececec;
-            height: 18px;
-        }
-        #tthead span {
-            border-right: 1px solid #b3b3b3;
-            float: left;
-            width: 24%;
-        }
-        #ttbody {
-            padding-top: 4px;
-        }
-        #ttbody div {
-            content: "";
-            clear: both;
-            display: table;
-        }
-        #ttbody span {
-            border-right: 1px solid #b3b3b3;
-            float: left;
-            width: 22%;
-            overflow:hidden;
-            white-space:nowrap;
-            text-overflow:ellipsis;
-        }
-
-        #btn-con {
-            padding-left: 10px;
-            position: absolute;
-            bottom: 10px;
-            width: 100%;
-        }
-        #btn-con button {
-            display: inline-block;
-            vertical-align: middle;
-        }
-        #tips {
-            font-size: 12px;
-            margin-top: 2px;
-            margin-left: 10px;
-            display: inline-block;
-            vertical-align: middle;
-            width: 90px;
-            overflow:hidden;
-            white-space:nowrap;
-            text-overflow:ellipsis;
-        }
-
-        /* 璇︽儏 */
-        .form-box {
-            margin-top: 10px;
-            padding: 15px 0 10px 0;
-            text-align: center;
-            border: 1px solid #BBBBBB;
-        }
-
-        .form-item {
-            margin-bottom: 5px;
-        }
-        .form-box span {
-        }
-        .form-box input {
-            overflow:hidden;
-            white-space:nowrap;
-            text-overflow:ellipsis;
-        }
-        .form-count button {
-            width: 25px;
-            height: 20px;
-        }
-        .form-count input {
-            margin: 0 7px;
-            width: 40px;
-        }
-        .form-btn-con {
-            margin-top: 10px;
-        }
-        .form-btn-con button {
-            padding: 4px 0;
-            height: 25px;
-            margin: 0 15px;
-        }
-    </style>
-</head>
-<body>
-<button onclick="help()" style="padding: 0 3px; position: absolute; top: 0%; right: 0%">?</button>
-<div>
-    <span>鏉$爜</span>
-    <input type="text" id="code">
-</div>
-<div>
-    <span>鐗╂枡</span>
-    <input type="text" id="matNo" onkeyup="find(this)" autocomplete="off">
-    <button onclick="find()">鏌ヨ</button>
-</div>
-
-<div class="mat-msg" id="mat-msg-id">
-    <div id="mat-msg-table">
-        <div id="tthead">
-            <span>缂栫爜</span>
-            <span>鍚嶇О</span>
-            <span>鍗曚綅</span>
-            <span>鏁伴噺</span>
-        </div>
-        <div id="ttbody">
-        </div>
-    </div>
-</div>
-
-<div id="btn-con">
-    <button style="margin-right: 20px" onclick="reset()">閲嶇疆</button>
-    <button id="comb" onclick="comb()">缁勬墭</button>
-    <span id="tips"></span>
-</div>
-
-<!-- 璇︽儏 -->
-<div class="form-box" id="mat-detail">
-    <div class="form-item form-count">
-        <span style="margin-right: 10px">鏁伴噺</span>
-        <button onclick="reduce()">-</button><input id="count" type="number" style="text-align: center"><button onclick="add()">+</button>
-    </div>
-    <div class="form-item">
-        <span>鍚嶇О</span>
-        <input id="matName" type="text" disabled="disabled" style="background-color: #ececec;color: #000">
-    </div>
-    <div class="form-item">
-        <span>鍗曚綅</span>
-        <input id="str1" type="text" disabled="disabled" style="background-color: #ececec;color: #000; text-align: center;">
-    </div>
-    <div class="form-item form-btn-con">
-        <button id="confirm" onclick="confirm()">鎻愬彇</button>
-        <button id="cancel" onclick="cancel()" style="background-color: #fff">鍙栨秷</button>
-    </div>
-</div>
-
-
-</body>
-<script>
-
-    var matMsgTableBlankRows = 0;   // 绌虹櫧琛屾暟
-    var matData = []; // 琛ㄦ牸鏁版嵁
-    var code = document.getElementById("code")
-    var matNo = document.getElementById("matNo")
-    var matMsg = document.getElementById("mat-msg-id");
-    var matMsgTable = document.getElementById("mat-msg-table");
-    var tthead = document.getElementById("tthead");
-    var ttbody = document.getElementById("ttbody");
-    var btnCon = document.getElementById("btn-con");
-    var tipDom = document.getElementById("tips");
-    var combBtn = document.getElementById("comb");
-
-    var matDetail = document.getElementById("mat-detail");
-    var matName = document.getElementById("matName");
-    var str1 = document.getElementById("str1");
-    var count = document.getElementById("count");
-    var confirmBtn = document.getElementById("confirm");
-
-    matDetail.style.display = 'none';
-    var initMatCount = 1;
-    window.onload = function(){matMsg.focus();}
-
-    // 鏌ヨ鐗╂祦
-    function find(el) {
-        httpRequest({
-            httpUrl: baseUrl + "/matCode/auth",
-            type: 'post',
-            headers: [{token: getCookie('token')}],
-            data: {
-                id: matNo.value
-            },
-        }, function (res) {
-            if (res.code === 200) {
-                if (res.data != null) {
-                    // 鏍峰紡
-                    matMsg.style.display = 'none';
-                    btnCon.style.display = 'none';
-                    matDetail.style.display = 'block';
-                    // 濉厖鏁版嵁
-                    matName.value = res.data.matName;
-                    str1.value = res.data.str1;
-
-                    // count.focus();
-                    count.value = initMatCount;
-                    confirmBtn.focus();
-                } else {
-                    matMsg.style.display = 'block';
-                    btnCon.style.display = 'block';
-                    matDetail.style.display = 'none';
-                }
-            } else if (res.code === 403) {
-                window.location.href = baseUrl + "/pda/ce";
-            } else {
-                tips(res.msg, true)
-            }
-        })
-    }
-
-    // 缁勬墭
-    function comb() {
-        var barcode = code.value;
-        if (isEmpty(barcode)) {
-            tips("璇疯緭鍏ユ墭鐩樻潯鐮�", true);
-            // document.getElementById("code").focus();
-            return;
-        }
-        if (barcode.length !== 8) {
-            tips("鏉$爜蹇呴』涓�8浣�", true);
-            // document.getElementById("code").focus();
-            return;
-        }
-        if (matData.length === 0) {
-            tips("璇锋彁鍙栫墿鏂�", true);
-            return;
-        }
-        httpRequest({
-            httpUrl: baseUrl+"/mobile/comb/auth",
-            type: 'post',
-            headers: [
-                {token: getCookie('token')}
-                ,{'Content-type':'application/json;charset=UTF-8',}
-                ],
-            data: JSON.stringify({
-                barcode: barcode,
-                combMats: matData
-            }) ,
-        }, function (res) {
-            if (res.code === 200) {
-                reset();
-                tips("缁勬墭鎴愬姛")
-            } else if (res.code === 403) {
-                window.location.href = baseUrl + "/pda/ce";
-            } else {
-                tips(res.msg, true)
-            }
-        })
-    }
-
-    // initCrnMsgTable();
-    function initCrnMsgTable(row) {
-        var line;
-        if (row === undefined){
-            var one = 15;
-            var total = matMsg.offsetHeight;
-            var count = total / one;
-            count = parseInt(count) - 1;
-            matMsgTableBlankRows = count;
-            line = count;
-        } else {
-            line = row;
-        }
-        var html = "";
-        for (var i = 0; i < line; i ++){
-            html += " <div>\n" +
-                "       <span></span>\n" +
-                "       <span></span>\n" +
-                "       <span></span>\n" +
-                "       <span></span>\n" +
-                "     </div>\n";
-        }
-        ttbody.innerHTML = html;
-    }
-
-    // 娣诲姞琛ㄦ牸鏁版嵁
-    function addTableData(data) {
-        if (isEmpty(data.matName)){
-            tips("鎻愬彇澶辫触");
-            return;
-        }
-        var toPush = true;
-        for (var j=0;j<matData.length;j++){
-            if (data.matNo === matData[j].matNo) {
-                matData[j].count = Number(matData[j].count) + Number(data.count);
-                toPush  = false;
-            }
-        }
-        if (toPush) {
-            matData.push(data);
-        }
-        var html = "";
-        for (var i=0;i<matData.length;i++) {
-            html += " <div class='table-data'>\n" +
-                "       <span>" + matData[i].matNo + "</span>\n" +
-                "       <span>" + matData[i].matName + "</span>\n" +
-                "       <span>" + matData[i].str1 + "</span>\n" +
-                "       <span>" + matData[i].count + "</span>\n" +
-                "     </div>\n";
-        }
-
-        ttbody.innerHTML = html;
-    }
-
-    // 閲嶇疆
-    function reset() {
-        code.value = "";
-        matNo.value = "";
-        cancel();
-        while(ttbody.hasChildNodes()) {
-            ttbody.removeChild(ttbody.firstChild);
-
-        }
-    }
-
-    /**
-     * 鎻愮ず淇℃伅
-     * @param msg 鎻愮ず鍐呭
-     * @param warn true锛氱孩鑹插瓧浣�
-     */
-    function tips(msg, warn) {
-        tipDom.innerText = msg;
-        if (warn) {
-            tipDom.style.color = "red";
-        } else {
-            tipDom.style.color = "#000";
-        }
-    }
-
-    /**
-     * 璇︽儏
-     */
-    // 鎻愬彇
-    function confirm() {
-        addTableData({
-            matNo: matNo.value,
-            matName: matName.value,
-            str1: str1.value,
-            count: count.value
-        })
-        cancel();
-        tips("鎻愬彇鎴愬姛");
-    }
-    // 鍙栨秷
-    function cancel() {
-        matNo.value = "";
-        matName.value = "";
-        str1.value = "";
-        count.value = initMatCount;
-        matMsg.style.display = 'block';
-        btnCon.style.display = 'block';
-        matDetail.style.display = 'none';
-        tips("");
-    }
-
-    function add() {
-        count.value = Number(count.value) + 1;
-    }
-    function reduce() {
-        if (count.value <= initMatCount) {
-            return;
-        }
-        count.value = count.value - 1;
-    }
-
-    //鑾峰彇 cookie
-    function getCookie(objName){//鑾峰彇鎸囧畾鍚嶇О鐨刢ookie鐨勫��
-        //澶氫釜cookie 淇濆瓨鐨勬椂鍊欐槸浠� ;绌烘牸  鍒嗗紑鐨�
-        var arrStr = document.cookie.split("; ");
-        for (var i = 0; i < arrStr.length; i++) {
-            var temp = arrStr[i].split("=");
-            if (temp[0] === objName){
-                return decodeURIComponent(temp[1]);
-            }else{
-                return "";
-            }
-
-        }
-    }
-
-    function httpRequest(paramObj,fun,errFun) {
-        var xmlhttp = null;
-        /*鍒涘缓XMLHttpRequest瀵硅薄锛�
-         *鑰佺増鏈殑 Internet Explorer锛圛E5 鍜� IE6锛変娇鐢� ActiveX 瀵硅薄锛歯ew ActiveXObject("Microsoft.XMLHTTP")
-         * */
-        if(window.XMLHttpRequest) {
-            xmlhttp = new XMLHttpRequest();
-        }else if(window.ActiveXObject) {
-            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
-        }
-        /*鍒ゆ柇鏄惁鏀寔璇锋眰*/
-        if(xmlhttp == null) {
-            alert('浣犵殑娴忚鍣ㄤ笉鏀寔XMLHttp');
-            return;
-        }
-        /*璇锋眰鏂瑰紡锛屽苟涓旇浆鎹负澶у啓*/
-        var httpType = (paramObj.type || 'GET').toUpperCase();
-        /*鏁版嵁绫诲瀷*/
-        var dataType = paramObj.dataType || 'json';
-        /*璇锋眰鎺ュ彛*/
-        var httpUrl = paramObj.httpUrl || '';
-        /*鏄惁寮傛璇锋眰*/
-        var async = paramObj.async || true;
-        /*璇锋眰澶村弬鏁�*/
-        var headerData = paramObj.headers || [];
-        /*璇锋眰鍙傛暟--post璇锋眰鍙傛暟鏍煎紡涓猴細foo=bar&lorem=ipsum*/
-        var paramData = paramObj.data || [];
-        var requestData = '';
-        for(var name in paramData) {
-            requestData += name + '='+ paramData[name] + '&';
-        }
-        requestData = requestData === '' ? '' : requestData.substring(0,requestData.length - 1);
-        /*璇锋眰鎺ユ敹*/
-        xmlhttp.onreadystatechange = function() {
-            if(xmlhttp.readyState === 4 && xmlhttp.status === 200) {
-                /*鎴愬姛鍥炶皟鍑芥暟*/
-                fun(JSON.parse(xmlhttp.responseText));
-            }else{
-                /*澶辫触鍥炶皟鍑芥暟*/
-                errFun;
-            }
-        }
-
-        /*鎺ュ彛杩炴帴锛屽厛鍒ゆ柇杩炴帴绫诲瀷鏄痯ost杩樻槸get*/
-        if(httpType === 'GET') {
-            xmlhttp.open("GET",httpUrl,async);
-            xmlhttp.send(null);
-        }else if(httpType === 'POST'){
-            xmlhttp.open("POST",httpUrl,async);
-            //鍙戦�佸悎閫傜殑璇锋眰澶翠俊鎭�
-            var defaultContentType = true;
-            for (var i=0;i<headerData.length;i++) {
-                for(var key in headerData[i]) {
-                    if (key === "Content-type") {
-                        defaultContentType = false;
-                    }
-                    xmlhttp.setRequestHeader(key, headerData[i][key]);
-                }
-            }
-            if (defaultContentType) {
-                xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
-            }
-            xmlhttp.send(defaultContentType?requestData:paramData);
-        }
-    }
-
-    document.onkeyup = function (e) {
-        if (window.event)//濡傛灉window.event瀵硅薄瀛樺湪锛屽氨浠ユ浜嬩欢瀵硅薄涓哄噯
-            e = window.event;
-        var key = e.charCode || e.keyCode;
-        if (key === 112) {
-            code.focus();
-        } else if (key === 113) {
-            matNo.focus();
-        } else if (key === 114) {
-            combBtn.focus();
-        } else if (key === 13) {
-            confirmBtn.focus();
-        }
-    }
-
-    document.onkeydown = function (e) {
-        if (window.event)//濡傛灉window.event瀵硅薄瀛樺湪锛屽氨浠ユ浜嬩欢瀵硅薄涓哄噯
-            e = window.event;
-        var key = e.charCode || e.keyCode;
-        if (key === 114) {
-            comb()
-        }
-    }
-
-    function help() {
-        window.alert("鈶� 鎸塅1杈撳叆鏉$爜\n" +
-            "鈶� 鎸塅2杈撳叆鍟嗗搧缂栧彿锛屾寜ENTER鏌ヨ锛岄�夋嫨鏁伴噺鍚庢彁鍙朶n" +
-            "鈶� 鎸塅3寮�濮嬬粍鎵榎n" +
-            "鍏跺畠锛氭寜F5鍒锋柊椤甸潰");
-    }
-</script>
-</html>
\ No newline at end of file
diff --git a/src/main/webapp/views/pdaCe/login.html b/src/main/webapp/views/pdaCe/login.html
deleted file mode 100644
index f3e327f..0000000
--- a/src/main/webapp/views/pdaCe/login.html
+++ /dev/null
@@ -1,152 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <meta charset="UTF-8">
-    <meta name="viewport" content="width=device-width, target-densitydpi=high-dpi, initial-scale=1.0, user-scalable=no"/>
-    <title>娴欐睙涓壃绔嬪簱鎶�鏈湁闄愬叕鍙�</title>
-    <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
-    <style>
-        html {
-            background-color: #fff;
-        }
-        body {
-            text-align: center;
-            padding: 10px 30px;
-        }
-        .login-form {
-            text-align: left;
-        }
-
-        .login-form input {
-            display: block;
-        }
-        .login-form button {
-            display: block;
-        }
-    </style>
-</head>
-<body>
-    <h2>绯荤粺鐧诲綍</h2>
-    <div class="login-form">
-        <div>
-            <span>璐﹀彿</span>
-            <input type="text" id="mobile" value="super">
-        </div>
-        <div style="margin-top: 5px">
-            <span>瀵嗙爜</span>
-            <input type="password" id="password" value="xltys1995">
-        </div>
-        <div style="margin-top: 8px;height: 20px;">
-            <button id="login" onclick="login()" style="padding: 5px 3px 0 3px">鐧诲綍</button>
-        </div>
-
-    </div>
-</body>
-<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
-<script type="text/javascript" src="../../static/js/tools/md5.js"></script>
-<script type="text/javascript">
-    document.onkeyup = function (e) {
-        if (window.event)//濡傛灉window.event瀵硅薄瀛樺湪锛屽氨浠ユ浜嬩欢瀵硅薄涓哄噯
-            e = window.event;
-        var code = e.charCode || e.keyCode;
-        if (code === 13) {
-            login()
-        }
-    }
-    document.onkeydown = function (e) {
-        if (window.event)//濡傛灉window.event瀵硅薄瀛樺湪锛屽氨浠ユ浜嬩欢瀵硅薄涓哄噯
-            e = window.event;
-        var code = e.charCode || e.keyCode;
-        if (code === 13) {
-            document.getElementById("login");
-        }
-    }
-    function login(){
-        httpRequest({
-            httpUrl: baseUrl+"/login.action",
-            type: 'post',
-            data: {
-                mobile: document.getElementById('mobile').value,
-                password: hex_md5(document.getElementById('password').value)
-            }
-        }, function (res) {
-            if (res.code === 200) {
-                // localStorage.setItem("token", res.data.token);
-                // localStorage.setItem("username", res.data.username);
-                setCookie("token", res.data.token);
-                window.location.href = "index.html";
-            } else {
-                alert(res.msg);
-            }
-
-        })
-    }
-
-    // 璁剧疆cookie
-    function setCookie(objName, objValue){//娣诲姞cookie
-        var str = objName + "=" + encodeURIComponent(objValue);
-        // if (objHours > 0) {//涓�0鏃朵笉璁惧畾杩囨湡鏃堕棿锛屾祻瑙堝櫒鍏抽棴鏃禼ookie鑷姩娑堝け
-        //     var date = new Date();
-        //     var ms = objHours * 3600 * 1000;
-        //     date.setTime(date.getTime() + ms);
-        //     str += "; expires=" + date.toUTCString();
-        // }
-        str += "; path=/";
-        document.cookie = str;
-    }
-
-    function httpRequest(paramObj,fun,errFun) {
-        var xmlhttp = null;
-        /*鍒涘缓XMLHttpRequest瀵硅薄锛�
-         *鑰佺増鏈殑 Internet Explorer锛圛E5 鍜� IE6锛変娇鐢� ActiveX 瀵硅薄锛歯ew ActiveXObject("Microsoft.XMLHTTP")
-         * */
-        if(window.XMLHttpRequest) {
-            xmlhttp = new XMLHttpRequest();
-        }else if(window.ActiveXObject) {
-            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
-        }
-        /*鍒ゆ柇鏄惁鏀寔璇锋眰*/
-        if(xmlhttp == null) {
-            alert('浣犵殑娴忚鍣ㄤ笉鏀寔XMLHttp');
-            return;
-        }
-        /*璇锋眰鏂瑰紡锛屽苟涓旇浆鎹负澶у啓*/
-        var httpType = (paramObj.type || 'GET').toUpperCase();
-        /*鏁版嵁绫诲瀷*/
-        var dataType = paramObj.dataType || 'json';
-        /*璇锋眰鎺ュ彛*/
-        var httpUrl = paramObj.httpUrl || '';
-        /*鏄惁寮傛璇锋眰*/
-        var async = paramObj.async || true;
-        /*璇锋眰鍙傛暟--post璇锋眰鍙傛暟鏍煎紡涓猴細foo=bar&lorem=ipsum*/
-        var paramData = paramObj.data || [];
-        var requestData = '';
-        for(var name in paramData) {
-            requestData += name + '='+ paramData[name] + '&';
-        }
-        requestData = requestData === '' ? '' : requestData.substring(0,requestData.length - 1);
-
-        /*璇锋眰鎺ユ敹*/
-        xmlhttp.onreadystatechange = function() {
-            if(xmlhttp.readyState === 4 && xmlhttp.status === 200) {
-                /*鎴愬姛鍥炶皟鍑芥暟*/
-                fun(JSON.parse(xmlhttp.responseText));
-            }else{
-                /*澶辫触鍥炶皟鍑芥暟*/
-                errFun;
-            }
-        }
-
-        /*鎺ュ彛杩炴帴锛屽厛鍒ゆ柇杩炴帴绫诲瀷鏄痯ost杩樻槸get*/
-        if(httpType === 'GET') {
-            xmlhttp.open("GET",httpUrl,async);
-            xmlhttp.send(null);
-        }else if(httpType === 'POST'){
-            xmlhttp.open("POST",httpUrl,async);
-            //鍙戦�佸悎閫傜殑璇锋眰澶翠俊鎭�
-            xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
-            xmlhttp.send(requestData);
-        }
-    }
-</script>
-</html>
\ No newline at end of file

--
Gitblit v1.9.1