mirror of
http://192.168.1.205:9980/cf_devdept2/cf_imes_server.git
synced 2026-08-13 05:12:07 +08:00
生产工序-查询-分堆-打包代码1.0
This commit is contained in:
+24
@@ -0,0 +1,24 @@
|
||||
package com.cf.imes.framework.common.enums;
|
||||
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
@AllArgsConstructor
|
||||
@Getter
|
||||
public enum OrderPackageStatusEnum {
|
||||
|
||||
UNPACKED(0,"未封包"),
|
||||
PACKAGED(1, "已封包");
|
||||
private Integer status;
|
||||
private String description;
|
||||
|
||||
public boolean equals(Integer status) {
|
||||
return this.status .equals(status) ;
|
||||
}
|
||||
|
||||
public boolean equals(OrderPackageStatusEnum enableStatusEnum) {
|
||||
return enableStatusEnum != null && enableStatusEnum.status .equals(this.getStatus()) ;
|
||||
}
|
||||
|
||||
}
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
package com.cf.imes.framework.common.enums;
|
||||
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
@AllArgsConstructor
|
||||
@Getter
|
||||
public enum OrderPackageTypeEnum {
|
||||
|
||||
UNDEFINED(-1,"未定义"),
|
||||
PLATE(0,"板材"),
|
||||
PARTS(1,"配件"),
|
||||
OTHER_ACCESSORIES(2,"其他配件");
|
||||
private Integer type;
|
||||
private String description;
|
||||
|
||||
public boolean equals(Integer type) {
|
||||
return this.type .equals(type) ;
|
||||
}
|
||||
|
||||
public boolean equals(OrderPackageTypeEnum enableTypeEnum) {
|
||||
return enableTypeEnum != null && enableTypeEnum.type .equals(this.getType()) ;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
package com.cf.imes.framework.common.enums;
|
||||
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@AllArgsConstructor
|
||||
@Getter
|
||||
public enum ProcessingStatusEnum {
|
||||
|
||||
RAW(false,"未加工"),
|
||||
PROCESSED(true, "已加工");
|
||||
private Boolean status;
|
||||
private String description;
|
||||
|
||||
public boolean equals(Integer status) {
|
||||
return this.status .equals(status) ;
|
||||
}
|
||||
|
||||
public boolean equals(ProcessingStatusEnum enableStatusEnum) {
|
||||
return enableStatusEnum != null && enableStatusEnum.status .equals(this.getStatus()) ;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -136,6 +136,48 @@
|
||||
<groupId>com.cf.imes</groupId>
|
||||
<artifactId>cf-spring-boot-starter-excel</artifactId>
|
||||
</dependency>
|
||||
|
||||
|
||||
<!-- pagehelper分页插件-->
|
||||
<dependency>
|
||||
<groupId>com.github.pagehelper</groupId>
|
||||
<artifactId>pagehelper</artifactId>
|
||||
<version>6.1.0</version>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>com.github.jsqlparser</groupId>
|
||||
<artifactId>jsqlparser</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.github.pagehelper</groupId>
|
||||
<artifactId>sqlparser4.5</artifactId>
|
||||
<version>6.1.0</version>
|
||||
</dependency>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- https://mvnrepository.com/artifact/com.jacob/jacob -->
|
||||
<dependency>
|
||||
<groupId>com.hynnet</groupId>
|
||||
<artifactId>jacob</artifactId>
|
||||
<version>1.18</version>
|
||||
</dependency>
|
||||
|
||||
|
||||
<dependency>
|
||||
<groupId>com.google.code.gson</groupId>
|
||||
<artifactId>gson</artifactId>
|
||||
<version>2.8.8</version> <!-- 使用最新版本 -->
|
||||
</dependency>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
|
||||
+148
@@ -0,0 +1,148 @@
|
||||
package com.cf.imes.module.manage.controller.admin.grouping;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.CommonResult;
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.framework.common.util.object.BeanUtils;
|
||||
import com.cf.imes.module.manage.controller.admin.grouping.vo.*;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.ProcessRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleReqVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderDO;
|
||||
import com.cf.imes.module.manage.service.grouping.GroupingService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.validation.Valid;
|
||||
|
||||
import static com.cf.imes.framework.common.pojo.CommonResult.success;
|
||||
|
||||
@Tag(name = "管理后台 - 分堆 ")
|
||||
@RestController
|
||||
@RequestMapping("/manage/grouping")
|
||||
@Validated
|
||||
public class GroupingController {
|
||||
|
||||
|
||||
|
||||
@Resource
|
||||
private GroupingService groupingService;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/select")
|
||||
@Operation(summary = "查询订单")
|
||||
@PreAuthorize("@ss.hasPermission('manage:grouping:query')")
|
||||
public CommonResult<PageResult<ProcessRespVO>> getGroupingList(@Valid OrderPageReqVO pageReqVO) {
|
||||
|
||||
PageResult<OrderDO> groupingList = groupingService.getGroupingList(pageReqVO);
|
||||
|
||||
return success(BeanUtils.toBean(groupingList, ProcessRespVO.class));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/notJoinedPlate")
|
||||
@Operation(summary = "查看订单的板材信息(未加入包裹的板材信息)")
|
||||
@PreAuthorize("@ss.hasPermission('manage:grouping:query')")
|
||||
public CommonResult<PageResult<OrderPlateListRespVO>> notJoinedGroupingPlateList(@Valid OrderModuleReqVO reqVO) {
|
||||
|
||||
return success(groupingService.notJoinedGroupingPlateList(reqVO));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/joinedPlate")
|
||||
@Operation(summary = "查看订单的板材信息(已将加入包裹的板材信息)")
|
||||
@PreAuthorize("@ss.hasPermission('manage:grouping:query')")
|
||||
public CommonResult<PageResult<OrderPlateListRespVO>> joinedGroupPlateList(@Valid JoinedPlateReqVO reqVO) {
|
||||
|
||||
return success(groupingService.joinedGroupPlateList(reqVO));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@PutMapping("/insertPlate")
|
||||
@Operation(summary = "包裹表新增板件(加入)")
|
||||
@Parameter(name = "plateId", description = "板材id", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('manage:grouping:create')")
|
||||
public CommonResult<Boolean> insertPackPlate(@Valid @RequestParam("plateId") Long plateId) {
|
||||
|
||||
groupingService.insertPackPlate(plateId);
|
||||
|
||||
return success(true);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@PutMapping("/update")
|
||||
@Operation(summary = "移除包裹板材信息")
|
||||
@Parameter(name = "plateId", description = "板材id", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('manage:grouping:update')")
|
||||
public CommonResult<Boolean> removePackPlate(@Valid @RequestParam("plateId") Long plateId) {
|
||||
|
||||
groupingService.removePackPlate(plateId);
|
||||
|
||||
return success(true);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@PostMapping("/insert")
|
||||
@Operation(summary = "新增分堆(包裹)")
|
||||
@PreAuthorize("@ss.hasPermission('manage:grouping:create')")
|
||||
public CommonResult<Long> insertGrouping(@Valid @RequestBody OrderPackageReqVO packageReqVO) {
|
||||
|
||||
return success(groupingService.insertGrouping(packageReqVO));
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/export")
|
||||
@Operation(summary = "查看订单的板材信息(已将加入包裹的板材信息)")
|
||||
@PreAuthorize("@ss.hasPermission('manage:grouping:export')")
|
||||
public void exportData(@Valid ExportJsonReqVO reqVO) {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
package com.cf.imes.module.manage.controller.admin.grouping.vo;
|
||||
|
||||
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleVO;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.ToString;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Schema(description = "管理后台 - 数据导出 Request VO")
|
||||
@Data
|
||||
@ToString(callSuper = true)
|
||||
public class ExportJsonReqVO {
|
||||
|
||||
|
||||
@Schema(description = "板材信息", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private List<OrderPlateListRespVO> Plates;
|
||||
|
||||
|
||||
@Schema(description = "模块信息", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private List<OrderModuleVO> modules;
|
||||
|
||||
@Schema(description = "已分堆", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private List<Long> alreadyGrouping;
|
||||
|
||||
|
||||
@Schema(description = "未分堆", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private List<Long> notYetGrouping;
|
||||
|
||||
}
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
package com.cf.imes.module.manage.controller.admin.grouping.vo;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Schema(description = "管理后台 - 新增包裹板材信息 Request VO")
|
||||
@Data
|
||||
public class GroupPlateReqVO {
|
||||
|
||||
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
@NotNull(message = "生产单号不能为空")
|
||||
private Long orderNo;
|
||||
|
||||
|
||||
@Schema(description = "板件id", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
@NotNull(message = "板件id不能为空")
|
||||
private Long plateId;
|
||||
|
||||
|
||||
@Schema(description = "房间名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
@NotNull(message = "房间名称不能为空")
|
||||
private String roomName;
|
||||
|
||||
}
|
||||
+25
@@ -0,0 +1,25 @@
|
||||
package com.cf.imes.module.manage.controller.admin.grouping.vo;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.ToString;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Schema(description = "管理后台 - Request VO")
|
||||
@Data
|
||||
@ToString(callSuper = true)
|
||||
public class JoinedPlateReqVO extends PageParam {
|
||||
|
||||
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
private Long orderNo;
|
||||
|
||||
|
||||
@Schema(description = "包裹ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "3,4,5")
|
||||
private List<Long> packageIdList;
|
||||
|
||||
|
||||
|
||||
}
|
||||
+52
@@ -0,0 +1,52 @@
|
||||
package com.cf.imes.module.manage.controller.admin.grouping.vo;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Schema(description = "管理后台 - 生产单包裹表 order_package_{N}新增/修改 Request VO")
|
||||
@Data
|
||||
public class OrderPackageReqVO {
|
||||
|
||||
|
||||
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "4399")
|
||||
private Long id;
|
||||
|
||||
|
||||
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
@NotNull(message = "生产单号不能为空")
|
||||
private Long orderNo;
|
||||
|
||||
|
||||
@Schema(description = "包裹编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
@NotNull(message = "包裹编号不能为空")
|
||||
private Long packageNo;
|
||||
|
||||
|
||||
@Schema(description = "包裹类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
@NotNull(message = "包裹类型不能为空(0:板材)")
|
||||
private Long type;
|
||||
|
||||
|
||||
@Schema(description = "包裹名", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
@NotNull(message = "包裹名不能为空")
|
||||
private String name;
|
||||
|
||||
|
||||
@Schema(description = "包裹状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
@NotNull(message = "包裹状态不能为空(默认为:0:未打包")
|
||||
private Long status;
|
||||
|
||||
|
||||
|
||||
@Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
private String remark;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
package com.cf.imes.module.manage.controller.admin.grouping.vo;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
import static com.cf.imes.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
|
||||
|
||||
@Schema(description = "管理后台 - 生产单表 order_{N} 分页 Request VO ")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class OrderPageReqVO extends PageParam {
|
||||
|
||||
@Schema(description = "工序 id")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "生产单号")
|
||||
private Long orderNo;
|
||||
|
||||
@Schema(description = "自定义单号")
|
||||
private String customOrderNo;
|
||||
|
||||
@Schema(description = "客户")
|
||||
private String customer;
|
||||
|
||||
@Schema(description = "地址")
|
||||
private String address;
|
||||
|
||||
@Schema(description = "开始时间",requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
|
||||
private LocalDateTime[] startTime;
|
||||
|
||||
@Schema(description = "结束时间",requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
|
||||
private LocalDateTime[] endTime;
|
||||
|
||||
@Schema(description = "订单状态",requiredMode = Schema.RequiredMode.REQUIRED, example = "false")
|
||||
private List<Long> statusList;
|
||||
}
|
||||
+61
@@ -0,0 +1,61 @@
|
||||
package com.cf.imes.module.manage.controller.admin.grouping.vo;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Schema(description = "管理后台 - 生产单版件表 Response VO")
|
||||
@Data
|
||||
public class OrderPlateListRespVO {
|
||||
|
||||
|
||||
@Schema(description = "订单号", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
private Long orderNo;
|
||||
|
||||
|
||||
@Schema(description = "生产单明细ID", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long ItemID;
|
||||
|
||||
|
||||
@Schema(description = "板编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "板名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四")
|
||||
private String name;
|
||||
|
||||
@Schema(description = "板材名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四")
|
||||
private String plateName;
|
||||
|
||||
@Schema(description = "颜色", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String color;
|
||||
|
||||
@Schema(description = "宽度", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Double width;
|
||||
|
||||
@Schema(description = "高度", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Double height;
|
||||
|
||||
@Schema(description = "厚度", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Double thickness;
|
||||
|
||||
@Schema(description = "材质:颗粒板、欧松板、多层板、生态板、禾香板、密度板、实木、铝蜂窝板、铝塑板", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String material;
|
||||
|
||||
|
||||
@Schema(description = "加工组", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四")
|
||||
private String groupName;
|
||||
|
||||
|
||||
@Schema(description = "房间名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四")
|
||||
private String roomName;
|
||||
|
||||
|
||||
@Schema(description = "柜体名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四")
|
||||
private String bodyName;
|
||||
|
||||
|
||||
@Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
+318
@@ -0,0 +1,318 @@
|
||||
package com.cf.imes.module.manage.controller.admin.pack;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.CommonResult;
|
||||
import com.cf.imes.framework.common.pojo.PageParam;
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.framework.common.util.object.BeanUtils;
|
||||
import com.cf.imes.framework.excel.core.util.ExcelUtils;
|
||||
import com.cf.imes.framework.operatelog.core.annotations.OperateLog;
|
||||
import com.cf.imes.module.manage.controller.admin.grouping.vo.OrderPackageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.*;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackageVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleReqVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.query.OrderPackageDO;
|
||||
import com.cf.imes.module.manage.service.pack.PackService;
|
||||
import com.cf.imes.module.manage.service.query.ProductionStatusService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.validation.Valid;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
|
||||
import static com.cf.imes.framework.common.pojo.CommonResult.success;
|
||||
import static com.cf.imes.framework.operatelog.core.enums.OperateTypeEnum.EXPORT;
|
||||
|
||||
@Tag(name = "管理后台 - 生产打包 ")
|
||||
@RestController
|
||||
@RequestMapping("/manage/pack")
|
||||
@Validated
|
||||
public class PackController {
|
||||
|
||||
|
||||
|
||||
@Resource
|
||||
private PackService packService;
|
||||
|
||||
|
||||
|
||||
@Resource
|
||||
private ProductionStatusService productionStatusService;
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/page")
|
||||
@Operation(summary = "打包分页查询")
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
|
||||
public CommonResult<PageResult<PackRespVO>> getPlatePage(@Valid PackPageReqVO pageReqVO) {
|
||||
|
||||
return CommonResult.success(packService.getPackPage(pageReqVO));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/getOrderPack")
|
||||
@Operation(summary = "查看生产订单对应的包裹信息")
|
||||
@Parameter(name = "orderId", description = "生产单Id", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
|
||||
public CommonResult<List<OrderPackageVO>> getOrderPack(@Valid @RequestParam("orderId") Long orderId) {
|
||||
List<OrderPackageDO> orderPack = packService.getOrderPack(orderId);
|
||||
return success(BeanUtils.toBean(orderPack,OrderPackageVO.class));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/getOrderPlate")
|
||||
@Operation(summary = "查看生产订单对应的板材信息")
|
||||
@Parameter(name = "orderId", description = "生产单Id", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
|
||||
public CommonResult<List<PlateDetailsRespVO>> getOrderPlateList(@Valid @RequestParam("orderId") Long orderId) {
|
||||
|
||||
return success(packService.getOrderPlateList(orderId));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/export")
|
||||
@Operation(summary = "导出缺板")
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:export')")
|
||||
@OperateLog(type = EXPORT)
|
||||
public void exportPlateExcel(@Valid OrderPartsReqVO pageReqVO,
|
||||
HttpServletResponse response) throws IOException {
|
||||
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||
List<PlateDetailsRespVO> list = productionStatusService.getMissingBoard(pageReqVO).getList();
|
||||
// 导出 Excel
|
||||
ExcelUtils.write(response, "缺板信息表.xlsx", "数据", PlateDetailsRespVO.class, list);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/pagePlate")
|
||||
@Operation(summary = "查看板材列表分页")
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
|
||||
public CommonResult<PageResult<PlateDetailsRespVO>> queryPlateDetails(@Valid OrderModuleReqVO pageReqVO){
|
||||
|
||||
PageResult<PlateDetailsRespVO> packageDetailsRespVOPageResult = packService.queryPlateDetails(pageReqVO);
|
||||
|
||||
return success(packageDetailsRespVOPageResult);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/getParts")
|
||||
@Operation(summary = "查看配件列表分页")
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
|
||||
public CommonResult<PageResult<OrderPartsRespVO>> getParts(@Valid OrderPartsReqVO reqVO) {
|
||||
|
||||
return success(packService.getPartsList(reqVO));
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// TODO 目前前端接口只有查询配件包裹时会调用,板材是否会调用待确认
|
||||
@GetMapping("/getPartsPack")
|
||||
@Operation(summary = "查看配件包裹详情")
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
|
||||
public CommonResult<List<OrderPartsRespVO>> queryPackageDetails(@Valid PrintOrderPackReqVO reqVO){
|
||||
|
||||
return success(packService.queryPackageDetails(reqVO));
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@PutMapping("/insert")
|
||||
@Operation(summary = "包裹封包-板材包裹封包")
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:update')")
|
||||
public CommonResult<OrderPackageDO> updatePackStatus(@Valid @RequestBody OrderPackReqVO packageVO) {
|
||||
|
||||
return success(packService.updatePackStatus(packageVO));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@PutMapping("/unpacking")
|
||||
@Operation(summary = "拆包")
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:update')")
|
||||
public CommonResult<Boolean> unpacking(@Valid Long packageID) {
|
||||
|
||||
packService.unpacking(packageID);
|
||||
|
||||
return success(true);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/GetOrderPlateGroup")
|
||||
@Operation(summary = "显示分组房间名称")
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
|
||||
public CommonResult<List<OrderPlateGroupRespVO>> GetOrderPlateGroup(@Valid Long orderId) {
|
||||
|
||||
return success(packService.GetOrderPlateGroup(orderId));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/print")
|
||||
@Operation(summary = "包裹订单打印")
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
|
||||
public CommonResult<PrintOrderPackRespVO> printOrderPack (@Valid PrintOrderPackReqVO reqVO) {
|
||||
|
||||
return success(packService.printOrderPack(reqVO));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@PostMapping("/insertParts")
|
||||
@Operation(summary = "新增配件-即新增一个包裹")
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:insert')")
|
||||
public CommonResult<OrderPackageDO> addNewPartsPack (@Valid @RequestBody OrderPackReqVO reqVO) {
|
||||
|
||||
return success(packService.addNewPartsPack(reqVO));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@PostMapping("/insertOther")
|
||||
@Operation(summary = "新增外部配件-即新增一个包裹")
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:insert')")
|
||||
public CommonResult<OrderPackageDO> addNewOtherParts (@Valid @RequestBody OtherPackReqVO reqVO) {
|
||||
|
||||
return success(packService.addNewOtherParts(reqVO));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@DeleteMapping("/delete")
|
||||
@Operation(summary = "删除包裹及其关联的包裹信息(删除全部)")
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:delete')")
|
||||
public CommonResult<Boolean> deleteOrderPack (@Valid @RequestBody PackReqVO reqVO) {
|
||||
|
||||
packService.deleteOrderPack(reqVO);
|
||||
return success(true);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@DeleteMapping("/deleteOtherParts")
|
||||
@Operation(summary = "删除配件包裹中的配件(删除某一个)")
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:delete')")
|
||||
public CommonResult<Boolean> deleteOtherParts (@Valid @RequestBody DeleteOtherPartsReqVO reqVO) {
|
||||
|
||||
packService.deleteOtherParts(reqVO);
|
||||
return success(true);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@PostMapping("/insertaabbcc")
|
||||
@Operation(summary = "测试包裹")
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:insert')")
|
||||
public CommonResult<Long> testpack (@Valid @RequestBody OrderPackageReqVO reqVO) {
|
||||
|
||||
//
|
||||
return success(packService.testpack(reqVO));
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// TODO 查询接口是否需要定义
|
||||
/*
|
||||
@GetMapping("/query")
|
||||
@Operation(summary = "板材列表下的查询")
|
||||
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
|
||||
public CommonResult<List<OrderPlateGroupRespVO>> GetOrderPlateGroup(@Valid Long orderId) {
|
||||
|
||||
return success(packService.GetOrderPlateGroup(orderId));
|
||||
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
package com.cf.imes.module.manage.controller.admin.pack.vo;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.ToString;
|
||||
|
||||
@Schema(description = "管理后台 - 删除其他配件 Request VO")
|
||||
@Data
|
||||
@ToString(callSuper = true)
|
||||
public class DeleteOtherPartsReqVO {
|
||||
|
||||
|
||||
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long orderId;
|
||||
|
||||
|
||||
@Schema(description = "包裹Id", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long packageId;
|
||||
|
||||
|
||||
@Schema(description = "明细ID", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long itemId;
|
||||
|
||||
|
||||
@Schema(description = "是否是其他类型的包裹", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Boolean isOther;
|
||||
|
||||
|
||||
}
|
||||
|
||||
+41
@@ -0,0 +1,41 @@
|
||||
package com.cf.imes.module.manage.controller.admin.pack.vo;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.ToString;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Schema(description = "管理后台 - 包裹新增 Request VO")
|
||||
@Data
|
||||
@ToString(callSuper = true)
|
||||
public class OrderPackReqVO {
|
||||
|
||||
|
||||
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long orderId;
|
||||
|
||||
|
||||
@Schema(description = "包裹ID", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long packId;
|
||||
|
||||
|
||||
@Schema(description = "包裹类型", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long packageType;
|
||||
|
||||
|
||||
@Schema(description = "新增的板件ID", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private List<Long> addPlateIdList;
|
||||
|
||||
|
||||
@Schema(description = "移除的板件ID", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private List<Long> deletePlateIdList;
|
||||
|
||||
|
||||
@Schema(description = "新增的配件包裹ID", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private List<Long> addPartsIdList;
|
||||
|
||||
|
||||
|
||||
}
|
||||
+20
@@ -0,0 +1,20 @@
|
||||
package com.cf.imes.module.manage.controller.admin.pack.vo;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
|
||||
@Schema(description = "管理后台 - 生产单模块表 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class OrderPartsReqVO extends PageParam {
|
||||
|
||||
|
||||
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long orderNo;
|
||||
|
||||
}
|
||||
+49
@@ -0,0 +1,49 @@
|
||||
package com.cf.imes.module.manage.controller.admin.pack.vo;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Schema(description = "管理后台 - 配件列表详情 Response VO")
|
||||
@Data
|
||||
public class OrderPartsRespVO {
|
||||
|
||||
|
||||
@Schema(description = "配件ID", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long partsId;
|
||||
|
||||
@Schema(description = "配件名称", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String partsName;
|
||||
|
||||
@Schema(description = "型号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String model;
|
||||
|
||||
@Schema(description = "规格", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String spec;
|
||||
|
||||
@Schema(description = "数量", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long num;
|
||||
|
||||
@Schema(description = "单位", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String unit;
|
||||
|
||||
@Schema(description = "品牌", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String brand;
|
||||
|
||||
@Schema(description = "厂家", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String factory;
|
||||
|
||||
|
||||
@Schema(description = "配件类型", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String type;
|
||||
|
||||
|
||||
@Schema(description = "是否复合配件", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Boolean isComposite;
|
||||
|
||||
|
||||
|
||||
@Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String remark;
|
||||
|
||||
}
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
package com.cf.imes.module.manage.controller.admin.pack.vo;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import org.apache.poi.ss.formula.functions.Value;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
||||
@Schema(description = "管理后台 - 板材列表显示 Response VO")
|
||||
@Data
|
||||
public class OrderPlateGroupRespVO {
|
||||
|
||||
|
||||
@Schema(description = "房间id", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long roomId;
|
||||
|
||||
|
||||
@Schema(description = "房间名称", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String roomName;
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
package com.cf.imes.module.manage.controller.admin.pack.vo;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.ToString;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Schema(description = "管理后台 - 新增外部配件 Request VO")
|
||||
@Data
|
||||
@ToString(callSuper = true)
|
||||
public class OtherPackReqVO {
|
||||
|
||||
|
||||
|
||||
@Schema(description = "配件ID,主键", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long id;
|
||||
|
||||
|
||||
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
@NotNull(message = "生产单号不能为空")
|
||||
private Long orderId;
|
||||
|
||||
|
||||
|
||||
@Schema(description = "配件名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
@NotEmpty(message = "配件名称不能为空")
|
||||
private String name;
|
||||
|
||||
|
||||
@Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED, example = "你猜")
|
||||
@NotEmpty(message = "备注不能为空")
|
||||
private String remark;
|
||||
|
||||
|
||||
|
||||
@Schema(description = "包裹编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
@NotNull(message = "包裹编号不能为空")
|
||||
private Long packNo;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
package com.cf.imes.module.manage.controller.admin.pack.vo;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
|
||||
@Schema(description = "管理后台 - 打包分页 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class PackPageReqVO extends PageParam {
|
||||
|
||||
|
||||
@Schema(description = "生产状态(2:生产中,3:生产完成)", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
|
||||
private Long status;
|
||||
|
||||
|
||||
@Schema(description = "订单号")
|
||||
private Long orderNo;
|
||||
|
||||
|
||||
@Schema(description = "自定义单号")
|
||||
private String customOrderNo;
|
||||
|
||||
|
||||
@Schema(description = "客户")
|
||||
private String customer;
|
||||
|
||||
|
||||
@Schema(description = "地址")
|
||||
private String address;
|
||||
|
||||
|
||||
}
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
package com.cf.imes.module.manage.controller.admin.pack.vo;
|
||||
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.ToString;
|
||||
|
||||
@Schema(description = "管理后台 - 删除订单包裹 Request VO")
|
||||
@Data
|
||||
@ToString(callSuper = true)
|
||||
public class PackReqVO {
|
||||
|
||||
|
||||
|
||||
@Schema(description = "包裹ID", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long packageId;
|
||||
|
||||
|
||||
@Schema(description = "包裹编号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long packageNo;
|
||||
|
||||
|
||||
@Schema(description = "是否是其他类型的包裹", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Boolean isOther;
|
||||
|
||||
|
||||
}
|
||||
+74
@@ -0,0 +1,74 @@
|
||||
package com.cf.imes.module.manage.controller.admin.pack.vo;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
|
||||
|
||||
|
||||
@Schema(description = "管理后台 - 生产单表 order_{N} Response VO")
|
||||
@Data
|
||||
public class PackRespVO {
|
||||
|
||||
|
||||
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "7788")
|
||||
private Long id;
|
||||
|
||||
|
||||
@Schema(description = "自定义单号", requiredMode = Schema.RequiredMode.REQUIRED,example = "ABCD")
|
||||
private String customOrderNo;
|
||||
|
||||
|
||||
@Schema(description = "经销商", requiredMode = Schema.RequiredMode.REQUIRED,example = "ABCD")
|
||||
private String dealer;
|
||||
|
||||
|
||||
@Schema(description = "交付日期", requiredMode = Schema.RequiredMode.REQUIRED,example = "ABCD")
|
||||
private LocalDateTime deliveryDate;
|
||||
|
||||
|
||||
@Schema(description = "订单状态", requiredMode = Schema.RequiredMode.REQUIRED,example = "0")
|
||||
private Long status;
|
||||
|
||||
|
||||
@Schema(description = "客户", requiredMode = Schema.RequiredMode.REQUIRED,example = "张三")
|
||||
private String customer;
|
||||
|
||||
|
||||
@Schema(description = "客户地址", requiredMode = Schema.RequiredMode.REQUIRED,example = "AABB")
|
||||
private String address;
|
||||
|
||||
|
||||
@Schema(description = "客户电话", requiredMode = Schema.RequiredMode.REQUIRED,example = "ABCD")
|
||||
private String phoneNumber;
|
||||
|
||||
|
||||
@Schema(description = "业务员", requiredMode = Schema.RequiredMode.REQUIRED,example = "ABCD")
|
||||
private String salesman;
|
||||
|
||||
|
||||
@Schema(description = "拆单员", requiredMode = Schema.RequiredMode.REQUIRED,example = "ABCD")
|
||||
private String splitter;
|
||||
|
||||
|
||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private LocalDateTime createTime;
|
||||
|
||||
|
||||
|
||||
@Schema(description = "已打包数", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long packCount;
|
||||
|
||||
|
||||
@Schema(description = "已打包片数", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long packPieceCount;
|
||||
|
||||
|
||||
@Schema(description = "总片数", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long totalPieceCount;
|
||||
|
||||
|
||||
}
|
||||
+81
@@ -0,0 +1,81 @@
|
||||
package com.cf.imes.module.manage.controller.admin.pack.vo;
|
||||
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
@Schema(description = "管理后台 - 板材详情(导出板材表) Response VO")
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class PlateDetailsRespVO {
|
||||
|
||||
@Schema(description = "房间名称", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("房间名称")
|
||||
private String roomName;
|
||||
|
||||
|
||||
@Schema(description = "柜体名称", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("柜体名称")
|
||||
private String cabinetName;
|
||||
|
||||
@Schema(description = "板编号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("板编号")
|
||||
private String plateNo;
|
||||
|
||||
@Schema(description = "板名称", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("板名称")
|
||||
private String plateName;
|
||||
|
||||
@Schema(description = "材料", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("材料")
|
||||
private String material;
|
||||
|
||||
@Schema(description = "颜色", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("颜色")
|
||||
private String color;
|
||||
|
||||
@Schema(description = "宽度", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("宽度")
|
||||
private Double width;
|
||||
|
||||
@Schema(description = "长度", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("长度")
|
||||
private Double height;
|
||||
|
||||
@Schema(description = "厚度", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("厚度")
|
||||
private Double thickness;
|
||||
|
||||
@Schema(description = "面积", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("面积")
|
||||
private Double area;
|
||||
|
||||
@Schema(description = "纹路", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("纹路")
|
||||
private String texture;
|
||||
|
||||
@Schema(description = "异形数量", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("异形")
|
||||
private String specialShaped;
|
||||
|
||||
@Schema(description = "造型数量", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("造型")
|
||||
private String profiling;
|
||||
|
||||
@Schema(description = "排孔数量", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("排孔")
|
||||
private String rowHole;
|
||||
|
||||
@Schema(description = "加工组", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("加工组")
|
||||
private String processGroup;
|
||||
|
||||
@Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
package com.cf.imes.module.manage.controller.admin.pack.vo;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.ToString;
|
||||
|
||||
@Schema(description = "管理后台 - 打印生产单的包裹 Request VO")
|
||||
@Data
|
||||
@ToString(callSuper = true)
|
||||
public class PrintOrderPackReqVO {
|
||||
|
||||
|
||||
|
||||
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
private Long orderNo;
|
||||
|
||||
|
||||
@Schema(description = "包裹id", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
private Long packageNo;
|
||||
|
||||
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
package com.cf.imes.module.manage.controller.admin.pack.vo;
|
||||
|
||||
|
||||
import com.cf.imes.module.manage.controller.admin.grouping.vo.OrderPlateListRespVO;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Schema(description = "管理后台 - 包裹打印显示 Response VO")
|
||||
@Data
|
||||
public class PrintOrderPackRespVO {
|
||||
|
||||
@Schema(description = "自定义单号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String customOrderNo;
|
||||
|
||||
|
||||
@Schema(description = "经销商", requiredMode = Schema.RequiredMode.REQUIRED,example = "ABCD")
|
||||
private String dealer;
|
||||
|
||||
|
||||
@Schema(description = "订单号", requiredMode = Schema.RequiredMode.REQUIRED, example = "7788")
|
||||
private Long orderNo;
|
||||
|
||||
|
||||
@Schema(description = "包裹ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7788")
|
||||
private Long packNo;
|
||||
|
||||
|
||||
@Schema(description = "包裹序号", requiredMode = Schema.RequiredMode.REQUIRED, example = "7788")
|
||||
private Long packNum;
|
||||
|
||||
|
||||
|
||||
@Schema(description = "客户地址", requiredMode = Schema.RequiredMode.REQUIRED,example = "AABB")
|
||||
private String address;
|
||||
|
||||
|
||||
|
||||
@Schema(description = "板材列表", requiredMode = Schema.RequiredMode.REQUIRED,example = "AABB")
|
||||
private List<OrderPlateListRespVO> plateList;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+111
@@ -0,0 +1,111 @@
|
||||
package com.cf.imes.module.manage.controller.admin.process;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.CommonResult;
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.framework.common.util.object.BeanUtils;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.OrderPorcessStepItemVO;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.OrderProcessReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.ProcessPageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.ProcessRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderPlateRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.PlatePageVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderDO;
|
||||
import com.cf.imes.module.manage.service.process.ProductionProcessService;
|
||||
import com.cf.imes.module.manage.service.query.ProductionStatusService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.validation.Valid;
|
||||
import java.util.List;
|
||||
|
||||
import static com.cf.imes.framework.common.pojo.CommonResult.success;
|
||||
|
||||
@Tag(name = "管理后台 - 生产单工序 process")
|
||||
@RestController
|
||||
@RequestMapping("/manage/process")
|
||||
@Validated
|
||||
public class ProductionProcessController {
|
||||
|
||||
|
||||
@Resource
|
||||
private ProductionProcessService productionProcessService;
|
||||
|
||||
@Resource
|
||||
private ProductionStatusService productionStatusService;
|
||||
|
||||
|
||||
|
||||
@GetMapping("/page")
|
||||
@Operation(summary = "获得生产工序分页")
|
||||
@PreAuthorize("@ss.hasPermission('manage:process:query')")
|
||||
public CommonResult<PageResult<ProcessRespVO>> getUserPage(@Valid ProcessPageReqVO pageReqVO) {
|
||||
|
||||
return success(productionProcessService.getProcessPage(pageReqVO));
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@GetMapping("/select")
|
||||
@Operation(summary = "根据工序号获得生产工序下的加工项")
|
||||
@PreAuthorize("@ss.hasPermission('manage:process:query')")
|
||||
public CommonResult<List<OrderPorcessStepItemVO>> selectProcess(@Valid OrderProcessReqVO reqVO){
|
||||
List<OrderPorcessStepItemVO> orderProcessById = productionProcessService.getOrderProcessById(reqVO);
|
||||
return CommonResult.success(orderProcessById);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@PutMapping("/update")
|
||||
@Operation(summary = "根据工序步骤 id 修改生产工序步骤表的状态")
|
||||
@PreAuthorize("@ss.hasPermission('manage:process:update')")
|
||||
public CommonResult<Boolean> updateProcessStatus(@Valid Long id){
|
||||
productionProcessService.updateProcessStatus(id);
|
||||
return success(true);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@PutMapping("/updateAll")
|
||||
@Operation(summary = "根据工序 id 修改生产单工序表的状态")
|
||||
@PreAuthorize("@ss.hasPermission('manage:process:update')")
|
||||
public CommonResult<Boolean> updateAllProcessStatus(@Valid Long id){
|
||||
productionProcessService.updateAllProcessStatus(id);
|
||||
return success(true);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/selectPlateName")
|
||||
@Operation(summary = "查看板材信息的组合名称")
|
||||
@PreAuthorize("@ss.hasPermission('manage:process:query')")
|
||||
public CommonResult<List<OrderModuleVO>> selectPlateName(@Valid Long processStepId){
|
||||
|
||||
return success(productionProcessService.selectPlateName(processStepId));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/pagePlate")
|
||||
@Operation(summary = "查看板材信息分页")
|
||||
@PreAuthorize("@ss.hasPermission('manage:process:query')")
|
||||
public CommonResult<PageResult<OrderPlateRespVO>> queryPlate(@Valid PlatePageVO pageReqVO){
|
||||
return success(productionStatusService.getOrderPlatePage(pageReqVO));
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
package com.cf.imes.module.manage.controller.admin.process.vo;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Schema(description = "管理后台 - 生产单工序步骤表 order_process_step_{N} Response VO")
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class OrderPorcessStepItemVO {
|
||||
|
||||
|
||||
@Schema(description = "主键")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "加工项名称")
|
||||
private String name;
|
||||
|
||||
@Schema(description = "工序组ID")
|
||||
private Long orderProcessId;
|
||||
|
||||
@Schema(description = "工序名称")
|
||||
private String stepName;
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
+24
@@ -0,0 +1,24 @@
|
||||
package com.cf.imes.module.manage.controller.admin.process.vo;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.ToString;
|
||||
|
||||
@Schema(description = "管理后台 - 生产单工序表 order_process_{N} Request VO")
|
||||
@Data
|
||||
@ToString(callSuper = true)
|
||||
public class OrderProcessReqVO {
|
||||
|
||||
|
||||
@Schema(description = "工序 id", requiredMode = Schema.RequiredMode.REQUIRED,example = "12")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "订单状态",requiredMode = Schema.RequiredMode.REQUIRED, example = "false")
|
||||
private Boolean status;
|
||||
|
||||
@Schema(description = "生产单号",requiredMode = Schema.RequiredMode.REQUIRED, example = "1234")
|
||||
private Long orderNo;
|
||||
|
||||
|
||||
}
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
package com.cf.imes.module.manage.controller.admin.process.vo;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
|
||||
@Schema(description = "管理后台 - 生产单工序表 order_process_{N} 分页 Request VO ")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class ProcessPageReqVO extends PageParam {
|
||||
|
||||
|
||||
@Schema(description = "工序 id", requiredMode = Schema.RequiredMode.REQUIRED,example = "12")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "订单状态",requiredMode = Schema.RequiredMode.REQUIRED, example = "0")
|
||||
private Long status;
|
||||
|
||||
@Schema(description = "生产单号")
|
||||
private Long orderNo;
|
||||
|
||||
@Schema(description = "自定义单号")
|
||||
private String customOrderNo;
|
||||
|
||||
@Schema(description = "客户")
|
||||
private String customer;
|
||||
|
||||
@Schema(description = "地址")
|
||||
private String address;
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+73
@@ -0,0 +1,73 @@
|
||||
package com.cf.imes.module.manage.controller.admin.process.vo;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
|
||||
@Schema(description = "管理后台 - 生产单表 order_{N} Response VO")
|
||||
@Data
|
||||
public class ProcessRespVO {
|
||||
|
||||
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "7788")
|
||||
private Long id;
|
||||
|
||||
|
||||
@Schema(description = "自定义单号", requiredMode = Schema.RequiredMode.REQUIRED,example = "ABCD")
|
||||
private String customOrderNo;
|
||||
|
||||
|
||||
@Schema(description = "经销商", requiredMode = Schema.RequiredMode.REQUIRED,example = "ABCD")
|
||||
private String dealer;
|
||||
|
||||
|
||||
@Schema(description = "交付日期", requiredMode = Schema.RequiredMode.REQUIRED,example = "ABCD")
|
||||
private LocalDateTime deliveryDate;
|
||||
|
||||
|
||||
@Schema(description = "订单状态", requiredMode = Schema.RequiredMode.REQUIRED,example = "0")
|
||||
private Long status;
|
||||
|
||||
|
||||
@Schema(description = "客户", requiredMode = Schema.RequiredMode.REQUIRED,example = "张三")
|
||||
private String customer;
|
||||
|
||||
|
||||
@Schema(description = "客户地址", requiredMode = Schema.RequiredMode.REQUIRED,example = "AABB")
|
||||
private String address;
|
||||
|
||||
|
||||
@Schema(description = "客户电话", requiredMode = Schema.RequiredMode.REQUIRED,example = "ABCD")
|
||||
private String phoneNumber;
|
||||
|
||||
|
||||
@Schema(description = "业务员", requiredMode = Schema.RequiredMode.REQUIRED,example = "ABCD")
|
||||
private String salesman;
|
||||
|
||||
|
||||
@Schema(description = "拆单员", requiredMode = Schema.RequiredMode.REQUIRED,example = "ABCD")
|
||||
private String splitter;
|
||||
|
||||
|
||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private LocalDateTime createTime;
|
||||
|
||||
|
||||
|
||||
|
||||
@Schema(description = "已打包数", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long packCount;
|
||||
|
||||
|
||||
@Schema(description = "已打包片数", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long packPieceCount;
|
||||
|
||||
|
||||
@Schema(description = "总片数", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long totalPieceCount;
|
||||
|
||||
|
||||
|
||||
}
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
package com.cf.imes.module.manage.controller.admin.process.vo;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.ToString;
|
||||
|
||||
@Schema(description = "更改状态")
|
||||
@Data
|
||||
@ToString(callSuper = true)
|
||||
public class ProcessStepVo {
|
||||
|
||||
|
||||
@Schema(description = "步骤ID", requiredMode = Schema.RequiredMode.REQUIRED,example = "3344")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "订单状态",requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Boolean Status;
|
||||
|
||||
|
||||
}
|
||||
+196
@@ -0,0 +1,196 @@
|
||||
package com.cf.imes.module.manage.controller.admin.query;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.CommonResult;
|
||||
import com.cf.imes.framework.common.pojo.PageParam;
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.framework.common.util.object.BeanUtils;
|
||||
import com.cf.imes.framework.excel.core.util.ExcelUtils;
|
||||
import com.cf.imes.framework.operatelog.core.annotations.OperateLog;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.OrderPartsReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.ProcessRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackagePageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackageVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.PrintOrderRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.*;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.salary.PriceRatePageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.salary.PriceRateReqVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderDO;
|
||||
import com.cf.imes.module.manage.service.query.ProductionStatusService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.validation.Valid;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
|
||||
import static com.cf.imes.framework.common.pojo.CommonResult.success;
|
||||
import static com.cf.imes.framework.operatelog.core.enums.OperateTypeEnum.EXPORT;
|
||||
|
||||
@Tag(name = "管理后台 - 生产查询")
|
||||
@RestController
|
||||
@RequestMapping("/manage/query")
|
||||
@Validated
|
||||
public class ProductionStatusController {
|
||||
|
||||
|
||||
@Resource
|
||||
private ProductionStatusService productionStatusService;
|
||||
|
||||
|
||||
|
||||
@GetMapping("/page")
|
||||
@Operation(summary = "生产状态查询分页")
|
||||
@PreAuthorize("@ss.hasPermission('manage:query:query')")
|
||||
public CommonResult<PageResult<ProcessRespVO>> pageProductionStatus(@Valid OrderPlatePageReqVO pageReqVO){
|
||||
PageResult<OrderDO> pageResult = productionStatusService.getProductionPage(pageReqVO);
|
||||
return success(BeanUtils.toBean(pageResult, ProcessRespVO.class));
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/select")
|
||||
@Operation(summary = "查看生产单下的工序组工序")
|
||||
@Parameter(name = "orderNo", description = "生产单Id", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('manage:query:query')")
|
||||
public CommonResult<List<ProductionGroupVO>> selectProduction(@Valid @RequestParam("orderNo") Long orderNo){
|
||||
|
||||
List<ProductionGroupVO> orderProcessById = productionStatusService.selectProduction(orderNo);
|
||||
|
||||
return CommonResult.success(orderProcessById);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/selectPlateName")
|
||||
@Operation(summary = "查看板材信息的组合名称")
|
||||
@PreAuthorize("@ss.hasPermission('manage:query:query')")
|
||||
public CommonResult<List<OrderModuleVO>> selectPlateName(@Valid OrderModuleReqVO reqVO){
|
||||
|
||||
return success(productionStatusService.selectPlateName(reqVO));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/pagePlate")
|
||||
@Operation(summary = "查看板材信息分页")
|
||||
@PreAuthorize("@ss.hasPermission('manage:query:query')")
|
||||
public CommonResult<PageResult<OrderPlateRespVO>> queryPlate(@Valid PlatePageVO pageReqVO){
|
||||
return success(productionStatusService.getOrderPlatePage(pageReqVO));
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/pageSalary")
|
||||
@Operation(summary = "计件工资分页查询")
|
||||
@PreAuthorize("@ss.hasPermission('manage:query:query')")
|
||||
public CommonResult<PageResult<PriceRateReqVO>> StepSalary(@Valid PriceRatePageReqVO pageReqVO){
|
||||
|
||||
PageResult<PriceRateReqVO> salaryPage = productionStatusService.getSalaryPage(pageReqVO);
|
||||
|
||||
return CommonResult.success(salaryPage);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/pagePackage")
|
||||
@Operation(summary = "打包查询分页")
|
||||
@PreAuthorize("@ss.hasPermission('manage:query:query')")
|
||||
public CommonResult<PageResult<ProcessRespVO>> queryPackage(@Valid OrderPlatePageReqVO pageReqVO){
|
||||
|
||||
PageResult<OrderDO> pageResult = productionStatusService.queryPackage(pageReqVO);
|
||||
|
||||
return success(BeanUtils.toBean(pageResult, ProcessRespVO.class));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/queryPackageList")
|
||||
@Operation(summary = "生产单打包完成包裹查看")
|
||||
@Parameter(name = "orderNo", description = "生产单Id", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('manage:query:query')")
|
||||
public CommonResult<List<OrderPackageVO>> queryPackageList(@Valid @RequestParam("orderNo") Long orderNo){
|
||||
|
||||
List<OrderPackageVO> orderProcessById = productionStatusService.getPackageList(orderNo);
|
||||
|
||||
return CommonResult.success(orderProcessById);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/queryPackageDetails")
|
||||
@Operation(summary = "查看包裹详情分页")
|
||||
@PreAuthorize("@ss.hasPermission('manage:query:query')")
|
||||
public CommonResult<PageResult<PackageDetailsRespVO>> queryPackageDetails(@Valid OrderPackagePageReqVO pageReqVO){
|
||||
|
||||
PageResult<PackageDetailsRespVO> packageDetailsRespVOPageResult = productionStatusService.queryPackageDetails(pageReqVO);
|
||||
|
||||
return CommonResult.success(packageDetailsRespVOPageResult);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/printOrder")
|
||||
@Operation(summary = "打印订单")
|
||||
@Parameter(name = "orderNo", description = "生产单Id", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('manage:query:export')")
|
||||
public CommonResult<PrintOrderRespVO> printOrder(@Valid @RequestParam("orderNo") Long orderNo){
|
||||
|
||||
return CommonResult.success(productionStatusService.printOrder(orderNo));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@GetMapping("/export")
|
||||
@Operation(summary = "导出缺板")
|
||||
@PreAuthorize("@ss.hasPermission('manage:query:export')")
|
||||
@OperateLog(type = EXPORT)
|
||||
public void exportPlateExcel(@Valid OrderPartsReqVO pageReqVO,
|
||||
HttpServletResponse response) throws IOException {
|
||||
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||
List<PlateDetailsRespVO> list = productionStatusService.getMissingBoard(pageReqVO).getList();
|
||||
// 导出 Excel
|
||||
ExcelUtils.write(response, "缺板信息表.xls", "数据", PlateDetailsRespVO.class, list);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
package com.cf.imes.module.manage.controller.admin.query.vo.pack;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
|
||||
@Schema(description = "管理后台 - 查看包裹详情分页 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class OrderPackagePageReqVO extends PageParam {
|
||||
|
||||
@Schema(description = "包裹编号")
|
||||
private Long packageNo;
|
||||
|
||||
/* @Schema(description = "包裹类型")
|
||||
private Integer type;*/
|
||||
|
||||
|
||||
}
|
||||
+49
@@ -0,0 +1,49 @@
|
||||
package com.cf.imes.module.manage.controller.admin.query.vo.pack;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Schema(description = "管理后台 - 生产单包裹表 Response VO")
|
||||
@Data
|
||||
public class OrderPackageVO {
|
||||
|
||||
|
||||
|
||||
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long orderNo;
|
||||
|
||||
@Schema(description = "包裹编号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String packageNo;
|
||||
|
||||
@Schema(description = "包裹类型", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long type;
|
||||
|
||||
@Schema(description = "包裹状态", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long status;
|
||||
|
||||
@Schema(description = "组织ID", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long organId;
|
||||
|
||||
@Schema(description = "创建人", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String creator;
|
||||
|
||||
@Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String remark;
|
||||
|
||||
@Schema(description = "出库人", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String updater;
|
||||
|
||||
@Schema(description = "出库时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private LocalDateTime updateTime;
|
||||
|
||||
|
||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private LocalDateTime createTime;
|
||||
|
||||
}
|
||||
+85
@@ -0,0 +1,85 @@
|
||||
package com.cf.imes.module.manage.controller.admin.query.vo.pack;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Schema(description = "管理后台 - 包裹详情 Response VO")
|
||||
@Data
|
||||
public class PackageDetailsRespVO {
|
||||
|
||||
@Schema(description = "房间名称-板材类型显示", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String roomName;
|
||||
|
||||
@Schema(description = "柜体名称", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String cabinetName;
|
||||
|
||||
@Schema(description = "板编号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String palteNo;
|
||||
|
||||
@Schema(description = "板名称", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String palteName;
|
||||
|
||||
@Schema(description = "材料", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String material;
|
||||
|
||||
@Schema(description = "颜色", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String color;
|
||||
|
||||
@Schema(description = "宽度", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Double width;
|
||||
|
||||
@Schema(description = "长度", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Double height;
|
||||
|
||||
@Schema(description = "厚度", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Double thickness;
|
||||
|
||||
@Schema(description = "面积", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Double area;
|
||||
|
||||
@Schema(description = "纹路", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String texture;
|
||||
|
||||
@Schema(description = "异形数量", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String specialShaped;
|
||||
|
||||
@Schema(description = "造型数量", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String profiling;
|
||||
|
||||
@Schema(description = "排孔数量", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String rowHole;
|
||||
|
||||
@Schema(description = "加工组", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String processGroup;
|
||||
|
||||
|
||||
@Schema(description = "备注(板材和配件都要传递)", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String remark;
|
||||
|
||||
|
||||
|
||||
|
||||
@Schema(description = "配件名称-配件类型显示", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String partsName;
|
||||
|
||||
@Schema(description = "型号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String model;
|
||||
|
||||
@Schema(description = "规格", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String spec;
|
||||
|
||||
@Schema(description = "数量", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long num;
|
||||
|
||||
@Schema(description = "单位", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String unit;
|
||||
|
||||
@Schema(description = "品牌", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String brand;
|
||||
|
||||
@Schema(description = "厂家", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String factory;
|
||||
|
||||
|
||||
}
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
package com.cf.imes.module.manage.controller.admin.query.vo.pack;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Schema(description = "管理后台 - 打印订单 Response VO")
|
||||
@Data
|
||||
public class PrintOrderRespVO {
|
||||
|
||||
|
||||
@Schema(description = "订单号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long orderNo;
|
||||
|
||||
@Schema(description = "自定义单号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String customOrderNo;
|
||||
|
||||
@Schema(description = "经销商", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String dealer;
|
||||
|
||||
@Schema(description = "收货地址", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String address;
|
||||
|
||||
@Schema(description = "客户", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String customer;
|
||||
|
||||
@Schema(description = "客户手机号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String customerPhone;
|
||||
|
||||
|
||||
@Schema(description = "包裹数量", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Integer packageQuantity;
|
||||
|
||||
|
||||
}
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
package com.cf.imes.module.manage.controller.admin.query.vo.productionStatus;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.ToString;
|
||||
|
||||
|
||||
@Schema(description = "管理后台 - 生产单模块表 Request VO")
|
||||
@Data
|
||||
@ToString(callSuper = true)
|
||||
public class OrderModuleReqVO extends PageParam {
|
||||
|
||||
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
private Long orderNo;
|
||||
|
||||
|
||||
}
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
package com.cf.imes.module.manage.controller.admin.query.vo.productionStatus;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
|
||||
@Schema(description = "管理后台 - 生产单模块表 order_module_{N} Response VO")
|
||||
@Data
|
||||
public class OrderModuleVO {
|
||||
|
||||
@Schema(description = "柜体 id", requiredMode = Schema.RequiredMode.REQUIRED, example = "嘿嘿")
|
||||
private Long bodyId;
|
||||
|
||||
|
||||
@Schema(description = "组合名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "嘿嘿")
|
||||
private String name;
|
||||
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
package com.cf.imes.module.manage.controller.admin.query.vo.productionStatus;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@Schema(description = "管理后台 - 生产单表 order_{N} 分页 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class OrderPlatePageReqVO extends PageParam {
|
||||
|
||||
|
||||
|
||||
@Schema(description = "生产状态(2:生产中,3:生产完成)", requiredMode = Schema.RequiredMode.REQUIRED, example = "2,3")
|
||||
private List<Long> statusList;
|
||||
|
||||
|
||||
@Schema(description = "订单号")
|
||||
private Long orderNo;
|
||||
|
||||
|
||||
@Schema(description = "自定义单号")
|
||||
private String customOrderNo;
|
||||
|
||||
|
||||
@Schema(description = "客户")
|
||||
private String customer;
|
||||
|
||||
|
||||
@Schema(description = "地址")
|
||||
private String address;
|
||||
|
||||
|
||||
@Schema(description = "经销商")
|
||||
private String dealer;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
package com.cf.imes.module.manage.controller.admin.query.vo.productionStatus;
|
||||
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Schema(description = "管理后台 - 板材信息表 Response VO")
|
||||
@Data
|
||||
public class OrderPlateRespVO {
|
||||
|
||||
@Schema(description = "板编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "9822")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "板名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四")
|
||||
private String name;
|
||||
|
||||
|
||||
@Schema(description = "颜色", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String color;
|
||||
|
||||
@Schema(description = "宽度", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Double width;
|
||||
|
||||
@Schema(description = "高度", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Double height;
|
||||
|
||||
@Schema(description = "厚度", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Double thickness;
|
||||
|
||||
@Schema(description = "材质:颗粒板、欧松板、多层板、生态板、禾香板、密度板、实木、铝蜂窝板、铝塑板", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String material;
|
||||
|
||||
}
|
||||
+20
@@ -0,0 +1,20 @@
|
||||
package com.cf.imes.module.manage.controller.admin.query.vo.productionStatus;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
|
||||
@Schema(description = "管理后台 - 板材信息表分页")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class PlatePageVO extends PageParam {
|
||||
|
||||
@Schema(description = "柜体 id")
|
||||
private Long bodyId ;
|
||||
|
||||
|
||||
}
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
package com.cf.imes.module.manage.controller.admin.query.vo.productionStatus;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Schema(description = "管理后台 - 生产单工序步骤表 order_process_step_{N} Response VO")
|
||||
@Data
|
||||
public class ProductionGroupVO {
|
||||
|
||||
|
||||
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "4399")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "工序组名", requiredMode = Schema.RequiredMode.REQUIRED, example = "嘿嘿")
|
||||
private String groupName;
|
||||
|
||||
@Schema(description = "工序名", requiredMode = Schema.RequiredMode.REQUIRED, example = "嘿嘿")
|
||||
private String name;
|
||||
|
||||
@Schema(description = "加工状态", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Boolean status;
|
||||
|
||||
@Schema(description = "工序负责人", requiredMode = Schema.RequiredMode.REQUIRED, example = "cfy_cf")
|
||||
private String manager;
|
||||
|
||||
@Schema(description = "加工时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private LocalDateTime processDate;
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+44
@@ -0,0 +1,44 @@
|
||||
package com.cf.imes.module.manage.controller.admin.query.vo.salary;
|
||||
|
||||
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import com.cf.imes.framework.common.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Schema(description = "管理后台 - 计件工资查询分页 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class PriceRatePageReqVO extends PageParam {
|
||||
|
||||
@Schema(description = "工序id")
|
||||
private Long orderProcessId;
|
||||
|
||||
@Schema(description = "生产单工序步骤状态(已加工状态)", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Boolean status;
|
||||
|
||||
@Schema(description = "开始时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private LocalDateTime startTime;
|
||||
|
||||
@Schema(description = "结束时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private LocalDateTime endTime;
|
||||
|
||||
@Schema(description = "加工人")
|
||||
private String creator;
|
||||
|
||||
@Schema(description = "工序名称")
|
||||
private String name;
|
||||
|
||||
@Schema(description = "显示零单价(默认不显示)", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Boolean noShowZero;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
package com.cf.imes.module.manage.controller.admin.query.vo.salary;
|
||||
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Schema(description = "管理后台 - 计件工资查询 Response VO")
|
||||
@Data
|
||||
public class PriceRateReqVO {
|
||||
|
||||
|
||||
@Schema(description = "工序名", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String name;
|
||||
|
||||
@Schema(description = "计件工资", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long priceRate;
|
||||
|
||||
@Schema(description = "数量", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long num;
|
||||
|
||||
@Schema(description = "计件类型", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Integer priceType;
|
||||
|
||||
@Schema(description = "金额", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private Long amount;
|
||||
|
||||
|
||||
@Schema(description = "加工人", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private String manager;
|
||||
|
||||
|
||||
}
|
||||
+62
@@ -0,0 +1,62 @@
|
||||
package com.cf.imes.module.manage.dal.dataobject.pack;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
|
||||
import lombok.*;
|
||||
|
||||
@TableName("order_body")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class OrderBodyDO extends BaseDO {
|
||||
|
||||
@TableId
|
||||
// 主键
|
||||
private Long id;
|
||||
|
||||
// 生产单号
|
||||
private Long orderId;
|
||||
|
||||
// 组织 ID,默认为1
|
||||
private Long organId;
|
||||
|
||||
// 房间ID
|
||||
private Long roomId;
|
||||
|
||||
// 房间名称
|
||||
private String roomName;
|
||||
|
||||
// 模块名称
|
||||
private String name;
|
||||
|
||||
// 模块宽度
|
||||
private Float width;
|
||||
|
||||
// 模块高度
|
||||
private Float height;
|
||||
|
||||
// 模块深度
|
||||
private Float depth;
|
||||
|
||||
// 模块复制数量
|
||||
private Integer multiNum;
|
||||
|
||||
// 板材数量
|
||||
private Integer plateNum;
|
||||
|
||||
// 异型数量
|
||||
private Integer unregularNum;
|
||||
|
||||
// 文件名
|
||||
private String filename;
|
||||
|
||||
// 备注
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
+58
@@ -0,0 +1,58 @@
|
||||
package com.cf.imes.module.manage.dal.dataobject.process;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
|
||||
import lombok.*;
|
||||
|
||||
@TableName(value = "`order`") // 由于 SQL Server 的 system_user 是关键字,所以使用 system_users
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class OrderDO extends BaseDO {
|
||||
|
||||
@TableId()
|
||||
// 生产单号
|
||||
private Long id;
|
||||
|
||||
// 订单状态
|
||||
private Long status;
|
||||
|
||||
// 自定义单号
|
||||
private String customOrderNo;
|
||||
|
||||
// 客户
|
||||
private String customer;
|
||||
|
||||
// 客户地址
|
||||
private String address;
|
||||
|
||||
// 客户电话
|
||||
private String phoneNumber;
|
||||
|
||||
// 组织 id
|
||||
private Long organId;
|
||||
|
||||
// 经销商
|
||||
private String dealer;
|
||||
|
||||
// 经销商电话
|
||||
private String dealerPhoneNumber;
|
||||
|
||||
// 业务员
|
||||
private String salesman;
|
||||
|
||||
// 拆单员
|
||||
private String splitter;
|
||||
|
||||
// 备注
|
||||
private String remark;
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
package com.cf.imes.module.manage.dal.dataobject.process;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.KeySequence;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
|
||||
import lombok.*;
|
||||
|
||||
@TableName(value = "order_process_n") // 由于 SQL Server 的 system_user 是关键字,所以使用 system_users
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class OrderProcessNDO extends BaseDO {
|
||||
|
||||
@TableId
|
||||
private Long id;
|
||||
|
||||
// 生产单号
|
||||
private Long orderNo;
|
||||
|
||||
// 工序名
|
||||
private String name;
|
||||
|
||||
// 工序状态
|
||||
private Boolean status;
|
||||
|
||||
// 工序组 id
|
||||
private Long groupId;
|
||||
|
||||
|
||||
}
|
||||
+41
@@ -0,0 +1,41 @@
|
||||
package com.cf.imes.module.manage.dal.dataobject.process;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.KeySequence;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
|
||||
import lombok.*;
|
||||
|
||||
@TableName(value = "order_process_step_item_n", autoResultMap = true) // 由于 SQL Server 的 system_user 是关键字,所以使用 system_users
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class OrderProcessStepItemNDO extends BaseDO{
|
||||
|
||||
|
||||
@TableId
|
||||
private Long id;
|
||||
|
||||
// 工序项目名
|
||||
private String name;
|
||||
|
||||
// 生产单工序 id
|
||||
private Long orderProcessId;
|
||||
|
||||
// 工序状态
|
||||
private Boolean status;
|
||||
|
||||
// 工序步骤 id
|
||||
private Long processStepId;
|
||||
|
||||
// 工序组名
|
||||
private String groupName;
|
||||
|
||||
|
||||
|
||||
}
|
||||
+72
@@ -0,0 +1,72 @@
|
||||
package com.cf.imes.module.manage.dal.dataobject.process;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.KeySequence;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Date;
|
||||
|
||||
@TableName(value = "order_process_step_n") // 由于 SQL Server 的 system_user 是关键字,所以使用 system_users
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class OrderProcessStepNDO extends BaseDO {
|
||||
|
||||
@TableId
|
||||
private Long id;
|
||||
|
||||
// 生产单号
|
||||
private Long orderNo;
|
||||
|
||||
//组织ID
|
||||
private Long organId;
|
||||
|
||||
// 完成时间
|
||||
private LocalDateTime finishTime;
|
||||
|
||||
//工序状态
|
||||
private Boolean status;
|
||||
|
||||
// 加工类型
|
||||
private Integer type;
|
||||
|
||||
// 计件工资
|
||||
private Float pieceRate;
|
||||
|
||||
// 计件工资类型
|
||||
private Integer pieceType;
|
||||
|
||||
// 排序优先级
|
||||
private Integer sort;
|
||||
|
||||
// 工序名称
|
||||
private String name;
|
||||
|
||||
// 工序ID
|
||||
private Long processinfoId;
|
||||
|
||||
// 生产单工序ID
|
||||
private Long orderProcessId;
|
||||
|
||||
// 计划日期
|
||||
private Date scheduleDate;
|
||||
|
||||
// 工序处理时长
|
||||
private Float duration;
|
||||
|
||||
// 工序负责人
|
||||
private String manager;
|
||||
|
||||
// 工序处理日期
|
||||
private Date processDate;
|
||||
|
||||
|
||||
}
|
||||
+51
@@ -0,0 +1,51 @@
|
||||
package com.cf.imes.module.manage.dal.dataobject.query;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.*;
|
||||
|
||||
@TableName("order_item")
|
||||
@Data
|
||||
@ToString(callSuper = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class OrderItemDO {
|
||||
|
||||
// 明细编号
|
||||
@TableId
|
||||
private Long id;
|
||||
|
||||
// 生产单号
|
||||
private Long orderId;
|
||||
|
||||
// 房间 ID
|
||||
private Long roomId;
|
||||
|
||||
// 柜体 ID
|
||||
private Long bodyId;
|
||||
|
||||
// 板件 id
|
||||
private Long plateId;
|
||||
|
||||
// 配件 id
|
||||
private Long partsId;
|
||||
|
||||
// 加工组 id
|
||||
private Long groupId;
|
||||
|
||||
// 排单 ID
|
||||
private Long planId;
|
||||
|
||||
// 包裹 ID
|
||||
private Long packageId;
|
||||
|
||||
// 部件数量
|
||||
private Float num;
|
||||
|
||||
// 组织 ID
|
||||
private Long organId;
|
||||
|
||||
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
package com.cf.imes.module.manage.dal.dataobject.query;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
|
||||
import lombok.*;
|
||||
|
||||
@TableName("order_package_n")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class OrderPackageDO extends BaseDO {
|
||||
|
||||
|
||||
// 包裹ID
|
||||
@TableId
|
||||
private Long id;
|
||||
|
||||
// 生产单号
|
||||
private Long orderNo;
|
||||
|
||||
// 包裹编号
|
||||
private Long packageNo;
|
||||
|
||||
// 包裹类型,-1未定义,0板材,1配件,2其他配件
|
||||
private Long type;
|
||||
|
||||
// 包裹名
|
||||
private String name;
|
||||
|
||||
// 包裹状态,0未封包,1已封包,2已入库,3已出库
|
||||
private Integer status;
|
||||
|
||||
// 组织ID
|
||||
private Long organId;
|
||||
|
||||
// 备注
|
||||
private String remark;
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
+68
@@ -0,0 +1,68 @@
|
||||
package com.cf.imes.module.manage.dal.dataobject.query;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
|
||||
import lombok.*;
|
||||
|
||||
@TableName("order_parts")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class OrderPartsNDO extends BaseDO {
|
||||
|
||||
@TableId
|
||||
// 配件 ID
|
||||
private Long id;
|
||||
|
||||
// 生产单号
|
||||
private Long orderId;
|
||||
|
||||
// 组织 ID
|
||||
private Long organId;
|
||||
|
||||
// 商品ID
|
||||
private Long goodsId;
|
||||
|
||||
// 配件名称
|
||||
private String name;
|
||||
|
||||
// 材质
|
||||
private String material;
|
||||
|
||||
// 配件类型
|
||||
private String type;
|
||||
|
||||
// 型号
|
||||
private String model;
|
||||
|
||||
// 规格
|
||||
private String spec;
|
||||
|
||||
// 品牌
|
||||
private String brand;
|
||||
|
||||
// 厂家
|
||||
private String factory;
|
||||
|
||||
// 单位
|
||||
private String unit;
|
||||
|
||||
// 价格
|
||||
private Float price;
|
||||
|
||||
// 是否复合部件:0 否 1 是
|
||||
private Boolean isComposite;
|
||||
|
||||
// 备注
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
package com.cf.imes.module.manage.dal.mysql.pack;
|
||||
|
||||
|
||||
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.cf.imes.module.manage.dal.dataobject.pack.OrderBodyDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper
|
||||
public interface OrderBodyMapper extends BaseMapperX<OrderBodyDO> {
|
||||
|
||||
default List<OrderBodyDO> selectGroup(Long orderId) {
|
||||
return selectList(new LambdaQueryWrapperX<OrderBodyDO>()
|
||||
.eqIfPresent(OrderBodyDO::getOrderId, orderId)
|
||||
.orderByDesc(OrderBodyDO::getId));
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
+55
@@ -0,0 +1,55 @@
|
||||
package com.cf.imes.module.manage.dal.mysql.pack;
|
||||
|
||||
|
||||
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.OtherPackReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.PackRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackageVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderProcessStepNDO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.query.OrderPackageDO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.query.OrderPartsNDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper
|
||||
public interface OrderPackageMapper extends BaseMapperX<OrderPackageDO> {
|
||||
|
||||
|
||||
|
||||
default List<OrderPackageDO> selectByOrderNo(Long orderNo) {
|
||||
return selectList(new LambdaQueryWrapperX<OrderPackageDO>()
|
||||
.eqIfPresent(OrderPackageDO::getOrderNo, orderNo)
|
||||
.orderByDesc(OrderPackageDO::getId));
|
||||
}
|
||||
|
||||
|
||||
|
||||
default OrderPackageDO selectByPackNo(Long orderNo) {
|
||||
return selectOne(new LambdaQueryWrapperX<OrderPackageDO>()
|
||||
.eqIfPresent(OrderPackageDO::getPackageNo, orderNo));
|
||||
}
|
||||
|
||||
|
||||
|
||||
List<PackRespVO> selectPackPage(@Param("collect") List<Long> collect);
|
||||
|
||||
|
||||
List<PlateDetailsRespVO> selectMissingBoard(Long orderNo);
|
||||
|
||||
|
||||
|
||||
|
||||
default OrderPackageDO selectByPackId(Long packId) {
|
||||
return selectOne(new LambdaQueryWrapperX<OrderPackageDO>()
|
||||
.eqIfPresent(OrderPackageDO::getId, packId));
|
||||
}
|
||||
|
||||
|
||||
|
||||
void updateParts(@Param("packageId") Long packageId, @Param("packageNo") Long packageNo);
|
||||
|
||||
}
|
||||
+52
@@ -0,0 +1,52 @@
|
||||
package com.cf.imes.module.manage.dal.mysql.process;
|
||||
|
||||
|
||||
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderProcessNDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Update;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 生产单工序表 order_process_{N} Mapper
|
||||
*
|
||||
* @author 晨丰科技
|
||||
*/
|
||||
@Mapper
|
||||
public interface OrderProcessMapper extends BaseMapperX<OrderProcessNDO> {
|
||||
|
||||
|
||||
default OrderProcessNDO queryProcess( Long processId , Long orderNo) {
|
||||
return selectOne(new LambdaQueryWrapperX<OrderProcessNDO>()
|
||||
.eqIfPresent(OrderProcessNDO::getId, processId)
|
||||
.eqIfPresent(OrderProcessNDO::getOrderNo,orderNo));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
default OrderProcessNDO selectByProcessId(Long id) {
|
||||
return selectOne(new LambdaQueryWrapperX<OrderProcessNDO>()
|
||||
.eqIfPresent(OrderProcessNDO::getId, id));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
default OrderProcessNDO selectStatusById( Long id ) {
|
||||
return selectOne(new LambdaQueryWrapperX<OrderProcessNDO>()
|
||||
.eqIfPresent(OrderProcessNDO::getId, id));
|
||||
|
||||
}
|
||||
|
||||
|
||||
@Update("UPDATE order_process_n SET status = #{status} WHERE id = #{id}")
|
||||
void updateStatusById(@Param("id") Long id, @Param("status") Boolean status);
|
||||
|
||||
|
||||
}
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
package com.cf.imes.module.manage.dal.mysql.process;
|
||||
|
||||
|
||||
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.ProcessPageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.ProcessRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderProcessStepItemNDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 生产单工序明细表 order_process_step_item_{N} Mapper
|
||||
*
|
||||
* @author 晨丰科技
|
||||
*/
|
||||
@Mapper
|
||||
public interface ProcessStepItemMapper extends BaseMapperX<OrderProcessStepItemNDO> {
|
||||
|
||||
|
||||
|
||||
List<OrderModuleVO> selectPlateName(Long processStepId);
|
||||
|
||||
|
||||
List<ProcessRespVO> selectOrder(ProcessPageReqVO pageReqVO);
|
||||
}
|
||||
+69
@@ -0,0 +1,69 @@
|
||||
package com.cf.imes.module.manage.dal.mysql.process;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.salary.PriceRatePageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.salary.PriceRateReqVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.plate.PlateDO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderProcessStepNDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Update;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 生产单工序步骤表 order_process_step_{N} Mapper
|
||||
*
|
||||
* @author 晨丰科技
|
||||
*/
|
||||
@Mapper
|
||||
public interface ProcessStepMapper extends BaseMapperX<OrderProcessStepNDO> {
|
||||
|
||||
default List<OrderProcessStepNDO> getStepItemList(Long orderNo, Boolean status) {
|
||||
return selectList(new LambdaQueryWrapperX<OrderProcessStepNDO>()
|
||||
.eqIfPresent(OrderProcessStepNDO::getOrderNo, orderNo)
|
||||
.eqIfPresent(OrderProcessStepNDO::getStatus, status));
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
default OrderProcessStepNDO selectStatusById(Long id) {
|
||||
return selectOne(new LambdaQueryWrapperX<OrderProcessStepNDO>()
|
||||
.eqIfPresent(OrderProcessStepNDO::getId, id));
|
||||
|
||||
}
|
||||
|
||||
|
||||
@Update("UPDATE order_process_step_n SET status = #{status} WHERE id = #{id}")
|
||||
void updateStatusById(@Param("id") Long id, @Param("status") Boolean status);
|
||||
|
||||
|
||||
|
||||
default List<OrderProcessStepNDO> selectProducitonList(Long orderNo) {
|
||||
return selectList(new LambdaQueryWrapperX<OrderProcessStepNDO>()
|
||||
.eqIfPresent(OrderProcessStepNDO::getOrderNo, orderNo));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
List<PriceRateReqVO> selectListByStatus(@Param("collect") List<Long> collect);
|
||||
|
||||
|
||||
|
||||
default List<OrderProcessStepNDO> selectListBy(PriceRatePageReqVO pageReqVO) {
|
||||
return selectList(new LambdaQueryWrapperX<OrderProcessStepNDO>()
|
||||
.eqIfPresent(OrderProcessStepNDO::getStatus, pageReqVO.getStatus())
|
||||
.eqIfPresent(OrderProcessStepNDO::getCreator,pageReqVO.getCreator())
|
||||
.eqIfPresent(OrderProcessStepNDO::getName,pageReqVO.getName())
|
||||
.betweenIfPresent(OrderProcessStepNDO::getCreateTime,pageReqVO.getStartTime(),pageReqVO.getEndTime()));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
package com.cf.imes.module.manage.dal.mysql.process;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.cf.imes.module.manage.controller.admin.grouping.vo.OrderPageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.ProcessPageReqVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
/**
|
||||
* 生产单表 order_{N} Mapper
|
||||
*
|
||||
* @author 晨丰科技
|
||||
*/
|
||||
@Mapper
|
||||
public interface ProductionProcessMapper extends BaseMapperX<OrderDO> {
|
||||
|
||||
|
||||
|
||||
default PageResult<OrderDO> selectPage(ProcessPageReqVO pageReqVO) {
|
||||
return selectPage(pageReqVO, new LambdaQueryWrapperX<OrderDO>()
|
||||
.eqIfPresent(OrderDO::getId,pageReqVO.getOrderNo())
|
||||
.eqIfPresent(OrderDO::getCustomOrderNo,pageReqVO.getCustomOrderNo())
|
||||
.likeIfPresent(OrderDO::getCustomer,pageReqVO.getCustomer())
|
||||
.likeIfPresent(OrderDO::getAddress,pageReqVO.getAddress())
|
||||
.orderByDesc(OrderDO::getId));
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
default PageResult<OrderDO> selectPageList(OrderPageReqVO pageReqVO) {
|
||||
return selectPage(pageReqVO, new LambdaQueryWrapperX<OrderDO>()
|
||||
.eqIfPresent(OrderDO::getId,pageReqVO.getOrderNo())
|
||||
.eqIfPresent(OrderDO::getCustomOrderNo,pageReqVO.getCustomOrderNo())
|
||||
.likeIfPresent(OrderDO::getCustomer,pageReqVO.getCustomer())
|
||||
.likeIfPresent(OrderDO::getAddress,pageReqVO.getAddress())
|
||||
.and(wrapper -> {
|
||||
for (Long status : pageReqVO.getStatusList()) {
|
||||
wrapper.or().eq(OrderDO::getStatus, status);
|
||||
}
|
||||
})
|
||||
.orderByDesc(OrderDO::getId));
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
+76
@@ -0,0 +1,76 @@
|
||||
package com.cf.imes.module.manage.dal.mysql.query;
|
||||
|
||||
|
||||
|
||||
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import com.cf.imes.module.manage.controller.admin.grouping.vo.OrderPlateListRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.DeleteOtherPartsReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.PackReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderPlateRespVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.query.OrderItemDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Update;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper
|
||||
public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
|
||||
|
||||
|
||||
List<PackageDetailsRespVO> selectByPackageId(Long packageId);
|
||||
|
||||
|
||||
List<OrderModuleVO> selectCombinationName(Long orderNo);
|
||||
|
||||
|
||||
List<OrderPlateRespVO> selectPlateList(Long bodyId);
|
||||
|
||||
|
||||
List<PlateDetailsRespVO> selectOrderPlateList(Long orderNo);
|
||||
|
||||
|
||||
List<OrderPlateListRespVO> selectGroupingPlateList(Long orderNo);
|
||||
|
||||
|
||||
|
||||
void insertPackPlate( Long plateId);
|
||||
|
||||
|
||||
List<OrderPlateListRespVO> selectJoinedGroupPlateList(@Param("orderNo") Long orderNo , @Param("packageIdList") List<Long> packageIdList);
|
||||
|
||||
|
||||
|
||||
@Update("update order_item set package_id =0 where plate_id =#{plateId}")
|
||||
void removePackPlate(Long plateId);
|
||||
|
||||
|
||||
List<OrderPlateListRespVO> selectPrintPlateList(@Param("orderNo")Long orderNo,@Param("packageNo") Long packageNo);
|
||||
|
||||
|
||||
|
||||
void deleteOrderPack(@Param("reqVO") PackReqVO reqVO);
|
||||
|
||||
|
||||
void updateParts(@Param("reqVO") DeleteOtherPartsReqVO reqVO);
|
||||
|
||||
|
||||
void deleteOtherParts(@Param("itemId") Long itemId);
|
||||
|
||||
|
||||
void deleteParts(@Param("reqVO") PackReqVO reqVO);
|
||||
|
||||
|
||||
void insertPackId(@Param("plateIdList") List<Long> plateIdList, @Param("packId") Long packId);
|
||||
|
||||
|
||||
void deletePackId(@Param("deletePlateIdList") List<Long> deletePlateIdList,@Param("packId") Long packId);
|
||||
|
||||
|
||||
|
||||
void insertPartsId(@Param("packId") Long packId, @Param("addPartsIdList") List<Long> addPartsIdList);
|
||||
|
||||
}
|
||||
+39
@@ -0,0 +1,39 @@
|
||||
package com.cf.imes.module.manage.dal.mysql.query;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.OrderPartsRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.plate.vo.plate.PlatePageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRespVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.plate.PlateDO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.query.OrderPartsNDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper
|
||||
public interface OrderPartsMapper extends BaseMapperX<OrderPartsNDO> {
|
||||
|
||||
|
||||
List<PackageDetailsRespVO> selectParts(Long packageNo);
|
||||
|
||||
|
||||
List<OrderPartsRespVO> selectPartsList(Long orderId);
|
||||
|
||||
|
||||
|
||||
List<OrderPartsRespVO> selectOrderParts(@Param("orderNo")Long orderNo,@Param("packageNo") Long packageNo);
|
||||
|
||||
|
||||
void deleteOrderParts(@Param("packageId") Long packageId);
|
||||
|
||||
|
||||
default OrderPartsNDO selectOneParts(String otherPartsName) {
|
||||
return selectOne(new LambdaQueryWrapperX<OrderPartsNDO>()
|
||||
.eqIfPresent(OrderPartsNDO::getName,otherPartsName));
|
||||
|
||||
}
|
||||
}
|
||||
+69
@@ -0,0 +1,69 @@
|
||||
package com.cf.imes.module.manage.dal.mysql.query;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.PackPageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.PackRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.PrintOrderPackRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderPlatePageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.PrintOrderRespVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper
|
||||
public interface ProductionStatusMapper extends BaseMapperX<OrderDO> {
|
||||
|
||||
|
||||
default PageResult<OrderDO> selectProductionPage(OrderPlatePageReqVO pageReqVO) {
|
||||
return selectPage(pageReqVO, new LambdaQueryWrapperX<OrderDO>()
|
||||
.eqIfPresent(OrderDO::getId, pageReqVO.getOrderNo())
|
||||
.eqIfPresent(OrderDO::getCustomOrderNo, pageReqVO.getCustomOrderNo())
|
||||
.likeIfPresent(OrderDO::getCustomer, pageReqVO.getCustomer())
|
||||
.likeIfPresent(OrderDO::getAddress, pageReqVO.getAddress())
|
||||
.likeIfPresent(OrderDO::getDeleted, pageReqVO.getDealer())
|
||||
.and(wrapper -> {
|
||||
for (Long status : pageReqVO.getStatusList()) {
|
||||
wrapper.or().eq(OrderDO::getStatus, status);
|
||||
}
|
||||
})
|
||||
.orderByDesc(OrderDO::getCreateTime));
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* default PageResult<OrderDO> selectPackage(OrderPlatePageReqVO pageReqVO) {
|
||||
return selectPage(pageReqVO, new LambdaQueryWrapperX<OrderDO>()
|
||||
.orderByDesc(OrderDO::getId));
|
||||
}*/
|
||||
|
||||
|
||||
|
||||
|
||||
PrintOrderRespVO selectPrintOrder(Long orderNo);
|
||||
|
||||
|
||||
default List<OrderDO> selectPackPage(PackPageReqVO pageReqVO) {
|
||||
return selectList(new LambdaQueryWrapperX<OrderDO>()
|
||||
.eqIfPresent(OrderDO::getId, pageReqVO.getOrderNo())
|
||||
.eqIfPresent(OrderDO::getCustomOrderNo, pageReqVO.getCustomOrderNo())
|
||||
.likeIfPresent(OrderDO::getCustomer, pageReqVO.getCustomer())
|
||||
.likeIfPresent(OrderDO::getAddress, pageReqVO.getAddress())
|
||||
.eqIfPresent(OrderDO::getStatus, pageReqVO.getStatus())
|
||||
.orderByDesc(OrderDO::getCreateTime));
|
||||
}
|
||||
|
||||
List<PackRespVO> selectOrderPlate(@Param("collect") List<Long> collect);
|
||||
|
||||
|
||||
|
||||
|
||||
PrintOrderPackRespVO selectOrderPack(@Param("orderNo")Long orderNo,@Param("packageNo") Long packageNo);
|
||||
|
||||
|
||||
|
||||
}
|
||||
+36
@@ -0,0 +1,36 @@
|
||||
package com.cf.imes.module.manage.service.grouping;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.module.manage.controller.admin.grouping.vo.*;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleReqVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface GroupingService {
|
||||
|
||||
|
||||
// 查询订单
|
||||
PageResult<OrderDO> getGroupingList( OrderPageReqVO pageReqVO);
|
||||
|
||||
|
||||
// 新增包裹
|
||||
Long insertGrouping(OrderPackageReqVO packageReqVO);
|
||||
|
||||
|
||||
// 查看订单的板材信息(未加入包裹的板材信息)
|
||||
PageResult<OrderPlateListRespVO> notJoinedGroupingPlateList(OrderModuleReqVO reqVO);
|
||||
|
||||
|
||||
// 包裹表新增板件
|
||||
void insertPackPlate(Long plateId);
|
||||
|
||||
|
||||
// 查看订单的板材信息(已将加入包裹的板材信息)
|
||||
PageResult<OrderPlateListRespVO> joinedGroupPlateList(JoinedPlateReqVO reqVO);
|
||||
|
||||
|
||||
// 移除包裹板材信息
|
||||
void removePackPlate(Long plateId);
|
||||
}
|
||||
+123
@@ -0,0 +1,123 @@
|
||||
package com.cf.imes.module.manage.service.grouping;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.framework.common.util.object.BeanUtils;
|
||||
import com.cf.imes.framework.common.util.object.PageUtils;
|
||||
import com.cf.imes.module.manage.controller.admin.grouping.vo.*;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleReqVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderDO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.query.OrderPackageDO;
|
||||
import com.cf.imes.module.manage.dal.mysql.pack.OrderPackageMapper;
|
||||
import com.cf.imes.module.manage.dal.mysql.process.ProductionProcessMapper;
|
||||
import com.cf.imes.module.manage.dal.mysql.query.OrderItemMapper;
|
||||
import com.cf.imes.module.manage.util.page.PageHelperUtil;
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
@Validated
|
||||
public class GroupingServiceImpl implements GroupingService{
|
||||
|
||||
|
||||
@Resource
|
||||
private ProductionProcessMapper productionProcessMapper;
|
||||
|
||||
|
||||
@Resource
|
||||
private OrderPackageMapper orderPackageMapper;
|
||||
|
||||
@Resource
|
||||
private OrderItemMapper orderItemMapper;
|
||||
|
||||
|
||||
|
||||
// 查询订单分页
|
||||
@Override
|
||||
public PageResult<OrderDO> getGroupingList(OrderPageReqVO pageReqVO) {
|
||||
|
||||
return productionProcessMapper.selectPageList(pageReqVO);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
// 新增包裹
|
||||
@Override
|
||||
public Long insertGrouping(OrderPackageReqVO packageReqVO) {
|
||||
|
||||
//
|
||||
OrderPackageDO packageDO = BeanUtils.toBean(packageReqVO, OrderPackageDO.class);
|
||||
|
||||
orderPackageMapper.insert(packageDO);
|
||||
|
||||
return packageDO.getId();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// 查看订单的板材信息
|
||||
@Override
|
||||
public PageResult<OrderPlateListRespVO> notJoinedGroupingPlateList(OrderModuleReqVO reqVO) {
|
||||
|
||||
PageHelper.startPage(reqVO.getPageNo(),reqVO.getPageSize());
|
||||
List<OrderPlateListRespVO> orderPlateListRespVOS = orderItemMapper.selectGroupingPlateList(reqVO.getOrderNo());
|
||||
PageInfo<OrderPlateListRespVO> pageInfo = new PageInfo<>(orderPlateListRespVOS);
|
||||
PageResult<OrderPlateListRespVO> priceRateReqVOPageResult = PageHelperUtil.convertToPageResult(pageInfo);
|
||||
|
||||
return priceRateReqVOPageResult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// 包裹表新增板件
|
||||
@Override
|
||||
public void insertPackPlate(Long plateId) {
|
||||
|
||||
orderItemMapper.insertPackPlate(plateId);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public PageResult<OrderPlateListRespVO> joinedGroupPlateList(JoinedPlateReqVO reqVO) {
|
||||
|
||||
|
||||
PageHelper.startPage(reqVO.getPageNo(),reqVO.getPageSize());
|
||||
List<OrderPlateListRespVO> orderPlateListRespVOS = orderItemMapper.selectJoinedGroupPlateList(reqVO.getOrderNo(), reqVO.getPackageIdList());
|
||||
|
||||
PageInfo<OrderPlateListRespVO> pageInfo = new PageInfo<>(orderPlateListRespVOS);
|
||||
PageResult<OrderPlateListRespVO> priceRateReqVOPageResult = PageHelperUtil.convertToPageResult(pageInfo);
|
||||
|
||||
return priceRateReqVOPageResult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// 移除包裹板材信息
|
||||
@Override
|
||||
public void removePackPlate(Long plateId) {
|
||||
|
||||
|
||||
orderItemMapper.removePackPlate(plateId);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
+82
@@ -0,0 +1,82 @@
|
||||
package com.cf.imes.module.manage.service.pack;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.module.manage.controller.admin.grouping.vo.OrderPackageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.*;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleReqVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.query.OrderPackageDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface PackService {
|
||||
|
||||
|
||||
// 打包分页查询
|
||||
PageResult<PackRespVO> getPackPage(PackPageReqVO pageReqVO);
|
||||
|
||||
|
||||
// 查看生产订单对应的包裹信息
|
||||
List<OrderPackageDO> getOrderPack(Long orderId);
|
||||
|
||||
|
||||
|
||||
// 查看生产订单对应的板材信息
|
||||
List<PlateDetailsRespVO> getOrderPlateList(Long orderId);
|
||||
|
||||
|
||||
|
||||
// 查看板材列表分页
|
||||
PageResult<PlateDetailsRespVO> queryPlateDetails(OrderModuleReqVO pageReqVO);
|
||||
|
||||
|
||||
|
||||
// 查看配件列表分页
|
||||
PageResult<OrderPartsRespVO> getPartsList(OrderPartsReqVO reqVO);
|
||||
|
||||
|
||||
// 拆包
|
||||
void unpacking(Long packageID);
|
||||
|
||||
|
||||
|
||||
|
||||
// 显示分组房间名称
|
||||
List<OrderPlateGroupRespVO> GetOrderPlateGroup(Long orderId);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// 查看配件包裹详情
|
||||
List<OrderPartsRespVO> queryPackageDetails(PrintOrderPackReqVO reqVO);
|
||||
|
||||
|
||||
|
||||
// 包裹封包
|
||||
OrderPackageDO updatePackStatus(OrderPackReqVO packageVO);
|
||||
|
||||
|
||||
|
||||
// 包裹订单打印
|
||||
PrintOrderPackRespVO printOrderPack(PrintOrderPackReqVO reqVO);
|
||||
|
||||
|
||||
// 删除包裹及其关联的包裹信息(删除全部)
|
||||
void deleteOrderPack(PackReqVO reqVO);
|
||||
|
||||
|
||||
|
||||
// 新增外部配件
|
||||
OrderPackageDO addNewOtherParts(OtherPackReqVO reqVO);
|
||||
|
||||
|
||||
Long testpack(OrderPackageReqVO reqVO);
|
||||
|
||||
|
||||
// 删除配件包裹中的配件(删除某一个)
|
||||
void deleteOtherParts(DeleteOtherPartsReqVO reqVO);
|
||||
|
||||
// 新增配件-即新增一个包裹
|
||||
OrderPackageDO addNewPartsPack(OrderPackReqVO reqVO);
|
||||
}
|
||||
+321
@@ -0,0 +1,321 @@
|
||||
package com.cf.imes.module.manage.service.pack;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.enums.OrderPackageStatusEnum;
|
||||
import com.cf.imes.framework.common.enums.OrderPackageTypeEnum;
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.framework.common.util.object.BeanUtils;
|
||||
import com.cf.imes.module.manage.controller.admin.grouping.vo.OrderPackageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.*;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleReqVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.pack.OrderBodyDO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderDO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.query.OrderItemDO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.query.OrderPackageDO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.query.OrderPartsNDO;
|
||||
import com.cf.imes.module.manage.dal.mysql.pack.OrderBodyMapper;
|
||||
import com.cf.imes.module.manage.dal.mysql.pack.OrderPackageMapper;
|
||||
import com.cf.imes.module.manage.dal.mysql.query.OrderItemMapper;
|
||||
import com.cf.imes.module.manage.dal.mysql.query.OrderPartsMapper;
|
||||
import com.cf.imes.module.manage.dal.mysql.query.ProductionStatusMapper;
|
||||
import com.cf.imes.module.manage.util.page.PageHelperUtil;
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||
import static com.cf.imes.module.system.enums.ErrorCodeConstants.THE_ACCESSORY_NAME_CANNOT_BE_DUPLICATED;
|
||||
|
||||
@Service
|
||||
@Validated
|
||||
@Transactional
|
||||
public class PackServiceImpl implements PackService {
|
||||
|
||||
@Resource
|
||||
private OrderPackageMapper orderPackageMapper;
|
||||
|
||||
@Resource
|
||||
private ProductionStatusMapper productionStatusMapper;
|
||||
|
||||
@Resource
|
||||
private OrderItemMapper orderItemMapper;
|
||||
|
||||
@Resource
|
||||
private OrderPartsMapper orderPartsMapper;
|
||||
|
||||
@Resource
|
||||
private OrderBodyMapper orderBodyMapper;
|
||||
|
||||
|
||||
// 打包分页查询
|
||||
@Override
|
||||
public PageResult<PackRespVO> getPackPage(PackPageReqVO pageReqVO) {
|
||||
|
||||
// 根据生产状态查询生产单号
|
||||
List<Long> collect = productionStatusMapper.selectPackPage(pageReqVO).stream().map(OrderDO::getId).collect(Collectors.toList());
|
||||
|
||||
PageHelper.startPage(pageReqVO.getPageNo(), pageReqVO.getPageSize());
|
||||
|
||||
// 查询包裹的已打包数和已打片数
|
||||
List<PackRespVO> packRespVOS = orderPackageMapper.selectPackPage(collect);
|
||||
|
||||
// 查询打包首页分页数据信息和总片数
|
||||
List<PackRespVO> packRespVOS1 = productionStatusMapper.selectOrderPlate(collect);
|
||||
|
||||
PageInfo<PackRespVO> pageInfo = new PageInfo<>(packRespVOS);
|
||||
pageInfo.setList(packRespVOS1);
|
||||
|
||||
// 转换成 PageResult 分页类型
|
||||
PageResult<PackRespVO> priceRateReqVOPageResult = PageHelperUtil.convertToPageResult(pageInfo);
|
||||
|
||||
return priceRateReqVOPageResult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
// 查看生产订单对应的包裹信息
|
||||
@Override
|
||||
public List<OrderPackageDO> getOrderPack(Long orderId) {
|
||||
return orderPackageMapper.selectByOrderNo(orderId);
|
||||
|
||||
}
|
||||
|
||||
|
||||
// 查看生产订单对应的板材信息
|
||||
@Override
|
||||
public List<PlateDetailsRespVO> getOrderPlateList(Long orderId) {
|
||||
|
||||
return orderItemMapper.selectOrderPlateList(orderId);
|
||||
|
||||
}
|
||||
|
||||
|
||||
// 查看板材列表分页
|
||||
@Override
|
||||
public PageResult<PlateDetailsRespVO> queryPlateDetails(OrderModuleReqVO pageReqVO) {
|
||||
|
||||
|
||||
PageHelper.startPage(pageReqVO.getPageNo(), pageReqVO.getPageSize());
|
||||
List<PlateDetailsRespVO> plateDetailsRespVOS = orderItemMapper.selectOrderPlateList(pageReqVO.getOrderNo());
|
||||
PageInfo<PlateDetailsRespVO> pageInfo = new PageInfo<>(plateDetailsRespVOS);
|
||||
PageResult<PlateDetailsRespVO> priceRateReqVOPageResult = PageHelperUtil.convertToPageResult(pageInfo);
|
||||
|
||||
return priceRateReqVOPageResult;
|
||||
}
|
||||
|
||||
|
||||
// 查看配件列表分页
|
||||
@Override
|
||||
public PageResult<OrderPartsRespVO> getPartsList(OrderPartsReqVO reqVO) {
|
||||
|
||||
|
||||
PageHelper.startPage(reqVO.getPageNo(), reqVO.getPageSize());
|
||||
List<OrderPartsRespVO> orderPartsRespVOS = orderPartsMapper.selectPartsList(reqVO.getOrderNo());
|
||||
PageInfo<OrderPartsRespVO> pageInfo = new PageInfo<>(orderPartsRespVOS);
|
||||
return PageHelperUtil.convertToPageResult(pageInfo);
|
||||
|
||||
}
|
||||
|
||||
|
||||
// 拆包
|
||||
@Override
|
||||
public void unpacking(Long packageID) {
|
||||
|
||||
OrderPackageDO packageDO = orderPackageMapper.selectById(packageID);
|
||||
packageDO.setStatus((OrderPackageStatusEnum.UNPACKED.getStatus()));
|
||||
orderPackageMapper.updateById(packageDO);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
// 显示分组房间名称
|
||||
@Override
|
||||
public List<OrderPlateGroupRespVO> GetOrderPlateGroup(Long orderId) {
|
||||
|
||||
/*List<String> collect = orderBodyMapper.selectGroup(orderId).stream().map(OrderBodyDO::getRoomName).collect(Collectors.toList());*/
|
||||
|
||||
List<OrderBodyDO> orderBodyDOS = orderBodyMapper.selectGroup(orderId);
|
||||
|
||||
|
||||
return BeanUtils.toBean(orderBodyDOS, OrderPlateGroupRespVO.class);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
// 查看配件包裹详情
|
||||
@Override
|
||||
public List<OrderPartsRespVO> queryPackageDetails(PrintOrderPackReqVO reqVO) {
|
||||
|
||||
return orderPartsMapper.selectOrderParts(reqVO.getOrderNo(), reqVO.getPackageNo());
|
||||
|
||||
}
|
||||
|
||||
|
||||
// 包裹封包
|
||||
@Override
|
||||
public OrderPackageDO updatePackStatus(OrderPackReqVO packageVO) {
|
||||
|
||||
// 当传入的包裹ID为 -1 ,走新增的逻辑
|
||||
if (packageVO.getPackId() == -1) {
|
||||
OrderPackageDO orderPackageDO = new OrderPackageDO();
|
||||
orderPackageDO.setOrderNo(packageVO.getOrderId());
|
||||
orderPackageDO.setType(packageVO.getPackageType());
|
||||
orderPackageDO.setStatus((OrderPackageStatusEnum.PACKAGED.getStatus()));
|
||||
orderPackageMapper.insert(orderPackageDO);
|
||||
// 生产单明细表新增包裹 ID
|
||||
orderItemMapper.insertPackId(packageVO.getAddPlateIdList(), orderPackageDO.getId());
|
||||
|
||||
return orderPackageDO;
|
||||
|
||||
}
|
||||
|
||||
// 不为 -1 ,有包裹存在,走更新逻辑
|
||||
|
||||
// 生产明细表新增包裹ID
|
||||
orderItemMapper.insertPackId(packageVO.getAddPlateIdList(), packageVO.getPackId());
|
||||
// 移除包裹ID
|
||||
orderItemMapper.deletePackId(packageVO.getDeletePlateIdList(), packageVO.getPackId());
|
||||
|
||||
return orderPackageMapper.selectByPackId(packageVO.getPackId()).setStatus(OrderPackageStatusEnum.PACKAGED.getStatus());
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
// 包裹订单打印
|
||||
@Override
|
||||
public PrintOrderPackRespVO printOrderPack(PrintOrderPackReqVO reqVO) {
|
||||
|
||||
PrintOrderPackRespVO printOrderPackRespVO = productionStatusMapper.selectOrderPack(reqVO.getOrderNo(), reqVO.getPackageNo());
|
||||
printOrderPackRespVO.setPlateList(orderItemMapper.selectPrintPlateList(reqVO.getOrderNo(), reqVO.getPackageNo()));
|
||||
return printOrderPackRespVO;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
// 删除包裹及其关联的包裹信息(删除全部)
|
||||
@Override
|
||||
public void deleteOrderPack(PackReqVO reqVO) {
|
||||
|
||||
// 判断包裹的类型是否为其他类型,如果是,则删除其包裹信息
|
||||
if (reqVO.getIsOther() == true) {
|
||||
|
||||
orderPartsMapper.deleteOrderParts(reqVO.getPackageId());
|
||||
orderPackageMapper.updateParts(reqVO.getPackageId(), reqVO.getPackageNo());
|
||||
orderItemMapper.deleteParts(reqVO);
|
||||
return;
|
||||
}
|
||||
|
||||
orderItemMapper.deleteOrderPack(reqVO);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
// 新增外部配件包裹表
|
||||
@Override
|
||||
public OrderPackageDO addNewOtherParts(OtherPackReqVO reqVO) {
|
||||
|
||||
|
||||
// 判断配件名称是否重复
|
||||
OrderPartsNDO orderPartsNDO = orderPartsMapper.selectOneParts(reqVO.getName());
|
||||
if (orderPartsNDO != null) {
|
||||
throw exception(THE_ACCESSORY_NAME_CANNOT_BE_DUPLICATED);
|
||||
}
|
||||
|
||||
// 配件表新增数据
|
||||
OrderPartsNDO orderParts = BeanUtils.toBean(reqVO, OrderPartsNDO.class);
|
||||
orderPartsMapper.insert(orderParts);
|
||||
|
||||
|
||||
// 在包裹表中添加包裹编号和生产单号,修改包裹类型未其他配件类型
|
||||
OrderPackageDO orderPackageDO = new OrderPackageDO();
|
||||
orderPackageDO.setPackageNo(reqVO.getPackNo());
|
||||
orderPackageDO.setOrderNo(reqVO.getOrderId());
|
||||
orderPackageDO.setType(OrderPackageTypeEnum.OTHER_ACCESSORIES.getType().longValue());
|
||||
|
||||
// 新增包裹
|
||||
orderPackageMapper.insert(orderPackageDO);
|
||||
|
||||
|
||||
// 在生产单明细表中添加数据(生产单号,配件ID,包裹ID,部件数量(目前一直为1))
|
||||
OrderItemDO orderItemDO = new OrderItemDO();
|
||||
orderItemDO.setOrderId(reqVO.getOrderId());
|
||||
orderItemDO.setPartsId(orderParts.getId());
|
||||
orderItemDO.setPackageId(orderPackageDO.getId());
|
||||
orderItemDO.setNum(Float.valueOf(1));
|
||||
|
||||
|
||||
// 在生产单明细表中新增数据
|
||||
orderItemMapper.insert(orderItemDO);
|
||||
|
||||
// 查看新增的包裹信息
|
||||
/* return orderPackageMapper.selectByPackId(orderPackageDO.getId());*/
|
||||
return orderPackageDO;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public Long testpack(OrderPackageReqVO reqVO) {
|
||||
|
||||
OrderPackageDO packageDO = BeanUtils.toBean(reqVO, OrderPackageDO.class);
|
||||
orderPackageMapper.insert(packageDO);
|
||||
return packageDO.getId();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// 删除配件包裹中的配件(删除某一个)
|
||||
@Override
|
||||
public void deleteOtherParts(DeleteOtherPartsReqVO reqVO) {
|
||||
|
||||
// 判断,如果为true 为其他配件
|
||||
if (reqVO.getIsOther() == true) {
|
||||
|
||||
orderItemMapper.updateParts(reqVO);
|
||||
orderItemMapper.deleteOtherParts(reqVO.getItemId());
|
||||
return;
|
||||
|
||||
}
|
||||
|
||||
orderItemMapper.updateParts(reqVO);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// 新增配件-即新增一个包裹
|
||||
@Override
|
||||
public OrderPackageDO addNewPartsPack(OrderPackReqVO reqVO) {
|
||||
|
||||
OrderPackageDO orderPackageDO = new OrderPackageDO();
|
||||
orderPackageDO.setOrderNo(reqVO.getOrderId());
|
||||
orderPackageDO.setType(reqVO.getPackageType());
|
||||
orderPackageDO.setStatus(OrderPackageStatusEnum.PACKAGED.getStatus());
|
||||
// TODO 包裹编号待完成
|
||||
orderPackageMapper.insert(orderPackageDO);
|
||||
|
||||
orderItemMapper.insertPartsId(orderPackageDO.getId(),reqVO.getAddPartsIdList());
|
||||
|
||||
return orderPackageDO;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
+41
@@ -0,0 +1,41 @@
|
||||
package com.cf.imes.module.manage.service.process;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.OrderPorcessStepItemVO;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.OrderProcessReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.ProcessPageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.ProcessRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ProductionProcessService {
|
||||
|
||||
|
||||
// 生产工序单分页查询
|
||||
PageResult<ProcessRespVO> getProcessPage(ProcessPageReqVO pageReqVO);
|
||||
|
||||
|
||||
|
||||
// 查询工序订单下的加工项的详情
|
||||
List<OrderPorcessStepItemVO> getOrderProcessById(OrderProcessReqVO reqVO);
|
||||
|
||||
|
||||
|
||||
// 修改生产单的工序状态
|
||||
void updateProcessStatus(Long id);
|
||||
|
||||
|
||||
|
||||
|
||||
// 修改生产单工序的全部状态
|
||||
void updateAllProcessStatus(Long id);
|
||||
|
||||
|
||||
// 查看板材信息的组合名称
|
||||
List<OrderModuleVO> selectPlateName(Long processStepId);
|
||||
|
||||
|
||||
}
|
||||
+177
@@ -0,0 +1,177 @@
|
||||
package com.cf.imes.module.manage.service.process;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.enums.ProcessingStatusEnum;
|
||||
import com.cf.imes.framework.common.exception.util.ServiceExceptionUtil;
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.framework.common.util.object.BeanUtils;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.PackRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.OrderPorcessStepItemVO;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.OrderProcessReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.ProcessPageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.process.vo.ProcessRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderDO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderProcessNDO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderProcessStepNDO;
|
||||
import com.cf.imes.module.manage.dal.mysql.process.OrderProcessMapper;
|
||||
import com.cf.imes.module.manage.dal.mysql.process.ProcessStepItemMapper;
|
||||
import com.cf.imes.module.manage.dal.mysql.process.ProcessStepMapper;
|
||||
import com.cf.imes.module.manage.dal.mysql.process.ProductionProcessMapper;
|
||||
import com.cf.imes.module.manage.util.page.PageHelperUtil;
|
||||
import com.cf.imes.module.system.enums.ErrorCodeConstants;
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
import static com.baomidou.mybatisplus.core.toolkit.Wrappers.update;
|
||||
|
||||
|
||||
/**
|
||||
* 生产单工序表 order_process_{N} 实现类
|
||||
*
|
||||
* @author 晨丰科技
|
||||
*/
|
||||
@Service
|
||||
@Validated
|
||||
public class ProductionProcessServiceImpl implements ProductionProcessService {
|
||||
|
||||
@Resource
|
||||
private ProductionProcessMapper productionProcessMapper;
|
||||
|
||||
|
||||
@Resource
|
||||
private ProcessStepMapper processStepMapper;
|
||||
|
||||
@Resource
|
||||
private OrderProcessMapper orderProcessMapper;
|
||||
|
||||
@Resource
|
||||
private ProcessStepItemMapper processStepItemMapper;
|
||||
|
||||
|
||||
|
||||
// 生产工序单分页查询
|
||||
@Override
|
||||
public PageResult<ProcessRespVO> getProcessPage(ProcessPageReqVO pageReqVO) {
|
||||
|
||||
|
||||
PageHelper.startPage(pageReqVO.getPageNo(), pageReqVO.getPageSize());
|
||||
List<ProcessRespVO> processRespVOS = processStepItemMapper.selectOrder(pageReqVO);
|
||||
|
||||
PageInfo<ProcessRespVO> pageInfo = new PageInfo<>(processRespVOS);
|
||||
|
||||
// 转换成 PageResult 分页类型
|
||||
return PageHelperUtil.convertToPageResult(pageInfo);
|
||||
|
||||
/* // 根据工序单id查询工序单信息
|
||||
OrderProcessNDO orderProcessNDOS = orderProcessMapper.selectByProcessId(pageReqVO.getId());
|
||||
pageReqVO.setOrderNo(orderProcessNDOS.getOrderNo());
|
||||
pageReqVO.setStatus(orderProcessNDOS.getStatus());
|
||||
|
||||
|
||||
// 查询生产单单分页信息
|
||||
return productionProcessMapper.selectPage(pageReqVO);*/
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
// 查询工序订单下的加工项的详情
|
||||
@Override
|
||||
public List<OrderPorcessStepItemVO> getOrderProcessById(OrderProcessReqVO reqVO) {
|
||||
|
||||
OrderPorcessStepItemVO orderPorcessStepItemVO = new OrderPorcessStepItemVO();
|
||||
|
||||
// 获取工序组 id
|
||||
Long groupId = orderProcessMapper.queryProcess(reqVO.getId(), reqVO.getOrderNo()).getGroupId();
|
||||
|
||||
// 获取加工的工序项
|
||||
List<OrderProcessStepNDO> stepItemList = processStepMapper.getStepItemList(reqVO.getOrderNo(), reqVO.getStatus());
|
||||
|
||||
// 将工序组 id 加入
|
||||
orderPorcessStepItemVO.setOrderProcessId(groupId);
|
||||
|
||||
// 类型转换并返回
|
||||
return BeanUtils.toBean(stepItemList, OrderPorcessStepItemVO.class);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
// 修改工序步骤表的工序状态
|
||||
@Override
|
||||
public void updateProcessStatus(Long id) {
|
||||
|
||||
// 根据步骤 id 查询当前生产单工序的状态
|
||||
OrderProcessStepNDO orderProcessStepNDO = processStepMapper.selectStatusById(id);
|
||||
|
||||
// 未加工状态
|
||||
Boolean status = orderProcessStepNDO.getStatus();
|
||||
|
||||
// 未加工状态才可进行加工
|
||||
if (ProcessingStatusEnum.PROCESSED.getStatus().equals(status)) {
|
||||
|
||||
throw ServiceExceptionUtil.exception(ErrorCodeConstants.UNPROCESSED_BEFORE_PROCESSING);
|
||||
}
|
||||
|
||||
// 更新加工状态
|
||||
processStepMapper.updateStatusById(id, ProcessingStatusEnum.PROCESSED.getStatus());
|
||||
|
||||
|
||||
// 判断生产单工序表的工序状态是否还有未加工
|
||||
// 获取当前工序 id 下的所有生产单工序步骤表
|
||||
List<OrderProcessStepNDO> stepItemList = processStepMapper.getStepItemList(orderProcessStepNDO.getOrderNo(), ProcessingStatusEnum.RAW.getStatus());
|
||||
|
||||
// 集合剩余 1 ,代表当前工序步骤已全部加工,修改生产单工序表的状态为已加工
|
||||
if (stepItemList.size() == 1) {
|
||||
orderProcessMapper.updateStatusById(orderProcessStepNDO.getOrderProcessId(), ProcessingStatusEnum.PROCESSED.getStatus());
|
||||
return;
|
||||
}
|
||||
|
||||
// 遍历生产单工序步骤表,判断是否还有未加工的工序步骤
|
||||
for (OrderProcessStepNDO processStepNDO : stepItemList) {
|
||||
if (processStepNDO.getStatus().equals(ProcessingStatusEnum.RAW.getStatus())) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// 修改生产单工序的状态
|
||||
@Override
|
||||
public void updateAllProcessStatus(Long id) {
|
||||
|
||||
|
||||
// 查看当前生产单的工序状态
|
||||
Boolean status = orderProcessMapper.selectStatusById(id).getStatus();
|
||||
|
||||
|
||||
// 未加工状态才可进行加工
|
||||
if (ProcessingStatusEnum.PROCESSED.getStatus().equals(status)) {
|
||||
throw ServiceExceptionUtil.exception(ErrorCodeConstants.UNPROCESSED_BEFORE_PROCESSING);
|
||||
}
|
||||
|
||||
// 更新加工状态
|
||||
orderProcessMapper.updateStatusById(id, ProcessingStatusEnum.PROCESSED.getStatus());
|
||||
|
||||
}
|
||||
|
||||
|
||||
// 查看板材信息的组合名称
|
||||
@Override
|
||||
public List<OrderModuleVO> selectPlateName(Long processStepId) {
|
||||
|
||||
return processStepItemMapper.selectPlateName(processStepId);
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
+67
@@ -0,0 +1,67 @@
|
||||
package com.cf.imes.module.manage.service.query;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.OrderPartsReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackagePageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackageVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.PrintOrderRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.*;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.salary.PriceRatePageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.salary.PriceRateReqVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderDO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ProductionStatusService {
|
||||
|
||||
|
||||
// 生产状态分页查询
|
||||
PageResult<OrderDO> getProductionPage(OrderPlatePageReqVO pageReqVO);
|
||||
|
||||
// 查看生产单下的加工的工序组
|
||||
List<ProductionGroupVO> selectProduction(Long orderNo);
|
||||
|
||||
|
||||
// 查看板材信息的组合名称
|
||||
List<OrderModuleVO> selectPlateName(OrderModuleReqVO reqVO);
|
||||
|
||||
|
||||
// 查看板材信息分页
|
||||
PageResult<OrderPlateRespVO> getOrderPlatePage(PlatePageVO pageReqVO);
|
||||
|
||||
|
||||
// 计件工资分页查询
|
||||
PageResult<PriceRateReqVO> getSalaryPage(PriceRatePageReqVO pageReqVO);
|
||||
|
||||
|
||||
|
||||
// 打包查询分页
|
||||
PageResult<OrderDO> queryPackage(OrderPlatePageReqVO pageReqVO);
|
||||
|
||||
|
||||
|
||||
// 生产单打包完成包裹查看
|
||||
List<OrderPackageVO> getPackageList(Long orderNo);
|
||||
|
||||
|
||||
|
||||
// 查看包裹详情
|
||||
PageResult<PackageDetailsRespVO> queryPackageDetails(OrderPackagePageReqVO pageReqVO);
|
||||
|
||||
|
||||
// 打印订单
|
||||
PrintOrderRespVO printOrder(Long orderNo);
|
||||
|
||||
|
||||
|
||||
// 导出缺板
|
||||
PageResult<PlateDetailsRespVO> getMissingBoard(OrderPartsReqVO pageReqVO);
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+239
@@ -0,0 +1,239 @@
|
||||
package com.cf.imes.module.manage.service.query;
|
||||
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageParam;
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.framework.common.util.object.BeanUtils;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.OrderPartsReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackagePageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackageVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.PrintOrderRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.*;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.salary.PriceRatePageReqVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.salary.PriceRateReqVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderDO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.process.OrderProcessStepNDO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.query.OrderPackageDO;
|
||||
import com.cf.imes.module.manage.dal.mysql.pack.OrderPackageMapper;
|
||||
import com.cf.imes.module.manage.dal.mysql.process.ProcessStepItemMapper;
|
||||
import com.cf.imes.module.manage.dal.mysql.process.ProcessStepMapper;
|
||||
import com.cf.imes.module.manage.dal.mysql.query.*;
|
||||
import com.cf.imes.module.manage.util.page.PageHelperUtil;
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
@Validated
|
||||
public class ProductionStatusServiceImpl implements ProductionStatusService {
|
||||
|
||||
@Resource
|
||||
private ProductionStatusMapper productionStatusMapper;
|
||||
|
||||
@Resource
|
||||
private ProcessStepMapper processStepMapper;
|
||||
|
||||
@Resource
|
||||
private ProcessStepItemMapper processStepItemMapper;
|
||||
|
||||
|
||||
@Resource
|
||||
private OrderPackageMapper orderPackageMapper;
|
||||
|
||||
|
||||
@Resource
|
||||
private OrderItemMapper orderItemMapper;
|
||||
|
||||
@Resource
|
||||
private OrderPartsMapper orderPartsMapper;
|
||||
|
||||
|
||||
|
||||
// 生产状态分页查询
|
||||
@Override
|
||||
public PageResult<OrderDO> getProductionPage(OrderPlatePageReqVO pageReqVO) {
|
||||
|
||||
return productionStatusMapper.selectProductionPage(pageReqVO);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
// 查看生产单下的加工的工序组
|
||||
@Override
|
||||
public List<ProductionGroupVO> selectProduction(Long orderNo) {
|
||||
|
||||
List<OrderProcessStepNDO> orderProcessStepNDOS = processStepMapper.selectProducitonList(orderNo);
|
||||
|
||||
List<ProductionGroupVO> productionGroupVOS = BeanUtils.toBean(orderProcessStepNDOS, ProductionGroupVO.class);
|
||||
|
||||
Long id = orderProcessStepNDOS.get(0).getId();
|
||||
|
||||
String name = processStepItemMapper.selectById(id).getGroupName();
|
||||
|
||||
for (int i = 0; i < 1; i++) {
|
||||
productionGroupVOS.get(i).setGroupName(name);
|
||||
}
|
||||
|
||||
return productionGroupVOS;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// 查询板材信息的组合名称
|
||||
@Override
|
||||
public List<OrderModuleVO> selectPlateName(OrderModuleReqVO reqVO) {
|
||||
|
||||
return orderItemMapper.selectCombinationName(reqVO.getOrderNo());
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// 查看板材信息分页
|
||||
@Override
|
||||
public PageResult<OrderPlateRespVO> getOrderPlatePage(PlatePageVO pageReqVO) {
|
||||
|
||||
PageHelper.startPage(pageReqVO.getPageNo(), pageReqVO.getPageSize());
|
||||
List<OrderPlateRespVO> orderPlateRespVOS = orderItemMapper.selectPlateList(pageReqVO.getBodyId());
|
||||
PageInfo<OrderPlateRespVO> pageInfo = new PageInfo<>(orderPlateRespVOS);
|
||||
PageResult<OrderPlateRespVO> priceRateReqVOPageResult = PageHelperUtil.convertToPageResult(pageInfo);
|
||||
|
||||
return priceRateReqVOPageResult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// 计件工资分页查询
|
||||
@Override
|
||||
public PageResult<PriceRateReqVO> getSalaryPage(PriceRatePageReqVO pageReqVO) {
|
||||
|
||||
// todo 功能完成,数据库数据不完整,测试部分功能完成
|
||||
|
||||
List<OrderProcessStepNDO> orderProcessStepNDOS = processStepMapper.selectListBy(pageReqVO);
|
||||
|
||||
if (pageReqVO.getNoShowZero()) {
|
||||
for (OrderProcessStepNDO orderProcessStepNDO : orderProcessStepNDOS) {
|
||||
if (orderProcessStepNDO.getPieceRate() == 0) {
|
||||
orderProcessStepNDOS.remove(orderProcessStepNDO);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
List<PriceRatePageReqVO> reqVOS = BeanUtils.toBean(orderProcessStepNDOS, PriceRatePageReqVO.class);
|
||||
|
||||
List<Long> collect = reqVOS.stream().map(PriceRatePageReqVO::getOrderProcessId).collect(Collectors.toList());
|
||||
|
||||
|
||||
PageHelper.startPage(pageReqVO.getPageNo(), pageReqVO.getPageSize());
|
||||
List<PriceRateReqVO> priceRateReqVOS = processStepMapper.selectListByStatus(collect);
|
||||
PageInfo<PriceRateReqVO> pageInfo = new PageInfo<>(priceRateReqVOS);
|
||||
PageResult<PriceRateReqVO> priceRateReqVOPageResult = PageHelperUtil.convertToPageResult(pageInfo);
|
||||
|
||||
return priceRateReqVOPageResult;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// 打包查询分页
|
||||
@Override
|
||||
public PageResult<OrderDO> queryPackage(OrderPlatePageReqVO pageReqVO) {
|
||||
|
||||
return productionStatusMapper.selectProductionPage(pageReqVO);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// 生产单打包完成包裹查看
|
||||
@Override
|
||||
public List<OrderPackageVO> getPackageList(Long orderNo) {
|
||||
|
||||
List<OrderPackageDO> orderPackageDOS = orderPackageMapper.selectByOrderNo(orderNo);
|
||||
|
||||
return BeanUtils.toBean(orderPackageDOS, OrderPackageVO.class);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// 查看包裹详情
|
||||
@Override
|
||||
public PageResult<PackageDetailsRespVO> queryPackageDetails(OrderPackagePageReqVO pageReqVO) {
|
||||
|
||||
OrderPackageDO orderPackageDO = orderPackageMapper.selectByPackNo(pageReqVO.getPackageNo());
|
||||
|
||||
// 查看配件包裹
|
||||
if(orderPackageDO.getType() == 1 && orderPackageDO.getType() == 2){
|
||||
|
||||
PageHelper.startPage(pageReqVO.getPageNo(), pageReqVO.getPageSize());
|
||||
List<PackageDetailsRespVO> packageDetailsRespVOS = orderPartsMapper.selectParts(orderPackageDO.getPackageNo());
|
||||
PageInfo<PackageDetailsRespVO> pageInfo = new PageInfo<>(packageDetailsRespVOS);
|
||||
PageResult<PackageDetailsRespVO> priceRateReqVOPageResult = PageHelperUtil.convertToPageResult(pageInfo);
|
||||
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||
return priceRateReqVOPageResult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
// 查看板材包裹
|
||||
PageHelper.startPage(pageReqVO.getPageNo(),pageReqVO.getPageSize());
|
||||
List<PackageDetailsRespVO> packageDetailsRespVOS = orderItemMapper.selectByPackageId(orderPackageDO.getId());
|
||||
PageInfo<PackageDetailsRespVO> pageInfo = new PageInfo<>(packageDetailsRespVOS);
|
||||
PageResult<PackageDetailsRespVO> priceRateReqVOPageResult = PageHelperUtil.convertToPageResult(pageInfo);
|
||||
|
||||
return priceRateReqVOPageResult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// 打印订单
|
||||
@Override
|
||||
public PrintOrderRespVO printOrder(Long orderNo) {
|
||||
|
||||
return productionStatusMapper.selectPrintOrder(orderNo);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// 导出缺板
|
||||
@Override
|
||||
public PageResult<PlateDetailsRespVO> getMissingBoard(OrderPartsReqVO pageReqVO) {
|
||||
|
||||
|
||||
PageHelper.startPage(pageReqVO.getPageNo(),pageReqVO.getPageSize());
|
||||
List<PlateDetailsRespVO> plateDetailsRespVOS = orderPackageMapper.selectMissingBoard(pageReqVO.getOrderNo());
|
||||
PageInfo<PlateDetailsRespVO> pageInfo = new PageInfo<>(plateDetailsRespVOS);
|
||||
PageResult<PlateDetailsRespVO> priceRateReqVOPageResult = PageHelperUtil.convertToPageResult(pageInfo);
|
||||
|
||||
return priceRateReqVOPageResult;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
package com.cf.imes.module.manage.util.page;
|
||||
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
|
||||
|
||||
/**
|
||||
* PageHelper 工具类
|
||||
*
|
||||
* @author 晨丰科技
|
||||
*/
|
||||
public class PageHelperUtil {
|
||||
|
||||
// 转换分页数据类型
|
||||
public static <T> PageResult<T> convertToPageResult(PageInfo<T> pageInfo) {
|
||||
PageResult<T> pageResult = new PageResult<>();
|
||||
pageResult.setTotal(pageInfo.getTotal());
|
||||
pageResult.setList(pageInfo.getList());
|
||||
return pageResult;
|
||||
}
|
||||
}
|
||||
+103
@@ -0,0 +1,103 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.cf.imes.module.manage.dal.mysql.pack.OrderPackageMapper">
|
||||
|
||||
<resultMap id="PackMap" type="com.cf.imes.module.manage.controller.admin.pack.vo.PackRespVO">
|
||||
|
||||
<result property="packCount" column="numberOfPackages"/>
|
||||
<result property="packPieceCount" column="packagedBoard"/>
|
||||
</resultMap>
|
||||
|
||||
|
||||
<select id="selectPackPage" resultType="com.cf.imes.module.manage.controller.admin.pack.vo.PackRespVO"
|
||||
parameterType="java.util.List"
|
||||
resultMap="PackMap">
|
||||
|
||||
|
||||
select
|
||||
count(DISTINCT oi.package_id ) as numberOfPackages,
|
||||
count(DISTINCT oi.plate_id) as packagedBoard
|
||||
|
||||
from order_package_n opn
|
||||
join order_item oi on opn.id = oi.package_id
|
||||
WHERE opn.order_no IN
|
||||
<foreach item="id" collection="collect" open="(" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
and opn.status <> 0;
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<resultMap id="PlateDetailsMap" type="com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO">
|
||||
<result property="roomName" column="roomName"/>
|
||||
<result property="cabinetName" column="bodyName"/>
|
||||
<result property="plateNo" column="palteId"/>
|
||||
<result property="plateName" column="plateName"/>
|
||||
<result property="material" column="plateMaterial"/>
|
||||
<result property="color" column="palteColor"/>
|
||||
<result property="width" column="plateWidth"/>
|
||||
<result property="height" column="plateHeight"/>
|
||||
<result property="thickness" column="plateThickness"/>
|
||||
<result property="area" column="plateArea"/>
|
||||
<result property="texture" column="texture"/>
|
||||
<result property="specialShaped" column="specialShaped"/>
|
||||
<result property="profiling" column="profiling"/>
|
||||
<result property="rowHole" column="rowHole"/>
|
||||
<result property="remark" column="remark"/>
|
||||
<result property="processGroup" column="name"/>
|
||||
</resultMap>
|
||||
<select id="selectMissingBoard"
|
||||
parameterType="java.lang.Long"
|
||||
resultMap="PlateDetailsMap">
|
||||
|
||||
select
|
||||
ob.room_name as roomName,
|
||||
ob.name as bodyName,
|
||||
op.id as palteId,
|
||||
op.name as plateName,
|
||||
p.material as plateMaterial,
|
||||
p.color as palteColor,
|
||||
p.height as plateHeight,
|
||||
p.width as plateWidth,
|
||||
p.thickness as plateThickness,
|
||||
op.area as plateArea,
|
||||
op.texture as texture,
|
||||
op.remark as remark,
|
||||
CASE WHEN op.unregular_point_count = 0 THEN '否' ELSE '是' END AS specialShaped,
|
||||
CASE WHEN front_model_count = 0 or op.back_hole_count or op.side_hole_count THEN '否' ELSE '是' END AS profiling,
|
||||
CASE WHEN front_hole_count = 0 or op.back_model_count THEN '否' ELSE '是' END AS rowHole
|
||||
|
||||
from order_plate op
|
||||
join plate p on op.goods_id = p.goods_id
|
||||
join order_item oi on op.id = oi.plate_id
|
||||
join order_body ob on oi.body_id = ob.id
|
||||
|
||||
where
|
||||
oi.order_id = #{orderNo}
|
||||
and
|
||||
op.id not in (
|
||||
select oi2.plate_id
|
||||
from order_item oi2
|
||||
where oi2.order_id = #{orderNo} and oi2.package_id <> '');
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<update id="updateParts"
|
||||
parameterType="java.lang.Long">
|
||||
|
||||
UPDATE order_package_n
|
||||
SET deleted = true
|
||||
WHERE id = #{packageId} AND package_no = #{packageNo};
|
||||
|
||||
</update>
|
||||
|
||||
</mapper>
|
||||
+63
@@ -0,0 +1,63 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.cf.imes.module.manage.dal.mysql.process.ProcessStepItemMapper">
|
||||
|
||||
|
||||
<select id="selectPlateName"
|
||||
resultType="com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleVO"
|
||||
parameterType="java.lang.Long">
|
||||
|
||||
|
||||
select CONCAT(ob.room_name,'_',ob.name) as name ,ob.id as bodyId
|
||||
from order_process_step_item_n opsn join order_body ob on opsn.body_id = ob.id where opsn.process_step_id = #{processStepId};
|
||||
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
<resultMap id="OrderMap" type="com.cf.imes.module.manage.controller.admin.process.vo.ProcessRespVO">
|
||||
|
||||
<result property="id" column="id"/>
|
||||
<result property="customOrderNo" column="customOrderNo"/>
|
||||
<result property="customer" column="customer"/>
|
||||
<result property="address" column="address"/>
|
||||
<result property="status" column="status"/>
|
||||
|
||||
</resultMap>
|
||||
|
||||
<select id="selectOrder" resultMap="OrderMap" parameterType="com.cf.imes.module.manage.controller.admin.process.vo.ProcessPageReqVO">
|
||||
|
||||
|
||||
select distinct
|
||||
ops.order_id as id,
|
||||
o.custom_order_no as customOrderNo,
|
||||
o.customer as customer,
|
||||
o.address as address,
|
||||
o.status as status
|
||||
from order_process_step ops
|
||||
join `order` o on ops.order_id = o.id
|
||||
|
||||
<where>
|
||||
<if test="id != null">
|
||||
and ops.processinfo_id = #{id}
|
||||
</if>
|
||||
<if test="status != null">
|
||||
and ops.status = #{status}
|
||||
</if>
|
||||
<if test="orderNo != null">
|
||||
and ops.order_id = #{orderNo}
|
||||
</if>
|
||||
<if test="customOrderNo != null">
|
||||
and o.custom_order_no = #{customOrderNo}
|
||||
</if>
|
||||
<if test="customer != null">
|
||||
and o.customer = #{customer}
|
||||
</if>
|
||||
<if test="address != null">
|
||||
and o.address = #{address}
|
||||
</if>
|
||||
|
||||
</where>
|
||||
|
||||
</select>
|
||||
</mapper>
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.cf.imes.module.manage.dal.mysql.process.ProcessStepMapper">
|
||||
|
||||
|
||||
<resultMap id="priceResultMap" type="com.cf.imes.module.manage.controller.admin.query.vo.salary.PriceRateReqVO">
|
||||
<result property="name" column="process_name"/>
|
||||
<result property="priceRate" column="piece_rate"/>
|
||||
<result property="num" column="total_piece_num"/>
|
||||
<result property="priceType" column="piece_type"/>
|
||||
<result property="amount" column="total_piece_rate"/>
|
||||
<result property="manager" column="creator"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="selectListByStatus"
|
||||
parameterType="java.util.List"
|
||||
resultMap="priceResultMap">
|
||||
|
||||
|
||||
SELECT
|
||||
ops.piece_rate AS piece_rate,
|
||||
ops.piece_type AS piece_type,
|
||||
ops.name AS process_name,
|
||||
ops.creator AS creator,
|
||||
SUM(CASE
|
||||
WHEN ops.piece_type = 1 THEN ops.piece_rate
|
||||
ELSE ROUND((opn.size / p.hour_capacity), 2) * ops.piece_rate
|
||||
END) AS total_piece_rate,
|
||||
SUM(CASE
|
||||
WHEN ops.piece_type = 1 THEN 1
|
||||
ELSE 10 / ops.piece_rate
|
||||
END) AS total_piece_num
|
||||
FROM
|
||||
order_process_step_n ops
|
||||
JOIN
|
||||
order_process_n opn ON ops.order_process_id = opn.id
|
||||
JOIN
|
||||
imes_base.process p ON opn.id = p.id
|
||||
WHERE
|
||||
ops.order_process_id IN
|
||||
<foreach item="id" collection="collect" open="(" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
GROUP BY
|
||||
ops.name, ops.creator, ops.piece_type, ops.piece_rate;
|
||||
|
||||
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
+405
@@ -0,0 +1,405 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.cf.imes.module.manage.dal.mysql.query.OrderItemMapper">
|
||||
|
||||
|
||||
<resultMap id="orderItemMap" type="com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRespVO">
|
||||
<result property="roomName" column="roomName"/>
|
||||
<result property="cabinetName" column="bodyName"/>
|
||||
<result property="palteNo" column="palteId"/>
|
||||
<result property="palteName" column="plateName"/>
|
||||
<result property="material" column="plateMaterial"/>
|
||||
<result property="color" column="palteColor"/>
|
||||
<result property="width" column="plateWidth"/>
|
||||
<result property="height" column="plateHeight"/>
|
||||
<result property="thickness" column="plateThickness"/>
|
||||
<result property="area" column="plateArea"/>
|
||||
<result property="texture" column="texture"/>
|
||||
<result property="specialShaped" column="specialShaped"/>
|
||||
<result property="profiling" column="profiling"/>
|
||||
<result property="rowHole" column="rowHole"/>
|
||||
<result property="remark" column="remark"/>
|
||||
<result property="processGroup" column="name"/>
|
||||
</resultMap>
|
||||
|
||||
|
||||
|
||||
<select id="selectByPackageId"
|
||||
parameterType="java.lang.Long"
|
||||
resultMap="orderItemMap">
|
||||
select
|
||||
og.name as name,
|
||||
ob.room_name as roomName,
|
||||
ob.name as bodyName,
|
||||
op.id as palteId,
|
||||
op.name as plateName,
|
||||
p.material as plateMaterial,
|
||||
p.color as palteColor,
|
||||
p.height as plateHeight,
|
||||
p.width as plateWidth,
|
||||
p.thickness as plateThickness,
|
||||
op.area as plateArea,
|
||||
op.texture as texture ,
|
||||
op.remark as remark,
|
||||
|
||||
CASE WHEN op.unregular_point_count = 0 THEN '否' ELSE '是' END AS specialShaped,
|
||||
CASE WHEN front_model_count = 0 or op.back_hole_count or op.side_hole_count THEN '否' ELSE '是' END AS profiling,
|
||||
CASE WHEN front_hole_count = 0 or op.back_model_count THEN '否' ELSE '是' END AS rowHole
|
||||
|
||||
from order_item oi
|
||||
|
||||
join order_plate op on oi.plate_id = op.id
|
||||
join plate p on op.goods_id = p.goods_id
|
||||
join order_body ob on oi.body_id = ob.id
|
||||
join order_group og on ob.id = og.body_id
|
||||
|
||||
where
|
||||
oi.package_id =#{packageId}
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
<!-- 查看板材信息的组合名称-->
|
||||
<select id="selectCombinationName"
|
||||
resultType="com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleVO">
|
||||
<![CDATA[
|
||||
select CONCAT(ob.room_name,'_',ob.name) as name,ob.id as bodyId from order_body ob where order_id =#{orderNo};
|
||||
]]>
|
||||
</select>
|
||||
|
||||
|
||||
<!-- 查看板材信息分页-->
|
||||
<resultMap id="PlateMap" type="com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderPlateRespVO">
|
||||
<result property="id" column="palteId"/>
|
||||
<result property="name" column="plateName"/>
|
||||
<result property="color" column="palteColor"/>
|
||||
<result property="width" column="plateWidth"/>
|
||||
<result property="height" column="plateHeight"/>
|
||||
<result property="thickness" column="plateThickness"/>
|
||||
<result property="material" column="plateMaterial"/>
|
||||
</resultMap>
|
||||
<select id="selectPlateList"
|
||||
resultMap="PlateMap"
|
||||
parameterType="java.lang.Long">
|
||||
|
||||
select
|
||||
op.id as palteId,
|
||||
op.name as plateName,
|
||||
p.material as plateMaterial,
|
||||
p.color as palteColor,
|
||||
p.height as plateHeight,
|
||||
p.width as plateWidth,
|
||||
p.thickness as plateThickness
|
||||
from order_item oi
|
||||
join order_plate op on oi.plate_id = op .id
|
||||
join plate p on op.goods_id = p.goods_id
|
||||
where oi.body_id = #{bodyId}
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<resultMap id="PlateDetailsMap" type="com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO">
|
||||
<result property="roomName" column="roomName"/>
|
||||
<result property="cabinetName" column="bodyName"/>
|
||||
<result property="plateNo" column="plateId"/>
|
||||
<result property="plateName" column="plateName"/>
|
||||
<result property="material" column="plateMaterial"/>
|
||||
<result property="color" column="plateColor"/>
|
||||
<result property="width" column="plateWidth"/>
|
||||
<result property="height" column="plateHeight"/>
|
||||
<result property="thickness" column="plateThickness"/>
|
||||
<result property="area" column="plateArea"/>
|
||||
<result property="texture" column="texture"/>
|
||||
<result property="specialShaped" column="specialShaped"/>
|
||||
<result property="profiling" column="profiling"/>
|
||||
<result property="rowHole" column="rowHole"/>
|
||||
<result property="remark" column="remark"/>
|
||||
<result property="processGroup" column="name"/>
|
||||
</resultMap>
|
||||
<select id="selectOrderPlateList"
|
||||
parameterType="java.lang.Long"
|
||||
resultMap="PlateDetailsMap" >
|
||||
select
|
||||
og.name as name,
|
||||
ob.room_name as roomName,
|
||||
ob.name as bodyName,
|
||||
op.id as plateId,
|
||||
op.name as plateName,
|
||||
p.material as plateMaterial,
|
||||
p.color as plateColor,
|
||||
p.height as plateHeight,
|
||||
p.width as plateWidth,
|
||||
p.thickness as plateThickness,
|
||||
op.area as plateArea,
|
||||
op.texture as texture ,
|
||||
op.remark as remark,
|
||||
|
||||
CASE WHEN op.unregular_point_count = 0 THEN '否' ELSE '是' END AS specialShaped,
|
||||
CASE WHEN front_model_count = 0 or op.back_hole_count or op.side_hole_count THEN '否' ELSE '是' END AS profiling,
|
||||
CASE WHEN front_hole_count = 0 or op.back_model_count THEN '否' ELSE '是' END AS rowHole
|
||||
|
||||
from order_item oi
|
||||
join order_plate op on oi.plate_id = op.id
|
||||
join plate p on op.goods_id = p.goods_id
|
||||
join order_body ob on oi.body_id = ob.id
|
||||
join order_group og on ob.id = og.body_id
|
||||
where
|
||||
oi.order_id =#{orderNo}
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<resultMap id="PlateListMap" type="com.cf.imes.module.manage.controller.admin.grouping.vo.OrderPlateListRespVO">
|
||||
|
||||
<result property="orderNo" column="orderNo"/>
|
||||
<result property="id" column="plateId"/>
|
||||
<result property="name" column=""/>
|
||||
<result property="name" column="plateName"/>
|
||||
<result property="plateName" column="goodsName"/>
|
||||
<result property="height" column="height"/>
|
||||
<result property="width" column="width"/>
|
||||
<result property="thickness" column="thickness"/>
|
||||
<result property="material" column="material"/>
|
||||
<result property="color" column="color"/>
|
||||
<result property="groupName" column="groupName"/>
|
||||
<result property="roomName" column="roomName"/>
|
||||
<result property="bodyName" column="bodyName"/>
|
||||
<result property="remark" column="remark"/>
|
||||
|
||||
</resultMap>
|
||||
<select id="selectGroupingPlateList"
|
||||
parameterType="java.lang.Long"
|
||||
resultMap="PlateListMap">
|
||||
|
||||
select
|
||||
oi.order_id as orderNo,
|
||||
op.id as plateId,
|
||||
op.height as height,
|
||||
op.width as width,
|
||||
op.thickness as thickness,
|
||||
op.name as plateName,
|
||||
p.goods_name as goodsName,
|
||||
p.material as material,
|
||||
p.color as color,
|
||||
ob.name as bodyName,
|
||||
ob.room_name as roomName,
|
||||
og.name as groupName,
|
||||
op.remark as remark
|
||||
|
||||
from order_item oi
|
||||
|
||||
join order_body ob on oi.body_id = ob.id
|
||||
join order_group og on oi.group_id = og.id
|
||||
join order_plate op on oi.plate_id = op.id
|
||||
join plate p on op.goods_id = p.goods_id
|
||||
|
||||
where oi.order_id = #{orderNo};
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
<!--parameterType="com.cf.imes.module.manage.controller.admin.grouping.vo.GroupPlateReqVO"-->
|
||||
<update id="insertPackPlate"
|
||||
parameterType="java.lang.Long">
|
||||
|
||||
|
||||
<!-- UPDATE order_item oi
|
||||
|
||||
SET oi.package_id =
|
||||
(select order_package_n.id from order_package_n where name like CONCAT ('%', #{roomName}, '%'))
|
||||
|
||||
WHERE plate_id =#{plateId} and order_id =#{orderNo};-->
|
||||
|
||||
UPDATE order_item oi
|
||||
SET oi.package_id = (SELECT opn.id
|
||||
FROM order_package_n opn
|
||||
WHERE opn.name LIKE CONCAT('%', (SELECT ob.room_name
|
||||
FROM order_body ob
|
||||
WHERE oi.body_id = ob.id
|
||||
AND plate_id = #{plateId}),'%' )
|
||||
)
|
||||
WHERE plate_id = #{plateId};
|
||||
|
||||
|
||||
</update>
|
||||
|
||||
|
||||
|
||||
|
||||
<select id="selectJoinedGroupPlateList"
|
||||
parameterType="java.lang.Long"
|
||||
resultMap="PlateListMap">
|
||||
|
||||
select
|
||||
|
||||
oi.order_id as orderNo,
|
||||
op.id as plateId,
|
||||
op.height as height,
|
||||
op.width as width,
|
||||
op.thickness as thickness,
|
||||
op.name as plateName,
|
||||
p.goods_name as goods_name,
|
||||
p.material as material,
|
||||
p.color as color,
|
||||
ob.name as bodyName,
|
||||
ob.room_name as roomName,
|
||||
og.name as groupName,
|
||||
op.remark as remark
|
||||
|
||||
from order_item oi
|
||||
|
||||
join order_body ob on oi.body_id = ob.id
|
||||
join order_group og on oi.group_id = og.id
|
||||
join order_plate op on oi.plate_id = op.id
|
||||
join plate p on op.goods_id = p.goods_id
|
||||
|
||||
where oi.package_id in
|
||||
<foreach item="id" collection="packageIdList" open="(" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
and oi.order_id = #{orderNo};
|
||||
|
||||
|
||||
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
|
||||
<select id="selectPrintPlateList"
|
||||
parameterType="java.lang.Long"
|
||||
resultMap="PlateListMap">
|
||||
|
||||
select
|
||||
oi.order_id as orderNo,
|
||||
op.id as plateId,
|
||||
op.height as height,
|
||||
op.width as width,
|
||||
op.thickness as thickness,
|
||||
op.name as plateName,
|
||||
p.goods_name as goodsName,
|
||||
p.material as material,
|
||||
p.color as color,
|
||||
ob.name as bodyName,
|
||||
ob.room_name as roomName,
|
||||
og.name as groupName,
|
||||
op.remark as remark
|
||||
|
||||
from order_item oi
|
||||
join order_body ob on oi.body_id = ob.id
|
||||
join order_group og on oi.group_id = og.id
|
||||
join order_plate op on oi.plate_id = op.id
|
||||
join plate p on op.goods_id = p.goods_id
|
||||
|
||||
where oi.order_id = #{orderNo} and oi.package_id = #{packageNo};
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
|
||||
<update id="deleteOrderPack">
|
||||
|
||||
UPDATE order_item oi
|
||||
JOIN order_package_n opn ON oi.package_id = opn.id
|
||||
SET oi.package_id = 0, opn.deleted = true
|
||||
WHERE opn.id = #{reqVO.packageId} AND opn.package_no = #{reqVO.packageNo};
|
||||
|
||||
</update>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<update id="updateParts">
|
||||
|
||||
UPDATE order_parts op
|
||||
SET op.deleted = true
|
||||
WHERE op.id IN (
|
||||
SELECT oi.parts_id
|
||||
FROM order_item oi
|
||||
WHERE oi.order_id = #{reqVO.orderId} AND oi.package_id = #{reqVO.packageId} AND oi.id = #{reqVO.itemId}
|
||||
);
|
||||
|
||||
</update>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<update id="deleteOtherParts"
|
||||
parameterType="java.lang.Long">
|
||||
|
||||
|
||||
DELETE FROM order_item
|
||||
WHERE id = #{itemId};
|
||||
|
||||
</update>
|
||||
|
||||
|
||||
|
||||
|
||||
<delete id="deleteParts">
|
||||
|
||||
delete from order_item
|
||||
where package_id = #{reqVO.packageId}
|
||||
and order_id in
|
||||
(select order_no from order_package_n where id = #{reqVO.packageId} and package_no = #{reqVO.packageNo} );
|
||||
|
||||
</delete>
|
||||
|
||||
|
||||
<update id="insertPackId" parameterType="java.lang.Long">
|
||||
|
||||
update order_item oi
|
||||
|
||||
set package_id = #{packId}
|
||||
|
||||
where plate_id in
|
||||
<foreach item="id" collection="plateIdList" open="(" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
|
||||
</update>
|
||||
|
||||
|
||||
|
||||
<update id="deletePackId" parameterType="java.lang.Long">
|
||||
|
||||
update order_item oi
|
||||
|
||||
set package_id = 0
|
||||
|
||||
where package_id = #{packId} and plate_id in
|
||||
<foreach item="id" collection="deletePlateIdList" open="(" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
|
||||
|
||||
</update>
|
||||
|
||||
|
||||
|
||||
<update id="insertPartsId" parameterType="java.lang.Long">
|
||||
|
||||
update order_item oi
|
||||
|
||||
set package_id = #{packId}
|
||||
|
||||
where parts_id in
|
||||
|
||||
<foreach item="id" collection="addPartsIdList" open="(" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
|
||||
</update>
|
||||
|
||||
|
||||
</mapper>
|
||||
+106
@@ -0,0 +1,106 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.cf.imes.module.manage.dal.mysql.query.OrderPartsMapper">
|
||||
|
||||
<resultMap id="partsMap" type="com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRespVO">
|
||||
|
||||
<result property="partsName" column="name"/>
|
||||
<result property="model" column="model"/>
|
||||
<result property="spec" column="spec"/>
|
||||
<result property="num" column="name_count"/>
|
||||
<result property="unit" column="unit"/>
|
||||
<result property="brand" column="brand"/>
|
||||
<result property="factory" column="factory"/>
|
||||
<result property="remark" column="remark"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="selectParts"
|
||||
parameterType="java.lang.Long"
|
||||
resultMap="partsMap">
|
||||
|
||||
SELECT name, COUNT(name) AS name_count,model,spec,unit,brand,factory,remark
|
||||
FROM order_parts
|
||||
WHERE id IN (
|
||||
SELECT parts_id
|
||||
FROM order_item
|
||||
WHERE package_id = #{packageNo}
|
||||
)
|
||||
GROUP BY name,model,spec,unit,brand,factory,remark;
|
||||
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<resultMap id="PartsListMap" type="com.cf.imes.module.manage.controller.admin.pack.vo.OrderPartsRespVO">
|
||||
|
||||
<result property="partsId" column="partsId"/>
|
||||
<result property="type" column="type"/>
|
||||
<result property="isComposite" column="isComposite"/>
|
||||
|
||||
<result property="partsName" column="name"/>
|
||||
<result property="model" column="model"/>
|
||||
<result property="spec" column="spec"/>
|
||||
<result property="num" column="num"/>
|
||||
<result property="unit" column="unit"/>
|
||||
<result property="brand" column="brand"/>
|
||||
<result property="factory" column="factory"/>
|
||||
<result property="remark" column="remark"/>
|
||||
</resultMap>
|
||||
<select id="selectPartsList"
|
||||
parameterType="java.lang.Long"
|
||||
resultMap="PartsListMap">
|
||||
|
||||
select
|
||||
id as partsId,name,model,spec,count(name) as num,unit,brand,factory,remark
|
||||
from order_parts where order_id = #{orderId}
|
||||
group by partsId,name,model,spec,unit,brand,factory,remark;
|
||||
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<select id="selectOrderParts"
|
||||
parameterType="java.lang.Long"
|
||||
resultMap="PartsListMap">
|
||||
|
||||
|
||||
select
|
||||
op.id as partsId,
|
||||
op.name as name,
|
||||
op.model as model ,
|
||||
op.spec as spec,
|
||||
oi.num as num,
|
||||
op.unit as unit,
|
||||
op.brand as brand,
|
||||
op.factory as factory,
|
||||
op.type as type,
|
||||
op.is_composite as isComposite,
|
||||
op.remark as remark
|
||||
|
||||
from order_parts op
|
||||
join order_item oi on op.id = oi.parts_id
|
||||
where op.order_id = #{orderNo} and oi.package_id =#{packageNo};
|
||||
|
||||
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
<update id="deleteOrderParts"
|
||||
parameterType="java.lang.Long">
|
||||
|
||||
update order_parts op set op.deleted = true where op.id in (
|
||||
select oi.parts_id from order_item oi where package_id =#{packageId});
|
||||
|
||||
|
||||
</update>
|
||||
|
||||
|
||||
</mapper>
|
||||
+114
@@ -0,0 +1,114 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.cf.imes.module.manage.dal.mysql.query.ProductionStatusMapper">
|
||||
|
||||
<resultMap id="printOrderMap" type="com.cf.imes.module.manage.controller.admin.query.vo.pack.PrintOrderRespVO">
|
||||
|
||||
<result property="orderNo" column="orderNo"/>
|
||||
<result property="customOrderNo" column="customOrderNo"/>
|
||||
<result property="dealer" column="dealer"/>
|
||||
<result property="address" column="address"/>
|
||||
<result property="customer" column="customer"/>
|
||||
<result property="customerPhone" column="customerPhone"/>
|
||||
<result property="packageQuantity" column="packageQuantity"/>
|
||||
|
||||
</resultMap>
|
||||
<select id="selectPrintOrder"
|
||||
parameterType="java.lang.Long"
|
||||
resultMap="printOrderMap">
|
||||
|
||||
select
|
||||
o.id as orderNo ,
|
||||
o.custom_order_no as customOrderNo,
|
||||
o.dealer as dealer,
|
||||
o.address as address,
|
||||
o.customer as customer,
|
||||
o.phone_number as customerPhone,
|
||||
count(opn.order_no) as packageQuantity
|
||||
from `order` o join order_package_n opn on o.id=opn.order_no
|
||||
where o.id = #{orderNo} and opn.status <> 0;
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
<resultMap id="PackMap" type="com.cf.imes.module.manage.controller.admin.pack.vo.PackRespVO">
|
||||
|
||||
<result property="id" column="orderNo"/>
|
||||
<result property="customOrderNo" column="customOrderNo"/>
|
||||
<result property="dealer" column="dealer"/>
|
||||
<result property="deliveryDate" column="deliveryDate"/>
|
||||
<result property="status" column="status"/>
|
||||
<result property="customer" column="customer"/>
|
||||
<result property="address" column="address"/>
|
||||
<result property="phoneNumber" column="phoneNumber"/>
|
||||
<result property="salesman" column="salesman"/>
|
||||
<result property="splitter" column="splitter"/>
|
||||
<result property="createTime" column="createTime"/>
|
||||
<result property="totalPieceCount" column="num"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="selectOrderPlate" resultType="com.cf.imes.module.manage.controller.admin.pack.vo.PackRespVO"
|
||||
parameterType="java.util.List"
|
||||
resultMap="PackMap">
|
||||
|
||||
SELECT
|
||||
oi.num as num,
|
||||
o.id as orderNo,
|
||||
o.custom_order_no as customOrderNo,
|
||||
o.dealer as dealer,
|
||||
o.create_time as createTime,
|
||||
o.delivery_date as deliveryDate,
|
||||
o.customer as customer,
|
||||
o.phone_number as phoneNumber,
|
||||
o.address as address,
|
||||
o.salesman as salesman,
|
||||
o.splitter as splitter,
|
||||
o.status as status
|
||||
|
||||
FROM `order` o
|
||||
join order_item oi on o.id = oi.order_id
|
||||
WHERE o.id in
|
||||
<foreach item="id" collection="collect" open="(" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
group by num,orderNo,customOrderNo,dealer,createTime,deliveryDate,customer,phoneNumber,address,salesman,splitter,status;
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<resultMap id="PrintMap" type="com.cf.imes.module.manage.controller.admin.pack.vo.PrintOrderPackRespVO">
|
||||
<result property="customOrderNo" column="customOrderNo"/>
|
||||
<result property="dealer" column="dealer"/>
|
||||
<result property="orderNo" column="orderNo"/>
|
||||
<result property="packNo" column="packNo"/>
|
||||
<result property="packNum" column="packNum"/>
|
||||
<result property="address" column="address"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="selectOrderPack"
|
||||
parameterType="java.lang.Long"
|
||||
resultMap="PrintMap">
|
||||
|
||||
select o.custom_order_no as customOrderNo,
|
||||
o.dealer as dealer,
|
||||
opn.id as packNo ,
|
||||
o.id as orderNo,
|
||||
o.address as address,
|
||||
((SELECT COUNT(t2.id) FROM order_package_n t2 WHERE t2.create_time <= opn.create_time and t2.order_no =#{orderNo})) as packNum
|
||||
|
||||
from `order` o
|
||||
join order_package_n opn on o.id = opn.order_no
|
||||
|
||||
where opn.order_no =#{orderNo} and opn.id = #{packageNo} and opn.status <> 0
|
||||
order by opn.create_time ;
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
||||
+9
@@ -202,4 +202,13 @@ public interface ErrorCodeConstants {
|
||||
ErrorCode REMAIN_PLATE_NOT_EXISTS = new ErrorCode(1_002_032_002, "板材不存在");
|
||||
|
||||
|
||||
//=========== 工序的生产状态 1-002-034-000 ============
|
||||
ErrorCode UNPROCESSED_BEFORE_PROCESSING = new ErrorCode(1_002_034_001, "未加工状态方可进行加工");
|
||||
|
||||
|
||||
// ========== 新增外部配件 1-002-035-000 ==========
|
||||
ErrorCode THE_ACCESSORY_NAME_CANNOT_BE_DUPLICATED = new ErrorCode(1_002_035_001, "配件名称不能重复");
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
+3
-2
@@ -72,8 +72,9 @@ public class ProcessGroupController {
|
||||
@Operation(summary = "更新工序组")
|
||||
@PreAuthorize("@ss.hasPermission('system:process-group:update')")
|
||||
public CommonResult<Boolean> updateProcessGroup(@Valid @RequestBody ProcessListSaveReqVO updateReqVO) {
|
||||
processGroupService.updateProcessGroup(updateReqVO);
|
||||
return success(true);
|
||||
/*processGroupService.updateProcessGroup(updateReqVO);
|
||||
return success(true);*/
|
||||
return null;
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")
|
||||
|
||||
+6
@@ -1,10 +1,12 @@
|
||||
package com.cf.imes.module.system.controller.admin.process.vo.group;
|
||||
|
||||
import com.cf.imes.module.system.controller.admin.process.vo.process.ProcessRespVO;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.List;
|
||||
|
||||
@Schema(description = "管理后台 - 工序组表 process_group新增/修改 Request VO")
|
||||
@Data
|
||||
@@ -33,4 +35,8 @@ public class ProcessGroupSaveReqVO {
|
||||
@NotEmpty(message = "描述不能为空")
|
||||
private String description;
|
||||
|
||||
public List<ProcessRespVO> getLists() {
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -29,7 +29,7 @@ public interface ProcessGroupService {
|
||||
*
|
||||
* @param updateReqVO 更新信息
|
||||
*/
|
||||
void updateProcessGroup(@Valid ProcessListSaveReqVO updateReqVO);
|
||||
void updateProcessGroup(ProcessGroupSaveReqVO updateReqVO);
|
||||
|
||||
/**
|
||||
* 删除工序组表 process_group
|
||||
|
||||
+1
-2
@@ -4,7 +4,6 @@ import com.cf.imes.module.system.controller.admin.process.vo.group.ProcessGroupP
|
||||
import com.cf.imes.module.system.controller.admin.process.vo.group.ProcessGroupSaveReqVO;
|
||||
import com.cf.imes.module.system.controller.admin.process.vo.group.ProcessListSaveReqVO;
|
||||
import com.cf.imes.module.system.controller.admin.process.vo.process.ProcessRespVO;
|
||||
import com.cf.imes.module.system.dal.dataobject.process.ProcessDO;
|
||||
import com.cf.imes.module.system.dal.mysql.process.ProcessMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
import javax.annotation.Resource;
|
||||
@@ -48,7 +47,7 @@ public class ProcessGroupServiceImpl implements ProcessGroupService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateProcessGroup(ProcessListSaveReqVO updateReqVO) {
|
||||
public void updateProcessGroup(ProcessGroupSaveReqVO updateReqVO) {
|
||||
// 校验存在
|
||||
validateProcessGroupExists(updateReqVO.getId());
|
||||
// 获取items
|
||||
|
||||
Reference in New Issue
Block a user