Merge remote-tracking branch 'origin/master'

liweidong
maxiangong 3 days ago
commit 4d823c0014
  1. 9
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/pojo/entity/YieldOrder.java
  2. 15
      blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/YieldOrderMapper.xml
  3. 1
      blade-service/blade-desk/src/main/java/org/springblade/desk/order/mapper/YieldPlanMapper.xml
  4. 83
      blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/YieldOrderServiceImpl.java
  5. 42
      blade-service/blade-desk/src/main/java/org/springblade/desk/process/mapper/ProjectMilestoneMapper.xml
  6. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/process/pojo/entity/FmProjectMilestoneEntity.java
  7. 24
      blade-service/blade-desk/src/main/java/org/springblade/desk/process/pojo/vo/FmProjectMilestoneVO.java
  8. 1
      blade-service/blade-desk/src/main/java/org/springblade/desk/process/service/impl/FmProjectMilestoneServiceImpl.java
  9. 1
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpMesRbPacturnrecordMapper.xml
  10. 2
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpMesRbPkMapper.xml
  11. 2
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpMesRbPurtosoMapper.xml
  12. 2
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpMesRbSjsoMapper.xml
  13. 2
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpMesRbSodelrecwxMapper.xml
  14. 2
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpMesRbSodelreczgMapper.xml
  15. 2
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpMesRbWxpromotionMapper.xml
  16. 1
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpPartoplinkFirseqMapper.xml
  17. 4
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/impl/ErpMesRbWoServiceImpl.java
  18. 4
      blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/mapper/YieldOrderMapper.xml

@ -481,4 +481,13 @@ public class YieldOrder extends BaseEntity {
@JsonSerialize(nullsUsing = NullSerializer.class)
private Double quota2;
@TableField(exist = false)
private String releaseDateStart;
@TableField(exist = false)
private String releaseDateEnd;
@TableField(exist = false)
private String receiveUserName;
}

