生产工序代码-查询生产单工序组状态代码修改

This commit is contained in:
liuzhaotian
2024-04-30 15:07:56 +08:00
parent 786038688c
commit 2e48b02237
4 changed files with 62 additions and 30 deletions
@@ -3,17 +3,18 @@ package com.cf.imes.module.manage.controller.admin.query.vo.productionStatus;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.cf.imes.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
import static com.cf.imes.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@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;
@@ -26,9 +27,11 @@ public class ProductionGroupVO {
@Schema(description = "工序负责人", requiredMode = Schema.RequiredMode.REQUIRED, example = "cfy_cf")
private String manager;
@Schema(description = "加工时间", requiredMode = Schema.RequiredMode.REQUIRED)
private LocalDateTime processDate;
@Schema(description = "排单号", requiredMode = Schema.RequiredMode.REQUIRED, example = "cfy_cf")
private String planNo;
@Schema(description = "加工时间", requiredMode = Schema.RequiredMode.REQUIRED)
private String processDate;
@@ -7,6 +7,7 @@ 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.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.ProductionGroupVO;
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.OrderProcessStepNDO;
@@ -39,20 +40,16 @@ public interface ProcessStepMapper extends BaseMapperX<OrderProcessStepNDO> {
void updateStatusById(@Param("id") Long id, @Param("status") Boolean status);
default List<OrderProcessStepNDO> selectProducitonList(Long orderNo) {
return selectList(new LambdaQueryWrapperX<OrderProcessStepNDO>()
.eqIfPresent(OrderProcessStepNDO::getOrderId, orderNo));
}
// default List<OrderProcessStepNDO> selectProducitonList(Long orderNo) {
// return selectList(new LambdaQueryWrapperX<OrderProcessStepNDO>()
// .eqIfPresent(OrderProcessStepNDO::getOrderId, orderNo));
//
// }
List<ProductionGroupVO> selectProducitonList(@Param("orderNo") Long orderNo);
default List<OrderProcessStepNDO> selectStepList(OrderProStepReqVO reqVO, Boolean status) {
return selectList(new LambdaQueryWrapperX<OrderProcessStepNDO>()
.eqIfPresent(OrderProcessStepNDO::getId,reqVO.getProcessStepId())
.eqIfPresent(OrderProcessStepNDO::getStatus, status)
.eqIfPresent(OrderProcessStepNDO::getOrderId, reqVO.getOrderId()));
}
List<PriceRateReqVO> selectSalaryList(PriceRatePageReqVO pageReqVO);
@@ -1,12 +1,10 @@
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;
@@ -14,7 +12,6 @@ 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;
@@ -28,7 +25,9 @@ import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.util.List;
import java.util.stream.Collectors;
import static com.sun.xml.bind.WhiteSpaceProcessor.replace;
@Service
@Validated
@@ -70,16 +69,10 @@ public class ProductionStatusServiceImpl implements ProductionStatusService {
@Override
public List<ProductionGroupVO> selectProduction(Long orderNo) {
List<OrderProcessStepNDO> orderProcessStepNDOS = processStepMapper.selectProducitonList(orderNo);
List<ProductionGroupVO> productionGroupVOS = 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);
for (int i = 1; i < productionGroupVOS.size(); i++) {
productionGroupVOS.get(i).setGroupName(null);
}
return productionGroupVOS;
@@ -110,9 +110,48 @@
group by name,piece_rate,piece_type,creator;
</select>
<resultMap id="ProductionGroupMap" type="com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.ProductionGroupVO">
<result property="groupName" column="groupName"/>
<result property="name" column="name"/>
<result property="status" column="status"/>
<result property="manager" column="manager"/>
<result property="planNo" column="planNo"/>
<result property="processDate" column="updateTime"/>
</resultMap>
<select id="selectProducitonList"
resultMap="ProductionGroupMap"
parameterType="java.lang.Long">
select ops.name as name,
ops.status as status,
ops.manager as manager,
(CASE
WHEN ops.status =true THEN ops.update_time
ELSE ops.update_time = null END) as updateTime,
op.plan_no as planNo,
opsi.group_name as groupName
from order_process_step ops
join order_process_step_item opsi on ops.id = opsi.process_step_id
join order_plan op on ops.order_id = op.order_nos
where ops.order_id = #{orderNo}
ORDER BY
CASE
WHEN updateTime IS NOT NULL THEN 0 -- 符合条件的情况,将其排在前面
ELSE 1 -- 不符合条件的情况,将其排在后面
END,
-- 如果 updateTime 不为空,按照 updateTime 进行排序
CASE
WHEN updateTime IS NOT NULL THEN updateTime
ELSE ops.update_time
END;
</select>
</mapper>