From 5ae3d9f543b045bd05873e6126793d58837d14dd Mon Sep 17 00:00:00 2001 From: mrzhssss <pro6@qq.com> Date: 星期四, 24 十一月 2022 17:17:01 +0800 Subject: [PATCH] # --- src/main/resources/mapper/OrderDetlMapper.xml | 6 +- src/main/resources/mapper/OrderMapper.xml | 6 +++ src/main/java/com/zy/asrs/service/OrderService.java | 3 + src/main/java/com/zy/asrs/entity/WaitPakin.java | 4 ++ src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java | 41 +++++++++----------- src/main/java/com/zy/asrs/mapper/OrderMapper.java | 4 ++ src/main/resources/mapper/LocDetlMapper.xml | 4 +- src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 7 +++ src/main/java/com/zy/asrs/entity/param/MatSyncParam.java | 2 src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 13 +++++- src/main/resources/application.yml | 2 src/main/java/com/zy/asrs/controller/WaitPakinController.java | 17 ++++++-- 12 files changed, 73 insertions(+), 36 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/WaitPakinController.java b/src/main/java/com/zy/asrs/controller/WaitPakinController.java index 7d994d8..fdef1c7 100644 --- a/src/main/java/com/zy/asrs/controller/WaitPakinController.java +++ b/src/main/java/com/zy/asrs/controller/WaitPakinController.java @@ -14,6 +14,7 @@ import com.zy.asrs.entity.WrkDetl; import com.zy.asrs.entity.WrkMast; import com.zy.asrs.service.OrderDetlService; +import com.zy.asrs.service.OrderService; import com.zy.asrs.service.WaitPakinService; import com.zy.asrs.service.WrkMastService; import com.zy.common.web.BaseController; @@ -21,10 +22,7 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; @RestController public class WaitPakinController extends BaseController { @@ -35,6 +33,8 @@ private OrderDetlService orderDetlService; @Autowired private WrkMastService wrkMastService; + @Autowired + private OrderService orderService; @RequestMapping(value = "/waitPakin/{id}/auth") @ManagerAuth @@ -97,6 +97,8 @@ if (Cools.isEmpty(list)){ return R.error("鏁版嵁涓虹┖"); } + //閫氳繃HashSet鐨勯潪閲嶅鐗规�э紝 瀛樺偍涓嶅悓鐨刼rder缂栧彿锛� 鐒跺悗閬嶅巻锛屽皢绗﹀悎鏉′欢鐨刼rder鐘舵�佹仮澶嶅埌寰呭鐞� + HashSet<String> orderNos = new HashSet<>(); for (WaitPakin entity : list){ List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("barcode", entity.getZpallet())); if(!Cools.isEmpty(wrkMasts) || wrkMasts.size() > 0){ @@ -106,10 +108,17 @@ //璁㈠崟鍏宠仈锛屼慨鏀硅鍗曚綔涓氭暟閲� if (!Cools.isEmpty(entity.getOrderNo())) { if (!orderDetlService.decrease(entity.getOrderNo(), entity.getMatnr(), entity.getBatch(), entity.getAnfme())) { + return R.error("璁㈠崟鏁版嵁鍥炴粴澶辫触"); + }else { + orderNos.add(entity.getOrderNo()); } } } + + for (String orderNo : orderNos) { + orderService.BackToInit(orderNo); + } return R.ok(); } diff --git a/src/main/java/com/zy/asrs/entity/WaitPakin.java b/src/main/java/com/zy/asrs/entity/WaitPakin.java index 21a45ed..d46b0ea 100644 --- a/src/main/java/com/zy/asrs/entity/WaitPakin.java +++ b/src/main/java/com/zy/asrs/entity/WaitPakin.java @@ -1,6 +1,7 @@ package com.zy.asrs.entity; import com.baomidou.mybatisplus.annotations.TableField; +import com.baomidou.mybatisplus.annotations.TableId; import com.baomidou.mybatisplus.annotations.TableName; import com.core.common.Cools; import com.zy.common.utils.Synchro; @@ -17,6 +18,7 @@ private static final long serialVersionUID = 1L; + @TableId("zpallet") @ApiModelProperty(value= "鎵樼洏鏉$爜") private String zpallet; @@ -27,12 +29,14 @@ @TableField("loc_no") private String locNo; + @TableId("matnr") @ApiModelProperty(value= "鍟嗗搧缂栧彿") private String matnr; @ApiModelProperty(value= "鍟嗗搧鍚嶇О") private String maktx; + @TableId("batch") @ApiModelProperty(value= "鎵瑰彿") private String batch; diff --git a/src/main/java/com/zy/asrs/entity/param/MatSyncParam.java b/src/main/java/com/zy/asrs/entity/param/MatSyncParam.java index ff2f451..298a252 100644 --- a/src/main/java/com/zy/asrs/entity/param/MatSyncParam.java +++ b/src/main/java/com/zy/asrs/entity/param/MatSyncParam.java @@ -19,7 +19,7 @@ public List<MatParam> matDetails; @Data - public class MatParam{ + public static class MatParam{ /** * 鍟嗗搧缂栧彿 */ diff --git a/src/main/java/com/zy/asrs/mapper/OrderMapper.java b/src/main/java/com/zy/asrs/mapper/OrderMapper.java index 3e1084b..dd72a35 100644 --- a/src/main/java/com/zy/asrs/mapper/OrderMapper.java +++ b/src/main/java/com/zy/asrs/mapper/OrderMapper.java @@ -17,4 +17,8 @@ List<Order> selectComplete(); int addToLogTable(Order order); + + Integer checkDetlWorkQtyLess0(@Param("orderNo") String orderNo); + + void updateSettleTo1(@Param("orderNo")String orderNo); } diff --git a/src/main/java/com/zy/asrs/service/OrderService.java b/src/main/java/com/zy/asrs/service/OrderService.java index f45330d..30aaf0d 100644 --- a/src/main/java/com/zy/asrs/service/OrderService.java +++ b/src/main/java/com/zy/asrs/service/OrderService.java @@ -25,4 +25,7 @@ List<Order> selectComplete(); boolean addToLogTable(Order order); + + void BackToInit(String orderNo); + } 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..c942b02 100644 --- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java @@ -96,6 +96,13 @@ if (countLoc > 0 || countWrk > 0) { throw new CoolException("宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + param.getBarcode()); } + //璁剧疆闈瀗ull鎵瑰彿锛� + for (CombParam.CombMat combMat : param.getCombMats()) { + if (combMat.getBatch() == null){ + combMat.setBatch(""); + } + } + Date now = new Date(); diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java index 5d8970a..7b91bcb 100644 --- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java @@ -118,7 +118,14 @@ } OrderDetl orderDetl = new OrderDetl(); orderDetl.sync(mat); - orderDetl.setBatch(detlDto.getBatch()); + + //鎵瑰彿涓虹┖浼氬嚭鐜伴棶棰橈紝璁剧疆涓�涓粯璁ゅ�� + if (detlDto.getBatch() == null) { + orderDetl.setBatch(""); + }else { + orderDetl.setBatch(detlDto.getBatch()); + + } orderDetl.setAnfme(detlDto.getAnfme()); orderDetl.setOrderId(order.getId()); orderDetl.setOrderNo(order.getOrderNo()); @@ -519,8 +526,8 @@ } else { tagId = tagService.getTop().getId(); } - mat.sync(param); -// mat.setMatnr(param.getMatnr()); + mat.sync(matParam); +// mat.setMatnr(para); // mat.setMaktx(param.getMaktx()); // mat.setSpecs(param.getSpecs()); // mat.setModel(param.getModel()); diff --git a/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java index 31ac504..977a63a 100644 --- a/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java @@ -71,30 +71,13 @@ } } if (complete) { - // 鍑哄簱璁㈠崟閲嶆柊鏁寸悊鏄庣粏 - DocType docType = docTypeService.selectById(order.getDocType()); - if (null != docType && docType.getPakout() == 1) { - if (!orderDetlService.delete(new EntityWrapper<OrderDetl>().eq("order_id", order.getId()))) { - throw new CoolException("閲嶆暣鍑哄簱璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戞槑缁嗗け璐�"); - } - List<WrkDetl> wrkDetls = wrkDetlService.selectAndLogByOrderNo(orderNo); - for (WrkDetl wrkDetl : wrkDetls) { - OrderDetl orderDetl = new OrderDetl(); - orderDetl.sync(wrkDetl); - orderDetl.setQty(orderDetl.getAnfme()); - orderDetl.setOrderId(order.getId()); - orderDetl.setOrderNo(orderNo); - orderDetl.setStatus(1); - orderDetl.setCreateTime(order.getCreateTime()); - orderDetl.setCreateBy(order.getCreateBy()); - orderDetl.setUpdateTime(order.getUpdateTime()); - orderDetl.setUpdateBy(order.getUpdateBy()); - if (!orderDetlService.insert(orderDetl)) { - throw new CoolException("閲嶆暣鍑哄簱璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戞槑缁嗗け璐�"); - } + for (OrderDetl orderDetl : orderDetls) { + //鐢熸垚鍗曟嵁鍜屽叆搴撻�氱煡妗f椂锛岀粰batch涓虹┖鐨勬槑缁嗚祴浜嗕竴涓� =""锛� 鐜板湪鏀逛负null锛屽洖浼犵敤 + if (orderDetl.getBatch().equals("")){ + orderDetl.setBatch(null); + orderDetlService.updateById(orderDetl); } } - if (!this.updateSettle(order.getId(), 4L, null)) { throw new CoolException("淇敼璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戠姸鎬佷负宸插畬鎴愬け璐�"); } @@ -170,4 +153,18 @@ return this.baseMapper.addToLogTable(order) > 0; } + /** + * + * @param orderNo + * + */ + @Override + public void BackToInit(String orderNo) { + Integer count = this.baseMapper.checkDetlWorkQtyLess0(orderNo); + //濡傛灉鎵�鏈夋槑缁嗙殑宸ヤ綔鏁伴噺鍜屽畬鎴愰噺閮藉皬浜庣瓑浜�0锛� 閭d箞灏嗕富妗f洿鏂颁负鈥滃緟澶勭悊鈥濈姸鎬� + if (count == 0 ){ + this.baseMapper.updateSettleTo1(orderNo); + } + } + } diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 506af8a..5ff8241 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=stasrs + url: jdbc:sqlserver://10.10.10.100:1433;databasename=stasrs username: sa password: sa@123 mvc: diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml index 0869303..8ed8f84 100644 --- a/src/main/resources/mapper/LocDetlMapper.xml +++ b/src/main/resources/mapper/LocDetlMapper.xml @@ -48,11 +48,11 @@ <sql id="batchSeq"> <choose> - <when test="batch != null and batch != ''"> + <when test="batch != null"> and batch = #{batch} </when> <otherwise> - and (batch IS NULL OR batch = '') + and (batch IS NULL) </otherwise> </choose> </sql> diff --git a/src/main/resources/mapper/OrderDetlMapper.xml b/src/main/resources/mapper/OrderDetlMapper.xml index 74ebaf0..86757d2 100644 --- a/src/main/resources/mapper/OrderDetlMapper.xml +++ b/src/main/resources/mapper/OrderDetlMapper.xml @@ -68,7 +68,7 @@ where 1=1 and order_no = #{orderNo} and matnr = #{matnr} - <if test="batch!=null and batch!='' "> + <if test="batch!=null"> and batch = #{batch} </if> </select> @@ -148,11 +148,11 @@ and order_no = #{orderNo} and matnr = #{matnr} <choose> - <when test="batch != null and batch != ''"> + <when test="batch != null"> and batch = #{batch} </when> <otherwise> - and (batch IS NULL OR batch = '') + and (batch IS NULL ) </otherwise> </choose> </update> diff --git a/src/main/resources/mapper/OrderMapper.xml b/src/main/resources/mapper/OrderMapper.xml index db8816d..68b3f59 100644 --- a/src/main/resources/mapper/OrderMapper.xml +++ b/src/main/resources/mapper/OrderMapper.xml @@ -52,6 +52,12 @@ where 1=1 and id = #{orderId} </update> + <update id="updateSettleTo1"> + UPDATE man_order set settle = 1 WHERE order_no = #{orderNo} + </update> + <select id="checkDetlWorkQtyLess0" resultType="integer"> + select count(*) FROM man_order_detl WHERE order_no = #{orderNo} and (work_qty > 0 or qty > 0) + </select> <select id="selectComplete" resultMap="BaseResultMap"> select top 5 * -- Gitblit v1.9.1