From b5749e71ad98172f5a128557ff20386cba2029db Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期三, 28 二月 2024 16:21:59 +0800 Subject: [PATCH] 拣货单管理新增客户名称展示 --- src/main/java/com/zy/asrs/controller/MobileController.java | 328 +++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 275 insertions(+), 53 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/MobileController.java b/src/main/java/com/zy/asrs/controller/MobileController.java index dd49ddc..22f753b 100644 --- a/src/main/java/com/zy/asrs/controller/MobileController.java +++ b/src/main/java/com/zy/asrs/controller/MobileController.java @@ -1,5 +1,6 @@ package com.zy.asrs.controller; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.annotations.ManagerAuth; @@ -8,18 +9,19 @@ import com.core.common.R; import com.core.exception.CoolException; import com.zy.asrs.entity.*; -import com.zy.asrs.entity.param.CombParam; -import com.zy.asrs.entity.param.MobileAdjustParam; +import com.zy.asrs.entity.param.*; import com.zy.asrs.entity.result.MobileAdjustResult; +import com.zy.asrs.mapper.ManLocDetlMapper; import com.zy.asrs.service.*; -import com.zy.common.model.LocDto; -import com.zy.common.model.TaskDto; +import com.zy.asrs.utils.SaasUtils; import com.zy.common.model.WrkDto; import com.zy.common.web.BaseController; +import com.zy.system.entity.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; +import java.math.BigDecimal; import java.util.*; /** @@ -50,6 +52,30 @@ private BasDevpService basDevpService; @Autowired private PackService packService; + @Autowired + private ManLocDetlMapper manLocDetlMapper; + @Autowired + private PlaService plaService; + @Autowired + private NodeService nodeService; + + + // 鍟嗗搧涓婃灦 + @RequestMapping("/mat/onSale/auth") + @ManagerAuth + public R matOnSale(@RequestBody CombParam combParam){ + mobileService.onSale(combParam); + return R.ok("涓婃灦鎴愬姛"); + } + // 鍟嗗搧涓嬫灦 + @RequestMapping("/mat/offSale/auth") + //@ManagerAuth + public R matOffSale(@RequestBody OffSaleParam offSaleParam){ + mobileService.offSale(offSaleParam); + return R.ok("涓嬫灦鎴愬姛"); + } + + // 缁勬墭 ---------------------------------------------------------------------------------------------------- @@ -72,10 +98,17 @@ return R.ok(); } List<OrderDetl> orderDetls = orderService.selectWorkingDetls(order.getId()); - if (Cools.isEmpty(orderDetls)) { + ArrayList<OrderDetl> orderDetls2 = new ArrayList<>(); + for (OrderDetl orderDetl : orderDetls){ + orderDetl.setAnfme(new BigDecimal(orderDetl.getAnfme()).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue()); + orderDetl.setWorkQty(new BigDecimal(orderDetl.getWorkQty()).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue()); + orderDetl.setQty(new BigDecimal(orderDetl.getQty()).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue()); + orderDetls2.add(orderDetl); + } + if (Cools.isEmpty(orderDetls) || Cools.isEmpty(orderDetls2)) { return R.ok(); } - return R.ok().add(orderDetls); + return R.ok().add(orderDetls2); } @RequestMapping("/comb/auth") @@ -101,7 +134,7 @@ @RequestMapping("/pack/comb/auth") @ManagerAuth(memo = "涓嬬嚎缁勬墭") public R packComb(@RequestBody CombParam combParam){ - mobileService.packComb(combParam, getUserId()); +// mobileService.packComb(combParam, getUserId()); return R.ok("缁勬墭鎴愬姛"); } @@ -149,6 +182,16 @@ return R.ok().add(Cools.add("wrkNo", wrkMast.getWrkNo()).add("ioType", wrkMast.getIoType()).add("list", wrkDetls)); } return R.ok(); + } + + // 鏍规嵁搴撲綅鐮佸拰鍟嗗搧鐮佹悳绱㈠晢鍝� + @RequestMapping("/mat/find/auth") + public R find(@RequestParam(required = false) String locNo + , @RequestParam(required = false) String matnr){ + //List<ManLocDetl> manLocDetls = manLocDetlMapper.selectItem0(locNo, matnr); + ManLocDetl manLocDetl = manLocDetlMapper.selectLocNo0(locNo, matnr); + return R.ok(manLocDetl); + //return R.ok(manLocDetlMapper.selectItem0(locNo, matnr)); } /** @@ -297,62 +340,241 @@ return R.ok("鐩樼偣鎴愬姛"); } - @PostMapping("/out/pakout/auth") -// @ManagerAuth(memo = "鏍规嵁璁㈠崟鍑哄簱") + @RequestMapping("/adjustNew/auth") + @ManagerAuth(memo = "pda鐩樼偣") + public R adjustNew(@RequestBody MobileAdjustNewParam combParam){ + mobileService.adjustNew(combParam, getUserId()); + return R.ok("鐩樼偣鎴愬姛"); + } + + @PostMapping("/order/out/pakout/auth") + @ManagerAuth(memo = "璁㈠崟鍑哄簱") public synchronized R pakoutByOrder(@RequestBody JSONObject param) { if(!param.containsKey("staNo") || !param.containsKey("orderNo")){ return R.parse(BaseRes.PARAM); } - Integer staNo = param.containsKey("staNo") ? Integer.parseInt(param.get("staNo").toString()) : 0; - String orderNo = param.containsKey("orderNo") ? param.get("orderNo").toString() : ""; + mobileService.pakoutByOrder(param,getUserId()); + return R.ok("鍑哄簱鎴愬姛"); + } - BasDevp sta = basDevpService.checkSiteStatus(staNo); - //鏍规嵁璁㈠崟鍙风敓鎴愬嚭搴撲换鍔″伐浣滄。,寰呭疄鐜� - List<OrderDetl> orderDetls = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("order_no", orderNo)); - for(OrderDetl orderDetl : orderDetls){ - //鏌ヨ鎵�鏈夊簱浣嶇姸鎬佷负F鐨勫簱浣嶄俊鎭� - List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(),orderDetl.getBatch(),orderDetl.getOrderNo(),null); - if (locDetls.size() == 0) { - throw new CoolException("搴撳瓨涓病鏈夎鐗╂枡"); + //骞冲簱pda涓婃灦 + @RequestMapping("/manDetl/in") + @ManagerAuth(memo = "璁㈠崟涓婃灦") + public R manDetlAdd(@RequestBody JSONObject json){ + if (json == null){ + return R.error("浼犲叆鏁版嵁涓虹┖"); + } + return mobileService.manDetlIn(json, getUser()); + } + + //骞冲簱pda涓嬫灦 + @RequestMapping("/manDetl/out") + @ManagerAuth(memo = "璁㈠崟涓嬫灦") + public R manDetlDelete(@RequestBody JSONObject json){ + if (json == null){ + return R.error("浼犲叆鏁版嵁涓虹┖"); + } + return mobileService.manDetlOut(json , getUser()); + } + + @RequestMapping("/manDetl/in/barcode") + @ManagerAuth(memo = "璁㈠崟涓婃灦(鎵樼洏鐮�)") + public R manDetlAddbarcode(@RequestBody JSONObject json){ + if (json == null){ + return R.error("浼犲叆鏁版嵁涓虹┖"); + } + return mobileService.manDetlInBarcode(json,getUser()); + } + + @RequestMapping("/manDetl/in/origin") + @ManagerAuth(memo = "骞冲簱涓婃灦") + public R manDetlIn(@RequestBody JSONObject json){ + if (json == null){ + return R.error("浼犲叆鏁版嵁涓虹┖"); + } + return mobileService.manDetlOrigin(json,getUser()); + } + + @RequestMapping("/manDetl/in/no/origin") + @ManagerAuth(memo = "骞冲簱涓婃灦") + public R manDetlInNo(@RequestBody JSONObject json){ + if (json == null){ + return R.error("浼犲叆鏁版嵁涓虹┖"); + } + return mobileService.manDetlOrigInNo(json,getUser()); + } + +// @RequestMapping("/manDetl/out/origin") +// @ManagerAuth(memo = "骞冲簱涓嬫灦") +// public R manDetlout(@RequestBody JSONObject json){ +// if (json == null){ +// return R.error("浼犲叆鏁版嵁涓虹┖"); +// } +// return mobileService.manDetlOriginOut(json,getUser()); +// } + + @RequestMapping("/manDetl/out/origin") + @ManagerAuth(memo = "骞冲簱涓嬫灦") + public R manDetlout2(@RequestBody JSONObject json){ + if (json == null){ + return R.error("浼犲叆鏁版嵁涓虹┖"); + } + return mobileService.manDetlOriginOut(json,getUser()); + } + + @RequestMapping("/plaDetl/packin/v1") + //@ManagerAuth(memo="pla鍏ュ簱") + public R plaPackIn(@RequestBody JSONObject json){ + String locNo = json.get("locNo").toString(); + JSONArray jsonArray = JSONArray.parseArray(json.getJSONArray("pla").toJSONString()); + for (Object o : jsonArray){ + JSONObject jsonObject = (JSONObject)o; + String batch = jsonObject.get("batch").toString(); + Integer packageNo = Integer.parseInt(jsonObject.get("packageNo").toString()); + if(Cools.isEmpty(locNo) || Cools.isEmpty(batch) || Cools.isEmpty(packageNo)){ + return R.error("鏈夊弬鏁颁负绌猴紝鏃犳硶鍏ュ簱"); + } + //娴嬭瘯 + if(true){ + User user = new User(); + user.setUsername("test"); + mobileService.plaPakin(locNo,batch,packageNo,user); } } + return R.ok("鍏ュ簱鎴愬姛"); + } + @RequestMapping("/plaDetl/packout1/v1") +// @ManagerAuth(memo="pla鍑哄簱") + public R plaPackOut1(@RequestBody JSONObject json){ + String locNo = json.get("locNo").toString(); + String batch = json.get("batch").toString(); + Integer packageNo = Integer.parseInt(json.get("packageNo").toString()); + String orderNo = json.get("orderNo").toString(); + String orderDetlId = json.get("orderDetlId").toString(); + String wrkNo = json.get("wrkNo").toString(); + Double anfme = Double.parseDouble(json.get("anfme").toString()); -// if (Cools.isEmpty(locDtos)) { -// return R.parse(BaseRes.PARAM); -// } -// boolean lack = true; -// for (LocDto locDto : locDtos) { -// if (!locDto.isLack()) { -// lack = false; -// break; -// } -// } -// if (lack) { -// return R.error("搴撳瓨涓嶈冻"); -// } -// -// Thread.sleep(1000L); -// -// List<TaskDto> taskDtos = new ArrayList<>(); -// // 鏍规嵁 锛堝簱浣� & 鍑哄簱绔欙級 鍒嗙粍锛� 鐞嗘兂鐘舵�侊細涓�缁勪负涓�娆″嚭搴撲换鍔� -// for (LocDto locDto : locDtos) { -// if (locDto.isLack()) { continue; } -// TaskDto taskDto = new TaskDto(locDto.getLocNo(), locDto.getStaNo(), locDto); -// if (TaskDto.has(taskDtos, taskDto)) { -// TaskDto dto = TaskDto.find(taskDtos, taskDto); -// assert dto != null; -// dto.getLocDtos().addAll(taskDto.getLocDtos()); -// } else { -// taskDtos.add(taskDto); -// } -// } -// // ----------------------------------------------------------------------------------------------- -// for (TaskDto taskDto : taskDtos) { -// BasDevp staNo = basDevpService.checkSiteStatus(taskDto.getStaNo()); -// workService.stockOut(staNo, taskDto, getUserId()); -// } + if(Cools.isEmpty(locNo) || Cools.isEmpty(batch) || Cools.isEmpty(packageNo)){ + return R.error("鏈夊弬鏁颁负绌猴紝鏃犳硶鍏ュ簱"); + } + + mobileService.plaPakout(locNo,batch,packageNo,orderNo,orderDetlId,wrkNo,anfme); return R.ok(); } + @RequestMapping("/plaDetl/packout/v1") +// @ManagerAuth(memo="pla鍑哄簱") + public R plaPackOut(@RequestBody JSONObject json){ + String locNo = json.get("locNo").toString(); + String batch = json.get("batch").toString(); + Integer packageNo = Integer.parseInt(json.get("packageNo").toString()); + String orderNo = json.get("orderNo").toString(); + String orderDetlId = json.get("orderDetlId").toString(); + String wrkNo = json.get("wrkNo").toString(); + Double anfme = Double.parseDouble(json.get("anfme").toString()); + + if(Cools.isEmpty(locNo) || Cools.isEmpty(batch) || Cools.isEmpty(packageNo)){ + return R.error("鏈夊弬鏁颁负绌猴紝鏃犳硶鍏ュ簱"); + } + + mobileService.plaPakout(locNo,batch,packageNo,orderNo,orderDetlId,wrkNo,anfme); + return R.ok(); + } + + + @RequestMapping("/plaDetl/check/v1") + public R plaDetlCheck(@RequestBody JSONObject json){ + String batch = json.get("batch").toString(); + Integer packageNo = Integer.parseInt(json.get("packageNo").toString()); + if(Cools.isEmpty(batch) || Cools.isEmpty(packageNo)){ + return R.error("鏈夊弬鏁颁负绌猴紝鏃犳硶鍏ュ簱"); + } + + Pla pla = plaService.selectByBatchAndPackageNo(batch, packageNo); + if ((Cools.isEmpty(pla))){ + return R.error("璇ュ寘鐗╂枡鏈綍鍏ワ紝鏃犳硶鏌ヨ鍒扮浉鍏充俊鎭�"); + } + if(!Cools.eq(pla.getStatus(), GlobleParameter.PLA_STATUS_0)){ + return R.error("璇ュ寘鐗╂枡涓嶄负寰呭叆搴撶姸鎬侊紝鏃犳硶杩涜鍏ュ簱鎿嶄綔"); + } + return R.ok(pla); + } + + /* + pla绉诲簱 + */ + @RequestMapping("/plaDetl/move/v1") + public R plaDetlMove(@RequestBody JSONObject json){ + + String batch = json.get("batch").toString(); + Integer packageNo = Integer.parseInt(json.get("packageNo").toString()); + String locNo = json.get("locNo").toString(); + + if(Cools.isEmpty(batch) || Cools.isEmpty(packageNo)){ + return R.error("鏈夊弬鏁颁负绌猴紝鏃犳硶鍏ュ簱"); + } + + Pla pla = plaService.selectByBatchAndPackageNo(batch, packageNo); + if ((Cools.isEmpty(pla))){ + return R.error("璇ュ寘鐗╂枡鏈綍鍏ワ紝鏃犳硶鏌ヨ鍒扮浉鍏充俊鎭�"); + } + + Node node = nodeService.selectByUuid(locNo); + if(Cools.isEmpty(node)){ + throw new CoolException("搴撲綅淇℃伅涓嶆纭�"); + } + + String sourceLocNo = pla.getLocNo(); + + pla.setLocNo(locNo); + pla.setStash(node.getParentName()); + pla.setModifyTime(new Date()); + + plaService.updateById(pla); + + SaasUtils.insertLog(2,sourceLocNo,pla.getBrand(),pla.getWeightAnfme(),getUser().getUsername(),locNo,pla.getBatch(),pla.getPackageNo()); + + return R.ok(); + } + + /* + 鏍规嵁鎷h揣鍗曞嚭搴� ------> 鑾峰彇鎷h揣鍗� + */ + @RequestMapping("/manpakout/check/v1") + public R getManPakout (@RequestBody JSONObject json){ + + String orderNo = json.get("orderNo").toString(); + + return R.ok(mobileService.getManPakoutByOrderNo(orderNo)); + } + + @RequestMapping("/manpakout/pakout/v1") + public R pakout(@RequestBody JSONObject json){ + + String batch = json.get("batch").toString(); + Integer packageNo = Integer.parseInt(json.get("packageNo").toString()); + String orderNo = json.get("orderNo").toString(); + + + + return R.ok(); + } + + + public static void main(String[] args) { +// String aa = "[{\"batch\":\"2023090304\",\"packageNo\":\"8\"},{\"batch\":\"2023090304\",\"packageNo\":\"8\"}]"; +// JSONArray jsonArray = JSON.parseArray(aa); +// Object o = jsonArray.get(0); +// System.out.println(o.toString()); +// JSONObject jsonObject = (JSONObject)o; +// System.out.println(jsonObject); + + String s = "2024010502"; + System.out.println(s.substring(8,10)); + + Object s1 = "8"; + System.out.println(Integer.parseInt(s1.toString())); + } + } -- Gitblit v1.9.1