From 6ef869b1adcf3a5bb8e4c3117dc507d173f13fd8 Mon Sep 17 00:00:00 2001 From: liukangdong <898885815@qq.com> Date: 星期三, 18 九月 2024 15:19:55 +0800 Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/dmvisit --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/wms/WmsServiceImpl.java | 490 ++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 452 insertions(+), 38 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/wms/WmsServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/wms/WmsServiceImpl.java index 08b14c1..9dac51d 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/wms/WmsServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/wms/WmsServiceImpl.java @@ -1,20 +1,26 @@ package com.doumee.service.business.impl.wms; -import com.doumee.core.wms.model.request.WmsActionNoticeRequest; -import com.doumee.core.wms.model.request.WmsInboundNoticeRequest; -import com.doumee.core.wms.model.request.WmsOutboundNoticeRequest; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.TypeReference; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.doumee.biz.system.SystemDictDataBiz; +import com.doumee.core.utils.Constants; +import com.doumee.core.utils.HttpsUtil; +import com.doumee.core.wms.model.request.*; import com.doumee.core.wms.model.response.WmsBaseDataResponse; import com.doumee.core.wms.model.response.WmsBaseResponse; -import com.doumee.dao.business.PlatformWmsDetailMapper; -import com.doumee.dao.business.PlatformWmsJobMapper; -import com.doumee.dao.business.model.PlatformWmsJob; +import com.doumee.core.wms.model.response.WmsInventoryDataResponse; +import com.doumee.dao.business.*; +import com.doumee.dao.business.model.*; import com.doumee.service.business.WmsService; +import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.List; +import java.util.*; /** * WMS骞冲彴瀵规帴Service瀹炵幇 @@ -22,43 +28,397 @@ * @date 2023/11/30 15:33 */ @Service +@Slf4j public class WmsServiceImpl implements WmsService { @Autowired private PlatformWmsJobMapper platformWmsJobMapper; @Autowired + private PlatformGroupMapper platformGroupMapper; + @Autowired + private CarsMapper carsMapper; + @Autowired + private PlatformJobMapper platformJobMapper; + @Autowired private PlatformWmsDetailMapper platformWmsDetailMapper; + @Autowired + private SystemDictDataBiz systemDictDataBiz; + @Autowired + private WmsInterfaceLogMapper wmsInterfaceLogMapper; + /** + * 鍏ュ簱閫氱煡浠诲姟涓氬姟澶勭悊 + * @param job 鍙傛暟 + * @return + */ + @Override + public WmsBaseResponse<WmsBaseDataResponse> orderPlatformBind(PlatformJob job) { + if(StringUtils.isBlank(job.getBillCode()) || StringUtils.isBlank(job.getPlatformWmsCode())){ + + return null; + } + int type = 0; + if(Constants.equalsInteger(job.getType(),Constants.ONE) + || Constants.equalsInteger(job.getType(),Constants.THREE)){ + //濡傛灉鏄璐э紙鍑哄簱锛� + type =1 ; + }else if(Constants.equalsInteger(job.getType(),Constants.ZERO) + || Constants.equalsInteger(job.getType(),Constants.TWO)){ + //濡傛灉鏄璐э紙鍑哄簱锛� + type =0 ; + }else{ + return null; + } + WmsOrderPlatformRequest param = new WmsOrderPlatformRequest(); + param.setData(new ArrayList<>()); + WmsOrderPlatformInfoRequest o = new WmsOrderPlatformInfoRequest(); + o.setCarrierBillCode(job.getBillCode()); + o.setRailwayNo(job.getPlatformWmsCode()); + param.getData().add(o); + String url = type == 0?systemDictDataBiz.queryByCode(Constants.WSM_PARAM,Constants.WMS_INBOUND_PLATFROM_URL).getCode():systemDictDataBiz.queryByCode(Constants.WSM_PARAM,Constants.WMS_OUTBOUND_PLATFROM_URL).getCode();; + String name = type ==0?"銆怶MS銆戝叆搴綔涓氬崟鍒嗛厤鏈堝彴":"銆怶MS銆戝嚭搴撲綔涓氱殑鍒嗛厤鏈堝彴"; + WmsBaseResponse<WmsBaseDataResponse> response = sendHttpRequest(url,name,JSONObject.toJSONString(param),new TypeReference< WmsBaseResponse<WmsBaseDataResponse>>(){}); + PlatformJob update = new PlatformJob(); + update.setId(job.getId()); + update.setWmsSendDate(new Date()); + update.setWmsSendNum(job.getWmsSendNum() + 1); + update.setWmsSendPlatformCode(job.getPlatformWmsCode()); + if(response!=null && response.getData() !=null + && response.getData().size()>0 && StringUtils.equals(response.getData().get(0).getSuccess(),WmsBaseResponse.CODE_SUCCESS)){ + //濡傛灉鎴愬姛 + update.setWmsSendStatus(Constants.ONE); + update.setWmsSendInfo("閫氱煡WMS浣滀笟鍗曞垎閰嶆湀鍙版垚鍔�"); + }else{ + //濡傛灉澶辫触 + update.setWmsSendStatus(Constants.TWO); + update.setWmsSendInfo("閫氱煡WMS浣滀笟鍗曞垎閰嶆湀鍙板け璐�:"+(response!=null?JSONObject.toJSONString(response):"鎺ュ彛璋冪敤澶辫触")); + } + platformJobMapper.updateById(update); + return response; + + } + /** + * 鍏ュ簱閫氱煡浠诲姟涓氬姟澶勭悊 + * @return + */ + @Override + public WmsBaseResponse<WmsInventoryDataResponse> getInventoryList(){ + String url = systemDictDataBiz.queryByCode(Constants.WSM_PARAM,Constants.WMS_GET_INVENTORYLIST_URL).getCode() ; + String name = "銆怶MS銆戝簱瀛樻煡璇�" ; + WmsBaseResponse<WmsInventoryDataResponse> response = sendHttpRequest(url,name,JSONObject.toJSONString(new JSONObject()),new TypeReference< WmsBaseResponse<WmsInventoryDataResponse>>(){}); + if(response!=null + && response.getData() !=null + && response.getData().size()>0 + && StringUtils.equals(response.getData().get(0).getSuccess(),WmsBaseResponse.CODE_SUCCESS)){ + //濡傛灉璇锋眰鎴愬姛 + + }else{ + //濡傛灉澶辫触 + if(response ==null){ + response = new WmsBaseResponse(); + response.setData(new ArrayList<>()); + } + if(response.getData() == null){ + response.setData(new ArrayList<>()); + } + } + return response; + + } + @Override + public void saveInterfaceLog(String url,String name,String param,Integer success,String respone,int type){ + if(wmsInterfaceLogMapper ==null){ + return; + } + WmsInterfaceLog log = new WmsInterfaceLog(); + log.setCreateDate(new Date()); + log.setUrl(url); + log.setEditDate(log.getCreateDate()); + log.setPlat(Constants.ZERO); + log.setName(name); + log.setIsdeleted(Constants.ZERO); + log.setRequest(param); + log.setType(type); + log.setSuccess(success); + log.setRepose(respone); + wmsInterfaceLogMapper.insert(log); + } + + /** + * 鍙戣捣wms鎺ュ彛璇锋眰 + * @param url + * @param name + * @param param + * @param typeReference + * @return + * @param <T> + */ + public <T> WmsBaseResponse<T> sendHttpRequest(String url, String name, String param,TypeReference<WmsBaseResponse<T>> typeReference){ + log.info("銆�"+name+"銆�================寮�濮�===="+ JSONObject.toJSONString(param)); + if ( StringUtils.isNotBlank(url)) { + String res = null; + int success = 0; + try { + Map<String,String> headers = new HashMap<>(); + res = HttpsUtil.postJson(url,param); + WmsBaseResponse result = JSONObject.parseObject(res, typeReference.getType()); + logResult(result,name); + if(result!=null && result.getData() !=null ){ + + }else{ + success =1; + } + return result; + }catch (Exception e){ + success = 1; + log.error("銆�"+name+"銆�================澶辫触===="+ JSONObject.toJSONString(param)); + }finally { + saveInterfaceLog(url,name,param,success,res,Constants.ZERO); + } + } + return null; + } + private static void logResult(WmsBaseResponse<WmsBaseDataResponse> res,String name) { + if(StringUtils.equals(res.getData().get(0).getSuccess(), WmsBaseResponse.CODE_SUCCESS)){ + log.info("銆怶MS鎺ュ彛锛�"+name+"銆�================鎴愬姛====\n"+res); + }else{ + log.error("銆怶MS鎺ュ彛锛�"+name+"銆�================澶辫触====锛歕n"+ res); + } + } /** * 鍏ュ簱閫氱煡浠诲姟涓氬姟澶勭悊 * @param list 鍙傛暟 * @return */ @Override - public WmsBaseResponse inboundNotice(List<WmsInboundNoticeRequest> list) { - //TODO-------------------澶勭悊鍏ュ簱閫氱煡涓氬姟-------------------- - if(list ==null || list.size() ==0){ - return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶈兘涓虹┖"); - } - WmsBaseResponse response = new WmsBaseResponse(); - response.setData(new ArrayList<>()); + @Transactional + public WmsBaseResponse<WmsBaseDataResponse> inboundNotice(WmsBaseRequest<WmsInboundNoticeRequest> list) { + try{ + if(list ==null || list.getData()==null|| list.getData().size() ==0){ + return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶈兘涓虹┖"); + } + List<PlatformJob> jobList = new ArrayList<>(); + List<PlatformWmsDetail> details = new ArrayList<>(); + List<String> iocodeList = new ArrayList<>(); + for(WmsInboundNoticeRequest param : list.getData()){ + if(StringUtils.isBlank(param.getIoCode()) || + StringUtils.isBlank(param.getCarrierBillCode())|| + StringUtils.isBlank(param.getPlateNumber())|| + StringUtils.isBlank(param.getDriverPhone())){ + return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶅悎娉�!"); + } + //鏍规嵁鎵胯繍鍗曞彿鏌ヨ浠诲姟淇℃伅 + PlatformWmsJob job = platformWmsJobMapper.selectOne(new QueryWrapper<PlatformWmsJob>().lambda() + .eq(PlatformWmsJob::getCarryBillCode,param.getCarrierBillCode()) + .eq(PlatformWmsJob::getIsdeleted, Constants.ZERO) + .last("limit 1" )); - return response; + if(job == null){ + + PlatformJob model =dealJobBizInbound(param); + job = new PlatformWmsJob(); + job.setCreateDate(new Date()); + job.setIsdeleted(Constants.ZERO); + job.setIsNew(Constants.ONE); + job.setCarryBillCode(param.getCarrierBillCode()); + job.setIocode(param.getIoCode()); + job.setCarrierName(param.getCarrierName()); + job.setPlateNumber(param.getPlateNumber()); + job.setType(Constants.ONE); + job.setIoCreatedate(param.getCreateDate()); + job.setJobId(model.getId()); + job.setDriverPhone(param.getDriverPhone()); + platformWmsJobMapper.insert(job); + jobList.add(model); + } + if(param.getDetails()!=null && param.getDetails().size()>0){ + for(WmsInboundDetailRequest d :param.getDetails()){ + PlatformWmsDetail entity = new PlatformWmsDetail(); + entity.setCreateDate(new Date()); + entity.setIsdeleted(Constants.ZERO); + entity.setIocode(d.getIoCode()); + entity.setJobId(job.getJobId()); + entity.setWmsJobId(job.getId()); + entity.setIoQty(d.getIoQty()); + entity.setStatus(Constants.ZERO); + entity.setRate(d.getRate()); + entity.setMaterialName(d.getMaterialName()); + entity.setInRepertotyCode(d.getInRepertotyCode()); + iocodeList.add(d.getIoCode()); + details.add(entity); + } + if(job.getIsNew() != 1&& iocodeList.size()>0){ + //鍏堟竻鐞嗗悓涓�涓壙杩愬崟鍙蜂笅閲嶅鎺ㄩ�佺殑iocode鏁版嵁锛屼互鏈�鍚庝竴娆℃帹閫佷负涓� + platformWmsDetailMapper.update(null,new UpdateWrapper<PlatformWmsDetail>().lambda() + .set(PlatformWmsDetail::getIsdeleted,Constants.ONE) + .eq(PlatformWmsDetail::getIsdeleted,Constants.ZERO) + .eq(PlatformWmsDetail::getWmsJobId,job.getId()) + .in(PlatformWmsDetail::getIocode,iocodeList) + ); + } + } + } + if(details.size()>0){ + platformWmsDetailMapper.insert(details); + } + if(jobList.size()>0){ + startEndNoticeToDriver(jobList); + } + }catch (Exception e){ + log.error("銆怶MS銆戝鐞嗗叆搴撳彇娑堥�氱煡涓氬姟===============涓氬姟澶勭悊寮傚父"+e.getMessage()); + return returnFailReuslt("涓氬姟澶勭悊寮傚父"); + } + return returnSuccessReuslt(null); } + private void startEndNoticeToDriver(List<PlatformJob> jobList) { + for(PlatformJob job : jobList){ + //-----TODO-----------浠诲悍锛屽彂閫佸徃鏈哄叕浼楀彿鍜岀煭淇¢�氱煡 + } + } - + private PlatformJob dealJobBizInbound(WmsInboundNoticeRequest param) { + PlatformJob job = new PlatformJob(); + job.setCreateDate(new Date()); + job.setIsdeleted(Constants.ZERO); + job.setType(Constants.platformJobType.wxcxh);//榛樿鏄鍗忚溅鍗歌揣 + job.setStatus(Constants.PlatformJobStatus.WAIT_CONFIRM.getKey());//榛樿寰呯‘璁ょ姸鎬� + //鏌ヨ杞﹁締鏄惁鑷湁杞︼紝浠ュ強jobNum琛ㄧず浣嗘眰浣滀笟鏁伴噺锛堥潪宸茬鍥殑浣滀笟鏁�) + Cars car = carsMapper.selectOne(new QueryWrapper<Cars>() + .select("*,(select count(1) from platform_job b where b.plate_num='"+param.getPlateNumber()+"' and b.status in("+ + Constants.PlatformJobStatus.LEAVED.getKey()+")) as jobNum") + .lambda() + .eq(Cars::getIsdeleted,Constants.ZERO) + .eq(Cars::getType,Constants.ONE) + .eq(Cars::getCode,param.getPlateNumber())); + if(car !=null){ + //濡傛灉鏄嚜鏈夌墿娴佽溅 + job.setType(Constants.platformJobType.zycxh);//鑷湁杞﹀嵏璐� + if(Constants.equalsInteger(car.getInStatus(),Constants.ONE) && car.getJobNum() == 0) { + //濡傛灉杞﹁締鍦ㄥ洯 + job.setStatus(Constants.PlatformJobStatus.WAIT_CALL.getKey());//鍦ㄥ洯鏃犱綔涓氱姸鎬侊紝鍒欒嚜鍔ㄣ�愬凡绛惧埌銆戝鐞� + } + } + PlatformGroup group = platformGroupMapper.selectOne(new QueryWrapper<PlatformGroup>().lambda() + .eq(PlatformGroup::getIsdeleted,Constants.ZERO) + .eq(PlatformGroup::getType,Constants.ONE) + .last("limit 1") );//鏌ヨ鍗歌揣鏈堝彴缁勭紪鐮� + job.setPlatformGroupId(group!=null?group.getId():null); + platformJobMapper.insert(job); + return job; + } + private PlatformJob dealJobBizOutbound(WmsOutboundNoticeRequest param) { + PlatformJob job = new PlatformJob(); + job.setCreateDate(new Date()); + job.setIsdeleted(Constants.ZERO); + job.setType(Constants.platformJobType.wxczh);//榛樿鏄鍗忚溅瑁呭ソ + job.setStatus(Constants.PlatformJobStatus.WAIT_CONFIRM.getKey());//榛樿寰呯‘璁ょ姸鎬� + //鏌ヨ杞﹁締鏄惁鑷湁杞︼紝浠ュ強jobNum琛ㄧず浣嗘眰浣滀笟鏁伴噺锛堥潪宸茬鍥殑浣滀笟鏁�) + Cars car = carsMapper.selectOne(new QueryWrapper<Cars>() + .select("*,(select count(1) from platform_job b where b.plate_num='"+param.getPlateNumber()+"' and b.status in("+ + Constants.PlatformJobStatus.LEAVED.getKey()+")) as jobNum") + .lambda() + .eq(Cars::getIsdeleted,Constants.ZERO) + .eq(Cars::getType,Constants.ONE) + .eq(Cars::getCode,param.getPlateNumber())); + if(car !=null){ + //濡傛灉鏄嚜鏈夌墿娴佽溅 + job.setType(Constants.platformJobType.zyczh);//鑷湁杞﹁璐� + if(Constants.equalsInteger(car.getInStatus(),Constants.ONE) && car.getJobNum() == 0) { + //濡傛灉杞﹁締鍦ㄥ洯 + job.setStatus(Constants.PlatformJobStatus.WAIT_CALL.getKey());//鍦ㄥ洯鏃犱綔涓氱姸鎬侊紝鍒欒嚜鍔ㄣ�愬凡绛惧埌銆戝鐞� + } + } + PlatformGroup group = platformGroupMapper.selectOne(new QueryWrapper<PlatformGroup>().lambda() + .eq(PlatformGroup::getIsdeleted,Constants.ZERO) + .eq(PlatformGroup::getType,Constants.ZERO) + .last("limit 1") );//鏌ヨ瑁呰揣鏈堝彴缁勭紪鐮� + job.setPlatformGroupId(group!=null?group.getId():null); + platformJobMapper.insert(job); + return job; + } /** * 鍑哄簱閫氱煡浠诲姟涓氬姟澶勭悊 * @param list 鍙傛暟 * @return */ @Override - public WmsBaseResponse outboundNotice(List<WmsOutboundNoticeRequest> list) { - //TODO-------------------澶勭悊鍑哄簱閫氱煡涓氬姟-------------------- - if(list ==null || list.size() ==0){ - return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶈兘涓虹┖"); + public WmsBaseResponse outboundNotice(WmsBaseRequest<WmsOutboundNoticeRequest> list) { + + try{ + if(list ==null ||list.getData()==null || list.getData().size() ==0){ + return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶈兘涓虹┖"); + } + List<PlatformJob> jobList = new ArrayList<>(); + List<PlatformWmsDetail> details = new ArrayList<>(); + List<String> iocodeList = new ArrayList<>(); + for(WmsOutboundNoticeRequest param : list.getData()){ + if(StringUtils.isBlank(param.getIoCode()) || + StringUtils.isBlank(param.getCarrierBillCode())|| + StringUtils.isBlank(param.getPlateNumber())|| + StringUtils.isBlank(param.getDriverPhone())){ + return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶅悎娉�!"); + } + //鏍规嵁鎵胯繍鍗曞彿鏌ヨ浠诲姟淇℃伅 + PlatformWmsJob job = platformWmsJobMapper.selectOne(new QueryWrapper<PlatformWmsJob>().lambda() + .eq(PlatformWmsJob::getCarryBillCode,param.getCarrierBillCode()) + .eq(PlatformWmsJob::getIsdeleted, Constants.ZERO) + .last("limit 1" )); + + if(job == null){ + PlatformJob model =dealJobBizOutbound(param); + job = new PlatformWmsJob(); + job.setCreateDate(new Date()); + job.setIsdeleted(Constants.ZERO); + job.setIsNew(Constants.ONE); + job.setCarryBillCode(param.getCarrierBillCode()); + job.setIocode(param.getIoCode()); + job.setCarrierName(param.getCarrierName()); + job.setPlateNumber(param.getPlateNumber()); + job.setType(Constants.ONE); + job.setIoCreatedate(param.getCreateDate()); + job.setJobId(job.getId()); + job.setDriverPhone(param.getDriverPhone()); + platformWmsJobMapper.insert(job); + jobList.add(model); + } + if(param.getDetails()!=null && param.getDetails().size()>0){ + for(WmsOutboundDetailRequest d :param.getDetails()){ + PlatformWmsDetail entity = new PlatformWmsDetail(); + entity.setCreateDate(new Date()); + entity.setIsdeleted(Constants.ZERO); + entity.setIocode(d.getIoCode()); + entity.setJobId(job.getJobId()); + entity.setWmsJobId(job.getId()); + entity.setIoQty(d.getIoQty()); + entity.setWmsJobId(job.getId()); + entity.setStatus(Constants.ZERO); + entity.setRate(d.getRate()); + entity.setMaterialName(d.getMaterialName()); + iocodeList.add(d.getIoCode()); + details.add(entity); + } + if(job.getIsNew() != 1 && iocodeList.size()>0){ + //鍏堟竻鐞嗗悓涓�涓壙杩愬崟鍙蜂笅閲嶅鎺ㄩ�佺殑iocode鏁版嵁锛屼互鏈�鍚庝竴娆℃帹閫佷负涓� + platformWmsDetailMapper.update(null,new UpdateWrapper<PlatformWmsDetail>().lambda() + .set(PlatformWmsDetail::getIsdeleted,Constants.ONE) + .eq(PlatformWmsDetail::getIsdeleted,Constants.ZERO) + .eq(PlatformWmsDetail::getWmsJobId,job.getId()) + .in(PlatformWmsDetail::getIocode,iocodeList) + ); + } + } + } + if(details.size()>0){ + platformWmsDetailMapper.insert(details); + } + if(jobList.size()>0){ + startEndNoticeToDriver(jobList); + } + }catch (Exception e){ + log.error("銆怶MS銆戝鐞嗗叆搴撳彇娑堥�氱煡涓氬姟===============涓氬姟澶勭悊寮傚父"+e.getMessage()); + return returnFailReuslt("涓氬姟澶勭悊寮傚父"); } - return null; + return returnSuccessReuslt(null); } /** * 鍏ュ簱鍙栨秷閫氱煡浠诲姟涓氬姟澶勭悊 @@ -66,13 +426,30 @@ * @return */ @Override - public WmsBaseResponse cancelInbound(List<WmsActionNoticeRequest> list) { - //TODO-------------------澶勭悊鍏ュ簱鍙栨秷閫氱煡涓氬姟-------------------- - if(list ==null || list.size() ==0){ - return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶈兘涓虹┖"); + public WmsBaseResponse cancelInbound(WmsBaseRequest<WmsActionNoticeRequest> list) { + //-----------------澶勭悊鍏ュ簱鍙栨秷閫氱煡涓氬姟-------------------- + try { + if(list ==null||list.getData()==null || list.getData().size() ==0 || list.getData().get(0).getIoCode() == null){ + return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶈兘涓虹┖"); + } + List<String> iocodeList = new ArrayList<>(); + for(WmsActionNoticeRequest param :list.getData()){ + if(StringUtils.isNotBlank(param.getIoCode())){ + iocodeList.add(param.getIoCode()); + } + } + if(iocodeList.size() ==0 ){ + return returnFailReuslt("璇锋眰鍙傛暟iocode涓嶆纭紝鍙傛暟涓嶈兘涓虹┖"); + } + //鍙栨秷鍏ㄩ儴鏁版嵁鐘舵�佷负 銆愬凡鍙栨秷銆� + platformWmsDetailMapper.update(null,new UpdateWrapper<PlatformWmsDetail>().lambda() + .set(PlatformWmsDetail::getStatus,Constants.TWO) + .in(PlatformWmsDetail::getIocode,iocodeList) + .eq(PlatformWmsDetail::getIsdeleted, Constants.ZERO)); + }catch (Exception e){ + log.error("銆怶MS銆戝鐞嗗叆搴撳彇娑堥�氱煡涓氬姟===============涓氬姟澶勭悊寮傚父"+e.getMessage()); + return returnFailReuslt("涓氬姟澶勭悊寮傚父"); } - - return returnSuccessReuslt(null); } /** @@ -81,12 +458,29 @@ * @return */ @Override - public WmsBaseResponse cancelOutbound(List<WmsActionNoticeRequest> list) { - //TODO-------------------澶勭悊鍑哄簱鍙栨秷閫氱煡涓氬姟-------------------- - if(list ==null || list.size() ==0){ - return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶈兘涓虹┖"); + public WmsBaseResponse cancelOutbound(WmsBaseRequest<WmsActionNoticeRequest> list) { + try { + if(list ==null||list.getData()==null || list.getData().size() ==0 ){ + return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶈兘涓虹┖"); + } + List<String> iocodeList = new ArrayList<>(); + for(WmsActionNoticeRequest param :list.getData()){ + if(StringUtils.isNotBlank(param.getIoCode())){ + iocodeList.add(param.getIoCode()); + } + } + if(iocodeList.size() ==0 ){ + return returnFailReuslt("璇锋眰鍙傛暟iocode涓嶆纭紝鍙傛暟涓嶈兘涓虹┖"); + } + //鍙栨秷鍏ㄩ儴鏁版嵁鐘舵�佷负 銆愬凡鍙栨秷銆� + platformWmsDetailMapper.update(null,new UpdateWrapper<PlatformWmsDetail>().lambda() + .set(PlatformWmsDetail::getStatus,Constants.TWO) + .in(PlatformWmsDetail::getIocode,iocodeList) + .eq(PlatformWmsDetail::getIsdeleted, Constants.ZERO)); + }catch (Exception e){ + log.error("銆怶MS銆戝嚭搴撳彇娑堥�氱煡浠诲姟涓氬姟澶勭悊===============涓氬姟澶勭悊寮傚父"+e.getMessage()); + return returnFailReuslt("涓氬姟澶勭悊寮傚父"); } - return returnSuccessReuslt(null); } /** @@ -95,12 +489,29 @@ * @return */ @Override - public WmsBaseResponse doneTask(List<WmsActionNoticeRequest> list) { - //TODO-------------------澶勭悊鍑哄叆搴撲綔涓氬畬鎴愰�氱煡涓氬姟-------------------- - if(list ==null || list.size() ==0){ - return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶈兘涓虹┖"); + public WmsBaseResponse doneTask(WmsBaseRequest<WmsActionNoticeRequest> list) { + try { + if(list ==null||list.getData()==null || list.getData().size() ==0){ + return returnFailReuslt("璇锋眰鍙傛暟涓嶆纭紝鍙傛暟涓嶈兘涓虹┖"); + } + List<String> iocodeList = new ArrayList<>(); + for(WmsActionNoticeRequest param :list.getData()){ + if(StringUtils.isNotBlank(param.getIoCode())){ + iocodeList.add(param.getIoCode()); + } + } + if(iocodeList.size() ==0 ){ + return returnFailReuslt("璇锋眰鍙傛暟iocode涓嶆纭紝鍙傛暟涓嶈兘涓虹┖"); + } + //鍙栨秷鍏ㄩ儴鏁版嵁鐘舵�佷负 銆愬凡瀹屾垚銆� + platformWmsDetailMapper.update(null,new UpdateWrapper<PlatformWmsDetail>().lambda() + .set(PlatformWmsDetail::getStatus,Constants.ONE) + .in(PlatformWmsDetail::getIocode,iocodeList) + .eq(PlatformWmsDetail::getIsdeleted, Constants.ZERO)); + }catch (Exception e){ + log.error("銆怶MS銆戜綔涓氬畬鎴愰�氱煡浠诲姟涓氬姟澶勭悊===============涓氬姟澶勭悊寮傚父"+e.getMessage()); + return returnFailReuslt("涓氬姟澶勭悊寮傚父"); } - return returnSuccessReuslt(null); } @@ -112,6 +523,7 @@ private WmsBaseResponse returnFailReuslt(String msg) { WmsBaseResponse response = new WmsBaseResponse(); + response.setCode(-1); response.setData(new ArrayList<>()); WmsBaseDataResponse rData = new WmsBaseDataResponse(); rData.setMsgDescr(msg); @@ -125,8 +537,10 @@ * @return */ + private WmsBaseResponse returnSuccessReuslt(String msg) { WmsBaseResponse response = new WmsBaseResponse(); + response.setCode(1); response.setData(new ArrayList<>()); WmsBaseDataResponse rData = new WmsBaseDataResponse(); rData.setMsgDescr(StringUtils.defaultString(msg,"鎿嶄綔鎴愬姛")); -- Gitblit v1.9.3