pangyang 2 weeks ago
commit 695a52032d
  1. 4
      blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java
  2. 8
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/vo/PlateAroundVO.java
  3. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/IDsPartService.java
  4. 24
      blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/DsPartServiceImpl.java
  5. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/DsSpecialProServiceImpl.java
  6. 15
      blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/DsTaskBillServiceImpl.java
  7. 12
      blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/DsTaskingServiceImpl.java
  8. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/oem/service/impl/OemStatementServiceImpl.java
  9. 34
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/PlateAroundMapper.xml
  10. 14
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/PlateAroundServiceImpl.java

@ -12,9 +12,9 @@ public interface LauncherConstant {
/** /**
* nacos 命名空间 * nacos 命名空间
*/ */
// String NACOS_NAMESPACE = "feaf627f-a847-463b-8b73-24a0538f526e"; String NACOS_NAMESPACE = "feaf627f-a847-463b-8b73-24a0538f526e";
// 生产环境 // 生产环境
String NACOS_NAMESPACE = "db3f4da1-ae19-4104-8c17-6d9b8f069401"; // String NACOS_NAMESPACE = "db3f4da1-ae19-4104-8c17-6d9b8f069401";
// 测试环境 // 测试环境
// String NACOS_NAMESPACE = "6cdd0310-0d61-4f54-891a-7fb06224d9b8"; // String NACOS_NAMESPACE = "6cdd0310-0d61-4f54-891a-7fb06224d9b8";

@ -38,19 +38,19 @@ public class PlateAroundVO {
private Double quantity; private Double quantity;
@Schema(description = "入库班组") @Schema(description = "入库班组")
private Long tsId; private String tsId;
@Schema(description = "入库供应商") @Schema(description = "入库供应商")
private Long ocId; private String ocId;
@Schema(description = "入库工序号") @Schema(description = "入库工序号")
private String orders; private String orders;
@Schema(description = "入库工序名称") @Schema(description = "入库工序名称")
private Long ppsId; private String ppsId;
@Schema(description = "入库人员") @Schema(description = "入库人员")
private Long createUser; private String createUser;
@Schema(description = "入库时间") @Schema(description = "入库时间")
private Date createTime; private Date createTime;

@ -100,7 +100,7 @@ public interface IDsPartService extends BaseService<DsPartEntity> {
/** /**
* 零件失效预警定时任务 * 零件失效预警定时任务
* todo 定时任务 *
* @return * @return
*/ */
boolean partLoseEfficacy(); boolean partLoseEfficacy();

@ -12,6 +12,8 @@ import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R; import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.SpringUtil; import org.springblade.core.tool.utils.SpringUtil;
import org.springblade.desk.common.constant.BizTypeConstant;
import org.springblade.desk.common.service.IMesNotifyMessageService;
import org.springblade.desk.dashboard.constant.TaskingConstant; import org.springblade.desk.dashboard.constant.TaskingConstant;
import org.springblade.desk.dashboard.excel.DsPartExcel; import org.springblade.desk.dashboard.excel.DsPartExcel;
import org.springblade.desk.dashboard.mapper.DsPartMapper; import org.springblade.desk.dashboard.mapper.DsPartMapper;
@ -95,6 +97,9 @@ public class DsPartServiceImpl extends BaseServiceImpl<DsPartMapper, DsPartEntit
@Autowired @Autowired
IPrReworkProcessService prReworkProcessService; IPrReworkProcessService prReworkProcessService;
@Autowired
IMesNotifyMessageService mesNotifyMessageService;
@Override @Override
public IPage<DsPartVO> selectDsPartPage(IPage<DsPartVO> page, DsPartVO dsPart) { public IPage<DsPartVO> selectDsPartPage(IPage<DsPartVO> page, DsPartVO dsPart) {
@ -250,7 +255,20 @@ public class DsPartServiceImpl extends BaseServiceImpl<DsPartMapper, DsPartEntit
for (DsPartEntity partEntity : dsPartEntityList) { for (DsPartEntity partEntity : dsPartEntityList) {
//获取工艺员 //获取工艺员
String technician = partEntity.getTechnician(); String technician = partEntity.getTechnician();
//todo 推送相关负责人待办
UserInfo craftUserInfo = userClient.userInfo(Func.toLong(partEntity.getTechnician())).getData();
if (craftUserInfo == null || craftUserInfo.getUser() == null) {
log.error("零件失效预警,工艺员查询失败:{}",partEntity.getPartCode());
}
Long craftManId = craftUserInfo.getUser().getId();
// 推送相关负责人待办
mesNotifyMessageService.saveMsg(
BizTypeConstant.CRAFT_TASK_REDEPLOY,
"零件即将过期",
"零件即将过期,请及时处理,零件号:"+partEntity.getPartCode(),
craftManId
);
} }
return true; return true;
} }
@ -394,9 +412,7 @@ public class DsPartServiceImpl extends BaseServiceImpl<DsPartMapper, DsPartEntit
updateById(dsPart); updateById(dsPart);
if (!TaskingConstant.IS_SINTERING.equals(dsPart.getIsSintering())) { if (!TaskingConstant.IS_SINTERING.equals(dsPart.getIsSintering())) {
if ((org.apache.commons.lang3.StringUtils.isNotBlank(dsPart.getCraftWay()) && dsPart.getCraftWay().contains("4"))) { if ((org.apache.commons.lang3.StringUtils.isNotBlank(dsPart.getCraftWay()) && dsPart.getCraftWay().contains("4"))) {
// todo getErpDataPartClient().sendingPartGiveErp(dsPart);
// todo getErpDataPartClient().sendingPartGiveErp(dsPart);
} }
} }
if (!CollectionUtils.isEmpty(zPartList)) { if (!CollectionUtils.isEmpty(zPartList)) {

@ -113,7 +113,7 @@ public class DsSpecialProServiceImpl extends BaseServiceImpl<DsSpecialProMapper,
throw new ServiceException("工艺员: "+dsSpecialProExcel.getProMan()+" 不存在"); throw new ServiceException("工艺员: "+dsSpecialProExcel.getProMan()+" 不存在");
} }
//todo 验证产线是否存在 //验证产线是否存在
DsSpecialProEntity dsSpecialProEntity = new DsSpecialProEntity(); DsSpecialProEntity dsSpecialProEntity = new DsSpecialProEntity();
dsSpecialProEntity.setWcId(workCenterEntity.getId()); dsSpecialProEntity.setWcId(workCenterEntity.getId());
dsSpecialProEntity.setEquipmentCode(dsSpecialProExcel.getEquipmentCode()); dsSpecialProEntity.setEquipmentCode(dsSpecialProExcel.getEquipmentCode());

@ -28,6 +28,8 @@ import com.alibaba.druid.sql.visitor.functions.Function;
import com.google.common.base.Strings; import com.google.common.base.Strings;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.Func;
import org.springblade.desk.common.constant.BizTypeConstant;
import org.springblade.desk.common.service.IMesNotifyMessageService;
import org.springblade.desk.dashboard.pojo.entity.BsFillingDetailEntity; import org.springblade.desk.dashboard.pojo.entity.BsFillingDetailEntity;
import org.springblade.desk.dashboard.pojo.entity.DsSpecialProEntity; import org.springblade.desk.dashboard.pojo.entity.DsSpecialProEntity;
import org.springblade.desk.dashboard.pojo.entity.DsTaskBillEntity; import org.springblade.desk.dashboard.pojo.entity.DsTaskBillEntity;
@ -73,6 +75,9 @@ public class DsTaskBillServiceImpl extends BaseServiceImpl<DsTaskBillMapper, DsT
@Autowired @Autowired
IUserClient userClient; IUserClient userClient;
@Autowired
IMesNotifyMessageService mesNotifyMessageService;
@Override @Override
public IPage<DsTaskBillVO> selectDsTaskBillPage(IPage<DsTaskBillVO> page, DsTaskBillVO dsTaskBill) { public IPage<DsTaskBillVO> selectDsTaskBillPage(IPage<DsTaskBillVO> page, DsTaskBillVO dsTaskBill) {
List<DsTaskBillVO> dsTaskBillVOS = baseMapper.selectDsTaskBillPage(page, dsTaskBill); List<DsTaskBillVO> dsTaskBillVOS = baseMapper.selectDsTaskBillPage(page, dsTaskBill);
@ -140,9 +145,13 @@ public class DsTaskBillServiceImpl extends BaseServiceImpl<DsTaskBillMapper, DsT
log.error("特殊过程项修改失败"); log.error("特殊过程项修改失败");
} }
next++; next++;
//todo 发消息到工艺员 // 发消息到工艺员
// pfMessageService.sendMessage("产线:" + dsSpecialPro.getBsWorkCenter().getWcName() + ",已生成新的工艺任务,请及时处理!", mesNotifyMessageService.saveMsg(
// dsSpecialPro.getProMan().getUserId(), PfMessageType.MTCODE_0200, null, Boolean.FALSE, null); BizTypeConstant.CRAFT_TASK_REDEPLOY,
"产线",
"已生成新的工艺任务,请及时处理!"+dsTaskBill.getTbCode(),
dsSpecialPro.getProMan()
);
} }
} }

