From 6f088dc1cb716e345da064a5e89f148bd248c75d Mon Sep 17 00:00:00 2001 From: zyx <zyx123456> Date: 星期二, 30 四月 2024 10:54:51 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/controller/AgvLocMastController.java | 110 +++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 91 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/AgvLocMastController.java b/src/main/java/com/zy/asrs/controller/AgvLocMastController.java index 2d4f07c..3d437ac 100644 --- a/src/main/java/com/zy/asrs/controller/AgvLocMastController.java +++ b/src/main/java/com/zy/asrs/controller/AgvLocMastController.java @@ -13,26 +13,33 @@ import com.core.exception.CoolException; import com.zy.asrs.entity.*; import com.zy.asrs.entity.param.LocMastInitParam; -import com.zy.asrs.service.AgvLockMastService; +import com.zy.asrs.service.AdjDetlService; +import com.zy.asrs.service.AgvLocDetlService; +import com.zy.asrs.service.AgvLocMastService; +import com.zy.asrs.service.AgvWrkMastService; import com.zy.common.web.BaseController; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.util.Date; import java.util.List; import java.util.Map; @RestController +@RequestMapping("/agv") public class AgvLocMastController extends BaseController { @Autowired - private AgvLockMastService agvLockMastService; + private AgvLocMastService agvLockMastService; + @Autowired + private AgvWrkMastService agvWrkMastService; + @Autowired + private AgvLocDetlService agvLocDetlService; + @Autowired + private AdjDetlService adjDetlService; - @RequestMapping(value = "/agvLocMast/list/auth") + @RequestMapping(value = "/locMast/list/auth") @ManagerAuth public R list(@RequestParam(defaultValue = "1")Integer curr, @RequestParam(defaultValue = "10")Integer limit, @@ -41,12 +48,12 @@ @RequestParam Map<String, Object> param){ excludeTrash(param); EntityWrapper<AgvLocMast> wrapper = new EntityWrapper<>(); - convert(param, wrapper); + convert1(param, wrapper); if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));} return R.ok(agvLockMastService.selectPage(new Page<>(curr, limit), wrapper.eq("status",0))); } - @RequestMapping(value = "/avgLocMast/add/auth") + @RequestMapping(value = "/locMast/add/auth") @ManagerAuth(memo = "搴撲綅娣诲姞") public R add(AgvLocMast agvLocMast) { agvLocMast.setModiUser(getUserId()); @@ -57,15 +64,58 @@ return R.ok(); } - @RequestMapping(value = "/agvLocMast/update/auth") + @RequestMapping(value = "/locMast/update/auth") @ManagerAuth(memo = "搴撲綅淇敼") @Transactional - public R update(LocMast locMast){ - //to do + public R update(AgvLocMast locMast){ + if (Cools.isEmpty(locMast) || null==locMast.getLocNo()){ + return R.error(); + } + AgvWrkMast wrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>() + .eq("source_loc_no", locMast.getLocNo()) + .or().eq("loc_no", locMast.getLocNo())); + if(!Cools.isEmpty(wrkMast)){ + return R.error("璇ュ簱浣嶆鍦ㄤ綔涓氾紝璇峰厛澶勭悊宸ヤ綔妗�"); + } + AgvLocMast oldLocMast = agvLockMastService.selectById(locMast.getLocNo()); + if (locMast.getLocSts().equals("F") && (oldLocMast.getLocSts().equals("D") || oldLocMast.getLocSts().equals("O"))) { + return R.error("褰撳墠鎿嶄綔宸茶闃绘锛岃鑱旂郴绠$悊鍛�"); + } + Date now = new Date(); + // 鏈夌墿鏂欐椂淇敼涓虹┖搴撲綅鎴栬�呯┖鏉垮簱浣嶏紝鍒欏垹闄ゅ簱瀛樻槑缁� + if (oldLocMast.getLocSts().equals("R") || oldLocMast.getLocSts().equals("F") || oldLocMast.getLocSts().equals("S")) { + if (locMast.getLocSts().equals("O") || locMast.getLocSts().equals("D")) { + List<AgvLocDetl> locDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", locMast.getLocNo())); + for (AgvLocDetl locDetl : locDetls) { + // 淇濆瓨璋冩暣璁板綍 + AdjDetl adjDetl = new AdjDetl(); + adjDetl.setLocNo(locDetl.getLocNo()); + adjDetl.setMatnr(locDetl.getMatnr()); + adjDetl.setBatch(locDetl.getBatch()); + adjDetl.setOriQty(locDetl.getAnfme()); + adjDetl.setAdjQty(0.0D); + adjDetl.setModiTime(now); + adjDetl.setModiUser(getUserId()); + adjDetl.setAppeTime(now); + adjDetl.setAppeUser(getUserId()); + if (!adjDetlService.insert(adjDetl)) { + throw new CoolException("鏈嶅姟鍣ㄩ敊璇紝璇疯仈绯荤鐞嗗憳"); + } + } + if (!agvLocDetlService.delete(new EntityWrapper<AgvLocDetl>().eq("loc_no", locMast.getLocNo()))) { + throw new CoolException("鏈嶅姟鍣ㄩ敊璇紝璇疯仈绯荤鐞嗗憳"); + } + } + } + locMast.setModiUser(getUserId()); + locMast.setModiTime(now); + if(!agvLockMastService.updateById(locMast)) { + throw new CoolException("鏈嶅姟鍣ㄩ敊璇紝璇疯仈绯荤鐞嗗憳"); + } return R.ok(); } - @RequestMapping(value = "/agvLocMast/delete/auth") + @RequestMapping(value = "/locMast/delete/auth") @ManagerAuth(memo = "搴撲綅鍒犻櫎") public R delete(@RequestParam String param){ List<AgvLocMast> list = JSONArray.parseArray(param, AgvLocMast.class); @@ -78,7 +128,7 @@ return R.ok(); } - @RequestMapping(value = "/agvLocMast/export/auth") + @RequestMapping(value = "/locMast/export/auth") @ManagerAuth(memo = "搴撲綅瀵煎嚭") public R export(@RequestBody JSONObject param){ List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class); @@ -89,7 +139,7 @@ return R.ok(exportSupport(list, fields)); } - @RequestMapping(value = "/agvLocMast/check/column/auth") + @RequestMapping(value = "/locMast/check/column/auth") @ManagerAuth public R query(@RequestBody JSONObject param) { Wrapper<AgvLocMast> wrapper = new EntityWrapper<AgvLocMast>().eq(humpToLine(String.valueOf(param.get("key"))), param.get("val")); @@ -99,13 +149,23 @@ return R.ok(); } - @RequestMapping(value = "/AgvLocMast/init/auth") + @RequestMapping(value = "/locMast/init/auth") @ManagerAuth(memo = "鍒濆鍖栧簱浣�") -// @Transactional public R init(LocMastInitParam param) { - //to do + //娓呯┖鍘熸湁搴撲綅 +// agvLockMastService.clearLoc(); + //鍒濆鍖栦簩妤煎簱浣� +// agvLockMastService.initLocFloor2(); + //鍒濆鍖栦笁妤肩珯鐐� + agvLockMastService.initLocFloor3(); - return null; + return R.ok(); + } + + @RequestMapping(value = "/locMast/{id}/auth") + @ManagerAuth + public R get(@PathVariable("id") String id) { + return R.ok(agvLockMastService.selectById(String.valueOf(id))); } private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper){ @@ -120,4 +180,16 @@ } } } + private <T> void convert1(Map<String, Object> map, EntityWrapper<T> wrapper){ + for (Map.Entry<String, Object> entry : map.entrySet()){ + String val = String.valueOf(entry.getValue()); + if (val.contains(RANGE_TIME_LINK)){ + String[] dates = val.split(RANGE_TIME_LINK); + wrapper.ge(entry.getKey(), DateUtils.convert(dates[0])); + wrapper.le(entry.getKey(), DateUtils.convert(dates[1])); + } else { + wrapper.eq(entry.getKey(), val); + } + } + } } -- Gitblit v1.9.1