From 91ab1a15515c4c213b2ac4f777a7f20c3d0d59ad Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期五, 28 三月 2025 13:49:53 +0800 Subject: [PATCH] 一个订单在每个站点检验都需要扫码入库报检,在中间站点复核继续试验之后默认自动将样品出库,且在列表中也不需要再展示出来,到最后一步复核结束反而是需要手动去出库不能自动出库,且出库之后也不需要在页面展示 --- inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderPlanController.java | 260 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 252 insertions(+), 8 deletions(-) diff --git a/inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderPlanController.java b/inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderPlanController.java index 160d923..124f203 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderPlanController.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/controller/InsOrderPlanController.java @@ -1,17 +1,30 @@ package com.yuanchu.mom.controller; +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.yuanchu.mom.dto.InsOrderPlanDTO; -import com.yuanchu.mom.service.InsOrderPlanService; +import com.yuanchu.mom.annotation.ValueAuth; +import com.yuanchu.mom.annotation.ValueClassify; +import com.yuanchu.mom.dto.*; +import com.yuanchu.mom.mapper.InsSampleUserMapper; +import com.yuanchu.mom.pojo.InsOrderFile; +import com.yuanchu.mom.pojo.InsOrderState; +import com.yuanchu.mom.pojo.InsProductResult; +import com.yuanchu.mom.pojo.InsSampleUser; +import com.yuanchu.mom.service.*; import com.yuanchu.mom.utils.JackSonUtil; +import com.yuanchu.mom.vo.InsProductResultVo; import com.yuanchu.mom.vo.Result; +import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import javax.servlet.http.HttpServletRequest; +import java.io.IOException; +import java.util.HashMap; +import java.util.List; import java.util.Map; /** @@ -19,29 +32,260 @@ */ @RestController @RequestMapping("/insOrderPlan") +@Api(tags = "妫�楠屼换鍔�") @AllArgsConstructor public class InsOrderPlanController { private InsOrderPlanService insOrderPlanService; + private InsOrderUserService insOrderUserService; + private InsOrderFileService insOrderFileService; + + private InsProductService insProductService; + private InsOrderStateService insOrderStateService; + + private InsSampleUserMapper insSampleUserMapper; + + @ValueClassify("妫�楠屼换鍔�") @ApiOperation(value = "鑾峰彇妫�楠屼换鍔″垪琛�") @PostMapping("/selectInsOrderPlanList") public Result selectInsOrderPlanList(@RequestBody Map<String, Object> data) throws Exception { Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class); + page.setOptimizeCountSql(false); InsOrderPlanDTO insOrderPlanDTO = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), InsOrderPlanDTO.class); return Result.success(insOrderPlanService.selectInsOrderPlanList(page, insOrderPlanDTO)); } + @ValueAuth + @ApiOperation(value = "妫�楠屽崟璇︽儏-浠诲姟鍒囨崲") + @PostMapping("/inspectionOrderDetailsTaskSwitching") + public Result inspectionOrderDetailsTaskSwitching(@RequestBody Map<String, Object> data) throws Exception { + Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class); + page.setOptimizeCountSql(false); + InsOrderPlanDTO insOrderPlanDTO = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), InsOrderPlanDTO.class); + return Result.success(insOrderPlanService.inspectionOrderDetailsTaskSwitching(page, insOrderPlanDTO)); + } + + @ValueClassify("妫�楠屼换鍔�") @ApiOperation(value = "璁ら浠诲姟璁″垝") @PostMapping("/claimInsOrderPlan") public Result claimInsOrderPlan(@RequestBody InsOrderPlanDTO data) { return Result.success(insOrderPlanService.claimInsOrderPlan(data)); } + @ValueClassify("妫�楠屼换鍔�") @ApiOperation(value = "鎵ц妫�楠屾搷浣�") @PostMapping("/doInsOrder") - public Result<?> doInsOrder(Integer id) { - return Result.success(insOrderPlanService.doInsOrder(id)); + public Result<?> doInsOrder(Integer sampleId, String laboratory) { + return Result.success(insOrderPlanService.doInsOrder(sampleId, laboratory)); + } + + @ValueAuth + @PostMapping("/getInsProduct") + @ApiOperation("鑾峰彇妫�楠岄」鐩拰妯℃澘鍐呭") + //杩欓噷鐨刬d灏辨槸鏍峰搧id + public Result<?> getInsProduct(Integer id, Integer type, String laboratory, HttpServletRequest request) { + return Result.success(insOrderPlanService.getInsProduct(id, type, laboratory, request)); + } + + @ValueClassify("妫�楠屼换鍔�") + @ApiOperation(value = "浠诲姟浜ゆ帴") + @PostMapping("/upPlanUser") + public Result<?> upPlanUser(Integer userId, Integer sampleId, String sonLaboratory) { + return Result.success(insOrderPlanService.upPlanUser(userId, sampleId, sonLaboratory)); + } + + @ValueAuth + @ApiOperation(value = "鍒ゆ柇浜ゆ帴鐨勮瘯楠屽") + @PostMapping("/upPlanUser2") + public Result<?> upPlanUser2(Integer sampleId) { + return Result.success(insOrderPlanService.upPlanUser2(sampleId)); + } + + @ValueClassify("妫�楠屼换鍔�") + @ApiOperation(value = "澶嶆牳妫�楠屼换鍔�") + @PostMapping("/verifyPlan") + public Result<?> verifyPlan(Integer sampleId, String laboratory, Integer type, String tell) throws IOException { + return Result.success(insOrderPlanService.verifyPlan(sampleId, laboratory, type, tell)); + } + + @ValueClassify("妫�楠屼换鍔�") + @ApiOperation(value = "绾犳澶嶆牳") + @PostMapping("/verifyPlan2") + public Result<?> verifyPlan2(Integer sampleId, String laboratory, Integer type, String tell) throws IOException { + return Result.success(insOrderPlanService.verifyPlan2(sampleId, laboratory, type, tell)); + } + + @ValueAuth + @ApiOperation(value = "鏍¢獙妫�楠屼换鍔℃彁浜�") + @PostMapping("/checkSubmitPlan") + public Result<?> checkSubmitPlan(Integer sampleId, String laboratory) { + return Result.success(insOrderPlanService.checkSubmitPlan(sampleId, laboratory)); + } + + @ValueClassify("妫�楠屼换鍔�") + @ApiOperation(value = "妫�楠屼换鍔℃彁浜�") + @PostMapping("/submitPlan") + public Result<?> submitPlan(@RequestBody SubmitPlanDto submitPlanDto) { + int num = insOrderPlanService.submitPlan(submitPlanDto); + return num == 1 ? Result.success() : Result.fail("鎻愪氦澶辫触锛岄儴鍒嗛」鐩繕鏈繘琛屾楠�"); + } + + @ValueClassify("妫�楠屼换鍔�") + @ApiOperation(value = "妫�楠屼换鍔℃挙閿�鎻愪氦") + @PostMapping("/cancelSubmitPlan") + public Result cancelSubmitPlan(Integer orderStateId) { + return Result.success(insOrderPlanService.cancelSubmitPlan(orderStateId)); + } + + @ValueClassify("璁惧") + @ApiOperation(value = "鏄惁鍏佽淇敼閲囬泦鍊�") + @DeleteMapping("/isItAllowedToModifyTheCollectedValues") + public Result<?> isItAllowedToModifyTheCollectedValues() { + return Result.success(); + } + + @ApiOperation(value = "淇濆瓨妫�楠屽唴瀹�") + @PostMapping("/saveInsContext") + @ValueAuth + public Result<?> saveInsContext(String param, Integer num) { + Map<String, Object> param2 = JSON.parseObject(param, Map.class); + insOrderPlanService.saveInsContext(param2, num); + return Result.success(); + } + + @ApiOperation(value = "鐢佃矾璇曢獙鐨勪繚瀛樻楠屽唴瀹�") + @PostMapping("/saveInsContext2") + @ValueAuth + public Result<?> saveInsContext2(@RequestBody InsProductResultDto insProductResultDtos) { + return Result.success(insOrderPlanService.saveInsContext2(insProductResultDtos)); + } + + @ApiOperation(value = "鐢佃矾璇曢獙鐨勪繚瀛樻楠屽唴瀹�(杩斿洖/鎻愪氦)") + @PostMapping("/saveInsContext2s") + @ValueAuth + public Result<?> saveInsContext2s(@RequestBody InsProductResultDtos insProductResultDtos) { + return Result.success(insOrderPlanService.saveInsContext2s(insProductResultDtos)); + } + + @ApiOperation(value = "娓╂箍搴﹁瘯楠�+鍔熺巼璇曢獙鐨勪繚瀛樻楠屽唴瀹�") + @PostMapping("/saveInsContext3") + @ValueAuth + public Result<?> saveInsContext3(@RequestBody InsProductResult insProductResult) { + return Result.success(insOrderPlanService.saveInsContext3(insProductResult)); + } + + @ValueAuth + @ApiOperation(value = "鏌ョ湅妫�楠屽崟涓嬬殑闄勪欢鍒楄〃") + @PostMapping("/getFileList") + public Result<?> getFileList(@RequestBody Map<String, Object> data) throws Exception { + Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class); + page.setOptimizeCountSql(false); + InsOrderFile insOrderFile = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), InsOrderFile.class); + return Result.success(insOrderPlanService.getFileList(page, insOrderFile)); + } + + @ValueClassify("妫�楠屼换鍔�") + @ApiOperation(value = "涓婁紶闄勪欢") + @PostMapping("/uploadFile") + public Result<?> uploadFile(Integer orderId, MultipartFile file, String sonLaboratory,Integer sampleId) { + return Result.success(insOrderPlanService.uploadFile(orderId, file, sonLaboratory,sampleId)); + } + + @ValueClassify("妫�楠屼换鍔�") + @ApiOperation(value = "鍒犻櫎闄勪欢") + @PostMapping("/delfile") + public Result<?> delfile(Integer id) { + return Result.success(insOrderFileService.delfile(id)); + } + + @ValueAuth + @ValueClassify("妫�楠屼换鍔�") + @ApiOperation(value = "涓嬭浇闄勪欢") + @PostMapping("/downFile") + public Result<?> downFile(Integer id) { + InsOrderFile insOrderFile = insOrderFileService.getById(id); + HashMap<String, Object> map = new HashMap<>(); + map.put("type", insOrderFile.getType()); + map.put("fileUrl", insOrderFile.getFileUrl()); + return Result.success(map); + } + + @ApiOperation(value = "濉啓娓╁害涓庢箍搴�") + @PostMapping("/write") + @ValueAuth + public Result<?> write(@RequestBody InsProductDto insProductDto) { + return Result.success(insProductService.write(insProductDto)); + } + + @ValueClassify("妫�楠屼换鍔�") + @ApiOperation(value = "鎻掗槦鎿嶄綔") + @PostMapping("/jumpTeam") + public Result<?> jumpTeam(@RequestBody InsOrderState insOrderState) { + return Result.success(insOrderStateService.jumpTeam(insOrderState)); + } + + @ApiOperation(value = "鐢佃矾璇曢獙鐨勫垹闄ら娈�") + @PostMapping("/deleteInsContext") + @ValueAuth + public Result<?> deleteInsContext(@RequestBody InsProductResultVo insProductResultVo) { + return Result.success(insOrderPlanService.deleteInsContext(insProductResultVo)); + } + + @ApiOperation(value = "鐢佃矾璇曢獙鐐瑰嚮妫�楠岄�夋嫨鐗堟湰") + @PostMapping("/chooseVersion") + @ValueAuth + public Result<?> chooseVersion(Integer orderStateId, Integer version) { + InsOrderState orderState = new InsOrderState(); + orderState.setId(orderStateId); + orderState.setVersion(version); + return Result.success(insOrderStateService.updateById(orderState)); + } + + @ValueAuth + @PostMapping("/getInsOrderUserList") + @ApiOperation("鏌ョ湅妫�楠屽巻鍙插垪琛�") + public Result<?> getInsOrderUserList(Integer insOrderStateId) { + return Result.success(insOrderPlanService.getInsOrderUserList(insOrderStateId)); + } + + @ValueAuth + @PostMapping("/getInsProduct2") + @ApiOperation("鏌ョ湅妫�楠屽巻鍙�") + public Result<?> getInsProduct2(Integer id, Integer type, String laboratory, HttpServletRequest request, Integer num) { + return Result.success(insOrderPlanService.getInsProduct2(id, type, laboratory, request, num)); + } + + @ValueClassify("妫�楠屼换鍔�") + @ApiOperation(value = "鎵爜鎶ユ(鍏ュ簱)") + @PostMapping("/scanInsOrderState") + public Result scanInsOrderState(String sonLaboratory, String sampleCode, String trees,String entrustCode) { + return Result.success(insOrderPlanService.scanInsOrderState(sonLaboratory, sampleCode, trees,entrustCode)); + } + + @ValueClassify("妫�楠屼换鍔�") + @ApiOperation(value = "鎵爜鍑哄簱(鍙湁澶嶆牳缁撴潫鎵嶄細璋冪敤)") + @PostMapping("/outInsOrderState") + public Result outInsOrderState(String sonLaboratory, String sampleCode,String entrustCode) { + return Result.success(insOrderPlanService.outInsOrderState(sonLaboratory, sampleCode,entrustCode)); + } + + @ValueAuth + @PostMapping("/preview") + @ApiOperation("棰勮鏂囦欢") + public Result<?> preview(Integer id) throws Exception { + return Result.success(insOrderPlanService.preview(id)); + } + + @ValueAuth + @PostMapping("/getCheckUser") + @ApiOperation("鑾峰彇褰撳墠妫�楠屼换鍔$殑鎵�鏈夋楠屽憳淇℃伅") + public Result<?> getCheckUser(Integer id,String sonLaboratory) { + List<InsSampleUser> insSampleUsers = insSampleUserMapper.selectList(Wrappers.<InsSampleUser>lambdaQuery() + .eq(InsSampleUser::getState, 0) //妫�楠屼汉 + .eq(InsSampleUser::getInsSampleId, id) + .eq(InsSampleUser::getSonLaboratory, sonLaboratory)); + return Result.success(insSampleUsers); } } -- Gitblit v1.9.3