生产管理修改

liweidong
李涛 2 weeks ago
parent 009c87d932
commit 5676cabb58
  1. 59
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/AfterPlateInVO.java
  2. 3
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/PlateAroundMapper.java
  3. 32
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/PlateAroundMapper.xml
  4. 18
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/PlateAroundServiceImpl.java

@ -2,21 +2,66 @@ package org.springblade.desk.produce.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.produce.pojo.entity.WorkPlan;
import java.util.Date;
/**
* 镀前镀后 视图实体类
*
* @author litao
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class AfterPlateInVO extends WorkPlan {
public class AfterPlateInVO {
@Schema(description = "0-转工 1-入库")
@Schema(description = "移交类型:0-转工 1-入库")
private Integer hrTypeBool;
@Schema(description = "转交部门")
private String useDept;
@Schema(description = "下级B号")
private String roamNoNext;
@Schema(description = "流转编号")
private String roamNo;
@Schema(description = "作业计划id")
private Long wpId;
@Schema(description = "车间订单ID")
private Long woId;
@Schema(description = "车间订单号")
private String woCode;
@Schema(description = "批次号")
private String batchNo;
@Schema(description = "流程卡号")
private String cardNo;
@Schema(description = "入库班组/供应商id")
private Long teamId;
@Schema(description = "入库班组/供应商")
private String teamCode;
@Schema(description = "入库工序号")
private String processCode;
@Schema(description = "入库工序名称")
private String processName;
@Schema(description = "上序号")
private String nextProcessCode;
@Schema(description = "上序名称")
private String nextProcessName;
@Schema(description = "上序班组/供应商id")
private String nextTeamCode;
@Schema(description = "上序班组/供应商")
private Long nextTeamId;
@Schema(description = "入库数量")
private String inQuantity;
}

@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.desk.produce.pojo.dto.PlateAroundDto;
import org.springblade.desk.produce.pojo.entity.PlateAround;
import org.springblade.desk.produce.pojo.entity.WorkPlan;
import org.springblade.desk.produce.pojo.vo.AfterPlateInVO;
import org.springblade.desk.produce.pojo.vo.BeforePlatInVO;
import org.springblade.desk.produce.pojo.vo.PlateAroundVO;
@ -23,7 +24,7 @@ public interface PlateAroundMapper extends BaseMapper<PlateAround> {
BeforePlatInVO getBeforePlatOutCardNo(Long id, List<Long> tsIds, Long userId);
WorkPlan getAfterPlatInCardNo(Long id, List<Long> tsIds);
AfterPlateInVO getAfterPlatInCardNo(Long id, List<Long> tsIds);
List<PlateAround> listByWoCardNo(String cardNo);
}

@ -135,13 +135,37 @@
and c.ID = #{id}
</where>
</select>
<select id="getAfterPlatInCardNo" resultType="org.springblade.desk.produce.pojo.entity.WorkPlan">
SELECT a.* FROM MES_WORK_PLAN a
INNER JOIN MES_WORK_PLAN b ON a.NEXT_WP_ID = b.ID
<select id="getAfterPlatInCardNo" resultType="org.springblade.desk.produce.pojo.vo.AfterPlateInVO">
SELECT
yo.USE_DEPT AS useDept,
yo.ROAM_NO AS roamNo,
yo.ROAM_NO_NEXT AS roamNoNext,
a.id AS wpId,
c.id AS woId,
c.wo_code AS woCode,
c.BATCH_NO AS batchNo,
c.CARD_NO AS cardNo,
c.MAKE_QTY AS inQuantity,
a.MAKE_TEAM AS teamId,
ts.TS_NAME AS teamCode,
a.ORDERS AS processCode,
ps.NAME AS processName,
b.MAKE_TEAM AS nextTeamId,
ts2.TS_NAME AS nextTeamCode,
b.ORDERS AS nextProcessCode,
ps2.NAME AS nextProcessName
FROM
MES_WORK_PLAN a
INNER JOIN MES_WORK_PLAN b ON a.FRONT_WP_ID = b.ID
INNER JOIN MES_WORK_ORDER c ON a.WO_ID = c.ID
INNER JOIN MES_YIELD_ORDER yo ON c.YO_ID = yo.ID
LEFT JOIN MES_PLATE_AROUND d ON a.ID = d.WP_ID
LEFT JOIN BS_TEAM_SET ts ON a.MAKE_TEAM = ts.id
LEFT JOIN BS_PROCESS_SET ps ON a.pps_id = ps.id
LEFT JOIN BS_TEAM_SET ts2 ON b.MAKE_TEAM = ts2.id
LEFT JOIN BS_PROCESS_SET ps2 ON b.pps_id = ps2.id
<where>
where a.STATUS = 2 and c.ID = #{id} and a.next_wp_id is null and a.make_team in
a.STATUS = 2 and c.ID = #{id} and a.next_wp_id is null and a.make_team in
<foreach collection="tsIds" item="tsId" open="(" separator="," close=")">
#{tsId}
</foreach>

@ -122,15 +122,13 @@ public class PlateAroundServiceImpl extends BaseServiceImpl<PlateAroundMapper, P
if (wo == null) {
throw new ServiceException("车间订单不存在!");
}
WorkPlan wp = baseMapper.getAfterPlatInCardNo(wo.getId(), getTsIds());
if (wp == null) {
AfterPlateInVO afterPlateInVO = baseMapper.getAfterPlatInCardNo(wo.getId(), getTsIds());
if (afterPlateInVO == null) {
throw new ServiceException("未找到镀后入库工序,无法入库!");
}
//判断是转工还是入库
WorkOrder workOrder = workOrderService.getById(wp.getWoId());
WorkOrder workOrder = workOrderService.getById(afterPlateInVO.getWoId());
YieldOrder pjYieldOrder = yieldOrderService.getById(workOrder.getYoId());
AfterPlateInVO afterPlateInVO = new AfterPlateInVO();
BeanUtils.copyProperties(wp, afterPlateInVO);
//返工的订单判定入库类型特殊处理
if (StringUtils.isNotBlank(workOrder.getReworkMemo()) && "1".equals(workOrder.getReInStore())) {
if (workOrder.getReworkMemo().contains("转") && workOrder.getReworkMemo().contains("现场")
@ -147,13 +145,7 @@ public class PlateAroundServiceImpl extends BaseServiceImpl<PlateAroundMapper, P
afterPlateInVO.setHrTypeBool(1);
}
}
//zxh 20241213 增加为pjyieldorder.roamname赋值
// pjYieldOrder.setRoamName(dsPartService.findNameByRoamNo(pjYieldOrder.getPartCode(), pjYieldOrder.getRoamNo()));
//zxh 20250509 增加为pjyieldorder.nextroamname赋值
// if (pjYieldOrder.getNextRoam()!=null) {
// pjYieldOrder.setNextRoamName(dsPartService.findNameByRoamNo(pjYieldOrder.getPartCode(), pjYieldOrder.getNextRoam()));
// }
long count = this.count(Wrappers.lambdaQuery(PlateAround.class).eq(PlateAround::getWpId, afterPlateInVO.getId()).eq(PlateAround::getPaType, PlateAround.AFTER_PLAN_IN));
long count = this.count(Wrappers.lambdaQuery(PlateAround.class).eq(PlateAround::getWpId, afterPlateInVO.getWpId()).eq(PlateAround::getPaType, PlateAround.AFTER_PLAN_IN));
if (count > 0) {
throw new ServiceException("此订单已存在镀后入库记录!");
}
@ -275,7 +267,7 @@ public class PlateAroundServiceImpl extends BaseServiceImpl<PlateAroundMapper, P
}
private void savePlateAround(BladeUser user, PlateAround plateAround, Short paType, int next, Boolean aTure) {
PlateAround newPa = null;
PlateAround newPa = new PlateAround();
PlateAround oldPa;
Date date = new Date();
WorkPlan wp = workPlanMapper.selectById(plateAround.getWpId());

Loading…
Cancel
Save