From 555fdbae1f338a404da8d5f4c52c0afb8003bce6 Mon Sep 17 00:00:00 2001 From: lixiangyu <lixiangyu@xalxzn.com> Date: 星期二, 09 九月 2025 17:54:38 +0800 Subject: [PATCH] feat(cms): 添加库存刀具列表接口并优化相关功能 --- src/main/java/org/jeecg/modules/cms/controller/CuttingReceiveController.java | 303 ++++++++++++++++++++++++++------------------------ 1 files changed, 158 insertions(+), 145 deletions(-) diff --git a/src/main/java/org/jeecg/modules/cms/controller/CuttingReceiveController.java b/src/main/java/org/jeecg/modules/cms/controller/CuttingReceiveController.java index 1d78b9f..a1be185 100644 --- a/src/main/java/org/jeecg/modules/cms/controller/CuttingReceiveController.java +++ b/src/main/java/org/jeecg/modules/cms/controller/CuttingReceiveController.java @@ -12,13 +12,12 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import liquibase.pro.packaged.G; import org.jeecg.common.api.vo.Result; import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.common.util.oConvertUtils; -import org.jeecg.modules.cms.entity.CuttingInbound; -import org.jeecg.modules.cms.entity.CuttingInboundDetail; -import org.jeecg.modules.cms.entity.CuttingReceive; -import org.jeecg.modules.cms.entity.CuttingReceiveDetail; +import org.jeecg.modules.cms.entity.*; +import org.jeecg.modules.cms.service.ICuttingInventoryService; import org.jeecg.modules.cms.service.ICuttingReceiveDetailService; import org.jeecg.modules.cms.service.ICuttingReceiveService; @@ -43,141 +42,143 @@ import io.swagger.annotations.ApiOperation; import org.jeecg.common.aspect.annotation.AutoLog; - /** +/** * @Description: 鍒�鍏烽鐢ㄥ崟 * @Author: jeecg-boot - * @Date: 2025-07-28 + * @Date: 2025-07-28 * @Version: V1.0 */ -@Api(tags="鍒�鍏烽鐢ㄥ崟") +@Api(tags = "鍒�鍏烽鐢ㄥ崟") @RestController @RequestMapping("/cms/cuttingReceive") @Slf4j public class CuttingReceiveController extends JeecgController<CuttingReceive, ICuttingReceiveService> { - @Autowired - private ICuttingReceiveService cuttingReceiveService; + @Autowired + private ICuttingReceiveService cuttingReceiveService; - @Autowired - private ICuttingReceiveDetailService cuttingReceiveDetailService; - - /** - * 鍒嗛〉鍒楄〃鏌ヨ - * - * @param cuttingReceive - * @param pageNo - * @param pageSize - * @param req - * @return - */ - //@AutoLog(value = "鍒�鍏烽鐢ㄥ崟-鍒嗛〉鍒楄〃鏌ヨ") - @ApiOperation(value="鍒�鍏烽鐢ㄥ崟-鍒嗛〉鍒楄〃鏌ヨ", notes="鍒�鍏烽鐢ㄥ崟-鍒嗛〉鍒楄〃鏌ヨ") - @GetMapping(value = "/list") - public Result<IPage<CuttingReceive>> queryPageList(CuttingReceive cuttingReceive, - @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, - @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, - HttpServletRequest req) { - QueryWrapper<CuttingReceive> queryWrapper = QueryGenerator.initQueryWrapper(cuttingReceive, req.getParameterMap()); - Page<CuttingReceive> page = new Page<CuttingReceive>(pageNo, pageSize); - IPage<CuttingReceive> pageList = cuttingReceiveService.page(page, queryWrapper); - return Result.OK(pageList); - } - - /** - * 娣诲姞 - * - * @param jSONObject - * @return - */ - @AutoLog(value = "鍒�鍏烽鐢ㄥ崟-娣诲姞") - @ApiOperation(value="鍒�鍏烽鐢ㄥ崟-娣诲姞", notes="鍒�鍏烽鐢ㄥ崟-娣诲姞") - //@RequiresPermissions("org.jeecg.modules:cms_cutting_receive:add") - @PostMapping(value = "/add") - public Result<String> add(@RequestBody JSONObject jSONObject) { - CuttingReceive cuttingReceive = jSONObject.toJavaObject(CuttingReceive.class); - cuttingReceive.setOrderStatus("1"); - cuttingReceiveService.saveOrUpdate(cuttingReceive); - //鍒犻櫎鍘熷叧鑱旀暟鎹� - List<CuttingReceiveDetail> cuttingReceiveDetailList = cuttingReceiveDetailService.lambdaQuery().eq(CuttingReceiveDetail::getOrderId,cuttingReceive.getId()).list(); - cuttingReceiveDetailService.removeBatchByIds(cuttingReceiveDetailList); - //娣诲姞鏂板叧鑱旀暟鎹� - JSONArray jsonArray = jSONObject.getJSONArray("detailData"); - List<CuttingReceiveDetail> list = jsonArray.toJavaList(CuttingReceiveDetail.class); - for (int i = 0; i < list.size(); i++) { - CuttingReceiveDetail temp = list.get(i); - temp.setOrderId(cuttingReceive.getId()); - cuttingReceiveDetailService.save(temp); - } - return Result.OK("娣诲姞鎴愬姛锛�"); - } - - /** - * 缂栬緫 - * - * @param cuttingReceive - * @return - */ - @AutoLog(value = "鍒�鍏烽鐢ㄥ崟-缂栬緫") - @ApiOperation(value="鍒�鍏烽鐢ㄥ崟-缂栬緫", notes="鍒�鍏烽鐢ㄥ崟-缂栬緫") - //@RequiresPermissions("org.jeecg.modules:cms_cutting_receive:edit") - @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) - public Result<String> edit(@RequestBody CuttingReceive cuttingReceive) { - cuttingReceiveService.updateById(cuttingReceive); - return Result.OK("缂栬緫鎴愬姛!"); - } - - /** - * 閫氳繃id鍒犻櫎 - * - * @param id - * @return - */ - @AutoLog(value = "鍒�鍏烽鐢ㄥ崟-閫氳繃id鍒犻櫎") - @ApiOperation(value="鍒�鍏烽鐢ㄥ崟-閫氳繃id鍒犻櫎", notes="鍒�鍏烽鐢ㄥ崟-閫氳繃id鍒犻櫎") - //@RequiresPermissions("org.jeecg.modules:cms_cutting_receive:delete") - @DeleteMapping(value = "/delete") - public Result<String> delete(@RequestParam(name="id",required=true) String id) { - cuttingReceiveService.removeById(id); - return Result.OK("鍒犻櫎鎴愬姛!"); - } - - /** - * 鎵归噺鍒犻櫎 - * - * @param ids - * @return - */ - @AutoLog(value = "鍒�鍏烽鐢ㄥ崟-鎵归噺鍒犻櫎") - @ApiOperation(value="鍒�鍏烽鐢ㄥ崟-鎵归噺鍒犻櫎", notes="鍒�鍏烽鐢ㄥ崟-鎵归噺鍒犻櫎") - //@RequiresPermissions("org.jeecg.modules:cms_cutting_receive:deleteBatch") - @DeleteMapping(value = "/deleteBatch") - public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) { - this.cuttingReceiveService.removeByIds(Arrays.asList(ids.split(","))); - return Result.OK("鎵归噺鍒犻櫎鎴愬姛!"); - } - - /** - * 閫氳繃id鏌ヨ - * - * @param id - * @return - */ - //@AutoLog(value = "鍒�鍏烽鐢ㄥ崟-閫氳繃id鏌ヨ") - @ApiOperation(value="鍒�鍏烽鐢ㄥ崟-閫氳繃id鏌ヨ", notes="鍒�鍏烽鐢ㄥ崟-閫氳繃id鏌ヨ") - @GetMapping(value = "/queryById") - public Result<CuttingReceive> queryById(@RequestParam(name="id",required=true) String id) { - CuttingReceive cuttingReceive = cuttingReceiveService.getById(id); - if(cuttingReceive==null) { - return Result.error("鏈壘鍒板搴旀暟鎹�"); - } - return Result.OK(cuttingReceive); - } + @Autowired + private ICuttingReceiveDetailService cuttingReceiveDetailService; + /** + * 鍒嗛〉鍒楄〃鏌ヨ + * + * @param cuttingReceive + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "鍒�鍏烽鐢ㄥ崟-鍒嗛〉鍒楄〃鏌ヨ") + @ApiOperation(value = "鍒�鍏烽鐢ㄥ崟-鍒嗛〉鍒楄〃鏌ヨ", notes = "鍒�鍏烽鐢ㄥ崟-鍒嗛〉鍒楄〃鏌ヨ") + @GetMapping(value = "/list") + public Result<IPage<CuttingReceive>> queryPageList(CuttingReceive cuttingReceive, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper<CuttingReceive> queryWrapper = QueryGenerator.initQueryWrapper(cuttingReceive, req.getParameterMap()); + Page<CuttingReceive> page = new Page<CuttingReceive>(pageNo, pageSize); + IPage<CuttingReceive> pageList = cuttingReceiveService.page(page, queryWrapper); + return Result.OK(pageList); + } /** - * 瀵煎嚭excel - * - * @param request - * @param cuttingReceive - */ + * 娣诲姞 + * + * @param jSONObject + * @return + */ + @AutoLog(value = "鍒�鍏烽鐢ㄥ崟-娣诲姞") + @ApiOperation(value = "鍒�鍏烽鐢ㄥ崟-娣诲姞", notes = "鍒�鍏烽鐢ㄥ崟-娣诲姞") + //@RequiresPermissions("org.jeecg.modules:cms_cutting_receive:add") + @PostMapping(value = "/add") + public Result<String> add(@RequestBody JSONObject jSONObject) { + // 淇濆瓨涓昏〃鏁版嵁 + CuttingReceive cuttingReceive = jSONObject.toJavaObject(CuttingReceive.class); + cuttingReceive.setOrderStatus("1"); + cuttingReceiveService.saveOrUpdate(cuttingReceive); + + // 鍒犻櫎鍘熸湁鍏宠仈鐨勬槑缁嗘暟鎹� + List<CuttingReceiveDetail> cuttingReceiveDetailList = cuttingReceiveDetailService.lambdaQuery().eq(CuttingReceiveDetail::getOrderId, cuttingReceive.getId()).list(); + cuttingReceiveDetailService.removeBatchByIds(cuttingReceiveDetailList); + + // 閲嶆柊娣诲姞鏂扮殑鏄庣粏鏁版嵁 + JSONArray jsonArray = jSONObject.getJSONArray("detailData"); + List<CuttingReceiveDetail> list = jsonArray.toJavaList(CuttingReceiveDetail.class); + for (int i = 0; i < list.size(); i++) { + CuttingReceiveDetail temp = list.get(i); + temp.setOrderId(cuttingReceive.getId()); + cuttingReceiveDetailService.save(temp); + } + return Result.OK("娣诲姞鎴愬姛锛�"); + } + + /** + * 缂栬緫 + * + * @param cuttingReceive + * @return + */ + @AutoLog(value = "鍒�鍏烽鐢ㄥ崟-缂栬緫") + @ApiOperation(value = "鍒�鍏烽鐢ㄥ崟-缂栬緫", notes = "鍒�鍏烽鐢ㄥ崟-缂栬緫") + //@RequiresPermissions("org.jeecg.modules:cms_cutting_receive:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) + public Result<String> edit(@RequestBody CuttingReceive cuttingReceive) { + cuttingReceiveService.updateById(cuttingReceive); + return Result.OK("缂栬緫鎴愬姛!"); + } + + /** + * 閫氳繃id鍒犻櫎 + * + * @param id + * @return + */ + @AutoLog(value = "鍒�鍏烽鐢ㄥ崟-閫氳繃id鍒犻櫎") + @ApiOperation(value = "鍒�鍏烽鐢ㄥ崟-閫氳繃id鍒犻櫎", notes = "鍒�鍏烽鐢ㄥ崟-閫氳繃id鍒犻櫎") + //@RequiresPermissions("org.jeecg.modules:cms_cutting_receive:delete") + @DeleteMapping(value = "/delete") + public Result<String> delete(@RequestParam(name = "id", required = true) String id) { + cuttingReceiveService.removeById(id); + return Result.OK("鍒犻櫎鎴愬姛!"); + } + + /** + * 鎵归噺鍒犻櫎 + * + * @param ids + * @return + */ + @AutoLog(value = "鍒�鍏烽鐢ㄥ崟-鎵归噺鍒犻櫎") + @ApiOperation(value = "鍒�鍏烽鐢ㄥ崟-鎵归噺鍒犻櫎", notes = "鍒�鍏烽鐢ㄥ崟-鎵归噺鍒犻櫎") + //@RequiresPermissions("org.jeecg.modules:cms_cutting_receive:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result<String> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { + this.cuttingReceiveService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("鎵归噺鍒犻櫎鎴愬姛!"); + } + + /** + * 閫氳繃id鏌ヨ + * + * @param id + * @return + */ + //@AutoLog(value = "鍒�鍏烽鐢ㄥ崟-閫氳繃id鏌ヨ") + @ApiOperation(value = "鍒�鍏烽鐢ㄥ崟-閫氳繃id鏌ヨ", notes = "鍒�鍏烽鐢ㄥ崟-閫氳繃id鏌ヨ") + @GetMapping(value = "/queryById") + public Result<CuttingReceive> queryById(@RequestParam(name = "id", required = true) String id) { + CuttingReceive cuttingReceive = cuttingReceiveService.getById(id); + if (cuttingReceive == null) { + return Result.error("鏈壘鍒板搴旀暟鎹�"); + } + return Result.OK(cuttingReceive); + } + + /** + * 瀵煎嚭excel + * + * @param request + * @param cuttingReceive + */ //@RequiresPermissions("org.jeecg.modules:cms_cutting_receive:exportXls") @RequestMapping(value = "/exportXls") public ModelAndView exportXls(HttpServletRequest request, CuttingReceive cuttingReceive) { @@ -185,28 +186,40 @@ } /** - * 閫氳繃excel瀵煎叆鏁版嵁 - * - * @param request - * @param response - * @return - */ + * 閫氳繃excel瀵煎叆鏁版嵁 + * + * @param request + * @param response + * @return + */ //@RequiresPermissions("cms_cutting_receive:importExcel") @RequestMapping(value = "/importExcel", method = RequestMethod.POST) public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { return super.importExcel(request, response, CuttingReceive.class); } - /** - * 鏍规嵁棰嗙敤id鏌ヨ棰嗙敤鏄庣粏 - * - * @param orderId - * @return - */ - @GetMapping("/detailList") - public Result<?> detailList(@RequestParam("orderId") String orderId) { - List<Map<String, Object>> list = cuttingReceiveDetailService.detailList(orderId); - return Result.ok(list); - } + /** + * 鏍规嵁棰嗙敤id鏌ヨ棰嗙敤鏄庣粏 + * + * @param orderId + * @return + */ + @GetMapping("/detailList") + public Result<?> detailList(@RequestParam("orderId") String orderId) { + List<Map<String, Object>> list = cuttingReceiveDetailService.detailList(orderId); + return Result.ok(list); + } + /** + * 閫夋嫨搴撳瓨鍒�鍏风殑鍒楄〃 + * + * @return + */ + @GetMapping("/getInventoryToolList") + public Result<?> getInventoryToolList(@RequestParam("pageNo") Integer pageNo, + @RequestParam("pageSize") Integer pageSize, + @RequestParam Map<String, Object> params) { + IPage<Map<String, Object>> inventoryTooList = cuttingReceiveService.getInventoryToolList(pageNo, pageSize, params); + return Result.ok(inventoryTooList); + } } -- Gitblit v1.9.3