mes相关

master
zhaoxiaolin 10 months ago
parent 374d2dc592
commit 3c0d9f16ad

@ -95,7 +95,6 @@ public class OpenController extends BaseController {
@PostMapping(value = "/createCheckProduceTask")
public AjaxResult createCheckProduceTask(@RequestBody QcCheckTaskProduceDTO qcCheckTaskProduce) {
if (StringUtils.isBlank(qcCheckTaskProduce.getOrderNo())) {
return error("[orderNo]不能为空");
}

@ -11,6 +11,7 @@ import com.op.system.api.domain.quality.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
/**
@ -82,5 +83,7 @@ public interface OpenMapper {
public int addCheckUsers(@Param("list") List<QcUserMaterialDTO> users);
String getSampNum(QcCheckTaskProduceDTO sampQua);
Date getLastTask(QcCheckTaskProduceDTO qcCheckTaskProduce);
}

@ -303,16 +303,11 @@ public class OpenServiceImpl implements OpenService {
public int insertQcCheckTaskProduce(QcCheckTaskProduceDTO qcCheckTaskProduce) {
DynamicDataSourceContextHolder.push("ds_" + qcCheckTaskProduce.getFactoryCode());
// 创建两个日期时间对象
// LocalDateTime dateTime1 = LocalDateTime.of(2023, 1, 1, 10, 30); // 2023年1月1日 10:30
// LocalDateTime dateTime2 = LocalDateTime.now(); // 2023年1月2日 11:45
// // 计算分钟差
// long minutesBetween = Duration.between(dateTime1, dateTime2).toMinutes();
// if(minutesBetween<=1){
// logger.info("++++++++++++检验任务1分钟内生成过不再重复创建++++++++++++++");
// return 0;
// }
// 1分钟不允许存在两条
Date lastData = openMapper.getLastTask(qcCheckTaskProduce);
if(this.oneMinHas(lastData)){
return 0;
}
qcCheckTaskProduce.setCreateTime(DateUtils.getNowDate());
@ -504,4 +499,36 @@ public class OpenServiceImpl implements OpenService {
return error(e.getMessage());
}
}
protected Boolean oneMinHas(Date lastData){
if(lastData != null){
int year= Integer.parseInt(String.format("%tY", lastData));
int mon= Integer.parseInt(String .format("%tm", lastData));
int day= Integer.parseInt(String .format("%td", lastData));
int h= Integer.parseInt(String .format("%tH", lastData));
int m= Integer.parseInt(String .format("%tM", lastData));
LocalDateTime dateTime1 = LocalDateTime.of(year, mon, day, h, m); // 2023年1月1日 10:30
LocalDateTime dateTime2 = LocalDateTime.now(); // 2023年1月2日 11:45
// 计算分钟差
long minutesBetween = Duration.between(dateTime1, dateTime2).toMinutes();
if(minutesBetween<=1){
logger.info("++++++++++++检验任务1分钟内生成过不再重复创建++++++++++++++");
return true;
}
}
return false;
}
public static void main(String args[]){
// 创建两个日期时间对象
LocalDateTime dateTime1 = LocalDateTime.of(2024, 4, 18, 9, 33); // 2023年1月1日 10:30
LocalDateTime dateTime2 = LocalDateTime.now(); // 2023年1月2日 11:45
// 计算分钟差
long minutesBetween = Duration.between(dateTime1, dateTime2).toMinutes();
if(minutesBetween<=1){
System.out.println("++++++++++++检验任务1分钟内生成过不再重复创建++++++++++++++");
}
}
}

@ -207,6 +207,13 @@
where end_value>= #{quality} and #{quality}>=start_value and del_flag = '0'
and check_type = #{checkType}
</select>
<select id="getLastTask" resultType="java.util.Date">
select max(create_time) from qc_check_task
where check_type = #{checkType}
and order_no= #{orderNo}
and income_batch_no = #{incomeBatchNo}
and del_flag='0'
</select>
<insert id="insertEquRepairOrder" parameterType="DeviceRepairOrder">
insert into equ_repair_order

@ -195,6 +195,9 @@ public class QuaController extends BaseController {
if(StringUtils.isBlank(qcCheckTaskIncome.getUpdateByName())){
return error("[updateByName]不能为空");
}
if(StringUtils.isBlank(qcCheckTaskIncome.getCheckResult())){
return error("[checkResult]不能为空");
}
return toAjax(qcCheckTaskIncomeService.commitCheckResults(qcCheckTaskIncome));
}
/**

@ -196,6 +196,15 @@ public class QcCheckTaskIncome extends BaseEntity {
private String materialType;//来料类别
private String materialFrom;//物料来源
private String startOA;//发起oa 1是 0否
public String getStartOA() {
return startOA;
}
public void setStartOA(String startOA) {
this.startOA = startOA;
}
public String getOrderTypeDesc() {
return orderTypeDesc;

@ -117,6 +117,51 @@ public class QcCheckUnqualified extends BaseEntity {
private Date startTime;
private String startOaStatus;
private String startOaMsg;
private String materialType;//来料类别
private String materialFrom;//物料来源
private String oaFactory;//oa厂区
private String czbjr;//仓储报检人
private String qczg;//QC主管
public String getQczg() {
return qczg;
}
public void setQczg(String qczg) {
this.qczg = qczg;
}
public String getCzbjr() {
return czbjr;
}
public void setCzbjr(String czbjr) {
this.czbjr = czbjr;
}
public String getOaFactory() {
return oaFactory;
}
public void setOaFactory(String oaFactory) {
this.oaFactory = oaFactory;
}
public String getMaterialType() {
return materialType;
}
public void setMaterialType(String materialType) {
this.materialType = materialType;
}
public String getMaterialFrom() {
return materialFrom;
}
public void setMaterialFrom(String materialFrom) {
this.materialFrom = materialFrom;
}
public String getStartOaMsg() {
return startOaMsg;

@ -91,8 +91,9 @@ public class QcCheckUnqualifiedServiceImpl implements IQcCheckUnqualifiedService
//发起来料检验OA流程
AjaxResult oaR = new AjaxResult();
QcCheckUnqualified taskIfo = qcCheckUnqualifiedMapper.selectQcCheckUnqualifiedById(qcCheckUnqualified.getId());
taskIfo.setRemark(qcCheckUnqualified.getRemark());
QcCheckUnqualified taskIfo = qcCheckUnqualified;
// QcCheckUnqualified taskIfo = qcCheckUnqualifiedMapper.selectQcCheckUnqualifiedById(qcCheckUnqualified.getId());
// taskIfo.setRemark(qcCheckUnqualified.getRemark());
if("material".equals(taskIfo.getTypeCode())) {
//ZL0010-来料检验不合格控制流程
oaR = this.createLLOA(taskIfo);
@ -164,13 +165,13 @@ public class QcCheckUnqualifiedServiceImpl implements IQcCheckUnqualifiedService
/*OA
* CQ OEMCM LLLB 01MATNR MAKTX suppliernum
* supplier CHARG comeQty testDate JYBH
* supplier CHARG comeQty DW testDate JYBH
* BJY OEMWLLY ZCF ZCOEMCM OEM
* memo PZGLBZG QC
*/
private AjaxResult createLLOA(QcCheckUnqualified task){
QcCheckTaskIncome detailInfo = qcCheckTaskIncomeMapper.getTaskInfo(task.getTaskId());
//QcCheckTaskIncome detailInfo = qcCheckTaskIncomeMapper.getTaskInfo(task.getTaskId());
//发起来料检验OA流程
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("user",SecurityUtils.getUsername());//提交人工号
@ -179,16 +180,35 @@ public class QcCheckUnqualifiedServiceImpl implements IQcCheckUnqualifiedService
paramMap.put("workflowId",26235);//该流程对应的唯- workFlowld
StringBuffer mainObject = new StringBuffer();
mainObject.append("{");
mainObject.append("\"CQ\":"+detailInfo.getFactoryCode());//厂区
mainObject.append(",\"LLLB\":"+0);//来料类别【0、1】
mainObject.append(",\"MATNR\":"+"\""+detailInfo.getMaterialCode()+"\"");//物料编码
mainObject.append(",\"MAKTX\":"+"\""+detailInfo.getMaterialName()+"\"");//物料名称
mainObject.append(",\"suppliernum\":"+"\""+detailInfo.getSupplierCode()+"\"");//供应商编码
mainObject.append(",\"supplier\":"+"\""+detailInfo.getSupplierName()+"\"");//供应商名称
mainObject.append(",\"CHARG\":"+"\""+detailInfo.getIncomeBatchNo()+"\"");//生产批号
mainObject.append(",\"comeQty\":"+"\""+detailInfo.getQuality()+"\"");//来料数量
mainObject.append(",\"memo\":"+"\""+task.getRemark()+"\"");//不合格情况描述
// mainObject.append("{");
// mainObject.append("CQ:"+task.getOaFactory());//厂区
// mainObject.append(",LLLB:"+task.getMaterialType());//来料类别【0、1】
// mainObject.append(",MATNR:"+task.getMaterialCode());//物料编码
// mainObject.append(",MAKTX"+task.getMaterialName());//物料名称
// mainObject.append(",suppliernum"+task.getSupplierCode());//供应商编码
// mainObject.append(",supplier"+task.getSupplierName());//供应商名称
// mainObject.append(",CHARG:"+task.getIncomeBatchNo());//生产批号
// mainObject.append(",comeQty:"+task.getQuality()+"\"");//来料数量
// mainObject.append(",DW:"+task.getUnit()+"\"");//来料单位
// mainObject.append(",JYBH:"+task.getCheckNo());//检验编码
// mainObject.append(",BJY:"+task.getCheckNo());//仓储报检人
// mainObject.append(",WLLY:"+task.getMaterialFrom());//物料来源
// mainObject.append(",memo:"+task.getRemark());//不合格描述
// mainObject.append(",PZGLBZG:"+task.getRemark());//qc主管
mainObject.append("\"CQ\":"+task.getOaFactory());//厂区
mainObject.append("\"LLLB\":"+task.getMaterialType());//来料类别【0、1】
mainObject.append(",\"MATNR\":"+"\""+task.getMaterialCode()+"\"");//物料编码
mainObject.append(",\"MAKTX\":"+"\""+task.getMaterialName()+"\"");//物料名称
mainObject.append(",\"suppliernum\":"+"\""+task.getSupplierCode()+"\"");//供应商编码
mainObject.append(",\"supplier\":"+"\""+task.getSupplierName()+"\"");//供应商名称
mainObject.append(",\"CHARG\":"+"\""+task.getIncomeBatchNo()+"\"");//生产批号
mainObject.append(",\"comeQty\":"+"\""+task.getQuality()+"\"");//来料数量
mainObject.append(",\"DW\":"+"\""+task.getUnit()+"\"");//来料单位
mainObject.append(",\"JYBH\":"+"\""+task.getCheckNo()+"\"");//检验编码
mainObject.append(",\"BJY\":"+"\""+task.getCheckNo()+"\"");//仓储报检人
mainObject.append(",\"WLLY\":"+"\""+task.getMaterialFrom()+"\"");//物料来源
mainObject.append(",\"memo\":"+"\""+task.getRemark()+"\"");//不合格描述
mainObject.append(",\"PZGLBZG\":"+"\""+task.getRemark()+"\"");//qc主管
mainObject.append("}");
paramMap.put("mainObject",mainObject.toString());

Loading…
Cancel
Save