Commit aadbf574 authored by 温志超's avatar 温志超

产品序列打印记录增加模板逻辑

parent 49d8c4b7
......@@ -55,6 +55,25 @@ public class ProProductQrcodeRecord extends BaseEntity {
@ApiModelProperty("产品描述")
private String itemDesc;
/**
* 模板ID
*/
private Long templateId;
/**
* 模板名称
*/
private String templateName;
/**
* 模板编码(ID)
*/
private String templateCode;
/**
* 模板类型
*/
private String templateType;
}
......@@ -54,7 +54,26 @@ public class ProProductQrcodeRecordCreate {
/** 产品描述 */
@ApiModelProperty("产品描述")
private String itemDesc;
/**
* 模板ID
*/
private Long templateId;
/**
* 模板名称
*/
private String templateName;
/**
* 模板编码(ID)
*/
private String templateCode;
/**
* 模板类型
*/
private String templateType;
public void initByWorkorder(ProWorkorder workorder){
this.setItemId(workorder.getProductId());
this.setItemCode(workorder.getProductCode());
......
......@@ -79,6 +79,25 @@ public class ProProductQrcodeRuleDto {
@ApiModelProperty("更新时间")
private Date updateTime;
/**
* 模板ID
*/
private Long templateId;
/**
* 模板名称
*/
private String templateName;
/**
* 模板编码(ID)
*/
private String templateCode;
/**
* 模板类型
*/
private String templateType;
}
......@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.ximai.common.utils.data.StringUtils;
import com.ximai.mes.pro.domain.ProProductQrcodeRule;
import com.ximai.mes.pro.dto.ProProductQrcodeRecordCreate;
import com.ximai.mes.pro.dto.ProProductQrcodeRuleDto;
import com.ximai.mes.pro.schedule.impl.AlgorithmResultProcessImpl;
import com.ximai.mes.pro.service.IProMaterialRequestService;
import com.ximai.mes.pro.service.IProProductQrcodeRecordService;
......@@ -23,6 +24,8 @@ public class ProductQrcodeBuild implements ScheduleBusiProcess{
private IProProductQrcodeRecordService productQrcodeRecordService;
@Autowired
private IProProductQrcodeRuleService productQrcodeRuleService;
@Autowired
private IProProductQrcodeRuleService proProductQrcodeRuleService;
@Override
public void execute(List<JobResult> jobResults) {
jobResults.forEach(job->{
......@@ -31,12 +34,35 @@ public class ProductQrcodeBuild implements ScheduleBusiProcess{
if(rule ==null){
return;
}
//wzc修改 有客户优先按照产品+客户匹配序列号规则绑定的最新打印模板,如果没有匹配到 按照产品匹配序列号规则绑定的最新打印模板(客户字段为空的)
ProProductQrcodeRuleDto proProductQrcodeRuleDto= null;
List<ProProductQrcodeRuleDto> list = null;
if(StringUtils.isNotEmpty(workorder.getClientCode())){
QueryWrapper<ProProductQrcodeRule> query = new QueryWrapper<>();
query.eq("m.item_id", workorder.getProductId());
query.eq( "m.client_code", workorder.getClientCode());
query.orderByDesc("m.rule_id");
list = proProductQrcodeRuleService.selectProProductQrcodeRuleDtoList(query);
}else{
QueryWrapper<ProProductQrcodeRule> query = new QueryWrapper<>();
query.eq("m.item_id", workorder.getProductId());
query.isNull( "m.client_code");
query.orderByDesc("m.rule_id");
list = proProductQrcodeRuleService.selectProProductQrcodeRuleDtoList(query);
}
if(list != null && list.size() > 0){
proProductQrcodeRuleDto = list.get(0);
}
List<String> qrcodes = productQrcodeRuleService.buildQrcode(rule, job.getQuantity().intValue());
for(String qrcode : qrcodes){
ProProductQrcodeRecordCreate create = new ProProductQrcodeRecordCreate();
create.setQrcode(qrcode);
create.initByWorkorder(workorder);
create.setItemDesc(rule.getItemDesc());
create.setTemplateId(proProductQrcodeRuleDto != null ? proProductQrcodeRuleDto.getTemplateId() : null);
create.setTemplateCode(proProductQrcodeRuleDto != null ? proProductQrcodeRuleDto.getTemplateCode() : null);
create.setTemplateName(proProductQrcodeRuleDto != null ? proProductQrcodeRuleDto.getTemplateName() : null);
create.setTemplateType(proProductQrcodeRuleDto != null ? proProductQrcodeRuleDto.getTemplateType() : null);
productQrcodeRecordService.insertProProductQrcodeRecord(create);
}
});
......
......@@ -39,7 +39,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<sql id="selectProProductQrcodeRecordVo">
select record_id, item_id, item_code, work_order_id, work_order_no, print_time, qrcode, client_code, client_name, item_desc, create_by, create_time, update_by, update_time from pro_product_qrcode_record
select record_id, item_id, item_code, work_order_id, work_order_no,
print_time, qrcode, client_code, client_name, item_desc, create_by,
create_time, update_by, update_time ,template_id,template_type,
template_code,template_name
from pro_product_qrcode_record
</sql>
<select id="selectProProductQrcodeRecordList" parameterType="ProProductQrcodeRecord" resultMap="ProProductQrcodeRecordResult2">
......@@ -78,6 +82,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="createTime != null">create_time,</if>
<if test="updateBy != null">update_by,</if>
<if test="updateTime != null">update_time,</if>
<if test="templateId != null">
template_id,
</if>
<if test="templateCode != null">
template_code,
</if>
<if test="templateName != null">
template_name,
</if>
<if test="templateType != null">
template_type,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="itemId != null">#{itemId},</if>
......@@ -93,6 +109,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="createTime != null">#{createTime},</if>
<if test="updateBy != null">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
<if test="templateId != null">
#{templateId,jdbcType=BIGINT},
</if>
<if test="templateCode != null">
#{templateCode,jdbcType=VARCHAR},
</if>
<if test="templateName != null">
#{templateName,jdbcType=VARCHAR},
</if>
<if test="templateType != null">
#{templateType,jdbcType=VARCHAR},
</if>
</trim>
</insert>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment