From 14e326c25117aa50087f361605a62df62dffec5c Mon Sep 17 00:00:00 2001 From: lym <1994302445@qq.com> Date: Thu, 18 Jul 2024 18:20:10 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=87=E4=BB=B6=E5=AF=BC=E5=85=A5=E6=96=B0?= =?UTF-8?q?=E6=94=B9-=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../executor/enums/ErrorCodeConstants.java | 1 + .../admin/order/OrderController.java | 152 +++++++----------- .../executor/service/order/OrderService.java | 2 - .../service/order/OrderServiceImpl.java | 27 +--- .../admin/api/webcad/ApiDataAchieve.java | 19 ++- .../admin/files/excel/ExcelTypeRealize.java | 2 - 6 files changed, 76 insertions(+), 127 deletions(-) diff --git a/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ErrorCodeConstants.java b/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ErrorCodeConstants.java index ada28bd6e..16f9594cd 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ErrorCodeConstants.java +++ b/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ErrorCodeConstants.java @@ -67,6 +67,7 @@ public interface ErrorCodeConstants { ErrorCode FILE_UPLOAD_ERR = new ErrorCode(1_002_029_012, "文件内容为空"); ErrorCode ORDER_STATUS_CONFLICT = new ErrorCode(1_002_029_006, "生产单状态冲突,禁止投入生产"); ErrorCode ORDER_READ_ERR = new ErrorCode(1_002_029_006, "订单列表获取失败,请刷新重试"); + ErrorCode ORDER_DATE_ERR = new ErrorCode(1_002_029_006, "获取订单列表,时间超出范围,请在30天范围内选择"); ErrorCode SOURCE_NOT_EXITS_ERROR = new ErrorCode(1_002_029_013, "源数据查询失败"); ErrorCode ORDER_CAN_NOT_DELETE = new ErrorCode(1_002_029_013, "存在状态不符合强制删除的生产单,禁止删除"); diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/OrderController.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/OrderController.java index a9a5cc09f..8dcfe37f7 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/OrderController.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/OrderController.java @@ -182,25 +182,6 @@ public class OrderController { return success(moduleDOList); } - @GetMapping("/get-platesDetails") - @Operation(summary = "生产单详情-板材详细信息") - @Parameters({ - @Parameter(name = "orderId", description = "生产单编号", example = "1024"), - @Parameter(name = "roomId", description = "房间编号", example = "1024"), - @Parameter(name = "bodyId", description = "柜体编号", example = "1024"), - @Parameter(name = "groupId", description = "加工组编号", example = "1024"), - @Parameter(name = "groupName", description = "加工组名称", example = "弧形") - }) - @PreAuthorize("@ss.hasPermission('production:manager-list:detail')") - public CommonResult> platesDetails(@RequestParam("orderId") Long orderId, - @RequestParam(value = "roomId", required = false) Long roomId, - @RequestParam(value = "bodyId", required = false) Long bodyId, - @RequestParam(value = "groupId", required = false) Long groupId, - @RequestParam(value = "groupName", required = false) String groupName) { - List moduleDOList = orderService.getPlatesDetail(orderId, roomId, bodyId, groupId, groupName); - return success(moduleDOList); - } - @GetMapping("/get-platesDetailsPage") @Operation(summary = "生产单详情-板材详细信息(分页)") @Parameters({ @@ -224,23 +205,6 @@ public class OrderController { return success(moduleDOList); } - @GetMapping("/get-partsDetails") - @Operation(summary = "生产单详情-配件详细信息") - @Parameters({ - @Parameter(name = "orderId", description = "生产单编号", example = "1024"), - @Parameter(name = "roomId", description = "房间编号", example = "1024"), - @Parameter(name = "bodyId", description = "柜体编号", example = "1024"), - @Parameter(name = "name", description = "配件名称", example = "1024") - }) - @PreAuthorize("@ss.hasPermission('production:manager-list:detail')") - public CommonResult> partsDetails(@RequestParam("orderId") Long orderId, - @RequestParam(value = "roomId", required = false) Long roomId, - @RequestParam(value = "bodyId", required = false) Long bodyId, - @RequestParam(value = "name", required = false) String name) { - List moduleDOList = orderService.getPartsDetail(orderId, roomId, bodyId, name); - return success(moduleDOList); - } - @GetMapping("/get-partsDetailsPage") @Operation(summary = "生产单详情-配件详细信息(分页)") @Parameters({ @@ -304,64 +268,64 @@ public class OrderController { return success(orderService.importApiData(listMap)); } +// @PostMapping("/importFile") +// @Operation(summary = "生产单文件导入新增") +// @Parameters({ +// @Parameter(name = "file", description = "文件", required = true), +// @Parameter(name = "type", description = "文件类型", required = true) +// }) +// @PreAuthorize("@ss.hasPermission('production:manager-list:create')") +// @OperateLog(type = IMPORT) +// public void exportTest(@RequestPart("file") MultipartFile file, +// @RequestParam(value = "type", required = false, defaultValue = "true") Integer type, +// HttpServletResponse response) throws IOException { +// try { +// +// List list = null; +// OrderDO orderDO = new OrderDO(); +// if (type == 0) { //excel +// // 读取文件 +// excelReadUtil.setErr(0); +// Map map = excelReadUtil.read(file); +// System.err.println(excelReadUtil.isErr()); +// // 判断是否读取有误 +// if (excelReadUtil.isErr() == -1) { // 文件为空 +// ExcelWriterUtil.writeErr(response, "生产单内容为空", orderService.getSavePath() + File.separator + "order_err.xlsx"); +// return; +// } else if (excelReadUtil.isErr() > 0) { +// // 返回文件 +// ExcelWriterUtil.write(response, (Map) map.get("order"), (List) map.get("plate"), orderService.getSavePath() + File.separator + "order_add_excel_err.xlsx"); +// return; +// } else { +// // 获取数据 +// list = (List) map.get("plate"); +// Map mapOrder = excelReadUtil.changeOrderDO((Map) map.get("order")); +// if (list.size() == 0) { +// orderDO.setStatus(0); +// } +// orderDO = ((OrderDO) mapOrder.get("order")).setOrderType(OrderTypeEnum.MAIN_ORDER.getStatus()).setStatus(1); +// String err = ((String) mapOrder.get("error")); +// +// if (!orderService.customOrderNoIsExists(orderDO.getCustomOrderNo())) { +// err += orderDO.getCustomOrderNo() + "-自定义生产单号已存在;"; +// } +// if (!err.equals("")) { +// ExcelWriterUtil.writeErr(response, err, orderService.getSavePath() + File.separator + "order_err.xlsx"); +// } +// +// } +// } else if (type == 1) { // json +// +// } else if (type == 2) { // xml +// +// } +// orderService.importExcelData(orderDO, list, 0); +// } catch (Exception e) { +// ExcelWriterUtil.writeErr(response, "系统出现未知错误,请下载模板,按照模板重新上传文件", orderService.getSavePath() + File.separator + "order_err.xlsx"); +// } +// } + @PostMapping("/importFile") - @Operation(summary = "生产单文件导入新增") - @Parameters({ - @Parameter(name = "file", description = "文件", required = true), - @Parameter(name = "type", description = "文件类型", required = true) - }) - @PreAuthorize("@ss.hasPermission('production:manager-list:create')") - @OperateLog(type = IMPORT) - public void exportTest(@RequestPart("file") MultipartFile file, - @RequestParam(value = "type", required = false, defaultValue = "true") Integer type, - HttpServletResponse response) throws IOException { - try { - - List list = null; - OrderDO orderDO = new OrderDO(); - if (type == 0) { //excel - // 读取文件 - excelReadUtil.setErr(0); - Map map = excelReadUtil.read(file); - System.err.println(excelReadUtil.isErr()); - // 判断是否读取有误 - if (excelReadUtil.isErr() == -1) { // 文件为空 - ExcelWriterUtil.writeErr(response, "生产单内容为空", orderService.getSavePath() + File.separator + "order_err.xlsx"); - return; - } else if (excelReadUtil.isErr() > 0) { - // 返回文件 - ExcelWriterUtil.write(response, (Map) map.get("order"), (List) map.get("plate"), orderService.getSavePath() + File.separator + "order_add_excel_err.xlsx"); - return; - } else { - // 获取数据 - list = (List) map.get("plate"); - Map mapOrder = excelReadUtil.changeOrderDO((Map) map.get("order")); - if (list.size() == 0) { - orderDO.setStatus(0); - } - orderDO = ((OrderDO) mapOrder.get("order")).setOrderType(OrderTypeEnum.MAIN_ORDER.getStatus()).setStatus(1); - String err = ((String) mapOrder.get("error")); - - if (!orderService.customOrderNoIsExists(orderDO.getCustomOrderNo())) { - err += orderDO.getCustomOrderNo() + "-自定义生产单号已存在;"; - } - if (!err.equals("")) { - ExcelWriterUtil.writeErr(response, err, orderService.getSavePath() + File.separator + "order_err.xlsx"); - } - - } - } else if (type == 1) { // json - - } else if (type == 2) { // xml - - } - orderService.importExcelData(orderDO, list, 0); - } catch (Exception e) { - ExcelWriterUtil.writeErr(response, "系统出现未知错误,请下载模板,按照模板重新上传文件", orderService.getSavePath() + File.separator + "order_err.xlsx"); - } - } - - @PostMapping("/importFileAdd") @Operation(summary = "生产单文件导入新增/导入板材") @Parameters({ @Parameter(name = "file", description = "文件", required = true), @@ -563,7 +527,7 @@ public class OrderController { // 小板面积 <集合> @GetMapping("/getPlateArea") - @Operation(summary = "小板数量") + @Operation(summary = "小板面积") @Parameters({ @Parameter(name = "startTime", description = "开始时间", example = "2024-07-15"), @Parameter(name = "endTime", description = "结束时间", example = "2024-07-16"), diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderService.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderService.java index 9c1c41e30..bc1f41dac 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderService.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderService.java @@ -96,7 +96,6 @@ public interface OrderService { * @return List * 需要修改返回值 */ - List getPlatesDetail(Long orderId, Long roomId , Long bodyId , Long groupId, String groupName); PageResult getPlatesDetail(Long orderId, Long roomId, Long bodyId, Long groupId, String groupName, Integer pageNo, Integer pageSize); /** @@ -106,7 +105,6 @@ public interface OrderService { * @return List * 需要修改返回值 */ - List getPartsDetail(Long orderId, Long roomId , Long bodyId , String name); PageResult getPartsDetail(Long orderId, Long roomId , Long bodyId , String name, Integer pageNo, Integer pageSize); /** diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderServiceImpl.java index d58de7e6e..ecc324c82 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/order/OrderServiceImpl.java @@ -412,23 +412,6 @@ public class OrderServiceImpl implements OrderService { return map; } - @Override - public List getPlatesDetail(Long orderId, Long roomId, Long bodyId, Long groupId, String groupName) { - // 判断生产单是否删除 (包含判断存在) - Integer deleted = getOrderDeleted(orderId); - List orderDetail = orderItemMapper.selectPlatesDetailByOrderId(orderId, roomId, bodyId, groupId, - groupName, SecurityFrameworkUtils.getLoginUser().getOrganId(), deleted); - List platesDetailReqVOS = new ArrayList<>(); - orderDetail.forEach(orderPlatesDetailRespVO -> { - OrderPlatesDetailReqVO orderPlatesDetailReqVO = BeanUtils.toBean(orderPlatesDetailRespVO, OrderPlatesDetailReqVO.class) - .setIsRowHole(false); - if (orderPlatesDetailRespVO.getUnregularPointCount() > 0 || orderPlatesDetailRespVO.getFrontHoleCount() > 0 - || orderPlatesDetailRespVO.getBackHoleCount() > 0 || orderPlatesDetailRespVO.getSideHoleCount() > 0) - orderPlatesDetailReqVO.setIsRowHole(true); - platesDetailReqVOS.add(orderPlatesDetailReqVO); - }); - return platesDetailReqVOS; - } @Override public PageResult getPlatesDetail(Long orderId, Long roomId, Long bodyId, Long groupId, String groupName, Integer pageNo, Integer pageSize) { PageDTO page = new PageDTO<>(pageNo, pageSize); @@ -442,14 +425,6 @@ public class OrderServiceImpl implements OrderService { return pageResult; } - @Override - public List getPartsDetail(Long orderId, Long roomId, Long bodyId, String name) { - // 判断生产单是否删除 (包含判断存在) - Integer deleted = getOrderDeleted(orderId); - List orderDetail = orderItemMapper.selectPartsDetailByOrderId(orderId, roomId, bodyId, name, - SecurityFrameworkUtils.getLoginUser().getOrganId(), deleted); - return orderDetail; - } @Override public PageResult getPartsDetail(Long orderId, Long roomId, Long bodyId, String name, Integer pageNo, Integer pageSize) { PageDTO page = new PageDTO<>(pageNo, pageSize); @@ -585,7 +560,7 @@ public class OrderServiceImpl implements OrderService { goodsDO.getSpec(), SecurityFrameworkUtils.getLoginUser().getOrganId()); } - if (plateGoodDOS.size() > 0) {//存在板材 + if (plateGoodDOS != null && plateGoodDOS.size() > 0) {//存在板材 goodsDO.setGoodsId(plateGoodDOS.get(0).getGoodsId()); break; } else if (plateGoodDO != null) { // 存在板材 diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiDataAchieve.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiDataAchieve.java index 4aac80593..bab834bdf 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiDataAchieve.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/api/webcad/ApiDataAchieve.java @@ -1,5 +1,6 @@ package com.cf.imes.module.executor.util.fileConversion.admin.api.webcad; +import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; @@ -12,6 +13,9 @@ import org.springframework.stereotype.Component; import javax.annotation.Resource; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; +import java.time.temporal.ChronoUnit; import java.util.concurrent.Future; import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.exception; @@ -170,10 +174,19 @@ public class ApiDataAchieve { // 订单列表 public Future getApiOrderList(String token,String shopId,String createDateMin, String createDateMax, String orderNo, String customOrderNo) { JSONObject jsonOrders = new JSONObject(); - if (createDateMin != null){ + if (createDateMin != null && createDateMax != null){ + // 定义日期格式 + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + + // 将字符串转换为LocalDate对象 + LocalDate startTime = LocalDate.parse(createDateMin, formatter); + LocalDate endTime = LocalDate.parse(createDateMax, formatter); + long daysBetweenSimple = ChronoUnit.DAYS.between(startTime, endTime); + if (daysBetweenSimple > 30) { + throw exception(ORDER_DATE_ERR); + } + jsonOrders.put("create_date_min", createDateMin + " 00:00:00"); - } - if (createDateMax != null) { jsonOrders.put("create_date_max", createDateMax + " 23:59:59"); } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/files/excel/ExcelTypeRealize.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/files/excel/ExcelTypeRealize.java index 9dbc1ad8c..93d9bd7c7 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/files/excel/ExcelTypeRealize.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/files/excel/ExcelTypeRealize.java @@ -278,8 +278,6 @@ public class ExcelTypeRealize { map.put("orderModuleExtraDOS", orderModuleExtraDOS); map.put("orderModelDOS", orderModelDOS); map.put("orderPartsRemarks", orderPartsRemarks); - System.out.println(" orderGroupDOS " + orderGroupDOS); - System.out.println(" orderItemDOS " + orderItemDOS); return map; }