From 0d549f0bb889983d2c6ab569a1304ac0c3fba6f6 Mon Sep 17 00:00:00 2001 From: whycq <10027870+whycq@user.noreply.gitee.com> Date: 星期一, 05 十二月 2022 14:50:57 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/hylyasrs' into hylyasrs --- src/main/webapp/views/locDetl/locDetl.html | 13 + src/main/webapp/views/wrkDetl/wrkDetl.html | 5 src/main/java/com/zy/asrs/mapper/LocDetlMapper.java | 5 src/main/webapp/views/wrkMast/wrkDetl.html | 1 src/main/java/com/zy/asrs/controller/LocMastController.java | 22 ++ src/main/resources/mapper/LocDetlMapper.xml | 61 ++-- src/main/webapp/views/pakStore/locDetlQuery.html | 21 + src/main/webapp/static/js/stoMan/stoQue.js | 16 pom.xml | 8 src/main/webapp/views/order/order.html | 2 src/main/webapp/views/wrkDetlLog/wrkDetlLog.html | 5 src/main/webapp/views/report/locDetl_detail.html | 82 +++++++ src/main/webapp/views/report/viewWorkOut.html | 5 src/main/java/com/zy/asrs/service/OrderDetlService.java | 2 src/main/webapp/static/js/order/out.js | 2 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 3 src/main/webapp/static/js/adjDetl/adjDetl.js | 2 src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 2 src/main/webapp/static/js/common.js | 12 src/main/java/com/zy/asrs/entity/LocMast.java | 6 src/main/java/com/zy/asrs/controller/OrderController.java | 95 ++++++++ src/main/java/com/zy/asrs/service/LocDetlService.java | 4 src/main/webapp/views/report/locDetl.html | 36 +++ src/main/java/com/zy/asrs/controller/LocDetlController.java | 84 +++++++ src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 15 + src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java | 3 src/main/resources/mapper/ViewWorkInMapper.xml | 3 src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java | 5 src/main/webapp/views/report/viewWorkIn.html | 5 src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java | 4 src/main/java/com/zy/common/model/LocDto.java | 2 src/main/webapp/static/js/cool.js | 2 src/main/resources/mapper/OrderDetlMapper.xml | 22 +- src/main/webapp/static/js/locDetl/locDetl.js | 2 src/main/webapp/views/waitPakinLog/waitPakinLog.html | 5 src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java | 13 + src/main/webapp/static/js/order/order.js | 5 src/main/webapp/views/waitPakin/waitPakin.html | 5 src/main/webapp/static/js/locMast/locMast.js | 22 + src/main/webapp/views/login.html | 1 src/main/resources/application.yml | 2 41 files changed, 530 insertions(+), 80 deletions(-) diff --git a/pom.xml b/pom.xml index 3baad37..e0b5149 100644 --- a/pom.xml +++ b/pom.xml @@ -22,8 +22,16 @@ <springfox.version>2.7.0</springfox.version> </properties> + + <dependencies> <dependency> + <groupId>javax.mail</groupId> + <artifactId>mail</artifactId> + <version>1.4.7</version> + </dependency> + + <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> diff --git a/src/main/java/com/zy/asrs/controller/LocDetlController.java b/src/main/java/com/zy/asrs/controller/LocDetlController.java index ad11d86..c227b76 100644 --- a/src/main/java/com/zy/asrs/controller/LocDetlController.java +++ b/src/main/java/com/zy/asrs/controller/LocDetlController.java @@ -12,13 +12,9 @@ import com.core.common.Cools; import com.core.common.DateUtils; import com.core.common.R; -import com.zy.asrs.entity.LocDetl; -import com.zy.asrs.entity.ManLocDetl; -import com.zy.asrs.entity.Mat; +import com.zy.asrs.entity.*; import com.zy.asrs.mapper.LocDetlMapper; -import com.zy.asrs.service.LocDetlService; -import com.zy.asrs.service.ManLocDetlService; -import com.zy.asrs.service.MatService; +import com.zy.asrs.service.*; import com.zy.common.web.BaseController; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -33,6 +29,10 @@ @Autowired private LocDetlService locDetlService; + @Autowired + private LocMastService locMastService; + @Autowired + private AdjDetlService adjDetlService; @Autowired private LocDetlMapper locDetlMapper; @@ -157,6 +157,78 @@ locDetlService.updateById(locDetl); return R.ok(); } + @RequestMapping(value = "/locDetl/updateBatch/auth") + @ManagerAuth(memo = "鍚堝悓鍙凤紙鎵瑰彿锛変慨鏀�") + public R updateBatch(LocDetl locDetl){ + if (Cools.isEmpty(locDetl) || null==locDetl.getMatnr()){ + return R.error("鍙傛暟寮傚父"); + }else if (locDetl.getBatch().equals(locDetl.getSku())){ + return R.error("鍓嶅悗鍚堝悓鍙蜂竴鑷达紝鏃犻渶淇敼锛侊紒锛�"); + } + LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetl.getLocNo())); + if (Cools.isEmpty(locMast) || !locMast.getLocSts().equals("F")){ + return R.error("搴撲綅鍙峰繀椤诲瓨鍦ㄥ苟涓斿簱浣嶇姸鎬佷负鈥淔鈥濓紒锛侊紒"); + } + try{ + LocDetl locDetlSource = locDetlService.selectItem(locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getBatch()); + if (Cools.isEmpty(locDetlSource) || (locDetl.getBatch()==null && locDetlSource.getBatch()!=null)){ + locDetlSource = locDetlService.selectOne(new EntityWrapper<LocDetl>() + .eq("loc_no",locDetl.getLocNo()).eq("matnr",locDetl.getMatnr()).eq("batch",locDetl.getBatch())); + if (Cools.isEmpty(locDetlSource)){ + return R.error("寮傚父"); + } + } + LocDetl locDetlEnd = locDetlService.selectItem(locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getSku()); + if (!Cools.isEmpty(locDetlEnd) && locDetl.getSku()==null && locDetlEnd.getBatch()!=null){ + locDetlEnd = locDetlService.selectOne(new EntityWrapper<LocDetl>() + .eq("loc_no",locDetl.getLocNo()).eq("matnr",locDetl.getMatnr()).eq("batch",locDetl.getSku())); + } + AdjDetl adjDetlSource = new AdjDetl(locDetl.getLocNo(),locDetl.getMatnr(),locDetl.getBatch(),null,locDetlSource.getAnfme(),null,null,locDetlSource.getAnfme()-locDetl.getAnfme(),null,"淇敼鍚堝悓鍙�:"+locDetl.getBatch()+"鈫�"+locDetl.getSku(),getUserId(),new Date(),getUserId(),new Date()); + AdjDetl adjDetlEnd=null; + if (Cools.isEmpty(locDetlEnd)){ + adjDetlEnd = new AdjDetl(locDetl.getLocNo(),locDetl.getMatnr(),locDetl.getSku(),null,0.0,null,null,locDetl.getAnfme(),null,"淇敼鍚堝悓鍙�:"+locDetl.getBatch()+"鈫�"+locDetl.getSku(),getUserId(),new Date(),getUserId(),new Date()); + }else { + adjDetlEnd = new AdjDetl(locDetl.getLocNo(),locDetl.getMatnr(),locDetl.getSku(),null,locDetlEnd.getAnfme(),null,null,locDetlEnd.getAnfme()+locDetl.getAnfme(),null,"淇敼鍚堝悓鍙�:"+locDetl.getBatch()+"鈫�"+locDetl.getSku(),getUserId(),new Date(),getUserId(),new Date()); + } + if (locDetlSource.getAnfme()-locDetl.getAnfme()==0){ + if (Cools.isEmpty(locDetlEnd)){ + locDetlSource.setBatch(locDetl.getSku()); + if (locDetl.getBatch()==null || locDetl.getBatch()==""){ + locDetlService.update(locDetlSource,new EntityWrapper<LocDetl>() + .eq("loc_no",locDetlSource.getLocNo()).eq("matnr",locDetlSource.getMatnr()).isNull("batch").or().eq("batch","")); + }else { + locDetlService.update(locDetlSource,new EntityWrapper<LocDetl>() + .eq("loc_no",locDetlSource.getLocNo()).eq("matnr",locDetlSource.getMatnr()).eq("batch",locDetl.getBatch())); + } + }else { + locDetlService.updateAnfme(locDetlEnd.getAnfme()+locDetl.getAnfme(),locDetlEnd.getLocNo(),locDetlEnd.getMatnr(),locDetlEnd.getBatch()); + if (locDetl.getBatch()==null || locDetl.getBatch()==""){ + locDetlService.delete(new EntityWrapper<LocDetl>() + .eq("loc_no",locDetlSource.getLocNo()).eq("matnr",locDetlSource.getMatnr()).isNull("batch").or().eq("batch","")); + }else { + locDetlService.delete(new EntityWrapper<LocDetl>() + .eq("loc_no",locDetlSource.getLocNo()).eq("matnr",locDetlSource.getMatnr()).eq("batch",locDetlSource.getBatch())); + } + } + }else if (locDetlSource.getAnfme()>locDetl.getAnfme()){ + locDetlService.updateAnfme(locDetlSource.getAnfme()-locDetl.getAnfme(),locDetlSource.getLocNo(),locDetlSource.getMatnr(),locDetlSource.getBatch()); + if (Cools.isEmpty(locDetlEnd)){ + locDetlSource.setAnfme(locDetl.getAnfme()); + locDetlSource.setBatch(locDetl.getSku()); + locDetlService.insert(locDetlSource); + }else { + locDetlService.updateAnfme(locDetlEnd.getAnfme()+locDetl.getAnfme(),locDetlEnd.getLocNo(),locDetlEnd.getMatnr(),locDetlEnd.getBatch()); + } + }else { + return R.error("杈撳叆鏁伴噺鏈夎锛岃瑙勮寖鎿嶄綔锛侊紒锛�"); + } + adjDetlService.insert(adjDetlSource); + adjDetlService.insert(adjDetlEnd); + }catch (Exception e){ + return R.error("寮傚父锛侊紒锛佽瑙勮寖鎿嶄綔锛侊紒锛�"); + } + return new R(201,"鍚堝悓鍙蜂慨鏀规垚鍔燂紝璇峰埛鏂伴〉闈紒锛侊紒"); + } @RequestMapping(value = "/locDetl/delete/auth") @ManagerAuth(memo = "搴撲綅鏄庣粏鍒犻櫎") diff --git a/src/main/java/com/zy/asrs/controller/LocMastController.java b/src/main/java/com/zy/asrs/controller/LocMastController.java index a5aea8f..3d7b9b3 100644 --- a/src/main/java/com/zy/asrs/controller/LocMastController.java +++ b/src/main/java/com/zy/asrs/controller/LocMastController.java @@ -96,6 +96,13 @@ return R.error(); } LocMast oldLocMast = locMastService.selectById(locMast.getLocNo()); + if (locX(locMast.getLocNo())){ + if (oldLocMast.getLocSts().equals("X")){ + return R.error("姝ゅ娌℃湁搴撲綅锛岃鏍规嵁鐜板満鎯呭喌鎿嶄綔锛侊紒锛�"); + }else { + locMast.setLocSts("X"); + } + } if (locMast.getLocSts().equals("F") && (oldLocMast.getLocSts().equals("D") || oldLocMast.getLocSts().equals("O"))) { return R.error("褰撳墠鎿嶄綔宸茶闃绘锛岃鑱旂郴绠$悊鍛�"); } @@ -110,6 +117,21 @@ locMastService.updateById(locMast); return R.ok(); } + public boolean locX(String locNo){ + switch (locNo){ + case "1300601": case "1300602": case "1300603": case "1300604": case "1300605": case "1300606": + case "1300701": case "1300702": case "1300703": case "1300704": case "1300705": case "1300706": + case "1301301": case "1301302": case "1301303": case "1301304": case "1301305": case "1301306": + case "1301401": case "1301402": case "1301403": case "1301404": case "1301405": case "1301406": + case "1302001": case "1302002": case "1302003": case "1302004": case "1302005": case "1302006": + case "1301205": case "1301206": + case "1302402": + case "1402402": + return true; + default: + return false; + } + } @RequestMapping(value = "/locMast/delete/auth") @ManagerAuth(memo = "搴撲綅鍒犻櫎") diff --git a/src/main/java/com/zy/asrs/controller/OrderController.java b/src/main/java/com/zy/asrs/controller/OrderController.java index 8063a13..e65522e 100644 --- a/src/main/java/com/zy/asrs/controller/OrderController.java +++ b/src/main/java/com/zy/asrs/controller/OrderController.java @@ -33,6 +33,8 @@ private WrkDetlService wrkDetlService; @Autowired private WaitPakinService waitPakinService; + @Autowired + private LocDetlService locDetlService; @RequestMapping(value = "/order/nav/list/auth") @ManagerAuth @@ -334,4 +336,97 @@ return R.ok(); } + + @RequestMapping(value = "/order/form/add/authtest") + @ManagerAuth(memo = "鎵嬪姩娣诲姞璁㈠崟") + @Transactional + public R formAddTest(@RequestBody OrderDomainParam param){ + if(Cools.isEmpty(param.getOrderNo())){ + String prefix = ""; + DocType docType = docTypeService.selectById(param.getDocType()); + if(!Cools.isEmpty(docType)){ + prefix = docType.getPakin() == 1 ? "RK" : "CK"; + } + param.setOrderNo(prefix + snowflakeIdWorker.nextId()); + } + Order order = orderService.selectByNo(param.getOrderNo()); + if (order != null) { + return R.error("鍗曟嵁缂栧彿宸插瓨鍦�"); + } + Date now = new Date(); + order = new Order( + String.valueOf(snowflakeIdWorker.nextId()), // 缂栧彿[闈炵┖] + param.getOrderNo(), // 璁㈠崟缂栧彿 + DateUtils.convert(now), // 鍗曟嵁鏃ユ湡 + param.getDocType(), // 鍗曟嵁绫诲瀷 + null, // 椤圭洰缂栧彿 + null, // + null, // 璋冩嫧椤圭洰缂栧彿 + null, // 鍒濆绁ㄦ嵁鍙� + null, // 绁ㄦ嵁鍙� + null, // 瀹㈡埛缂栧彿 + null, // 瀹㈡埛 + null, // 鑱旂郴鏂瑰紡 + null, // 鎿嶄綔浜哄憳 + null, // 鍚堣閲戦 + null, // 浼樻儬鐜� + null, // 浼樻儬閲戦 + null, // 閿�鍞垨閲囪喘璐圭敤鍚堣 + null, // 瀹炰粯閲戦 + null, // 浠樻绫诲瀷 + null, // 涓氬姟鍛� + null, // 缁撶畻澶╂暟 + null, // 閭垂鏀粯绫诲瀷 + null, // 閭垂 + null, // 浠樻鏃堕棿 + null, // 鍙戣揣鏃堕棿 + null, // 鐗╂祦鍚嶇О + null, // 鐗╂祦鍗曞彿 + 1L, // 璁㈠崟鐘舵�� + 1, // 鐘舵�� + getUserId(), // 娣诲姞浜哄憳 + now, // 娣诲姞鏃堕棿 + getUserId(), // 淇敼浜哄憳 + now, // 淇敼鏃堕棿 + null // 澶囨敞 + ); + if (!orderService.insert(order)) { + throw new CoolException("淇濆瓨璁㈠崟涓绘。澶辫触"); + } + List<DetlDto> list = new ArrayList<>(); + for (OrderDetl orderDetl : param.getOrderDetlList()) { + DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getBatch()); + if (DetlDto.has(list, dto)) { + OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch()); + item.setAnfme(item.getAnfme() + orderDetl.getAnfme()); + if (!orderDetlService.updateById(item)) { + throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�"); + } + } else { + list.add(dto); + orderDetl.setOrderId(order.getId()); + orderDetl.setOrderNo(order.getOrderNo()); + orderDetl.setCreateBy(getUserId()); + orderDetl.setCreateTime(now); + orderDetl.setUpdateBy(getUserId()); + orderDetl.setUpdateTime(now); + orderDetl.setStatus(1); + orderDetl.setQty(0.0D); + + //缁欐坊鍔犲瓙璁㈠崟 + Set<String> exist = new HashSet<>(); + List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(), orderDetl.getBatch(), null, exist); + + + if (!orderDetlService.insert(orderDetl)) { + throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�"); + } + } + } + return R.ok("璁㈠崟娣诲姞鎴愬姛"); + } + + + + } diff --git a/src/main/java/com/zy/asrs/entity/LocMast.java b/src/main/java/com/zy/asrs/entity/LocMast.java index 23d8301..0ee2575 100644 --- a/src/main/java/com/zy/asrs/entity/LocMast.java +++ b/src/main/java/com/zy/asrs/entity/LocMast.java @@ -26,8 +26,8 @@ /** * 搴撲綅鍙� */ - @ApiModelProperty(value= "搴撲綅鍙�") - @TableId(value = "loc_no", type = IdType.INPUT) + @ApiModelProperty(value= "搴撲綅鍙�") //鍙傛暟绫诲瀷涓篠tring锛屼綔鐢ㄤ负姝ゅ睘鎬х殑绠�瑕佹弿杩般�� + @TableId(value = "loc_no", type = IdType.INPUT) // @TableId 娉ㄨВ鐨勭敤娉曪紝璇ユ敞瑙g敤浜庡皢鏌愪釜鎴愬憳鍙橀噺鎸囧畾涓烘暟鎹〃涓婚敭 @TableField("loc_no") private String locNo; @@ -165,7 +165,7 @@ @ApiModelProperty(value= "") private String mk; - @ApiModelProperty(value= "") + @ApiModelProperty(value= "鏉$爜鍙�") private String barcode; @ApiModelProperty(value= "") diff --git a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java index 1489a3b..47df240 100644 --- a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java +++ b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java @@ -34,7 +34,7 @@ @Update("update asr_loc_detl set loc_no = #{newLocNo}, modi_time=getDate() where loc_no = #{oldLocNo}") int updateLocNo(String newLocNo, String oldLocNo); - @Select("SELECT ld.loc_no FROM asr_loc_detl ld LEFT JOIN asr_loc_mast lm ON ld.loc_no = lm.loc_no WHERE (1 = 1 AND ld.matnr = #{matnr} AND (lm.row1 >= #{start} AND lm.row1 <= #{end}) AND lm.loc_sts = 'F' AND DateDiff(dd, ld.appe_time, getdate()) = 0) ORDER BY ld.appe_time ASC") + @Select("SELECT ld.loc_no FROM asr_loc_detl ld LEFT JOIN asr_loc_mast lm ON ld.loc_no = lm.loc_no WHERE (1 = 1 AND ld.matnr = #{matnr} AND lm.bay1 >= 10 AND lm.bay1 <=20 AND (lm.row1 >= #{start} AND lm.row1 <= #{end}) AND lm.loc_sts = 'F' AND DateDiff(dd, ld.appe_time, getdate()) = 0) ORDER BY ld.appe_time ASC") List<String> selectSameDetlToday(@Param("matnr") String matnr, @Param("start") Integer start, @Param("end") Integer end); List<LocDetl> getStockStatis(Map<String, Object> map); @@ -56,6 +56,9 @@ List<LocDetl> queryStock(@Param("matnr")String matnr, @Param("batch")String batch, @Param("orderNo")String orderNo, @Param("locNos") Set<String> locNos); + List<LocDetl> queryStockOther(@Param("matnr")String matnr, @Param("batch")String batch, @Param("orderNo")String orderNo, @Param("locNos") Set<String> locNos,@Param("locNo")String locNo); + + Double queryStockAnfme(String matnr, String batch); List<StockVo> queryStockTotal(); diff --git a/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java b/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java index 51c99ad..b67806c 100644 --- a/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java +++ b/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java @@ -34,4 +34,7 @@ int increaseQtyByOrderNo(@Param("orderNo")String orderNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("qty")Double qty); int increaseWorkQty(@Param("orderId")Long orderId, @Param("matnr")String matnr, @Param("batch")String batch, @Param("workQty")Double workQty); + + int increaseWorkQtytest(@Param("orderNo")String orderNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("anfme")Double anfme); + } diff --git a/src/main/java/com/zy/asrs/service/LocDetlService.java b/src/main/java/com/zy/asrs/service/LocDetlService.java index 35aae4d..ce05fcb 100644 --- a/src/main/java/com/zy/asrs/service/LocDetlService.java +++ b/src/main/java/com/zy/asrs/service/LocDetlService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.service.IService; import com.zy.asrs.entity.LocDetl; import com.zy.asrs.entity.result.StockVo; +import org.apache.ibatis.annotations.Param; import java.util.List; import java.util.Map; @@ -45,6 +46,9 @@ List<LocDetl> queryStock(String matnr, String batch, String orderNo, Set<String> locNos); + List<LocDetl> queryStockOther(String matnr, String batch, String orderNo, Set<String> locNos,String locNo); + + Double queryStockAnfme(String matnr, String batch); List<StockVo> queryStockTotal(); diff --git a/src/main/java/com/zy/asrs/service/OrderDetlService.java b/src/main/java/com/zy/asrs/service/OrderDetlService.java index ecf08d2..ede8c56 100644 --- a/src/main/java/com/zy/asrs/service/OrderDetlService.java +++ b/src/main/java/com/zy/asrs/service/OrderDetlService.java @@ -37,4 +37,6 @@ * @return */ boolean increaseWorkQty(Long orderId, String matnr, String batch, Double workQty); + + boolean increaseWorkQtytest(String orderNo, String matnr, String batch, Double anfme); } diff --git a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java index e61bc6b..59bd94e 100644 --- a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java @@ -82,6 +82,11 @@ } @Override + public List<LocDetl> queryStockOther(String matnr, String batch, String orderNo, Set<String> locNos,String locNo) { + return this.baseMapper.queryStockOther(matnr, batch, orderNo, locNos,locNo); + } + + @Override public Double queryStockAnfme(String matnr, String batch) { return this.baseMapper.queryStockAnfme(matnr, batch); } 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 9a0bc7f..5e4a8a6 100644 --- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java @@ -93,6 +93,8 @@ int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",param.getBarcode())); int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode())); +// int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode()) +// .last(" wrk_no IN ( SELECT wrk_no FROM asr_wrk_mast WHERE wrk_sts != 15 )")); if (countLoc > 0 || countWrk > 0) { throw new CoolException("宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + param.getBarcode()); } diff --git a/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java index 327edbb..3e98ae8 100644 --- a/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java @@ -90,4 +90,17 @@ public boolean increaseWorkQty(Long orderId, String matnr, String batch, Double workQty) { return this.baseMapper.increaseWorkQty(orderId, matnr, batch, workQty) > 0; } + + /** + * 鍏ュ嚭搴撲换鍔$敓鎴愭椂锛屾洿鏂板崟鎹〃涓綔涓氭暟閲� + * @param orderNo + * @param matnr + * @param batch + * @param anfme + * @return + */ + @Override + public boolean increaseWorkQtytest(String orderNo, String matnr, String batch, Double anfme) { + return this.baseMapper.increaseWorkQtytest(orderNo, matnr, batch, anfme) > 0; + } } 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 3ebff2a..7b17868 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -340,7 +340,7 @@ throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�"); } // 淇敼璁㈠崟鏄庣粏 - if (!orderDetlService.increase(orderDetl.getOrderId(), orderDetl.getMatnr(), orderDetl.getBatch(), locDto.getAnfme())) { + if (!orderDetlService.increaseWorkQty(orderDetl.getOrderId(), orderDetl.getMatnr(), orderDetl.getBatch(), locDto.getAnfme())) { throw new CoolException("淇敼璁㈠崟鏄庣粏鏁伴噺澶辫触"); } orderService.updateSettle(orderDetl.getOrderId(), 2L, userId); @@ -802,6 +802,7 @@ if(wrkMast.getIoType() == 101 || wrkMast.getIoType() == 103) { List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo()); for (WrkDetl wrkDetl : wrkDetls) { + //瀛楃涓蹭笉涓虹┖ if (!Cools.isEmpty(wrkDetl.getOrderNo())) { if (!orderDetlService.decrease(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme())) { throw new CoolException("璁㈠崟鏁版嵁鍥炴粴澶辫触"); diff --git a/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java index 173bc58..c550e83 100644 --- a/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java @@ -104,11 +104,11 @@ } // 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。 if (!wrkDetlLogService.save(wrkMast.getWrkNo())) { -// exceptionHandle("淇濆瓨宸ヤ綔鏄庣粏鍘嗗彶妗workNo={0}]澶辫触", wrkMast.getWrkNo()); + exceptionHandle("淇濆瓨宸ヤ綔鏄庣粏鍘嗗彶妗workNo={0}]澶辫触", wrkMast.getWrkNo()); } // 鍒犻櫎宸ヤ綔鏄庣粏妗� if (!wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()))) { -// exceptionHandle("鍒犻櫎宸ヤ綔鏄庣粏妗workNo={0}]澶辫触", wrkMast.getWrkNo()); + exceptionHandle("鍒犻櫎宸ヤ綔鏄庣粏妗workNo={0}]澶辫触", wrkMast.getWrkNo()); } } catch (Exception e) { log.error("fail", e); 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 f5fb2df..9f8ce99 100644 --- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java @@ -116,10 +116,13 @@ // 鏇存柊璁㈠崟瀹屾垚鏁伴噺 OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch()); + if(orderDetl==null){ + orderDetl=orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null); + } try { if(!Cools.isEmpty(orderDetl)){ if(!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), - wrkDetl.getBatch(),wrkDetl.getAnfme())){ + orderDetl.getBatch(),wrkDetl.getAnfme())){ // exceptionHandle("鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]", // wrkMast.getWrkNo(), wrkMast.getLocNo()); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); @@ -164,10 +167,13 @@ // 鏇存柊璁㈠崟瀹屾垚鏁伴噺 OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch()); + if(orderDetl==null){ + orderDetl=orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null); + } try { if(!Cools.isEmpty(orderDetl)){ if(!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), - wrkDetl.getBatch(),wrkDetl.getAnfme())){ + orderDetl.getBatch(),wrkDetl.getAnfme())){ // exceptionHandle("鎷f枡鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]", // wrkMast.getWrkNo(), wrkMast.getLocNo()); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); @@ -344,10 +350,13 @@ for (WrkDetl wrkDetl : wrkDetls101) { // 鏇存柊璁㈠崟瀹屾垚鏁伴噺 OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch()); + if(orderDetl==null){ + orderDetl=orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null); + } try { if(!Cools.isEmpty(orderDetl)){ if(!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), - wrkDetl.getBatch(),wrkDetl.getAnfme())){ + orderDetl.getBatch(),wrkDetl.getAnfme())){ // exceptionHandle("鍏ㄦ澘鍑哄簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]", // wrkMast.getWrkNo(), wrkMast.getLocNo()); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); diff --git a/src/main/java/com/zy/common/model/LocDto.java b/src/main/java/com/zy/common/model/LocDto.java index ca099a3..b78237e 100644 --- a/src/main/java/com/zy/common/model/LocDto.java +++ b/src/main/java/com/zy/common/model/LocDto.java @@ -25,10 +25,12 @@ private boolean lack = false; + //鐩爣绔欑偣 private List<Integer> staNos; private Integer staNo; + public LocDto() { } diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index b51131d..d05f03d 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -10,7 +10,7 @@ enabled: false datasource: driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver - url: jdbc:sqlserver://192.168.4.15:1433;databasename=hylyasrs + url: jdbc:sqlserver://10.10.10.210:1433;databasename=hylyasrs username: sa password: sa@123 mvc: diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml index 557c698..61c2dc6 100644 --- a/src/main/resources/mapper/LocDetlMapper.xml +++ b/src/main/resources/mapper/LocDetlMapper.xml @@ -97,6 +97,9 @@ <if test="anfme!=null and anfme!='' "> and a.anfme like '%' + #{anfme} + '%' </if> + <if test="batch!=null and batch!='' "> + and a.batch like '%' + #{batch} + '%' + </if> <if test="startTime!=null and endTime!=null"> and a.modi_time between #{startTime} and #{endTime} </if> @@ -108,14 +111,14 @@ <select id="getStockOutPage" resultMap="BaseResultMap"> select * from ( - select - ROW_NUMBER() over (order by a.appe_time,a.matnr,a.loc_no) as row, - a.* - from asr_loc_detl a - left join asr_loc_mast b on a.loc_no = b.loc_no - where 1=1 - and b.loc_sts = 'F' - <include refid="stockOutCondition"></include> + select + ROW_NUMBER() over (order by a.appe_time,a.matnr,a.loc_no) as row, + a.* + from asr_loc_detl a + left join asr_loc_mast b on a.loc_no = b.loc_no + where 1=1 + and b.loc_sts = 'F' + <include refid="stockOutCondition"></include> ) t where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize}) </select> @@ -132,19 +135,19 @@ <select id="getStockStatis" resultType="com.zy.asrs.entity.LocDetl"> select * from ( - select - ROW_NUMBER() over (order by sum(a.anfme) desc) as row - , a.matnr - , sum(a.anfme) as anfme - from asr_loc_detl a - where 1=1 - <include refid="stockOutCondition"></include> - group by a.matnr - ) t where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize}) + select + ROW_NUMBER() over (order by sum(a.anfme) desc) as row + , a.matnr + , sum(a.anfme) as anfme + from asr_loc_detl a + where 1=1 + <include refid="stockOutCondition"></include> + group by a.matnr + ) t where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize}) </select> <select id="getStockStatisCount" parameterType="java.util.Map" resultType="java.lang.Integer"> - select count(1) as count from + select count(1) as count from ( select a.matnr @@ -152,7 +155,7 @@ where 1=1 <include refid="stockOutCondition"></include> group by a.matnr - ) b + ) b </select> <select id="getStockStatisExcel" resultType="com.zy.asrs.entity.LocDetl"> @@ -202,14 +205,14 @@ where 1=1 and b.loc_sts = 'F' and a.matnr = #{matnr} -<!-- <choose>--> -<!-- <when test="batch != null and batch != ''">--> -<!-- and a.batch = #{batch}--> -<!-- </when>--> -<!-- <otherwise>--> -<!-- and (a.batch IS NULL OR a.batch = '')--> -<!-- </otherwise>--> -<!-- </choose>--> + <!-- <choose>--> + <!-- <when test="batch != null and batch != ''">--> + <!-- and a.batch = #{batch}--> + <!-- </when>--> + <!-- <otherwise>--> + <!-- and (a.batch IS NULL OR a.batch = '')--> + <!-- </otherwise>--> + <!-- </choose>--> <if test="batch != null and batch != ''"> and a.batch = #{batch} </if> @@ -284,8 +287,8 @@ <select id="queryStockAnfme" resultType="java.lang.Double"> select sum(anfme) as count from man_loc_detl - where 1=1 - and matnr = #{matnr} + where 1=1 + and matnr = #{matnr} <if test="batch != null and batch != ''"> and batch = #{batch} </if> diff --git a/src/main/resources/mapper/OrderDetlMapper.xml b/src/main/resources/mapper/OrderDetlMapper.xml index 74ebaf0..25b6cf8 100644 --- a/src/main/resources/mapper/OrderDetlMapper.xml +++ b/src/main/resources/mapper/OrderDetlMapper.xml @@ -98,17 +98,17 @@ <select id="getPakoutPage" resultMap="BaseResultMap"> select * from ( - select - ROW_NUMBER() over (order by mo.create_time desc) as row, - mod.* - from man_order_detl mod - inner join man_order mo on mod.order_id = mo.id - inner join man_doc_type mdt on mo.doc_type = mdt.doc_id - where 1=1 - and mo.settle <= 2 - and mo.status = 1 - and mdt.pakout = 1 - <include refid="pakOutPageCondition"></include> + select + ROW_NUMBER() over (order by mo.create_time desc) as row, + mod.* + from man_order_detl mod + inner join man_order mo on mod.order_id = mo.id + inner join man_doc_type mdt on mo.doc_type = mdt.doc_id + where 1=1 + and mo.settle <= 2 + and mo.status = 1 + and mdt.pakout = 1 + <include refid="pakOutPageCondition"></include> ) t where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize}) </select> diff --git a/src/main/resources/mapper/ViewWorkInMapper.xml b/src/main/resources/mapper/ViewWorkInMapper.xml index e63997b..7eb0f43 100644 --- a/src/main/resources/mapper/ViewWorkInMapper.xml +++ b/src/main/resources/mapper/ViewWorkInMapper.xml @@ -11,6 +11,9 @@ <if test="matnr!=null and matnr!='' "> and matnr like '%' + #{matnr} + '%' </if> + <if test="batch!=null and batch!='' "> + and batch like '%' + #{batch} + '%' + </if> <if test="maktx!=null and maktx!='' "> and (maktx like '%' + #{maktx} + '%' or matnr like '%' + #{maktx} + '%' diff --git a/src/main/webapp/static/js/adjDetl/adjDetl.js b/src/main/webapp/static/js/adjDetl/adjDetl.js index cf5c1f8..3db8a2b 100644 --- a/src/main/webapp/static/js/adjDetl/adjDetl.js +++ b/src/main/webapp/static/js/adjDetl/adjDetl.js @@ -30,7 +30,7 @@ // ,{field: 'adjCtns', align: 'center',title: '鍙樻洿绠辨暟'} ,{field: 'adjQty', align: 'center',title: '鍙樻洿鏁伴噺'} // ,{field: 'adjWt', align: 'center',title: '鍙樻洿閲嶉噺'} - ,{field: 'memo', align: 'center',title: '澶囨敞',hide:true} + ,{field: 'memo', align: 'center',title: '澶囨敞',width:300 ,hide:false} ,{field: 'modiUser$', align: 'center',title: '淇敼浜哄憳'} ,{field: 'modiTime$', align: 'center',title: '淇敼鏃堕棿'} // ,{field: 'appeUser', align: 'center',title: '鍒涘缓鑰�'} diff --git a/src/main/webapp/static/js/common.js b/src/main/webapp/static/js/common.js index f65aef1..254f32b 100644 --- a/src/main/webapp/static/js/common.js +++ b/src/main/webapp/static/js/common.js @@ -225,12 +225,12 @@ {field: 'matnr', align: 'center',title: '鍟嗗搧缂栧彿', sort:true} ,{field: 'maktx', align: 'center',title: '鍟嗗搧鍚嶇О', sort:true} ,{field: 'orderNo', align: 'center',title: '鍗曟嵁缂栧彿', hide: true} - ,{field: 'batch', align: 'center',title: '鎵瑰彿', sort:true} + ,{field: 'batch', align: 'center',title: '鍚堝悓鍙�', sort:true} ,{field: 'anfme', align: 'center',title: '鏁伴噺'} ,{field: 'zpallet', align: 'center',title: '鎵樼洏鏉$爜'} ,{field: 'specs', align: 'center',title: '瑙勬牸'} - ,{field: 'model', align: 'center',title: '浠g爜', hide: false} + ,{field: 'model', align: 'center',title: '浠g爜', hide: true} ,{field: 'color', align: 'center',title: '棰滆壊', hide: true} ,{field: 'brand', align: 'center',title: '鍝佺墝', hide: true} ,{field: 'unit', align: 'center',title: '鍗曚綅', hide: true} @@ -243,10 +243,10 @@ ,{field: 'manuDate', align: 'center',title: '鐢熶骇鏃ユ湡', hide: true} ,{field: 'itemNum', align: 'center',title: '鍝侀」鏁�', hide: true} ,{field: 'safeQty', align: 'center',title: '瀹夊叏搴撳瓨閲�', hide: true} - ,{field: 'weight', align: 'center',title: '鍗曠鍑�閲�', hide: false} - ,{field: 'length', align: 'center',title: '鍗曠姣涢噸', hide: false} - ,{field: 'volume', align: 'center',title: '鍗曠浣撶Н', hide: false} - ,{field: 'threeCode', align: 'center',title: '绠卞瓙灏哄', hide: false} + ,{field: 'weight', align: 'center',title: '鍗曠鍑�閲�', hide: true} + ,{field: 'length', align: 'center',title: '鍗曠姣涢噸', hide: true} + ,{field: 'volume', align: 'center',title: '鍗曠浣撶Н', hide: true} + ,{field: 'threeCode', align: 'center',title: '绠卞瓙灏哄', hide: true} ,{field: 'supp', align: 'center',title: '渚涘簲鍟�', hide: true} ,{field: 'suppCode', align: 'center',title: '渚涘簲鍟嗙紪鐮�', hide: true} ,{field: 'beBatch$', align: 'center',title: '鏄惁鎵规', hide: true} diff --git a/src/main/webapp/static/js/cool.js b/src/main/webapp/static/js/cool.js index d817c09..688e893 100644 --- a/src/main/webapp/static/js/cool.js +++ b/src/main/webapp/static/js/cool.js @@ -15,7 +15,9 @@ */ function autoShow(id) { var cac = document.getElementById(id).parentNode; + console.log(cac); var cacw = cac.getElementsByClassName("cool-auto-complete-window")[0]; + console.log(cacw); if (cacw.style.display === "none" || cacw.style.display === ""){ cacw.style.display = "block"; var cacwi = cacw.getElementsByClassName("cool-auto-complete-window-input")[0]; diff --git a/src/main/webapp/static/js/locDetl/locDetl.js b/src/main/webapp/static/js/locDetl/locDetl.js index 211c380..2466f8e 100644 --- a/src/main/webapp/static/js/locDetl/locDetl.js +++ b/src/main/webapp/static/js/locDetl/locDetl.js @@ -5,7 +5,7 @@ {field: 'matnr', align: 'center',title: '鍟嗗搧缂栧彿', sort:true} ,{field: 'maktx', align: 'center',title: '鍟嗗搧鍚嶇О', sort:true} ,{field: 'orderNo', align: 'center',title: '鍗曟嵁缂栧彿', hide: false} - ,{field: 'batch', align: 'center',title: '鎵瑰彿', width: 300, sort:true} + ,{field: 'batch', align: 'center',title: '鍚堝悓鍙�', width: 300, sort:true} ,{field: 'anfme', align: 'center',title: '鏁伴噺'} ,{field: 'zpallet', align: 'center',title: '鎵樼洏鏉$爜'} ,{field: 'specs', align: 'center',title: '閰嶇疆'} diff --git a/src/main/webapp/static/js/locMast/locMast.js b/src/main/webapp/static/js/locMast/locMast.js index 54454f9..c9bafaf 100644 --- a/src/main/webapp/static/js/locMast/locMast.js +++ b/src/main/webapp/static/js/locMast/locMast.js @@ -417,14 +417,17 @@ layer.msg(banMsg); return; } - method("add"); + method("/locMast/add/auth"); }); // 鏁版嵁淇敼鍔ㄤ綔 form.on('submit(edit)', function () { - method("update") + method("/locMast/update/auth") }); - + // 淇敼鍚堝悓鍙峰姩浣� + form.on('submit(pakoutPreview)', function () { + method("/locDetl/updateBatch/auth") + }); function method(name){ var index = layer.load(1, { shade: [0.5,'#000'] //0.1閫忔槑搴︾殑鑳屾櫙 @@ -459,10 +462,17 @@ barcode: $('#barcode').val(), PdcType: $('#PdcType').val(), ctnNo: $('#ctnNo').val(), + batch: $('#batch').val(), + anfme: $('#anfme').val(), + matnr: $('#matnr').val(), + maktx: $('#maktx').val(), + zpallet: $('#zpallet').val(), + specs: $('#specs').val(), + sku: $('#sku').val(), }; $.ajax({ - url: baseUrl+"/locMast/"+name+"/auth", + url: baseUrl+name, headers: {'token': localStorage.getItem('token')}, data: top.reObject(data), method: 'POST', @@ -475,6 +485,10 @@ }); } else if (res.code === 403){ top.location.href = baseUrl+"/"; + }else if (res.code===201){ + layer.msg(res.msg); + parent.layer.closeAll(); + parent.parent.layer.closeAll(); }else { layer.msg(res.msg) } diff --git a/src/main/webapp/static/js/order/order.js b/src/main/webapp/static/js/order/order.js index e277615..7214d80 100644 --- a/src/main/webapp/static/js/order/order.js +++ b/src/main/webapp/static/js/order/order.js @@ -31,6 +31,10 @@ } } }) + + + + // 娓叉煋琛ㄦ牸 var insTb = table.render({ @@ -389,6 +393,7 @@ }); } }) + // 寮圭獥涓嶅嚭鐜版粴鍔ㄦ潯 $(layero).children('.layui-layer-content').css('overflow', 'visible'); layui.form.render('select'); diff --git a/src/main/webapp/static/js/order/out.js b/src/main/webapp/static/js/order/out.js index be85831..86f2b28 100644 --- a/src/main/webapp/static/js/order/out.js +++ b/src/main/webapp/static/js/order/out.js @@ -125,6 +125,7 @@ function pakoutPreview(ids) { let loadIndex = layer.load(2); + console.log("1111") $.ajax({ url: baseUrl + "/out/pakout/preview/auth", headers: {'token': localStorage.getItem('token')}, @@ -163,6 +164,7 @@ {field: 'anfme', title: '鏁伴噺', align: 'center', width: 90, style: 'font-weight: bold'}, {field: 'locNo', title: '璐т綅', align: 'center', width: 100, templet: '#locNoTpl'}, {field: 'staNos', align: 'center', title: '鍑哄簱绔�', merge: ['locNo'], templet: '#tbBasicTbStaNos'}, + //{field: 'staState', title: '鐘舵��', align: 'center'}, {type: 'checkbox', merge: ['locNo']}, ]], done: function (res) { diff --git a/src/main/webapp/static/js/stoMan/stoQue.js b/src/main/webapp/static/js/stoMan/stoQue.js index 76e6a1b..b6fc115 100644 --- a/src/main/webapp/static/js/stoMan/stoQue.js +++ b/src/main/webapp/static/js/stoMan/stoQue.js @@ -4,21 +4,21 @@ var table = layui.table; var $ = layui.jquery; var layer = layui.layer; - var layDate = layui.laydate; + var layDate = layui.laydate; //鏃堕棿鎺т欢 var form = layui.form; layDate.render({ elem: '.layui-laydate-range' - ,type: 'datetime' - ,range: true + ,type: 'datetime' //鏃ユ湡鏃堕棿閫夋嫨鍣� 鍙�夊勾銆佹湀銆佹棩銆佹椂銆佸垎銆佺 + ,range: true //璁剧疆涓簍rue锛岄粯璁ら噰鐢ㄢ��-鈥濆垎鍓� }); // 鏁版嵁娓叉煋 tableIns = table.render({ - elem: '#stoQue', + elem: '#stoQue', //table id=鈥渟toQue鈥� headers: {token: localStorage.getItem('token')}, url: baseUrl+'/locMast/list/auth', - page: true, + page: true, //寮�鍚垎椤� limit: 20, limits: [20, 30, 50, 100, 200, 500], even: true, @@ -110,8 +110,8 @@ case 'refreshSto': // todo:luxiaotao alert("杩樻病鍋�"); break; - case 'exportData': - layer.confirm('纭畾瀵煎嚭Excel鍚�', {shadeClose: true}, function(){ + case 'exportData': //瀵煎嚭Excel + layer.confirm('纭畾瀵煎嚭Excel鍚�', {shadeClose: true}, function(){ var titles=[]; var fields=[]; obj.config.cols[0].map(function (col) { @@ -129,7 +129,7 @@ 'fields': fields }; $.ajax({ - url: baseUrl+"/wrkLastno/export/auth", + url: baseUrl+"/locMast/export/auth", headers: {'token': localStorage.getItem('token')}, data: JSON.stringify(param), dataType:'json', diff --git a/src/main/webapp/views/locDetl/locDetl.html b/src/main/webapp/views/locDetl/locDetl.html index 6248d71..990f1a2 100644 --- a/src/main/webapp/views/locDetl/locDetl.html +++ b/src/main/webapp/views/locDetl/locDetl.html @@ -29,6 +29,11 @@ <input class="layui-input" type="text" name="matnr" placeholder="鍟嗗搧缂栧彿" autocomplete="off"> </div> </div> + <div class="layui-inline"> + <div class="layui-input-inline"> + <input class="layui-input" type="text" name="batch" placeholder="鍚堝悓鍙�" autocomplete="off"> + </div> + </div> <!-- <div class="layui-inline">--> <!-- <div class="layui-input-inline">--> <!-- <input class="layui-input" type="text" name="row" placeholder="鎺掓暟" autocomplete="off">--> @@ -36,7 +41,13 @@ <!-- </div>--> <div class="layui-inline"> <div class="layui-input-inline"> - <input class="layui-input" type="text" name="condition" placeholder="璇疯緭鍏�" autocomplete="off"> + <input class="layui-input" type="text" name="condition" placeholder="鍟嗗搧鍚嶇О" autocomplete="off"> + </div> + + </div> + <div class="layui-inline"> + <div class="layui-input-inline"> + <input class="layui-input" type="text" name="batch" placeholder="鎵瑰彿" autocomplete="off"> </div> </div> diff --git a/src/main/webapp/views/login.html b/src/main/webapp/views/login.html index d7aa305..b9dc922 100644 --- a/src/main/webapp/views/login.html +++ b/src/main/webapp/views/login.html @@ -74,6 +74,7 @@ <input id="username" class="input100" type="text" name="username" placeholder="username" autocomplete="off"> <span class="focus-input100"></span> <span class="symbol-input100"> + <i class="fa fa-user"></i> </span> </div> diff --git a/src/main/webapp/views/order/order.html b/src/main/webapp/views/order/order.html index f5997c4..6f6141e 100644 --- a/src/main/webapp/views/order/order.html +++ b/src/main/webapp/views/order/order.html @@ -54,6 +54,8 @@ </select> </div> </div> + + <div class="layui-inline"> <div class="layui-input-inline"> <select name="settle"> diff --git a/src/main/webapp/views/pakStore/locDetlQuery.html b/src/main/webapp/views/pakStore/locDetlQuery.html index 35b9f09..6f46989 100644 --- a/src/main/webapp/views/pakStore/locDetlQuery.html +++ b/src/main/webapp/views/pakStore/locDetlQuery.html @@ -72,6 +72,11 @@ <input class="layui-input" type="text" name="maktx" placeholder="鐗╂枡鎻忚堪" autocomplete="off"> </div> </div> + <div class="layui-inline"> + <div class="layui-input-inline"> + <input class="layui-input" type="text" name="batch" placeholder="鍚堝悓鍙�" autocomplete="off"> + </div> + </div> <!-- 鏃ユ湡鑼冨洿 --> <div class="layui-inline" style="width: 300px"> <div class="layui-input-inline"> @@ -126,6 +131,7 @@ var form = layui.form; var admin = layui.admin; var tableMerge = layui.tableMerge; + var dataSource = [] // 鏁版嵁娓叉煋 locDetlTableIns = table.render({ @@ -144,6 +150,7 @@ pageSize: 'limit' }, parseData: function (res) { + dataSource = res.data.records return { 'code': res.code, 'msg': res.msg, @@ -164,15 +171,27 @@ // 鐩戝惉澶村伐鍏锋爮浜嬩欢 table.on('toolbar(stockOut)', function (obj) { + var checkStatus = table.checkStatus(obj.config.id); var data = checkStatus.data; + var dataList = [] + for (var j = 0; j < data.length; j++) { + var locno = data[j].locNo + for(var i = 0;i < dataSource.length; i++) { + if (dataSource[i].locNo === locno) { + dataList.push(dataSource[i]) + } + } + } + console.log(dataList) + switch(obj.event) { case 'confirm': if (data.length === 0){ layer.msg("璇烽�夋嫨鏁版嵁"); return; } - parent.addTableData(data); + parent.addTableData(dataList); break; } }); diff --git a/src/main/webapp/views/report/locDetl.html b/src/main/webapp/views/report/locDetl.html index 9e3ee3d..0da0485 100644 --- a/src/main/webapp/views/report/locDetl.html +++ b/src/main/webapp/views/report/locDetl.html @@ -24,6 +24,10 @@ </div> <table class="layui-hide" id="locDetlByMap" lay-filter="locDetlByMap"></table> </body> +<script type="text/html" id="operateDetl"> +<!-- <button id="batch" class="layui-btn layui-btn-primary layui-btn-radius" style="height: auto" lay-submit lay-filter="batch">淇敼鍚堝悓鍙�</button>--> + <a class="layui-btn layui-btn-xs layui-btn-danger btn-pakoutPreview" lay-event="pakoutPreview"><i class="layui-icon layui-icon-prev-circle"></i>淇敼鍚堝悓鍙�</a> +</script> <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> @@ -36,10 +40,14 @@ {field: 'locNo$', align: 'center',title: '搴撲綅鍙�'} ]; cols.push.apply(cols, detlCols); + var cols2=[ + { fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operateDetl'} + ]; + cols.push.apply(cols,cols2) return cols; } layui.use(['table','laydate', 'form'], function() { - table = layui.table; + var table = layui.table; var $ = layui.jquery; var form = layui.form; @@ -87,6 +95,32 @@ }); } }); + // 宸ュ叿鏉$偣鍑讳簨浠� + table.on('tool(locDetlByMap)', function (obj) { + var data = obj.data; + switch (obj.event) { + // 淇敼鍚堝悓鍙凤紙鎵瑰彿锛� + case 'pakoutPreview': + layer.open({ + type: 2, + title: '淇敼鍚堝悓鍙�', + maxmin: true, + area: ['500px', top.detailHeight], + shadeClose: false, + content: 'locDetl_detail.html', + success: function(layero, index){ + layer.getChildFrame('#data-detail-submit-save', index).hide(); + setFormVal(layer.getChildFrame('#updateBatch', index), data, false); + // top.convertDisabled(layer.getChildFrame('#data-detail :input', index), false); + top.convertDisabled(layer.getChildFrame('#locNo', index), true); + layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"}); + layero.find('iframe')[0].contentWindow.layui.form.render('select'); + layero.find('iframe')[0].contentWindow.layui.form.render('checkbox'); + } + }); + break; + } + }); }); </script> </html> diff --git a/src/main/webapp/views/report/locDetl_detail.html b/src/main/webapp/views/report/locDetl_detail.html new file mode 100644 index 0000000..184e6a7 --- /dev/null +++ b/src/main/webapp/views/report/locDetl_detail.html @@ -0,0 +1,82 @@ +<!DOCTYPE html> +<html lang="en" xmlns="http://www.w3.org/1999/html"> +<head> + <meta charset="utf-8"> + <title></title> + <meta name="renderer" content="webkit"> + <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> + <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> + <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all"> + <link rel="stylesheet" href="../../static/css/cool.css" media="all"> + <link rel="stylesheet" href="../../static/css/common.css" media="all"> +</head> +<body> + +<!-- 璇︽儏 --> +<div id="data-detail" class="layer_self_wrap"> + <form id="updateBatch" class="layui-form" style="height: 100%"> + <div class="layui-inline" > + <label class="layui-form-label"><span class="not-null">*</span>淇敼鍚堝悓鍙凤細</label> + <div class="layui-input-inline"> + <input id="sku" class="layui-input" type="text" onkeyup="check(this.id, 'locDetl')"> + </div> + </div> + <div class="layui-inline" > + <label class="layui-form-label"><span class="not-null">*</span>鏁� 閲忥細</label> + <div class="layui-input-inline"> + <input id="anfme" class="layui-input" type="text" onkeyup="check(this.id, 'locDetl')"> + </div> + </div> + <div class="layui-inline" > + <label class="layui-form-label"><span class="not-null"></span>鍘熷悎鍚屽彿锛�</label> + <div class="layui-input-inline"> + <input id="batch" class="layui-input" disabled ="disabled" type="text" onkeyup="check(this.id, 'locDetl')"> + </div> + </div> + <div class="layui-inline" > + <label class="layui-form-label"><span class="not-null"></span>搴� 浣� 鍙凤細</label> + <div class="layui-input-inline"> + <input id="locNo" class="layui-input" disabled ="disabled" type="text" onkeyup="check(this.id, 'locDetl')"> + </div> + </div> + <div class="layui-inline" > + <label class="layui-form-label"><span class="not-null"></span> 鍟嗗搧缂栧彿锛�</label> + <div class="layui-input-inline"> + <input id="matnr" class="layui-input" disabled ="disabled" type="text" onkeyup="check(this.id, 'locDetl')"> + </div> + </div> + <div class="layui-inline" > + <label class="layui-form-label"><span class="not-null"></span> 鍟嗗搧鍚嶇О锛�</label> + <div class="layui-input-inline"> + <input id="maktx" class="layui-input" disabled ="disabled" type="text" onkeyup="check(this.id, 'locDetl')"> + </div> + </div> + <div class="layui-inline" > + <label class="layui-form-label"><span class="not-null"></span> 鎵樼洏鐮侊細</label> + <div class="layui-input-inline"> + <input id="zpallet" class="layui-input" disabled ="disabled" type="text" onkeyup="check(this.id, 'locDetl')"> + </div> + </div> + <div class="layui-inline" > + <label class="layui-form-label"><span class="not-null"></span> 瑙勬牸锛�</label> + <div class="layui-input-inline"> + <input id="specs" class="layui-input" disabled ="disabled" type="text" onkeyup="check(this.id, 'locDetl')"> + </div> + </div> + <div id="prompt"> + 娓╅Θ鎻愮ず锛氳浠旂粏濉啓鐩稿叧淇℃伅锛�<span class="extrude"><span class="not-null">*</span> 涓哄繀濉�夐」銆�</span> + </div> + <div id="data-detail-btn" class="layui-btn-container layui-form-item"> + <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="pakoutPreview">淇敼</div> + <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close">鍏抽棴</div> + </div> + </form> +</div> +</body> +<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> +<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> +<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> +<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> +<script type="text/javascript" src="../../static/js/locMast/locMast.js" charset="utf-8"></script> +</html> + diff --git a/src/main/webapp/views/report/viewWorkIn.html b/src/main/webapp/views/report/viewWorkIn.html index dca05aa..2cfbe1e 100644 --- a/src/main/webapp/views/report/viewWorkIn.html +++ b/src/main/webapp/views/report/viewWorkIn.html @@ -21,6 +21,11 @@ <div id="search-box" class="layui-form layui-card-header"> <div class="layui-inline"> <div class="layui-input-inline"> + <input class="layui-input" type="text" name="batch" placeholder="鍚堝悓鍙�" autocomplete="off"> + </div> + </div> + <div class="layui-inline"> + <div class="layui-input-inline"> <input class="layui-input" type="text" name="loc_no" placeholder="搴撲綅鍙�" autocomplete="off"> </div> </div> diff --git a/src/main/webapp/views/report/viewWorkOut.html b/src/main/webapp/views/report/viewWorkOut.html index bde3a5e..dbd4ae4 100644 --- a/src/main/webapp/views/report/viewWorkOut.html +++ b/src/main/webapp/views/report/viewWorkOut.html @@ -21,6 +21,11 @@ <div id="search-box" class="layui-form layui-card-header"> <div class="layui-inline"> <div class="layui-input-inline"> + <input class="layui-input" type="text" name="batch" placeholder="鍚堝悓鍙�" autocomplete="off"> + </div> + </div> + <div class="layui-inline"> + <div class="layui-input-inline"> <input class="layui-input" type="text" name="loc_no" placeholder="搴撲綅鍙�" autocomplete="off"> </div> </div> diff --git a/src/main/webapp/views/waitPakin/waitPakin.html b/src/main/webapp/views/waitPakin/waitPakin.html index 331f54d..5e85c45 100644 --- a/src/main/webapp/views/waitPakin/waitPakin.html +++ b/src/main/webapp/views/waitPakin/waitPakin.html @@ -21,6 +21,11 @@ </div> <div class="layui-inline"> <div class="layui-input-inline"> + <input class="layui-input" type="text" name="batch" placeholder="鍚堝悓鍙�" autocomplete="off"> + </div> + </div> + <div class="layui-inline"> + <div class="layui-input-inline"> <input class="layui-input" type="text" name="matnr" placeholder="鍟嗗搧缂栧彿" autocomplete="off"> </div> </div> diff --git a/src/main/webapp/views/waitPakinLog/waitPakinLog.html b/src/main/webapp/views/waitPakinLog/waitPakinLog.html index 72b13f8..8667c60 100644 --- a/src/main/webapp/views/waitPakinLog/waitPakinLog.html +++ b/src/main/webapp/views/waitPakinLog/waitPakinLog.html @@ -19,6 +19,11 @@ <input class="layui-input" type="text" name="pakin_id" placeholder="鍏ュ簱閫氱煡鍙�" autocomplete="off"> </div> </div> + <div class="layui-inline"> + <div class="layui-input-inline"> + <input class="layui-input" type="text" name="batch" placeholder="鍚堝悓鍙�" autocomplete="off"> + </div> + </div> <!-- 鏃ユ湡鑼冨洿 --> <div class="layui-inline" style="width: 300px"> <div class="layui-input-inline"> diff --git a/src/main/webapp/views/wrkDetl/wrkDetl.html b/src/main/webapp/views/wrkDetl/wrkDetl.html index 75eda7a..16466c7 100644 --- a/src/main/webapp/views/wrkDetl/wrkDetl.html +++ b/src/main/webapp/views/wrkDetl/wrkDetl.html @@ -24,6 +24,11 @@ <input class="layui-input" type="text" name="wrk_no" placeholder="宸ヤ綔鍙�" autocomplete="off"> </div> </div> + <div class="layui-inline"> + <div class="layui-input-inline"> + <input class="layui-input" type="text" name="batch" placeholder="鍚堝悓鍙�" autocomplete="off"> + </div> + </div> <!-- 鏃ユ湡鑼冨洿 --> <div class="layui-inline" style="width: 300px"> <div class="layui-input-inline"> diff --git a/src/main/webapp/views/wrkDetlLog/wrkDetlLog.html b/src/main/webapp/views/wrkDetlLog/wrkDetlLog.html index af3dd38..d7f9945 100644 --- a/src/main/webapp/views/wrkDetlLog/wrkDetlLog.html +++ b/src/main/webapp/views/wrkDetlLog/wrkDetlLog.html @@ -24,6 +24,11 @@ <input class="layui-input layui-laydate-range" name="modi_time" type="text" placeholder="璧峰鏃堕棿 - 缁堟鏃堕棿" autocomplete="off" style="width: 300px"> </div> </div> + <div class="layui-inline"> + <div class="layui-input-inline"> + <input class="layui-input" type="text" name="batch" placeholder="鍚堝悓鍙�" autocomplete="off"> + </div> + </div> <!-- 寰呮坊鍔� --> <div id="data-search-btn" class="layui-btn-container layui-form-item"> <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">鎼滅储</button> diff --git a/src/main/webapp/views/wrkMast/wrkDetl.html b/src/main/webapp/views/wrkMast/wrkDetl.html index af87049..8830b51 100644 --- a/src/main/webapp/views/wrkMast/wrkDetl.html +++ b/src/main/webapp/views/wrkMast/wrkDetl.html @@ -32,6 +32,7 @@ var cols = [ {field: 'wrkNo', align: 'center',title: '宸ヤ綔鍙�'} ,{field: 'ioTime$', align: 'center',title: '宸ヤ綔鏃堕棿'} + ,{field: 'orderNo', align: 'center',title: '鍗曟嵁缂栧彿'} ]; cols.push.apply(cols, detlCols); return cols; -- Gitblit v1.9.1