@ -17,9 +17,10 @@
<select id = "selectPage" resultType = "org.springblade.desk.order.pojo.entity.YieldOrder">
SELECT <include refid="baseCommonFields" />
SELECT <include refid="baseCommonFields" />,a.real_name as "receiveUserName"
FROM MES_YIELD_ORDER yo
WHERE IS_DELETED = 0
left join blade_user a on yo.receive_user = a.id
WHERE yo.IS_DELETED = 0
<if test = "yieldTypeList != null and yieldTypeList.size() > 0">
AND YIELD_TYPE IN
<foreach collection = "yieldTypeList" item = "yieldType" open = "(" separator = "," close = ")">
@ -55,6 +56,16 @@
</if>
<if test = "entity.status != null and entity.status != ''">
AND status = #{entity.status}
</if>
<if test = "entity.receiveStatus != null and entity.receiveStatus != ''">
AND receive_status = #{entity.receiveStatus}
</if>
<if test = "entity.releaseDateStart != null and entity.releaseDateStart != ''">
AND release_date <![CDATA[ >= ]]> to_date(concat(#{entity.releaseDateStart},' 00:00:00'),'YYYY-MM-DD HH24:MI:SS')
</if>
<if test = "entity.releaseDateEnd != null and entity.releaseDateEnd != ''">
AND release_date <![CDATA[ <= ]]> to_date(concat(#{entity.releaseDateEnd},' 23:59:59'),'YYYY-MM-DD HH24:MI:SS')
</if>
order by release_date desc
</select>

@ -26,6 +26,7 @@
<if test = "entity.status != null and entity.status != ''">
AND status = #{entity.status}
</if>
ORDER BY RELEASE_DATE DESC
</select>
<select id="getMaxPriority" resultType="java.lang.Long">
select nvl(max(a.priority),1) as vPriority

@ -9,7 +9,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springblade.common.constant.CommonConstant;
@ -37,7 +36,10 @@ import org.springblade.desk.order.constant.YieldOrderConst;
import org.springblade.desk.order.mapper.MoldDemandMapper;
import org.springblade.desk.order.mapper.YieldOrderMapper;
import org.springblade.desk.order.mapper.YieldPlanMapper;
import org.springblade.desk.order.pojo.entity.*;
import org.springblade.desk.order.pojo.entity.MoldDemand;
import org.springblade.desk.order.pojo.entity.YieldOrder;
import org.springblade.desk.order.pojo.entity.YieldOrderCraft;
import org.springblade.desk.order.pojo.entity.YieldPlan;
import org.springblade.desk.order.pojo.enums.MoldDemandEnum;
import org.springblade.desk.order.pojo.enums.YieldOrderEnum;
import org.springblade.desk.order.pojo.vo.LineMemoVo;
@ -48,7 +50,9 @@ import org.springblade.desk.produce.mapper.WorkOrderMapper;
import org.springblade.desk.produce.pojo.entity.WorkOrder;
import org.springblade.erpdata.feign.IErpYieldOrderClient;
import org.springblade.scheduling.pojo.entity.QualityGradeEntity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -66,31 +70,55 @@ import java.util.stream.Collectors;
*
* @author BladeX
*/
@RequiredArgsConstructor
@Slf4j
@Service
public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, YieldOrder> implements IYieldOrderService {
private final IYieldOrderCraftService yieldOrderCraftService;
@Autowired
private IYieldOrderCraftService yieldOrderCraftService;
private final IDsPartService dsPartService;
@Autowired
private IDsPartService dsPartService;
private final IDsCraftService dsCraftService;
private final IDsProcessService dsProcessService;
private final WorkOrderMapper workOrderMapper;
@Autowired
private IDsCraftService dsCraftService;
private final YieldPlanMapper yieldPlanMapper;
@Autowired
private IDsProcessService dsProcessService;
private final IErpYieldOrderClient yieldOrderClient;
private final IPrYieldOrderService yieldOrderService;
@Autowired
private WorkOrderMapper workOrderMapper;
private final IQualityGradeService qualityGradeService;
@Autowired
private YieldPlanMapper yieldPlanMapper;
private final IDsPartRelationService partRelationService;
private final IDsPartVersionService partVersionService;
private final MoldDemandMapper moldDemandMapper;
private final IPlateGoodsRecordService plateGoodsRecordService;
private final IWorkCenterService workCenterService;
@Autowired
private IErpYieldOrderClient yieldOrderClient;
@Autowired
private IPrYieldOrderService yieldOrderService;
@Autowired
private IQualityGradeService qualityGradeService;
@Autowired
private IDsPartRelationService partRelationService;
@Autowired
private IDsPartVersionService partVersionService;
@Autowired
private MoldDemandMapper moldDemandMapper;
@Autowired
private IPlateGoodsRecordService plateGoodsRecordService;
@Autowired
private IWorkCenterService workCenterService;
@Lazy
@Autowired
private IDsTaskingService dsTaskingService;
@Value("${business.oldMes.url}")
private String oldMesUrl;
@ -503,10 +531,13 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie
this.updateById(yieldOrder);
return Boolean.FALSE;
}
yieldOrder.setReceiveTime(new Date());
yieldOrder.setReceiveUser(AuthUtil.getUserId());
yieldOrder.setReceiveStatus(YieldOrderEnum.RECEIVE_STATUS_YES.getCode());
if(yieldOrder.getYieldType() != YieldOrderEnum.YIELD_TYPE_2.getCode()){
yieldOrder.setStatus(YieldOrderEnum.STATUS_APS.getCode());
this.updateById(yieldOrder);
}
this.updateById(yieldOrder);
return Boolean.TRUE;
}
@ -1277,12 +1308,18 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie
*/
private Integer judgeRank(YieldOrder yieldOrder) {
DsPartEntity part = dsPartService.selectDsPartByPatCodeAndVersion(yieldOrder.getPartCode(), yieldOrder.getPartVersion());
//如果零件信息为null,调用
if(part == null){
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_CRAFT.getCode());
yieldOrder.setValidationTime(DateUtil.now());
yieldOrder.setValidationMomo("未查询到零件信息!");
this.updateById(yieldOrder);
return null;
log.info("零件信息为null,从老mes同步零件信息");
boolean result = dsTaskingService.syncPart(null,null,yieldOrder.getPartCode());
if(!result){
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_CRAFT.getCode());
yieldOrder.setValidationTime(DateUtil.now());
yieldOrder.setValidationMomo("未查询到零件信息!");
this.updateById(yieldOrder);
return null;
}
part = dsPartService.selectDsPartByPatCodeAndVersion(yieldOrder.getPartCode(), yieldOrder.getPartVersion());
}
// 工作订单备注中包含大小写的HTBY时,执行二级工艺
if (yieldOrder.getYpMemo() != null && yieldOrder.getYpMemo().toLowerCase(Locale.ROOT).contains("htby")) {

@ -37,8 +37,46 @@
</resultMap>
<select id="selectFmProjectMilestonePage" resultMap="fmProjectMilestoneResultMap">
select * from FM_PROJECT_MILESTONE where is_deleted = 0
<select id="selectFmProjectMilestonePage" resultType="org.springblade.desk.process.pojo.vo.FmProjectMilestoneVO">
SELECT
a.*,
b.pa_code,
b.project_name,
b.project_head,
b.approval_status,
b.project_start_time,
b.project_desired_end
FROM
FM_PROJECT_MILESTONE a
LEFT JOIN FM_PROJECT_APPLICATION b ON a.pa_id = b.id
<where>
a.is_deleted = 0
<if test="fmProjectMilestone.paCode!=null">
and b.PA_CODE LIKE CONCAT('%', CONCAT(#{fmProjectMilestone.paCode}, '%'))
</if>
<if test="fmProjectMilestone.projectName != null and fmProjectMilestone.projectName != ''">
and b.project_name LIKE CONCAT('%', CONCAT(#{fmProjectMilestone.projectName}, '%'))
</if>
<if test="fmProjectMilestone.milestonePlan != null and fmProjectMilestone.milestonePlan != ''">
and a.milestone_plan LIKE CONCAT('%', CONCAT(#{fmProjectMilestone.milestonePlan}, '%'))
</if>
<if test="fmProjectMilestone.executeType != null and fmProjectMilestone.executeType != ''">
and a.execute_type LIKE CONCAT('%', CONCAT(#{fmProjectMilestone.executeType}, '%'))
</if>
<if test="fmProjectMilestone.checkResult != null and fmProjectMilestone.checkResult != ''">
and a.check_result LIKE CONCAT('%', CONCAT(#{fmProjectMilestone.checkResult}, '%'))
</if>
<if test="fmProjectMilestone.grade != null and fmProjectMilestone.grade != ''">
and a.grade LIKE CONCAT('%', CONCAT(#{fmProjectMilestone.grade}, '%'))
</if>
<if test = "fmProjectMilestone.milestoneNodeStart != null and fmProjectMilestone.milestoneNodeStart != ''">
AND a.milestone_node <![CDATA[ >= ]]> to_date(concat(#{fmProjectMilestone.milestoneNodeStart},' 00:00:00'),'YYYY-MM-DD HH24:MI:SS')
</if>
<if test = "fmProjectMilestone.milestoneNodeEnd != null and fmProjectMilestone.milestoneNodeEnd != ''">
AND a.milestone_node <![CDATA[ <= ]]> to_date(concat(#{fmProjectMilestone.milestoneNodeEnd},' 23:59:59'),'YYYY-MM-DD HH24:MI:SS')
</if>
</where>
order by a.update_time desc
</select>

@ -141,7 +141,7 @@ public class FmProjectMilestoneEntity extends BaseEntity {
* 核查结果
*/
@Schema(description = "核查结果")
private Short checkResult=0;
private Short checkResult;
/**
* 核查人
*/

@ -25,11 +25,15 @@
*/
package org.springblade.desk.process.pojo.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.desk.process.pojo.entity.FmProjectMilestoneEntity;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
import java.util.Date;
/**
* 项目里程碑 视图实体类
@ -43,4 +47,24 @@ public class FmProjectMilestoneVO extends FmProjectMilestoneEntity {
@Serial
private static final long serialVersionUID = 1L;
private String paCode;
private String projectName;
private String projectHead;
private String approvalStatus;
@DateTimeFormat(pattern = DateUtil.PATTERN_DATETIME)
@JsonFormat(pattern = DateUtil.PATTERN_DATETIME)
private Date projectStartTime;
@DateTimeFormat(pattern = DateUtil.PATTERN_DATETIME)
@JsonFormat(pattern = DateUtil.PATTERN_DATETIME)
private Date projectDesiredEnd;
private String milestoneNodeStart;
private String milestoneNodeEnd;
}

@ -177,6 +177,7 @@ public class FmProjectMilestoneServiceImpl extends BaseServiceImpl<FmProjectMile
}
if (isOk) {
fmProjectApplication.setProjectEnd(new Date());
fmProjectApplication.setApprovalStatus(8L);
fmProjectApplicationService.updateById(fmProjectApplication);
}
}

@ -29,6 +29,7 @@
FROM
dba_mgr.v_mes_rb_pacturnrecord a
<where>
a.processlinedesc like '%4%'
<if test="newlevdateMax != null">
AND a.cdate <![CDATA[ > ]]> TO_DATE(#{newlevdateMax}, 'YYYY-MM-DD HH24:MI:SS')
</if>

@ -40,7 +40,7 @@
FROM
dba_mgr.v_mes_rb_pk a
<where>
1=1
a.processlinedesc like '%4%'
<if test="newlevdateMax != null">
AND a.newlevdate <![CDATA[ > ]]> TO_DATE(#{newlevdateMax}, 'YYYY-MM-DD HH24:MI:SS')
</if>

@ -24,7 +24,7 @@
a.warctlr,a.lewdept,a.prtudeptcode,a.newlevname,a.newlevdate
from dba_mgr.V_MES_RB_PURTOSO a
<where>
1=1
a.processlinedesc like '%4%'
<if test="newlevdateMax != null">
AND a.newlevdate <![CDATA[ > ]]> TO_DATE(#{newlevdateMax}, 'YYYY-MM-DD HH24:MI:SS')
</if>

@ -29,7 +29,7 @@
FROM
dba_mgr.v_mes_rb_sjso a
<where>
1=1
a.processlinedesc like '%4%'
<if test="newlevdateMax != null">
AND a.newlevdate <![CDATA[ > ]]> TO_DATE(#{newlevdateMax}, 'YYYY-MM-DD HH24:MI:SS')
</if>

@ -39,7 +39,7 @@
FROM
dba_mgr.v_mes_rb_sodelrecwx a
<where>
1=1
a.processlinedesc like '%4%'
<if test="newlevdateMax != null">
AND a.newlevdate <![CDATA[ > ]]> TO_DATE(#{newlevdateMax}, 'YYYY-MM-DD HH24:MI:SS')
</if>

@ -39,7 +39,7 @@
FROM
dba_mgr.v_mes_rb_sodelreczg a
<where>
1=1
a.processlinedesc like '%4%'
<if test="newlevdateMax != null">
AND a.newlevdate <![CDATA[ > ]]> TO_DATE(#{newlevdateMax}, 'YYYY-MM-DD HH24:MI:SS')
</if>

@ -28,7 +28,7 @@
FROM
dba_mgr.v_mes_rb_wxpromotion a
<where>
1=1
a.processlinedesc like '%4%'
<if test="newlevdateMax != null">
AND a.newlevdate <![CDATA[ > ]]> TO_DATE(#{newlevdateMax}, 'YYYY-MM-DD HH24:MI:SS')
</if>

@ -5,5 +5,6 @@
select a.prtno as partcode, a.prtname as partname, a.firpp, a.firppname, a.firseq, a.firseqname, a.firseqno
from dba_mgr.v_partoplink_firseq a
where prtno = #{partCode}
order by a.firseqno
</select>
</mapper>

@ -164,6 +164,7 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
yieldPlan.setProductIdent(mesRbWo.getPrtlotno());
yieldPlan.setYpQty(Long.valueOf(Math.round(Double.parseDouble(mesRbWo.getWoporqty()))));
//直接取erp数据不查询mes
log.info("qyl:同步生产计划零件信息:{}:{}:{}",mesRbWo.getPrtarea(),mesRbWo.getPrtdesc(),mesRbWo.getProcesslinedesc());
yieldPlan.setYpArea(mesRbWo.getPrtarea());
yieldPlan.setPartName(mesRbWo.getPrtdesc());
yieldPlan.setPrimaryCraft(mesRbWo.getProcesslinedesc());
@ -430,6 +431,7 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
YieldOrder yieldOrder=new YieldOrder();
yieldOrder.setSiteWork(true);
yieldOrder.setBusinessType(YieldOrder.BUSINESS_TYPE_SJ);
yieldOrder.setYpMemo("烧结转工单");
yieldOrder.setManualIncrease(false);
yieldOrder.setYoCode(mesRbtoso.getSono());//生产单号
yieldOrder.setYpCode(mesRbtoso.getWono());
@ -572,6 +574,7 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
YieldOrder yieldOrder=new YieldOrder();
yieldOrder.setSiteWork(false);
yieldOrder.setBusinessType(YieldOrder.BUSINESS_TYPE_RB);
yieldOrder.setYpMemo("外协转工单");
yieldOrder.setManualIncrease(false);
yieldOrder.setYoCode(mesRbSodelrecwx.getSono());//生产单号
yieldOrder.setYpCode(mesRbSodelrecwx.getWono());
@ -732,6 +735,7 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
YieldOrder yieldOrder=new YieldOrder();
yieldOrder.setSiteWork(true);
yieldOrder.setBusinessType(YieldOrder.BUSINESS_TYPE_RB);
yieldOrder.setYpMemo("配套转工单");
yieldOrder.setYoCode(mesRbPk.getWono());//生产单号
yieldOrder.setYpCode(mesRbPk.getWono());
yieldOrder.setBatchNo(mesRbPk.getSplcode());//批次号

@ -67,7 +67,6 @@
</if>
<if test="yieldOrder.batchNo != null and yieldOrder.batchNo != ''">
and batch_no LIKE CONCAT('%', CONCAT(#{yieldOrder.batchNo}, '%'))
</if>
<if test="yieldOrder.yoCode != null and yieldOrder.yoCode != ''">
and yo_code LIKE CONCAT('%', CONCAT(#{yieldOrder.yoCode}, '%'))
@ -87,6 +86,9 @@
<if test="yieldOrder.workCenterId != null">
and work_center_id = #{yieldOrder.workCenterId}
</if>
<if test="yieldOrder.cardNo != null and yieldOrder.cardNo != ''">
and card_no LIKE CONCAT('%', CONCAT(#{yieldOrder.cardNo}, '%'))
</if>
order by receive_time desc
</where>
</select>

Loading…
Cancel
Save