Browse Source

2024-09-02

最晚执行日期
java8
fengyuan_yang 2 years ago
parent
commit
13dc3f1fb0
  1. 12
      src/main/java/com/xujie/sys/modules/pms/data/EamWorkOrderData.java
  2. 9
      src/main/java/com/xujie/sys/modules/pms/data/EamWorkPlanInData.java
  3. 1
      src/main/java/com/xujie/sys/modules/pms/listener/RedisExpirationListener.java
  4. 34
      src/main/java/com/xujie/sys/modules/pms/service/Impl/EamServiceImpl.java
  5. 8
      src/main/java/com/xujie/sys/modules/pms/service/Impl/QcServiceImpl.java
  6. 7
      src/main/resources/mapper/pms/EamMapper.xml

12
src/main/java/com/xujie/sys/modules/pms/data/EamWorkOrderData.java

@ -80,6 +80,18 @@ public class EamWorkOrderData extends QueryPage {
*/
private String buDesc;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date lastExecutionDate;
public Date getLastExecutionDate() {
return lastExecutionDate;
}
public void setLastExecutionDate(Date lastExecutionDate) {
this.lastExecutionDate = lastExecutionDate;
}
public String getBu() {
return bu;
}

9
src/main/java/com/xujie/sys/modules/pms/data/EamWorkPlanInData.java

@ -22,6 +22,15 @@ public class EamWorkPlanInData extends EamWorkPlanData{
// 工单号
private String orderNo;
private Date orderDate;
private Date lastExecutionDate;
public Date getLastExecutionDate() {
return lastExecutionDate;
}
public void setLastExecutionDate(Date lastExecutionDate) {
this.lastExecutionDate = lastExecutionDate;
}
public Date getOrderDate() {
return orderDate;

1
src/main/java/com/xujie/sys/modules/pms/listener/RedisExpirationListener.java

@ -68,7 +68,6 @@ public class RedisExpirationListener extends KeyExpirationEventMessageListener {
}
// 校验单据状态如果不是"维修完成" 则发送邮件通知
if (!"维修完成".equals(feedBackList.get(0).getStatus())) {
eamService.sendMail(feedBackList.get(0));
}
}

34
src/main/java/com/xujie/sys/modules/pms/service/Impl/EamServiceImpl.java

@ -1323,7 +1323,6 @@ public class EamServiceImpl implements EamService {
throw new RuntimeException("该计划状态不是已计划,请刷新数据!");
}
// 开始保存
if (planData.getPlanPeriod() == 0) { // 点检频率为0
// 获得工单号
if (inData.getFunctionType().equals("A")) {
@ -1372,6 +1371,8 @@ public class EamServiceImpl implements EamService {
Map<String, Object> resultMap = resultList.get(0);
String orderNo = String.valueOf(resultMap.get("serial_no"));
planData.setOrderNo("D" + DateUtil.getStringDate(new Date(),"yyMMdd") + orderNo);
// 设置最晚执行日期,等于计划执行日期
planData.setLastExecutionDate(orderDate);
} else if (inData.getFunctionType().equals("B")) {
List<Object> params = new ArrayList<>();
params.add("*");
@ -1382,6 +1383,12 @@ public class EamServiceImpl implements EamService {
Map<String, Object> resultMap = resultList.get(0);
String orderNo = String.valueOf(resultMap.get("serial_no"));
planData.setOrderNo("W" + DateUtil.getStringDate(new Date(),"yyMMdd") + orderNo);
// 设置最晚执行日期,为下一个执行日期的前一天
calendar.clear();
calendar.setTime(orderDate);
calendar.add(Calendar.MONTH,planData.getPlanPeriod());
calendar.add(Calendar.DATE,-1);
planData.setLastExecutionDate(calendar.getTime());
}
// 新增工单
eamMapper.forInsertWorkOrder(planData);
@ -1433,6 +1440,7 @@ public class EamServiceImpl implements EamService {
Map<String, Object> resultMap = resultList.get(0);
String orderNo = String.valueOf(resultMap.get("serial_no"));
planData.setOrderNo("D" + DateUtil.getStringDate(new Date(),"yyMMdd") + orderNo);
planData.setLastExecutionDate(orderDate);
} else if (inData.getFunctionType().equals("B")) {
List<Object> params = new ArrayList<>();
params.add("*");
@ -1443,6 +1451,12 @@ public class EamServiceImpl implements EamService {
Map<String, Object> resultMap = resultList.get(0);
String orderNo = String.valueOf(resultMap.get("serial_no"));
planData.setOrderNo("W" + DateUtil.getStringDate(new Date(),"yyMMdd") + orderNo);
// 设置最晚执行日期,为下一个执行日期的前一天
calendar.clear();
calendar.setTime(orderDate);
calendar.add(Calendar.MONTH,planData.getPlanPeriod());
calendar.add(Calendar.DATE,-1);
planData.setLastExecutionDate(calendar.getTime());
}
// 新增工单
eamMapper.forInsertWorkOrder(planData);
@ -1510,6 +1524,7 @@ public class EamServiceImpl implements EamService {
Map<String, Object> resultMap = resultList.get(0);
String orderNo = String.valueOf(resultMap.get("serial_no"));
planData.setOrderNo("D" + DateUtil.getStringDate(new Date(),"yyMMdd") + orderNo);
planData.setLastExecutionDate(orderDate);
} else if (inData.getFunctionType().equals("B")) {
List<Object> params = new ArrayList<>();
params.add("*");
@ -1520,6 +1535,21 @@ public class EamServiceImpl implements EamService {
Map<String, Object> resultMap = resultList.get(0);
String orderNo = String.valueOf(resultMap.get("serial_no"));
planData.setOrderNo("W" + DateUtil.getStringDate(new Date(),"yyMMdd") + orderNo);
// 设置最晚执行日期,为下一个执行日期的前一天
calendar.clear();
calendar.setTime(orderDate);
// 判断计划周期
if (planData.getPlanCycle().equals("天")) {
calendar.add(Calendar.DATE,planData.getPlanPeriod());
} else if (planData.getPlanCycle().equals("周")) {
calendar.add(Calendar.DATE,7*planData.getPlanPeriod());
} else if (planData.getPlanCycle().equals("月")) {
calendar.add(Calendar.MONTH,planData.getPlanPeriod());
} else if (planData.getPlanCycle().equals("年")) {
calendar.add(Calendar.YEAR,planData.getPlanPeriod());
}
calendar.add(Calendar.DATE,-1);
planData.setLastExecutionDate(calendar.getTime());
}
// 新增工单
eamMapper.forInsertWorkOrder(planData);
@ -3028,7 +3058,7 @@ public class EamServiceImpl implements EamService {
MailAddressData tpm = qcMapper.getSendMailAddress(feedBackData.getSite(), "TPM");
if (tpm != null) {
//设置邮件内容
String text = "维修超时!" + feedBackData.getFeedBackID();
String text = "维修超时!" + feedBackData.getFeedBackID();
//发送邮件
JavaMailSenderImpl sender = new JavaMailSenderImpl();
MailSendAddressData mailSendData = qcMapper.getSendMailFromAddress();

8
src/main/java/com/xujie/sys/modules/pms/service/Impl/QcServiceImpl.java

@ -2378,7 +2378,7 @@ public class QcServiceImpl implements QcService {
data.setCollectionDataContent(collectionDataContent);
List<SubDetailValues> list = qcMapper.selectFAISubDetailedRecord(data);
List<SubDetailValues> sortedRecords = list.stream()
.sorted(Comparator.comparingInt(SubDetailValues::getNum))
.sorted(Comparator.comparing(SubDetailValues::getNum, Comparator.nullsLast(Comparator.naturalOrder())))
.collect(Collectors.toList());
return sortedRecords;
}
@ -2941,7 +2941,7 @@ public class QcServiceImpl implements QcService {
data.setCollectionDataContent(collectionDataContent);
List<SubDetailValues> list = qcMapper.selectFQCSubDetailedRecord(data);
List<SubDetailValues> sortedRecords = list.stream()
.sorted(Comparator.comparingInt(SubDetailValues::getNum))
.sorted(Comparator.comparing(SubDetailValues::getNum, Comparator.nullsLast(Comparator.naturalOrder())))
.collect(Collectors.toList());
return sortedRecords;
}
@ -3562,7 +3562,7 @@ public class QcServiceImpl implements QcService {
data.setCollectionDataContent(collectionDataContent);
List<SubDetailValues> list = qcMapper.selectIPQCSubDetailedRecord(data);
List<SubDetailValues> sortedRecords = list.stream()
.sorted(Comparator.comparingInt(SubDetailValues::getNum))
.sorted(Comparator.comparing(SubDetailValues::getNum, Comparator.nullsLast(Comparator.naturalOrder())))
.collect(Collectors.toList());
return sortedRecords;
}
@ -4135,7 +4135,7 @@ public class QcServiceImpl implements QcService {
data.setCollectionDataContent(collectionDataContent);
List<SubDetailValues> list = qcMapper.selectIQCSubDetailedRecord(data);
List<SubDetailValues> sortedRecords = list.stream()
.sorted(Comparator.comparingInt(SubDetailValues::getNum))
.sorted(Comparator.comparing(SubDetailValues::getNum, Comparator.nullsLast(Comparator.naturalOrder())))
.collect(Collectors.toList());
return sortedRecords;
}

7
src/main/resources/mapper/pms/EamMapper.xml

@ -723,7 +723,8 @@
dbo.joint_id(a.Site, a.bu_no, a.OrderNo, a.FunctionType) as adminID,
dbo.joint_name(a.Site, a.bu_no, a.OrderNo, a.FunctionType) as operator,
a.check_remark,
a.document_source
a.document_source,
a.last_execution_date
FROM eam_workOrder a
LEFT JOIN eam_defect_feedBack b on a.site = b.site and a.PlanID = b.feedBackID and a.bu_no = b.bu_no
LEFT JOIN eam_defect c on b.DefectID = c.DefectID
@ -2101,8 +2102,8 @@
<!-- 循环新增工单 -->
<insert id="forInsertWorkOrder" parameterType="EamWorkPlanInData">
INSERT INTO eam_workOrder
(Site, bu_no, OrderNo, PlanID, PlanDesc, PropertiesCode, ObjectID, Status, PlanOperator, PlanDate, FunctionType,CreateDate, CreateBy, checker, PlanOperatorName, checkerName)
VALUES (#{site}, #{buNo}, #{orderNo}, #{planID}, #{planDesc}, #{propertiesCode}, #{objectID}, '未开工', #{operator}, #{orderDate}, #{functionType}, getDate(), #{userId}, #{checker}, #{operatorName}, #{checkerName})
(Site, bu_no, OrderNo, PlanID, PlanDesc, PropertiesCode, ObjectID, Status, PlanOperator, PlanDate, FunctionType,CreateDate, CreateBy, checker, PlanOperatorName, checkerName, last_execution_date)
VALUES (#{site}, #{buNo}, #{orderNo}, #{planID}, #{planDesc}, #{propertiesCode}, #{objectID}, '未开工', #{operator}, #{orderDate}, #{functionType}, getDate(), #{userId}, #{checker}, #{operatorName}, #{checkerName}, #{lastExecutionDate})
</insert>
<!-- 更改plan表的状态为进行中 -->

Loading…
Cancel
Save