生产工序-查询-分堆-打包代码2.0

This commit is contained in:
liuzhaotian
2024-04-08 14:25:48 +08:00
parent 443312552f
commit 2112536aeb
38 changed files with 681 additions and 247 deletions
@@ -40,7 +40,7 @@ public class GroupingController {
@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));
@@ -56,7 +56,7 @@ public class GroupingController {
@Operation(summary = "查看订单的板材信息(未加入包裹的板材信息)")
@PreAuthorize("@ss.hasPermission('manage:grouping:query')")
public CommonResult<PageResult<OrderPlateListRespVO>> notJoinedGroupingPlateList(@Valid OrderModuleReqVO reqVO) {
//
return success(groupingService.notJoinedGroupingPlateList(reqVO));
}
@@ -127,7 +127,7 @@ public class GroupingController {
@GetMapping("/export")
/* @GetMapping("/export")
@Operation(summary = "查看订单的板材信息(已将加入包裹的板材信息)")
@PreAuthorize("@ss.hasPermission('manage:grouping:export')")
public void exportData(@Valid ExportJsonReqVO reqVO) {
@@ -136,7 +136,7 @@ public class GroupingController {
}
}*/
@@ -19,8 +19,6 @@ import static com.cf.imes.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH
@ToString(callSuper = true)
public class OrderPageReqVO extends PageParam {
@Schema(description = "工序 id")
private Long id;
@Schema(description = "生产单号")
private Long orderNo;
@@ -34,6 +32,10 @@ public class OrderPageReqVO extends PageParam {
@Schema(description = "地址")
private String address;
@Schema(description = "经销商")
private String dealer;
@Schema(description = "开始时间",requiredMode = Schema.RequiredMode.REQUIRED)
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
private LocalDateTime[] startTime;
@@ -42,6 +44,6 @@ public class OrderPageReqVO extends PageParam {
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
private LocalDateTime[] endTime;
@Schema(description = "订单状态",requiredMode = Schema.RequiredMode.REQUIRED, example = "false")
@Schema(description = "订单状态-默认全都显示",requiredMode = Schema.RequiredMode.REQUIRED)
private List<Long> statusList;
}
@@ -4,7 +4,7 @@ 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")
@Schema(description = "管理后台 - 生产单件表 Response VO")
@Data
public class OrderPlateListRespVO {
@@ -3,18 +3,14 @@ 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.process.vo.*;
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.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
@@ -42,7 +38,7 @@ public class ProductionProcessController {
@GetMapping("/page")
@Operation(summary = "获得生产工序分页")
@Operation(summary = "查看生产工序分页")
@PreAuthorize("@ss.hasPermission('manage:process:query')")
public CommonResult<PageResult<ProcessRespVO>> getUserPage(@Valid ProcessPageReqVO pageReqVO) {
@@ -54,20 +50,22 @@ public class ProductionProcessController {
@GetMapping("/select")
@Operation(summary = "根据工序号获得生产工序下的加工项")
@Operation(summary = "根据工序号查看生产工序下的加工项")
@PreAuthorize("@ss.hasPermission('manage:process:query')")
public CommonResult<List<OrderPorcessStepItemVO>> selectProcess(@Valid OrderProcessReqVO reqVO){
List<OrderPorcessStepItemVO> orderProcessById = productionProcessService.getOrderProcessById(reqVO);
public CommonResult<List<OrderProcessStepItemVO>> selectProcess(@Valid OrderProcessReqVO reqVO){
List<OrderProcessStepItemVO> orderProcessById = productionProcessService.getOrderProcessById(reqVO);
return CommonResult.success(orderProcessById);
}
@PutMapping("/update")
@Operation(summary = "根据工序步骤 id 修改生产工序步骤表的状态")
@Operation(summary = "根据工序明细 ID 修改生产工序明细表的状态")
@Parameter(name = "id", description = "工序明细ID", required = true, example = "1")
@PreAuthorize("@ss.hasPermission('manage:process:update')")
public CommonResult<Boolean> updateProcessStatus(@Valid Long id){
public CommonResult<Boolean> updateProcessStatus(@Valid @RequestParam("id") Long id){
productionProcessService.updateProcessStatus(id);
return success(true);
@@ -76,10 +74,10 @@ public class ProductionProcessController {
@PutMapping("/updateAll")
@Operation(summary = "根据工序 id 修改生产单工序表的状态")
@Operation(summary = "修改生产步骤表的工序状态")
@PreAuthorize("@ss.hasPermission('manage:process:update')")
public CommonResult<Boolean> updateAllProcessStatus(@Valid Long id){
productionProcessService.updateAllProcessStatus(id);
public CommonResult<Boolean> updateAllProcessStatus(@Valid @RequestBody OrderProStepReqVO reqVO){
productionProcessService.updateAllProcessStatus(reqVO);
return success(true);
}
@@ -89,8 +87,9 @@ public class ProductionProcessController {
@GetMapping("/selectPlateName")
@Operation(summary = "查看板材信息的组合名称")
@Parameter(name = "processStepId", description = "工序步骤ID", required = true, example = "1")
@PreAuthorize("@ss.hasPermission('manage:process:query')")
public CommonResult<List<OrderModuleVO>> selectPlateName(@Valid Long processStepId){
public CommonResult<List<OrderModuleVO>> selectPlateName(@Valid @RequestParam("processStepId") Long processStepId){
return success(productionProcessService.selectPlateName(processStepId));
@@ -107,5 +106,4 @@ public class ProductionProcessController {
}
}
@@ -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 = "管理后台 - 修改生产步骤表 ")
@Data
@ToString(callSuper = true)
public class OrderProStepReqVO {
@Schema(description = "工序步骤id", requiredMode = Schema.RequiredMode.REQUIRED)
private Long processStepId;
@Schema(description = "生产单工序ID", requiredMode = Schema.RequiredMode.REQUIRED)
private Long orderProcessId;
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
private Long orderId;
}
@@ -5,20 +5,20 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.ToString;
@Schema(description = "管理后台 - 生产单工序表 order_process_{N} Request VO")
@Schema(description = "管理后台 - 生产单工序明细表 Request VO")
@Data
@ToString(callSuper = true)
public class OrderProcessReqVO {
@Schema(description = "工序 id", requiredMode = Schema.RequiredMode.REQUIRED,example = "12")
private Long id;
@Schema(description = "工序步骤ID", requiredMode = Schema.RequiredMode.REQUIRED,example = "12")
private Long processStepId;
@Schema(description = "订单状态",requiredMode = Schema.RequiredMode.REQUIRED, example = "false")
@Schema(description = "工序状态",requiredMode = Schema.RequiredMode.REQUIRED, example = "false")
private Boolean status;
@Schema(description = "生产单",requiredMode = Schema.RequiredMode.REQUIRED, example = "1234")
private Long orderNo;
@Schema(description = "生产单工序ID",requiredMode = Schema.RequiredMode.REQUIRED, example = "1234")
private Long orderProcessId;
}
@@ -10,10 +10,10 @@ import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class OrderPorcessStepItemVO {
public class OrderProcessStepItemVO {
@Schema(description = "主键")
@Schema(description = "主键-工序明细ID")
private Long id;
@Schema(description = "加工项名称")
@@ -7,7 +7,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
@Schema(description = "管理后台 - 生产单工序表 order_process_{N} 分页 Request VO ")
@Schema(description = "管理后台 - 生产单 分页 Request VO ")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@@ -17,8 +17,8 @@ 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 = "订单状态",requiredMode = Schema.RequiredMode.REQUIRED, example = "false")
private Boolean status;
@Schema(description = "生产单号")
private Long orderNo;
@@ -14,6 +14,8 @@ public class ProcessRespVO {
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "7788")
private Long id;
@Schema(description = "生产单工序步骤ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7788")
private Long processStepId;
@Schema(description = "自定义单号", requiredMode = Schema.RequiredMode.REQUIRED,example = "ABCD")
private String customOrderNo;
@@ -150,12 +150,11 @@ public class ProductionStatusController {
@GetMapping("/queryPackageDetails")
@Operation(summary = "查看包裹详情分页")
@Parameter(name = "packId", description = "包裹Id", required = true)
@PreAuthorize("@ss.hasPermission('manage:query:query')")
public CommonResult<PageResult<PackageDetailsRespVO>> queryPackageDetails(@Valid OrderPackagePageReqVO pageReqVO){
public CommonResult<List<PackageDetailsRespVO>> queryPackageDetails(@Valid @RequestParam("packId") Long packId){
PageResult<PackageDetailsRespVO> packageDetailsRespVOPageResult = productionStatusService.queryPackageDetails(pageReqVO);
return CommonResult.success(packageDetailsRespVOPageResult);
return CommonResult.success(productionStatusService.queryPackageDetails(packId));
}
@@ -13,7 +13,7 @@ import lombok.ToString;
@ToString(callSuper = true)
public class OrderPackagePageReqVO extends PageParam {
@Schema(description = "包裹编号")
@Schema(description = "包裹Id")
private Long packageNo;
/* @Schema(description = "包裹类型")
@@ -12,7 +12,7 @@ public class OrderPackageVO {
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED)
@Schema(description = "主键-包裹ID", requiredMode = Schema.RequiredMode.REQUIRED)
private Long id;
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
@@ -15,10 +15,10 @@ public class PackageDetailsRespVO {
private String cabinetName;
@Schema(description = "板编号", requiredMode = Schema.RequiredMode.REQUIRED)
private String palteNo;
private String plateNo;
@Schema(description = "板名称", requiredMode = Schema.RequiredMode.REQUIRED)
private String palteName;
private String plateName;
@Schema(description = "材料", requiredMode = Schema.RequiredMode.REQUIRED)
private String material;
@@ -18,7 +18,7 @@ public class OrderPlatePageReqVO extends PageParam {
@Schema(description = "生产状态(2:生产中,3:生产完成)", requiredMode = Schema.RequiredMode.REQUIRED, example = "2,3")
@Schema(description = "生产状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "2,3")
private List<Long> statusList;
@@ -1,14 +1,17 @@
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 org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import java.util.Date;
import static com.cf.imes.framework.common.util.date.DateUtils.*;
@Schema(description = "管理后台 - 计件工资查询分页 Request VO")
@Data
@@ -16,29 +19,26 @@ import java.time.LocalDateTime;
@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;
private String startTime;
@Schema(description = "结束时间", requiredMode = Schema.RequiredMode.REQUIRED)
private LocalDateTime endTime;
private String endTime;
@Schema(description = "加工人")
private String creator;
@Schema(description = "工序名称")
private String name;
@Schema(description = "显示零单价(默认不显示)", requiredMode = Schema.RequiredMode.REQUIRED)
@Schema(description = "显示零单价(默认不显示-false)", requiredMode = Schema.RequiredMode.REQUIRED)
private Boolean noShowZero;
}
@@ -0,0 +1,127 @@
package com.cf.imes.module.manage.dal.dataobject.plate;
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("order_plate")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class OrderPlateDO extends BaseDO {
// 板件 ID
@TableId
private Long id;
// 生产单号
private Long orderId;
// 组织 ID
private Long organId;
// 板名称
private String name;
// 自定义板编号
private String plateNo;
// 板类型,0 层板 1 立板 2 背板
private Integer type;
// 商品 ID
private String goodsId;
// 宽度
private Double width;
// 高度
private Double height;
// 厚度
private Double thickness;
// 拆单宽度
private Double splitWidth;
// 拆单高度
private Double splitHeight;
// 拆单厚度
private Double splitThickness;
// 左封边厚度
private Double sealLeft;
// 右封边厚度
private Double sealRight;
// 上封边厚度
private Double sealUp;
// 下封边厚度
private Double sealDown;
// 面积
private Double area;
// 纹路类型,0 正纹 1 可翻转 2 反纹
private Integer texture;
// 孔面类型,0 正面 1 反面 2 侧面
private Integer holeFace;
// 排孔类型,0 正纹 1 反面 2 随意面
private Integer holeArrange;
// 异型孔数量
private Integer unregularPointCount;
// 正面孔数量
private Integer frontHoleCount;
// 背面孔数量
private Integer backHoleCount;
// 侧面孔数量
private Integer sideHoleCount;
// 正面造型量
private Integer frontModelCount;
// 背面造型量
private Integer backModelCount;
// 是否门板
private Boolean isDoor;
// 开门类型,0 无 1 左 2 右 3 上 4 下
private Integer openDoorType;
// 异型偏移 x
private Float offsetX;
// 异型偏移 y
private Float offsetY;
// 是否孤形对角
private Boolean isArcAcross;
// 模块类型 ID
private Long moduleTypeId;
// 排单过滤类型,1 有挖穿造型 2 有挖穿孔 4 有二维刀路 8 可叠
private Integer filterType;
// 备注
private String remark;
}
@@ -12,7 +12,7 @@ import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
*
* @author 晨丰科技
*/
@TableName("plate_n")
@TableName("plate")
@KeySequence("plate_n_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@@ -7,7 +7,7 @@ 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
@TableName(value = "order_process") // 由于 SQL Server 的 system_user 是关键字,所以使用 system_users
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@@ -20,7 +20,7 @@ public class OrderProcessNDO extends BaseDO {
private Long id;
// 生产单号
private Long orderNo;
private Long orderId;
// 工序名
private String name;
@@ -31,5 +31,12 @@ public class OrderProcessNDO extends BaseDO {
// 工序组 id
private Long groupId;
// 板材大小
private Float size;
// 下一工序Id
private Long nextStepId;
}
@@ -8,14 +8,13 @@ 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
@TableName(value = "order_process_step_item", autoResultMap = true) // 由于 SQL Server 的 system_user 是关键字,所以使用 system_users
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class OrderProcessStepItemNDO extends BaseDO{
public class OrderProcessStepItemNDO {
@TableId
@@ -13,7 +13,7 @@ import lombok.NoArgsConstructor;
import java.time.LocalDateTime;
import java.util.Date;
@TableName(value = "order_process_step_n") // 由于 SQL Server 的 system_user 是关键字,所以使用 system_users
@TableName(value = "order_process_step") // 由于 SQL Server 的 system_user 是关键字,所以使用 system_users
@Data
@Builder
@NoArgsConstructor
@@ -24,7 +24,7 @@ public class OrderProcessStepNDO extends BaseDO {
private Long id;
// 生产单号
private Long orderNo;
private Long orderId;
//组织ID
private Long organId;
@@ -28,9 +28,9 @@ public interface OrderPackageMapper extends BaseMapperX<OrderPackageDO> {
default OrderPackageDO selectByPackNo(Long orderNo) {
default OrderPackageDO selectByPackNo(Long packId) {
return selectOne(new LambdaQueryWrapperX<OrderPackageDO>()
.eqIfPresent(OrderPackageDO::getPackageNo, orderNo));
.eqIfPresent(OrderPackageDO::getId, packId));
}
@@ -0,0 +1,23 @@
package com.cf.imes.module.manage.dal.mysql.plate;
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
import com.cf.imes.module.manage.controller.admin.patching.vo.PatchingPlatePageReqVO;
import com.cf.imes.module.manage.dal.dataobject.plate.OrderPlateDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface OrderPlateMapper extends BaseMapperX<OrderPlateDO> {
List<PlateDetailsRespVO> selectPlateDetail(PatchingPlatePageReqVO pageReqVO);
PlateDetailsRespVO selectPlate(@Param("plateId") Long plateId);
}
@@ -22,7 +22,7 @@ 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));
.eqIfPresent(OrderProcessNDO::getOrderId,orderNo));
}
@@ -45,7 +45,7 @@ public interface OrderProcessMapper extends BaseMapperX<OrderProcessNDO> {
}
@Update("UPDATE order_process_n SET status = #{status} WHERE id = #{id}")
@Update("UPDATE order_process SET status = #{status} WHERE id = #{id}")
void updateStatusById(@Param("id") Long id, @Param("status") Boolean status);
@@ -2,8 +2,7 @@ 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.process.vo.*;
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;
@@ -20,9 +19,16 @@ import java.util.List;
public interface ProcessStepItemMapper extends BaseMapperX<OrderProcessStepItemNDO> {
List<ProcessRespVO> selectOrder(ProcessPageReqVO pageReqVO);
List<OrderModuleVO> selectPlateName(Long processStepId);
List<ProcessRespVO> selectOrder(ProcessPageReqVO pageReqVO);
List<OrderProcessStepItemVO> selectItemProcess(OrderProcessReqVO reqVO);
void updateStatus(OrderProStepReqVO reqVO);
}
@@ -1,12 +1,12 @@
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.process.vo.OrderProStepReqVO;
import com.cf.imes.module.manage.controller.admin.process.vo.OrderProcessStepItemVO;
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;
@@ -22,14 +22,6 @@ import java.util.List;
@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>()
@@ -38,32 +30,23 @@ public interface ProcessStepMapper extends BaseMapperX<OrderProcessStepNDO> {
}
@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));
.eqIfPresent(OrderProcessStepNDO::getOrderId, orderNo));
}
List<PriceRateReqVO> selectListByStatus(@Param("collect") List<Long> collect);
default List<OrderProcessStepNDO> selectListBy(PriceRatePageReqVO pageReqVO) {
default List<OrderProcessStepNDO> selectStepList(OrderProStepReqVO reqVO, Boolean status) {
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()));
.eqIfPresent(OrderProcessStepNDO::getId,reqVO.getProcessStepId())
.eqIfPresent(OrderProcessStepNDO::getStatus, status)
.eqIfPresent(OrderProcessStepNDO::getOrderId, reqVO.getOrderId()));
}
List<PriceRateReqVO> selectSalaryList(PriceRatePageReqVO pageReqVO);
}
@@ -5,10 +5,15 @@ 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.pack.vo.PlateDetailsRespVO;
import com.cf.imes.module.manage.controller.admin.patching.vo.PatchingPlatePageReqVO;
import com.cf.imes.module.manage.controller.admin.patching.vo.PatchingPlateRespVO;
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;
import java.util.List;
/**
* 生产单表 order_{N} Mapper
*
@@ -37,6 +42,7 @@ public interface ProductionProcessMapper extends BaseMapperX<OrderDO> {
.eqIfPresent(OrderDO::getCustomOrderNo,pageReqVO.getCustomOrderNo())
.likeIfPresent(OrderDO::getCustomer,pageReqVO.getCustomer())
.likeIfPresent(OrderDO::getAddress,pageReqVO.getAddress())
.likeIfPresent(OrderDO::getDealer,pageReqVO.getDealer())
.and(wrapper -> {
for (Long status : pageReqVO.getStatusList()) {
wrapper.or().eq(OrderDO::getStatus, status);
@@ -47,4 +53,7 @@ public interface ProductionProcessMapper extends BaseMapperX<OrderDO> {
List<PatchingPlateRespVO> selectPatchingPlate(PatchingPlatePageReqVO pageReqVO);
}
@@ -68,6 +68,7 @@ public class GroupingServiceImpl implements GroupingService{
@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);
@@ -2,12 +2,8 @@ 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.process.vo.*;
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;
@@ -20,18 +16,18 @@ public interface ProductionProcessService {
// 查询工序订单下的加工项的详情
List<OrderPorcessStepItemVO> getOrderProcessById(OrderProcessReqVO reqVO);
List<OrderProcessStepItemVO> getOrderProcessById(OrderProcessReqVO reqVO);
// 修改生产单的工序状态
// 修改工序明细表的工序状态
void updateProcessStatus(Long id);
// 修改生产单工序的全部状态
void updateAllProcessStatus(Long id);
// 修改生产步骤表的工序状态
void updateAllProcessStatus(OrderProStepReqVO reqVO);
// 查看板材信息的组合名称
@@ -4,15 +4,9 @@ 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.process.vo.*;
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.OrderProcessStepItemNDO;
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;
@@ -27,6 +21,7 @@ import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.util.List;
import java.util.stream.Collectors;
import static com.baomidou.mybatisplus.core.toolkit.Wrappers.update;
@@ -40,9 +35,6 @@ import static com.baomidou.mybatisplus.core.toolkit.Wrappers.update;
@Validated
public class ProductionProcessServiceImpl implements ProductionProcessService {
@Resource
private ProductionProcessMapper productionProcessMapper;
@Resource
private ProcessStepMapper processStepMapper;
@@ -63,55 +55,56 @@ public class ProductionProcessServiceImpl implements ProductionProcessService {
PageHelper.startPage(pageReqVO.getPageNo(), pageReqVO.getPageSize());
List<ProcessRespVO> processRespVOS = processStepItemMapper.selectOrder(pageReqVO);
// 判断生产步骤表在传入的状态查询后是否为空
if(processRespVOS.isEmpty()){
return null;
}
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) {
public List<OrderProcessStepItemVO> getOrderProcessById(OrderProcessReqVO reqVO) {
OrderPorcessStepItemVO orderPorcessStepItemVO = new OrderPorcessStepItemVO();
// 获取工序组 id
Long groupId = orderProcessMapper.queryProcess(reqVO.getId(), reqVO.getOrderNo()).getGroupId();
List<OrderProcessStepItemVO> orderProcessStepItemVOS = processStepItemMapper.selectItemProcess(reqVO);
// 获取加工的工序项
List<OrderProcessStepNDO> stepItemList = processStepMapper.getStepItemList(reqVO.getOrderNo(), reqVO.getStatus());
// 判断生产明细表在传入的状态查询后是否为空
if(orderProcessStepItemVOS.isEmpty()){
// 修改生产步骤表的工序状态
processStepMapper.updateStatusById(reqVO.getProcessStepId(),ProcessingStatusEnum.PROCESSED.getStatus());
return null;
}
// 将工序组 id 加入
orderPorcessStepItemVO.setOrderProcessId(groupId);
// 类型转换并返回
return BeanUtils.toBean(stepItemList, OrderPorcessStepItemVO.class);
return orderProcessStepItemVOS;
}
// 修改工序步骤表的工序状态
// 修改工序明细表的工序状态
@Override
public void updateProcessStatus(Long id) {
// 根据步骤 id 查询当前生产单工序的状态
OrderProcessStepNDO orderProcessStepNDO = processStepMapper.selectStatusById(id);
OrderProcessStepItemNDO orderProcessStepItemNDO = processStepItemMapper.selectById(id);
// 未加工状态
Boolean status = orderProcessStepNDO.getStatus();
Boolean status = orderProcessStepItemNDO.getStatus();
// 未加工状态才可进行加工
if (ProcessingStatusEnum.PROCESSED.getStatus().equals(status)) {
@@ -119,16 +112,18 @@ public class ProductionProcessServiceImpl implements ProductionProcessService {
throw ServiceExceptionUtil.exception(ErrorCodeConstants.UNPROCESSED_BEFORE_PROCESSING);
}
// 更新加工状态
processStepMapper.updateStatusById(id, ProcessingStatusEnum.PROCESSED.getStatus());
orderProcessStepItemNDO.setStatus(ProcessingStatusEnum.PROCESSED.getStatus());
processStepItemMapper.updateById(orderProcessStepItemNDO);
// 判断生产单工序表的工序状态是否还有未加工
// 获取当前工序 id 下的所有生产单工序步骤表
List<OrderProcessStepNDO> stepItemList = processStepMapper.getStepItemList(orderProcessStepNDO.getOrderNo(), ProcessingStatusEnum.RAW.getStatus());
// List<OrderProcessStepNDO> stepItemList = processStepMapper.getStepItemList(orderProcessStepNDO.getOrderNo(), ProcessingStatusEnum.RAW.getStatus());
// 集合剩余 1 ,代表当前工序步骤已全部加工,修改生产单工序表的状态为已加工
if (stepItemList.size() == 1) {
/* if (stepItemList.size() == 1) {
orderProcessMapper.updateStatusById(orderProcessStepNDO.getOrderProcessId(), ProcessingStatusEnum.PROCESSED.getStatus());
return;
}
@@ -138,30 +133,49 @@ public class ProductionProcessServiceImpl implements ProductionProcessService {
if (processStepNDO.getStatus().equals(ProcessingStatusEnum.RAW.getStatus())) {
return;
}
}
}*/
}
// 修改生产单工序的状态
// 修改生产步骤表的工序状态
@Override
public void updateAllProcessStatus(Long id) {
public void updateAllProcessStatus(OrderProStepReqVO reqVO) {
// 查看当前生产单的工序状态
Boolean status = orderProcessMapper.selectStatusById(id).getStatus();
OrderProcessStepNDO orderProcessStepNDO = processStepMapper.selectStatusById(reqVO.getProcessStepId());
// 未加工状态
Boolean status = orderProcessStepNDO.getStatus();
// 未加工状态才可进行加工
if (ProcessingStatusEnum.PROCESSED.getStatus().equals(status)) {
throw ServiceExceptionUtil.exception(ErrorCodeConstants.UNPROCESSED_BEFORE_PROCESSING);
}
// 更新加工状态
orderProcessMapper.updateStatusById(id, ProcessingStatusEnum.PROCESSED.getStatus());
// 修改生产单工序步骤表的状态为已加工
orderProcessStepNDO.setStatus(ProcessingStatusEnum.PROCESSED.getStatus());
processStepMapper.updateById(orderProcessStepNDO);
// 修改生产单明细表的生产状态
processStepItemMapper.updateStatus(reqVO);
// 查询当前工序步骤表的工序状态是否还有未加工
List<OrderProcessStepNDO> orderProcessStepNDOS = processStepMapper.selectStepList(reqVO, ProcessingStatusEnum.RAW.getStatus());
// 如果为空,修改工序表的加工状态为已加工
if(orderProcessStepNDOS.isEmpty()){
orderProcessMapper.updateStatusById(orderProcessStepNDO.getOrderProcessId(),ProcessingStatusEnum.PROCESSED.getStatus());
}
}
// 查看板材信息的组合名称
@Override
public List<OrderModuleVO> selectPlateName(Long processStepId) {
@@ -50,7 +50,7 @@ public interface ProductionStatusService {
// 查看包裹详情
PageResult<PackageDetailsRespVO> queryPackageDetails(OrderPackagePageReqVO pageReqVO);
List<PackageDetailsRespVO> queryPackageDetails(Long packId);
// 打印订单
@@ -119,30 +119,20 @@ public class ProductionStatusServiceImpl implements ProductionStatusService {
@Override
public PageResult<PriceRateReqVO> getSalaryPage(PriceRatePageReqVO pageReqVO) {
// todo 功能完成,数据库数据不完整,测试部分功能完成
PageHelper.startPage(pageReqVO.getPageNo(), pageReqVO.getPageSize());
List<PriceRateReqVO> priceRateReqVOS = processStepMapper.selectSalaryList(pageReqVO);
List<OrderProcessStepNDO> orderProcessStepNDOS = processStepMapper.selectListBy(pageReqVO);
if (pageReqVO.getNoShowZero()) {
for (OrderProcessStepNDO orderProcessStepNDO : orderProcessStepNDOS) {
if (orderProcessStepNDO.getPieceRate() == 0) {
orderProcessStepNDOS.remove(orderProcessStepNDO);
// 判断是否显示计件工资为0的工序
if(pageReqVO.getNoShowZero().equals(true)){
for (PriceRateReqVO priceRateReqVO : priceRateReqVOS) {
if(priceRateReqVO.getPriceRate() == 0){
priceRateReqVOS.remove(priceRateReqVO);
}
}
}
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;
return PageHelperUtil.convertToPageResult(pageInfo);
}
@@ -175,30 +165,24 @@ public class ProductionStatusServiceImpl implements ProductionStatusService {
// 查看包裹详情
@Override
public PageResult<PackageDetailsRespVO> queryPackageDetails(OrderPackagePageReqVO pageReqVO) {
public List<PackageDetailsRespVO> queryPackageDetails(Long packId) {
OrderPackageDO orderPackageDO = orderPackageMapper.selectByPackNo(pageReqVO.getPackageNo());
OrderPackageDO orderPackageDO = orderPackageMapper.selectByPackNo(packId);
// 查看配件包裹
if(orderPackageDO.getType() == 1 && orderPackageDO.getType() == 2){
PageHelper.startPage(pageReqVO.getPageNo(), pageReqVO.getPageSize());
if(orderPackageDO.getType() == 1 || orderPackageDO.getType() == 2){
//
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;
return packageDetailsRespVOS;
}
// 查看板材包裹
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;
return packageDetailsRespVOS;
}
@@ -0,0 +1,128 @@
<?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.plate.OrderPlateMapper">
<resultMap id="PlateDetailMap" type="com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO">
<result property="orderId" column="orderId"/>
<result property="cabinetName" column="cabinetName"/>
<result property="plateNo" column="plateNo"/>
<result property="plateName" column="plateName"/>
<result property="height" column="height"/>
<result property="width" column="width"/>
<result property="thickness" column="thickness"/>
<result property="area" column="area"/>
<result property="remark" column="remark"/>
<result property="customOrderId" column="customOrderId"/>
<result property="customer" column="customer"/>
<result property="address" column="address"/>
<result property="specialShaped" column="specialShaped"/>
<result property="profiling" column="profiling"/>
<result property="rowHole" column="rowHole"/>
<result property="plateCombinationName" column="name"/>
<result property="material" column="material"/>
<result property="color" column="color"/>
</resultMap>
<select id="selectPlateDetail"
resultMap="PlateDetailMap"
parameterType="com.cf.imes.module.manage.controller.admin.patching.vo.PatchingPlatePageReqVO">
select
o.id as orderId,
ob.name as cabinetName,
op.id as plateNo,
op.name as plateName,
op.height as height,
op.width as width,
op.thickness as thickness,
op.area as area,
op.remark as remark,
o.custom_order_no as customOrderId,
o.customer as customer,
o.address as address,
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,
CONCAT(
TRIM(TRAILING '.' from TRIM(TRAILING '0' FROM p.thickness)),'mm-',p.material,'-',p.color) AS name,
p.material as material,
p.color as color
from order_plate op
join order_item oi on op.id = oi.plate_id
join order_body ob on oi.body_id = ob.id
join `order` o on op.order_id = o.id
join plate p on op.goods_id = p.goods_id
<where>
<if test="orderNo != null">
and op.order_id = #{orderNo}
</if>
<if test="customOrderNo != null">
and o.custom_order_no = #{customOrderNo}
</if>
<if test="groupId != null">
and oi.body_id = #{groupId}
</if>
<if test="customer != null">
and o.customer = #{customer}
</if>
<if test="address != null">
and o.address = #{address}
</if>
<if test="startTime != null and endTime != null">
and op.update_time between #{startTime} and #{endTime}
</if>
</where>
</select>
<select id="selectPlate"
resultMap="PlateDetailMap">
select
o.id as orderId,
ob.name as cabinetName,
op.id as plateNo,
op.name as plateName,
op.height as height,
op.width as width,
op.thickness as thickness,
op.area as area,
op.remark as remark,
o.custom_order_no as customOrderId,
o.customer as customer,
o.address as address,
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,
CONCAT(
TRIM(TRAILING '.' from TRIM(TRAILING '0' FROM p.thickness)),'mm-',p.material,'-',p.color) AS name,
p.material as material,
p.color as color
from order_plate op
join order_item oi on op.id = oi.plate_id
join order_body ob on oi.body_id = ob.id
join `order` o on op.order_id = o.id
join plate p on op.goods_id = p.goods_id
where op.id = #{plateId}
</select>
</mapper>
@@ -18,6 +18,7 @@
<resultMap id="OrderMap" type="com.cf.imes.module.manage.controller.admin.process.vo.ProcessRespVO">
<result property="id" column="id"/>
<result property="processStepId" column="processStepId"/>
<result property="customOrderNo" column="customOrderNo"/>
<result property="customer" column="customer"/>
<result property="address" column="address"/>
@@ -30,10 +31,11 @@
select distinct
ops.order_id as id,
ops.id as processStepId,
o.custom_order_no as customOrderNo,
o.customer as customer,
o.address as address,
o.status as status
ops.status as status
from order_process_step ops
join `order` o on ops.order_id = o.id
@@ -60,4 +62,45 @@
</where>
</select>
<resultMap id="ItemMap" type="com.cf.imes.module.manage.controller.admin.process.vo.OrderProcessStepItemVO">
<result property="id" column="id"/>
<result property="stepName" column="processName"/>
<result property="name" column="name"/>
<result property="orderProcessId" column="orderProcessId"/>
</resultMap>
<select id="selectItemProcess"
resultMap="ItemMap"
parameterType="com.cf.imes.module.manage.controller.admin.process.vo.OrderProcessReqVO">
select opsi.name as name,
opsi.id as id,
ops.Name as processName,
op.group_id as orderProcessId
from order_process_step_item opsi
join order_process op on opsi.order_process_id = op.id
join order_process_step ops on opsi.process_step_id = ops.id
where opsi.status = #{status} and opsi.process_step_id= #{processStepId} and ops.order_process_id = #{orderProcessId};
</select>
<update id="updateStatus"
parameterType= "com.cf.imes.module.manage.controller.admin.process.vo.OrderProStepReqVO">
update order_process_step_item set status = true where process_step_id = #{processStepId} and order_process_id = #{orderProcessId};
</update>
</mapper>
@@ -3,8 +3,18 @@
<mapper namespace="com.cf.imes.module.manage.dal.mysql.process.ProcessStepMapper">
<update id="updateStatusById">
UPDATE order_process_step SET status = #{status} WHERE id = #{id}
</update>
<resultMap id="priceResultMap" type="com.cf.imes.module.manage.controller.admin.query.vo.salary.PriceRateReqVO">
<result property="name" column="process_name"/>
<result property="name" column="name"/>
<result property="priceRate" column="piece_rate"/>
<result property="num" column="total_piece_num"/>
<result property="priceType" column="piece_type"/>
@@ -12,39 +22,45 @@
<result property="manager" column="creator"/>
</resultMap>
<select id="selectListByStatus"
parameterType="java.util.List"
resultMap="priceResultMap">
<select id="selectSalaryList"
resultMap="priceResultMap"
parameterType="com.cf.imes.module.manage.controller.admin.query.vo.salary.PriceRatePageReqVO">
select ops.name as name ,
ops.piece_rate as piece_rate ,
ops.piece_type as piece_type,
ops.creator as creator,
SUM(CASE
WHEN ops.piece_type = 1 THEN ops.piece_rate
ELSE ROUND((op.size / ops.piece_rate), 2) * ops.piece_rate
END) AS total_piece_rate,
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;
SUM(CASE
WHEN ops.piece_type = 1 THEN 1
ELSE ROUND((op.size / ops.piece_rate), 2)
END) AS total_piece_num
from order_process_step ops
join order_process op on ops.order_process_id = op.id
<where>
<if test="creator != null">
and ops.creator = #{creator}
</if>
<if test="name != null">
and ops.name = #{name}
</if>
<if test="startTime != null and endTime != null">
and ops.update_time between #{startTime} and #{endTime}
</if>
</where>
and ops.status = true
/**/
group by name,piece_rate,piece_type,creator;
</select>
</mapper>
@@ -0,0 +1,79 @@
<?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.ProductionProcessMapper">
<resultMap id="PatchingPlateMap" type="com.cf.imes.module.manage.controller.admin.patching.vo.PatchingPlateRespVO">
<result property="groupId" column="groupId"/>
<result property="orderId" column="orderId"/>
<result property="customOrderId" column="customOrderId"/>
<result property="customer" column="customer"/>
<result property="address" column="address"/>
<result property="orderStatus" column="orderStatus"/>
<result property="plateName" column="plateName"/>
<result property="plateNum" column="plateNum"/>
<result property="thickness" column="thickness"/>
<result property="material" column="material"/>
<result property="color" column="color"/>
</resultMap>
<select id="selectPatchingPlate"
resultMap="PatchingPlateMap"
parameterType="com.cf.imes.module.manage.controller.admin.patching.vo.PatchingPlatePageReqVO">
select
oi.body_id as groupId,
o.id as orderId,
o.custom_order_no as customOrderId,
o.customer as customer,
o.address as address,
o.status as orderStatus,
oi.num as plateNum,
<![CDATA[
CONCAT(
TRIM(TRAILING '.' from TRIM(TRAILING '0' FROM p.thickness)),'mm-',p.material,'-',p.color) AS plateName,
]]>
p.thickness as thickness,
p.material as material,
p.color as color
from `order` o
join order_item oi on o.id = oi.order_id
join order_plate op on oi.plate_id = op.id
join plate p on op.goods_id = p.goods_id
<where>
<if test="orderNo != null">
and o.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>
<if test="statusList != null">
and o.status in
<foreach item="id" collection="statusList" open="(" separator="," close=")">
#{id}
</foreach>
</if>
<if test="startTime != null and endTime != null">
and o.update_time between #{startTime} and #{endTime}
</if>
</where>
group by groupId,orderId,customOrderId,customer,address,orderStatus,plateNum,plateName,thickness,material,color
</select>
</mapper>
@@ -6,8 +6,8 @@
<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="plateNo" column="palteId"/>
<result property="plateName" column="plateName"/>
<result property="material" column="plateMaterial"/>
<result property="color" column="palteColor"/>
<result property="width" column="plateWidth"/>
@@ -205,30 +205,20 @@
</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 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>
</update>
@@ -7,7 +7,7 @@
<result property="partsName" column="name"/>
<result property="model" column="model"/>
<result property="spec" column="spec"/>
<result property="num" column="name_count"/>
<result property="num" column="num"/>
<result property="unit" column="unit"/>
<result property="brand" column="brand"/>
<result property="factory" column="factory"/>
@@ -18,14 +18,19 @@
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 op.name as name,
op.model as model,
op.spec as spec,
op.unit as unit,
op.brand as brand,
op.material as material,
op.factory as factory,
oi.num as num
from order_package_n opn
join order_item oi on opn.id = oi.package_id
join order_parts op on oi.parts_id = op.id
where opn.id = #{packageNo}
</select>
@@ -72,9 +72,8 @@ 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);*/
return null;
processGroupService.updateProcessGroup(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")