@ -650,7 +650,7 @@ public class DsTaskingServiceImpl extends BaseServiceImpl<DsTaskingMapper, DsTas
if (craftUserInfo == null || craftUserInfo.getUser() == null) { if (craftUserInfo == null || craftUserInfo.getUser() == null) {
throw new ServiceException("目标工艺员不存在"); throw new ServiceException("目标工艺员不存在");
} }
String craftMan = craftUserInfo.getUser().getName(); String craftMan = craftUserInfo.getUser().getRealName();
Long craftManId = craftUserInfo.getUser().getId(); Long craftManId = craftUserInfo.getUser().getId();
// 6. 记录转派前的信息(便于日志记录) // 6. 记录转派前的信息(便于日志记录)
@ -673,8 +673,8 @@ public class DsTaskingServiceImpl extends BaseServiceImpl<DsTaskingMapper, DsTas
// 通知新工艺员 // 通知新工艺员
mesNotifyMessageService.saveMsg( mesNotifyMessageService.saveMsg(
BizTypeConstant.CRAFT_TASK_REDEPLOY, BizTypeConstant.CRAFT_TASK_REDEPLOY,
"您有新的任务转派,请及时处理", "工艺任务转派",
String.valueOf(tasking.getId()), "您有新的任务转派,请及时处理,零件号:"+tasking.getPartCode(),
craftManId craftManId
); );
@ -682,8 +682,8 @@ public class DsTaskingServiceImpl extends BaseServiceImpl<DsTaskingMapper, DsTas
if (!StringUtils.isEmpty(oldCraftMan)) { if (!StringUtils.isEmpty(oldCraftMan)) {
mesNotifyMessageService.saveMsg( mesNotifyMessageService.saveMsg(
BizTypeConstant.CRAFT_TASK_REDEPLOY, BizTypeConstant.CRAFT_TASK_REDEPLOY,
"您的任务已被转派", "工艺任务转派",
String.valueOf(tasking.getId()), "您的工艺任务已被转派,零件号: "+tasking.getPartCode(),
Long.valueOf(oldCraftMan) Long.valueOf(oldCraftMan)
); );
} }
@ -2145,7 +2145,7 @@ public class DsTaskingServiceImpl extends BaseServiceImpl<DsTaskingMapper, DsTas
} }
private void markErpTaskProcessed(String redono) { private void markErpTaskProcessed(String redono) {
//todo 更新更新erp状态 // 更新更新erp状态
// String sql = "{call pro_rbredoroutstat(?, ?, ?)}"; // String sql = "{call pro_rbredoroutstat(?, ?, ?)}";
// 标记erp的分配状态 // 标记erp的分配状态
// dba_mgr.pro_rbredoroutstat@erp_mes_link(v_redono,v_excnote, v_excflag); // dba_mgr.pro_rbredoroutstat@erp_mes_link(v_redono,v_excnote, v_excflag);

@ -233,7 +233,7 @@ public class OemStatementServiceImpl extends BaseServiceImpl<OemStatementMapper,
page.setSize(999); page.setSize(999);
List<StatementVO> statementVOS = baseMapper.selectOemStatementPage(page, query); List<StatementVO> statementVOS = baseMapper.selectOemStatementPage(page, query);
if (statementVOS == null || statementVOS.isEmpty()) { if (statementVOS == null || statementVOS.isEmpty()) {
return R.fail(String.format("【%】无未结算的结算单", woCode)); return R.fail(String.format("[%]无未结算的结算单", woCode));
} }
return oemSettleAccounts(statementVOS, BigDecimal.ZERO, date); return oemSettleAccounts(statementVOS, BigDecimal.ZERO, date);
} }

