From ed2ea2b286ec963970e710a578cdb064cc8650d8 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期一, 22 五月 2023 14:30:49 +0800 Subject: [PATCH] 开放WMS任务创建接口 --- src/main/java/com/zy/asrs/controller/OpenController.java | 63 +++++++++++++++ src/main/java/com/zy/asrs/entity/param/WmsWrkCreateParam.java | 32 ++++++++ src/main/resources/mapper/WmsWrkMapper.xml | 2 src/main/java/com/zy/asrs/controller/WmsWrkController.java | 14 +++ src/main/webapp/static/wms/js/wmsWrk/wmsWrk.js | 4 src/main/java/com/zy/asrs/entity/WmsWrk.java | 26 +----- src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 58 ++++++++++++++ src/main/java/com/zy/asrs/service/OpenService.java | 10 ++ 8 files changed, 182 insertions(+), 27 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java new file mode 100644 index 0000000..65671ac --- /dev/null +++ b/src/main/java/com/zy/asrs/controller/OpenController.java @@ -0,0 +1,63 @@ +package com.zy.asrs.controller; + +import com.alibaba.fastjson.JSON; +import com.core.common.BaseRes; +import com.core.common.Cools; +import com.core.common.R; +import com.core.exception.CoolException; +import com.zy.asrs.entity.param.WmsWrkCreateParam; +import com.zy.asrs.service.OpenService; +import com.zy.common.web.BaseController; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletRequest; +import java.util.ArrayList; + +@Slf4j +@RestController +@RequestMapping("/open") +public class OpenController extends BaseController { + + @Autowired + private OpenService openService; + + public static final ArrayList<String> APP_KEY_LIST = new ArrayList<String>() {{ + add("ea1f0459efc02a79f046f982767939ae"); + }}; + + //鍒涘缓WMS浠诲姟 + @PostMapping("/wmsWrkCreate") + public R wmsWrkCreate(@RequestHeader(required = false) String appkey, + @RequestBody(required = false) WmsWrkCreateParam param, + HttpServletRequest request) { + auth(appkey, param, request); + if (Cools.isEmpty(param)) { + return R.parse(BaseRes.PARAM); + } + if (Cools.isEmpty(param.getWmsWrkNo())) { + return R.error("WMS浠诲姟鍙穂wmsWrkNo]涓嶈兘涓虹┖"); + } + if (Cools.isEmpty(param.getIoType())) { + return R.error("浠诲姟绫诲瀷[ioType]涓嶈兘涓虹┖"); + } + if (Cools.isEmpty(param.getBarcode())) { + return R.error("鏉$爜[barcode]涓嶈兘涓虹┖"); + } + openService.wmsWrkCreate(param); + return R.ok(); + } + + private void auth(String appkey, Object obj, HttpServletRequest request) { + log.info("{}鎺ュ彛琚闂紱appkey:{}锛涜姹傛暟鎹細{}", request.getServletPath(), appkey, JSON.toJSONString(obj)); + request.setAttribute("cache", obj); + if (Cools.isEmpty(appkey)) { + throw new CoolException("璁よ瘉澶辫触锛岃纭appkey鏃犺锛�"); + } + if (!APP_KEY_LIST.contains(appkey)) { + throw new CoolException("璁よ瘉澶辫触锛岃纭appkey鏃犺锛�"); + } + } + +} diff --git a/src/main/java/com/zy/asrs/controller/WmsWrkController.java b/src/main/java/com/zy/asrs/controller/WmsWrkController.java index dbb1bd2..b476551 100644 --- a/src/main/java/com/zy/asrs/controller/WmsWrkController.java +++ b/src/main/java/com/zy/asrs/controller/WmsWrkController.java @@ -155,9 +155,14 @@ if (wmsWrk == null) { return R.error(); } + if (wmsWrk.getWmsStatus() == WmsWrkStatusType.COMPLETE.id) { + return R.error(wmsWrk.getWmsWrkNo() + "宸插畬缁�"); + } + Date now = new Date(); wmsWrk.setWmsStatus(WmsWrkStatusType.COMPLETE.id); - wmsWrk.setModiTime(new Date()); + wmsWrk.setModiTime(now); wmsWrk.setModiUser(getUserId()); + wmsWrk.setEndTime(now); wmsWrkService.updateById(wmsWrk); return R.ok(); } @@ -169,9 +174,14 @@ if (wmsWrk == null) { return R.error(); } + if (wmsWrk.getWmsStatus() == WmsWrkStatusType.CANCEL.id) { + return R.error(wmsWrk.getWmsWrkNo() + "宸茶鍙栨秷"); + } + Date now = new Date(); wmsWrk.setWmsStatus(WmsWrkStatusType.CANCEL.id); - wmsWrk.setModiTime(new Date()); + wmsWrk.setModiTime(now); wmsWrk.setModiUser(getUserId()); + wmsWrk.setEndTime(now); wmsWrkService.updateById(wmsWrk); return R.ok(); } diff --git a/src/main/java/com/zy/asrs/entity/WmsWrk.java b/src/main/java/com/zy/asrs/entity/WmsWrk.java index b11d78d..7ab785b 100644 --- a/src/main/java/com/zy/asrs/entity/WmsWrk.java +++ b/src/main/java/com/zy/asrs/entity/WmsWrk.java @@ -99,17 +99,11 @@ private String sourceLocNo; /** - * 搴撲綅鐘舵�� + * 鏉$爜 */ - @ApiModelProperty(value= "搴撲綅鐘舵��") - @TableField("loc_sts") - private String locSts; - - /** - * 鎷f枡(checkBox) - */ - @ApiModelProperty(value= "鎷f枡(checkBox)") - private String picking; + @ApiModelProperty(value= "鏉$爜") + @TableField("barcode") + private String barcode; /** * 淇敼浜哄憳 @@ -148,13 +142,6 @@ private String memo; /** - * 鏉$爜 - */ - @ApiModelProperty(value= "鏉$爜") - @TableField("barcode") - private String barcode; - - /** * 缁撴潫鏃堕棿 */ @ApiModelProperty(value= "缁撴潫鏃堕棿") @@ -164,7 +151,7 @@ public WmsWrk() {} - public WmsWrk(Integer wmsWrkNo, Integer wmsStatus, Integer wrkNo, Date createTime, Integer ioType, Double ioPri, String locNo, Integer staNo, Integer sourceStaNo, String sourceLocNo, String locSts, String picking, Long modiUser, Date modiTime, Long appeUser, Date appeTime, String memo, String barcode) { + public WmsWrk(Integer wmsWrkNo, Integer wmsStatus, Integer wrkNo, Date createTime, Integer ioType, Double ioPri, String locNo, Integer staNo, Integer sourceStaNo, String sourceLocNo, Long modiUser, Date modiTime, Long appeUser, Date appeTime, String memo, String barcode, Date endTime) { this.wmsWrkNo = wmsWrkNo; this.wmsStatus = wmsStatus; this.wrkNo = wrkNo; @@ -175,14 +162,13 @@ this.staNo = staNo; this.sourceStaNo = sourceStaNo; this.sourceLocNo = sourceLocNo; - this.locSts = locSts; - this.picking = picking; this.modiUser = modiUser; this.modiTime = modiTime; this.appeUser = appeUser; this.appeTime = appeTime; this.memo = memo; this.barcode = barcode; + this.endTime = endTime; } // WmsWrk wmsWrk = new WmsWrk( diff --git a/src/main/java/com/zy/asrs/entity/param/WmsWrkCreateParam.java b/src/main/java/com/zy/asrs/entity/param/WmsWrkCreateParam.java new file mode 100644 index 0000000..e55bd3b --- /dev/null +++ b/src/main/java/com/zy/asrs/entity/param/WmsWrkCreateParam.java @@ -0,0 +1,32 @@ +package com.zy.asrs.entity.param; + +import lombok.Data; + +@Data +public class WmsWrkCreateParam { + + //WMS浠诲姟鍙� + private Integer wmsWrkNo; + + //浠诲姟绫诲瀷 + private Integer ioType; + + //鐩爣搴撲綅 + private String locNo; + + //婧愬簱浣� + private String sourceLocNo; + + //鐩爣绔� + private Integer staNo; + + //婧愮珯 + private Integer sourceStaNo; + + //鏉$爜 + private String barcode; + + //澶囨敞 + private String memo; + +} diff --git a/src/main/java/com/zy/asrs/service/OpenService.java b/src/main/java/com/zy/asrs/service/OpenService.java new file mode 100644 index 0000000..953c957 --- /dev/null +++ b/src/main/java/com/zy/asrs/service/OpenService.java @@ -0,0 +1,10 @@ +package com.zy.asrs.service; + +import com.zy.asrs.entity.param.WmsWrkCreateParam; + +public interface OpenService { + + //鍒涘缓WMS浠诲姟 + void wmsWrkCreate(WmsWrkCreateParam param); + +} diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java new file mode 100644 index 0000000..f03926f --- /dev/null +++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java @@ -0,0 +1,58 @@ +package com.zy.asrs.service.impl; + +import com.core.common.Cools; +import com.core.exception.CoolException; +import com.zy.asrs.domain.enums.WmsWrkStatusType; +import com.zy.asrs.entity.WmsWrk; +import com.zy.asrs.entity.param.WmsWrkCreateParam; +import com.zy.asrs.service.OpenService; +import com.zy.asrs.service.WmsWrkService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Date; + +@Service +public class OpenServiceImpl implements OpenService { + + @Autowired + private WmsWrkService wmsWrkService; + + @Override + public void wmsWrkCreate(WmsWrkCreateParam param) { + WmsWrk wmsWrk = wmsWrkService.selectByWmsWrkNo(param.getWmsWrkNo()); + if (wmsWrk != null) { + throw new CoolException(param.getWmsWrkNo() + "浠诲姟宸插瓨鍦紝璇峰嬁閲嶅鎻愪氦"); + } + + Date now = new Date(); + wmsWrk = new WmsWrk(); + wmsWrk.setWmsWrkNo(param.getWmsWrkNo());//WMS浠诲姟鍙� + wmsWrk.setWmsStatus(WmsWrkStatusType.RECEIVE.id);//WMS鐘舵�侊細鎺ユ敹 + wmsWrk.setCreateTime(now); + wmsWrk.setAppeTime(now); + wmsWrk.setAppeUser(9527L); + wmsWrk.setIoType(param.getIoType());//浠诲姟绫诲瀷 + wmsWrk.setIoPri(13D);//浼樺厛绾� + wmsWrk.setBarcode(param.getBarcode());//鏉$爜 + if (!Cools.isEmpty(param.getLocNo())) { + wmsWrk.setLocNo(param.getLocNo());//鐩爣搴撲綅 + } + if (!Cools.isEmpty(param.getSourceLocNo())) { + wmsWrk.setSourceLocNo(param.getSourceLocNo());//婧愬簱浣� + } + if (!Cools.isEmpty(param.getStaNo())) { + wmsWrk.setStaNo(param.getStaNo());//鐩爣绔� + } + if (!Cools.isEmpty(param.getSourceStaNo())) { + wmsWrk.setSourceStaNo(param.getSourceStaNo());//婧愮珯 + } + if (!Cools.isEmpty(param.getMemo())) { + wmsWrk.setMemo(param.getMemo());//澶囨敞 + } + + if (!wmsWrkService.insert(wmsWrk)) { + throw new CoolException("鐢熸垚浠诲姟澶辫触锛岃鑱旂郴绠$悊鍛�"); + } + } +} diff --git a/src/main/resources/mapper/WmsWrkMapper.xml b/src/main/resources/mapper/WmsWrkMapper.xml index 5dab924..d28a430 100644 --- a/src/main/resources/mapper/WmsWrkMapper.xml +++ b/src/main/resources/mapper/WmsWrkMapper.xml @@ -14,8 +14,6 @@ <result column="sta_no" property="staNo" /> <result column="source_sta_no" property="sourceStaNo" /> <result column="source_loc_no" property="sourceLocNo" /> - <result column="loc_sts" property="locSts" /> - <result column="picking" property="picking" /> <result column="modi_user" property="modiUser" /> <result column="modi_time" property="modiTime" /> <result column="appe_user" property="appeUser" /> diff --git a/src/main/webapp/static/wms/js/wmsWrk/wmsWrk.js b/src/main/webapp/static/wms/js/wmsWrk/wmsWrk.js index f6328e0..0c74e4e 100644 --- a/src/main/webapp/static/wms/js/wmsWrk/wmsWrk.js +++ b/src/main/webapp/static/wms/js/wmsWrk/wmsWrk.js @@ -37,13 +37,11 @@ ,{field: 'staNo$', align: 'center',title: '鐩爣绔�'} ,{field: 'sourceLocNo', align: 'center',title: '婧愬簱浣�'} ,{field: 'locNo', align: 'center',title: '鐩爣搴撲綅'} - ,{field: 'locSts', align: 'center',title: '搴撲綅鐘舵��'} ,{field: 'barcode', align: 'center',title: '鏉$爜'} - // ,{field: 'picking', align: 'center',title: '鎷f枡'} // ,{field: 'modiUser$', align: 'center',title: '淇敼浜哄憳'} // ,{field: 'modiTime$', align: 'center',title: '淇敼鏃堕棿'} // ,{field: 'appeUser$', align: 'center',title: '鍒涘缓鑰�'} - ,{field: 'appeTime$', align: 'center',title: '娣诲姞鏃堕棿'} + // ,{field: 'appeTime$', align: 'center',title: '娣诲姞鏃堕棿'} ,{field: 'memo', align: 'center',title: '澶囨敞'} ,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width: 110} -- Gitblit v1.9.1