生产管理修改

liweidong
李涛 2 weeks ago
parent 1dd67fc7c9
commit 03a676830c
  1. 49
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/BeforePlatInVO.java
  2. 20
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/PlateAroundController.java
  3. 3
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/PlateAroundMapper.java
  4. 20
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/PlateAroundMapper.xml
  5. 3
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IPlateAroundService.java
  6. 13
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/PlateAroundServiceImpl.java

@ -0,0 +1,49 @@
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;
/**
* 镀前镀后 视图实体类
*
* @author litao
*/
@Data
public class BeforePlatInVO {
@Schema(description = "作业计划id")
private Long wpId;
@Schema(description = "车间订单号")
private String woCode;
@Schema(description = "批次号")
private String batchNo;
@Schema(description = "流程卡号")
private String cardNo;
@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 = "下序班组/供应商")
private String nextTeamCode;
@Schema(description = "入库数量")
private String inQuantity;
}

@ -21,6 +21,7 @@ import org.springblade.desk.produce.pojo.entity.HandoverRecord;
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;
import org.springblade.desk.produce.pojo.vo.PrintWarehousingVO;
import org.springblade.desk.produce.service.IHandoverRecordService;
@ -61,28 +62,15 @@ public class PlateAroundController extends BladeController {
@GetMapping("/getBeforePlatInCardNo")
@ApiOperationSupport(order = 2)
@Operation(summary = "扫描流程卡获取镀前入库数据", description = "传入cardNo")
public R<WorkPlan> getBeforePlatInCardNo(String cardNo) {
// 获取镀前入库数据
WorkPlan wp = plateAroundService.getBeforePlatInCardNo(cardNo);
if (wp != null) {
if (!wp.getStatus().equals(WorkPlan.STATUS_WORK_OK)) {
throw new ServiceException("工序未报工完成,不能进行镀前入库!");
}
} else {
throw new ServiceException("未找到镀前入库工序,无法入库!");
}
return R.data(wp);
public R<BeforePlatInVO> getBeforePlatInCardNo(String cardNo) {
return R.data(plateAroundService.getBeforePlatInCardNo(cardNo));
}
@GetMapping("/getBeforePlatOutCardNo")
@ApiOperationSupport(order = 3)
@Operation(summary = "扫描流程卡获取镀前出库数据", description = "传入cardNo")
public R<PlateAround> getBeforePlatOutCardNo(String cardNo) {
PlateAround plateAround = plateAroundService.getBeforePlatOutCardNo(cardNo);
if (plateAround == null) {
throw new ServiceException("未找到镀前出库工序,无法出库!");
}
return R.data(plateAround);
return R.data(plateAroundService.getBeforePlatOutCardNo(cardNo));
}
@GetMapping("/getAfterPlatInCardNo")

@ -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.BeforePlatInVO;
import org.springblade.desk.produce.pojo.vo.PlateAroundVO;
import java.util.List;
@ -18,7 +19,7 @@ public interface PlateAroundMapper extends BaseMapper<PlateAround> {
List<PlateAroundVO> queryByReadStatus(IPage<PlateAroundVO> page, PlateAroundDto query);
WorkPlan getBeforePlatInCardNo(Long id, List<Long> tsIds, Long userId);
BeforePlatInVO getBeforePlatInCardNo(Long id, List<Long> tsIds, Long userId);
PlateAround getBeforePlatOutCardNo(Long id, List<Long> tsIds, Long userId);

@ -57,10 +57,26 @@
</where>
order by a.CREATE_TIME desc
</select>
<select id="getBeforePlatInCardNo" resultType="org.springblade.desk.produce.pojo.entity.WorkPlan">
SELECT a.* FROM MES_WORK_PLAN a
<select id="getBeforePlatInCardNo" resultType="org.springblade.desk.produce.pojo.vo.BeforePlatInVO">
SELECT
a.ID AS wpId,
c.WO_CODE AS woCode,
c.BATCH_NO AS batchNo,
c.CARD_NO AS cardNo,
d.TS_NAME AS teamCode,
e.NAME AS processName,
a.ORDERS AS processCode,
a.WORK_QTY AS inQuantity,
d2.TS_NAME as nextTeamCode,
b.ORDERS as nextProcessCode,
e2.NAME as nextProcessName
FROM MES_WORK_PLAN a
INNER JOIN MES_WORK_PLAN b ON a.NEXT_WP_ID = b.ID
INNER JOIN MES_WORK_ORDER c ON a.WO_ID = c.ID
LEFT JOIN BS_TEAM_SET d on a.MAKE_TEAM = d.id
LEFT JOIN BS_PROCESS_SET e on a.pps_id = e.id
LEFT JOIN BS_TEAM_SET d2 on b.MAKE_TEAM = d2.id
LEFT JOIN BS_PROCESS_SET e2 on b.pps_id = e2.id
<where>
a.status = 3 and c.ID = #{id} and b.next_wp_id > 0
<if test="tsIds != null and tsIds.size() > 0">

@ -9,6 +9,7 @@ import org.springblade.desk.produce.pojo.entity.PlateAround;
import org.springblade.desk.produce.pojo.entity.PlateAroundDelLog;
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;
import java.util.List;
@ -23,7 +24,7 @@ public interface IPlateAroundService extends BaseService<PlateAround> {
IPage<PlateAroundVO> queryByReadStatus(IPage<PlateAroundVO> page, PlateAroundDto query);
WorkPlan getBeforePlatInCardNo(String cardNo);
BeforePlatInVO getBeforePlatInCardNo(String cardNo);
PlateAround getBeforePlatOutCardNo(String cardNo);

@ -30,6 +30,7 @@ import org.springblade.desk.produce.pojo.dto.PlateAroundDto;
import org.springblade.desk.produce.pojo.dto.SavePlateAroundDto;
import org.springblade.desk.produce.pojo.entity.*;
import org.springblade.desk.produce.pojo.vo.AfterPlateInVO;
import org.springblade.desk.produce.pojo.vo.BeforePlatInVO;
import org.springblade.desk.produce.pojo.vo.PlateAroundVO;
import org.springblade.desk.produce.service.*;
import org.springframework.beans.BeanUtils;
@ -80,17 +81,17 @@ public class PlateAroundServiceImpl extends BaseServiceImpl<PlateAroundMapper, P
}
@Override
public WorkPlan getBeforePlatInCardNo(String cardNo) {
public BeforePlatInVO getBeforePlatInCardNo(String cardNo) {
WorkOrder wo = workOrderService.getWorkOrderByCardNo(cardNo);
if (wo == null) {
throw new ServiceException("车间订单不存在!");
}
List<Long> tsIds = getTsIds();
WorkPlan beforePlatInCardNo = baseMapper.getBeforePlatInCardNo(wo.getId(), tsIds, AuthUtil.getUserId());
BeforePlatInVO beforePlatInCardNo = baseMapper.getBeforePlatInCardNo(wo.getId(), tsIds, AuthUtil.getUserId());
if (beforePlatInCardNo == null) {
throw new ServiceException("未查询到订单!");
throw new ServiceException("未找到镀前入库工序,无法入库!");
}
long count = this.count(Wrappers.lambdaQuery(PlateAround.class).eq(PlateAround::getWpId, beforePlatInCardNo.getId()).eq(PlateAround::getPaType, PlateAround.BEFORE_PLAT_IN));
long count = this.count(Wrappers.lambdaQuery(PlateAround.class).eq(PlateAround::getWpId, beforePlatInCardNo.getWpId()).eq(PlateAround::getPaType, PlateAround.BEFORE_PLAT_IN));
if (count > 0) {
throw new ServiceException("此订单已存在镀前入库记录!");
}
@ -106,7 +107,7 @@ public class PlateAroundServiceImpl extends BaseServiceImpl<PlateAroundMapper, P
List<Long> tsIds = getTsIds();
PlateAround plateAround = baseMapper.getBeforePlatOutCardNo(wo.getId(), tsIds, AuthUtil.getUserId());
if (plateAround == null) {
throw new ServiceException("未查询到订单!");
throw new ServiceException("未找到镀前出库工序,无法出库!");
}
long count = this.count(Wrappers.lambdaQuery(PlateAround.class).eq(PlateAround::getWpId, plateAround.getWpId()).eq(PlateAround::getPaType, PlateAround.BEFORE_PLAN_OUT));
if (count > 0) {
@ -226,7 +227,7 @@ public class PlateAroundServiceImpl extends BaseServiceImpl<PlateAroundMapper, P
WorkOrder wo;
LocalDate now = LocalDate.now();
for (PlateAround plateAround : list) {
this.savePlateAround(AuthUtil.getUser(), plateAround, paType, next, Boolean.FALSE);
this.savePlateAround(AuthUtil.getUser(), plateAround, paType, next, Boolean.TRUE);
if (paType.equals(PlateAround.AFTER_PLAN_IN)) {
WorkPlan prWorkPlan = workPlanMapper.selectById(plateAround.getWpId());
wo = workOrderService.getById(prWorkPlan.getWoId());

Loading…
Cancel
Save