@ -4,24 +4,24 @@
<select id="queryByReadStatus" resultType="org.springblade.desk.produce.pojo.vo.PlateAroundVO"> <select id="queryByReadStatus" resultType="org.springblade.desk.produce.pojo.vo.PlateAroundVO">
SELECT SELECT
c.ID AS woId, c.ID AS woId,
a.PA_CODE as paCode, a.PA_CODE as paCode,
c.CARD_NO as cardNo, c.CARD_NO as cardNo,
c.WO_CODE as woCode, c.WO_CODE as woCode,
c.BATCH_NO as batchNo, c.BATCH_NO as batchNo,
d.PART_CODE as partCode, d.PART_CODE as partCode,
d.PART_NAME as partName, d.PART_NAME as partName,
a.QUANTITY as quantity, a.QUANTITY as quantity,
a.TS_ID as tsId, a.TS_ID as tsId,
a.OC_ID as ocId, a.OC_ID as ocId,
b.ORDERS as orders, b.ORDERS as orders,
b.PPS_ID as ppsId, b.PPS_ID as ppsId,
a.CREATE_USER as createUser, a.CREATE_USER as createUser,
a.CREATE_TIME as createTime a.CREATE_TIME as createTime
FROM MES_PLATE_AROUND a FROM MES_PLATE_AROUND a
INNER JOIN MES_WORK_PLAN b ON a.WP_ID = b.ID INNER JOIN MES_WORK_PLAN b ON a.WP_ID = b.ID
INNER JOIN MES_WORK_ORDER c ON b.WO_ID = C.ID INNER JOIN MES_WORK_ORDER c ON b.WO_ID = C.ID
INNER JOIN MES_YIELD_ORDER d ON c.YO_ID = d.ID INNER JOIN MES_YIELD_ORDER d ON c.YO_ID = d.ID
<where> <where>
a.IS_DELETED = 0 and a.PA_TYPE = #{query.paType} a.IS_DELETED = 0 and a.PA_TYPE = #{query.paType}
<if test="query.paCode != null and query.paCode != ''"> <if test="query.paCode != null and query.paCode != ''">

@ -229,7 +229,11 @@ public class PlateAroundServiceImpl extends BaseServiceImpl<PlateAroundMapper, P
// todo 计算主工序对应的金额 // todo 计算主工序对应的金额
// bsTeamWagesLevelService.countTeamSalary(wo.getWoId()); // bsTeamWagesLevelService.countTeamSalary(wo.getWoId());
// 调用外协结算 // 调用外协结算
oemStatementService.autoSettlement(wo.getWoCode(), now); try {
oemStatementService.autoSettlement(wo.getWoCode(), now);
} catch (Exception e) {
log.error("外协结算失败", e);
}
} }
} }
if (paType.equals(PlateAround.AFTER_PLAN_IN)) { if (paType.equals(PlateAround.AFTER_PLAN_IN)) {
@ -279,7 +283,7 @@ public class PlateAroundServiceImpl extends BaseServiceImpl<PlateAroundMapper, P
plateAround.setMakeMan(user.getUserId()); plateAround.setMakeMan(user.getUserId());
} }
this.updatePrPlateAround(plateAround); this.updatePrPlateAround(plateAround);
baseMapper.insert(plateAround); this.save(plateAround);
if (paType.equals(PlateAround.BEFORE_PLAT_IN)) { if (paType.equals(PlateAround.BEFORE_PLAT_IN)) {
WorkPlan nextWorkPlan = workPlanMapper.selectById(wp.getNextWpId()); WorkPlan nextWorkPlan = workPlanMapper.selectById(wp.getNextWpId());
if (nextWorkPlan != null && nextWorkPlan.getNextWpId() == null) { if (nextWorkPlan != null && nextWorkPlan.getNextWpId() == null) {
@ -303,11 +307,11 @@ public class PlateAroundServiceImpl extends BaseServiceImpl<PlateAroundMapper, P
newPa.setWpId(wp.getNextWpId()); newPa.setWpId(wp.getNextWpId());
newPa.setTsId(wp.getMakeTeam()); newPa.setTsId(wp.getMakeTeam());
this.updatePrPlateAround(newPa); this.updatePrPlateAround(newPa);
baseMapper.insert(newPa); this.save(newPa);
// 修改镀前入库记录状态 // 修改镀前入库记录状态
oldPa = baseMapper.selectById(plateAround.getId()); oldPa = this.getById(plateAround.getId());
oldPa.setCurStatus(PlateAround.CUR_STATUS_OK); oldPa.setCurStatus(PlateAround.CUR_STATUS_OK);
baseMapper.updateById(oldPa); this.updateById(oldPa);
} }
} }

Loading…
Cancel
Save