fix: 唛头追加批次与冶炼单位

This commit is contained in:
2026-01-15 10:31:46 +08:00
parent 90f906c4f8
commit 080eba7472
8 changed files with 22 additions and 6 deletions

View File

@@ -43,7 +43,7 @@
<dependency> <dependency>
<groupId>org.dromara.dynamictp</groupId> <groupId>org.dromara.dynamictp</groupId>
<artifactId>dynamic-tp-spring-boot-starter-adapter-webserver</artifactId> <artifactId>dynamic-tp-spring-boot-starter-adapter-webserver</artifactId>
<version>1.1.6.1</version> <version>1.1.7</version>
</dependency> </dependency>
<!-- 日志链路追踪 https://tlog.yomahub.com/pages/f62a84/#%E5%90%8C%E6%AD%A5%E6%97%A5%E5%BF%97--> <!-- 日志链路追踪 https://tlog.yomahub.com/pages/f62a84/#%E5%90%8C%E6%AD%A5%E6%97%A5%E5%BF%97-->

View File

@@ -67,6 +67,7 @@ import javax.annotation.PostConstruct;
import java.lang.reflect.InvocationTargetException; import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentHashMap;
@@ -479,7 +480,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
*/ */
@Override @Override
public ApplyTaskResponse applyLabelling(JSONObject param) { public ApplyTaskResponse applyLabelling(JSONObject param) {
// 木托盘号(4)##物料编码(12)##数量(2-3)##吨量单重X数量##生产日期(2023/11/04)##客户编码##订单号(12)#型号##产品名称##客户名称** // 木托盘号(4)##物料编码(12)##数量(2-3)##吨量单重X数量##生产日期(2023/11/04)##客户编码##订单号(12)#型号##产品名称##客户名称##批次号**
String requestNo = param.getString("requestNo"); String requestNo = param.getString("requestNo");
ApplyTaskRequest baseRequest = param.toJavaObject(ApplyTaskRequest.class); ApplyTaskRequest baseRequest = param.toJavaObject(ApplyTaskRequest.class);
String vehicleCode = TaskUtils.defaultVehicleCode(baseRequest.getVehicle_code()); String vehicleCode = TaskUtils.defaultVehicleCode(baseRequest.getVehicle_code());
@@ -497,6 +498,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
if (ObjectUtil.isEmpty(baseMaterial)) { if (ObjectUtil.isEmpty(baseMaterial)) {
throw new BadRequestException("物料id: " + materialId + " 不存在,请同步物料"); throw new BadRequestException("物料id: " + materialId + " 不存在,请同步物料");
} }
String pcsn = baseMaterial.getMaterial_code() + DateUtil.format(new Date(), "yyMMdd");
BigDecimal materialQty = ObjectUtil.isNotEmpty(groupInfo.getMaterial_qty()) BigDecimal materialQty = ObjectUtil.isNotEmpty(groupInfo.getMaterial_qty())
? BigDecimal.valueOf(groupInfo.getMaterial_qty()) : BigDecimal.valueOf(0); ? BigDecimal.valueOf(groupInfo.getMaterial_qty()) : BigDecimal.valueOf(0);
String singleWeightStr = baseMaterial.getSingle_weight(); String singleWeightStr = baseMaterial.getSingle_weight();
@@ -515,12 +517,16 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
log.info("包装数据:{}", object); log.info("包装数据:{}", object);
String custerNo = object.getString("custer_no"); String custerNo = object.getString("custer_no");
String orderNo = object.getString("order_no"); String orderNo = object.getString("order_no");
String smeltingUnit = object.getString("smelting_unit");
if (ObjectUtil.isEmpty(custerNo)) { if (ObjectUtil.isEmpty(custerNo)) {
throw new BadRequestException("客户编码不能为空"); throw new BadRequestException("客户编码不能为空");
} }
if (ObjectUtil.isEmpty(orderNo)) { if (ObjectUtil.isEmpty(orderNo)) {
throw new BadRequestException("订单号不能为空"); throw new BadRequestException("订单号不能为空");
} }
if (ObjectUtil.isEmpty(smeltingUnit)) {
smeltingUnit = "";
}
CusterDo custer; CusterDo custer;
// 都是数据就是id否则就是名称 // 都是数据就是id否则就是名称
if (custerNo.matches("\\d+")) { if (custerNo.matches("\\d+")) {
@@ -538,7 +544,8 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
.append(orderNo).append("##") .append(orderNo).append("##")
.append(baseMaterial.getMaterial_spec() + "~" + baseMaterial.getMaterial_model()).append("##") .append(baseMaterial.getMaterial_spec() + "~" + baseMaterial.getMaterial_model()).append("##")
.append(baseMaterial.getMaterial_name()).append("##") .append(baseMaterial.getMaterial_name()).append("##")
.append(custer.getCuster_name()).append("**"); .append(custer.getCuster_name()).append(smeltingUnit).append("##")
.append(pcsn).append("**");
log.info("打印的唛头信息:{}", sb); log.info("打印的唛头信息:{}", sb);
MesPackDto mesPackDto = new MesPackDto(); MesPackDto mesPackDto = new MesPackDto();
mesPackDto.setMSGID(IdUtil.getSnowflake(1, 1).nextIdStr()); mesPackDto.setMSGID(IdUtil.getSnowflake(1, 1).nextIdStr());

View File

@@ -390,7 +390,7 @@
</select> </select>
<select id="getOrderTotalByMaterial" resultType="java.lang.Integer"> <select id="getOrderTotalByMaterial" resultType="java.lang.Integer">
SELECT SELECT
COUNT( * ) AS total_count COUNT(*) AS total_count
FROM FROM
"RTMG"."VIEW_POP_ORDER_RESULT_LMS" "RTMG"."VIEW_POP_ORDER_RESULT_LMS"
<where> <where>

View File

@@ -129,5 +129,7 @@ public class PdmBdWorkorder implements Serializable {
private String pack_method; private String pack_method;
@TableField(exist = false) @TableField(exist = false)
private String row_num; private String row_num;
@TableField(exist = false)
private String smelting_unit;
} }

View File

@@ -148,6 +148,7 @@ public class PdmBdWorkorderServiceImpl extends ServiceImpl<PdmBdWorkorderMapper,
JSONObject res = new JSONObject(); JSONObject res = new JSONObject();
res.put("order_no", entity.getOrder_no()); res.put("order_no", entity.getOrder_no());
res.put("custer_no", entity.getCuster_no()); res.put("custer_no", entity.getCuster_no());
res.put("smelting_unit", entity.getSmelting_unit());
entity.setExt_data(res.toJSONString()); entity.setExt_data(res.toJSONString());
} }
@@ -162,6 +163,7 @@ public class PdmBdWorkorderServiceImpl extends ServiceImpl<PdmBdWorkorderMapper,
&& !"6".equals(point.getPoint_type())) { && !"6".equals(point.getPoint_type())) {
// 工单号和客户编码存放json // 工单号和客户编码存放json
JSONObject res = new JSONObject(); JSONObject res = new JSONObject();
res.put("smelting_unit", entity.getSmelting_unit());
res.put("order_no", entity.getOrder_no()); res.put("order_no", entity.getOrder_no());
res.put("custer_no", entity.getCuster_no()); res.put("custer_no", entity.getCuster_no());
entity.setExt_data(res.toJSONString()); entity.setExt_data(res.toJSONString());

View File

@@ -206,7 +206,7 @@ public class SchBaseVehiclematerialgroupServiceImpl extends ServiceImpl<SchBaseV
.eq(SchBaseVehiclematerialgroup::getGroup_bind_material_status, value) .eq(SchBaseVehiclematerialgroup::getGroup_bind_material_status, value)
.eq(SchBaseVehiclematerialgroup::getIs_delete, false) .eq(SchBaseVehiclematerialgroup::getIs_delete, false)
.notIn(SchBaseVehiclematerialgroup::getVehicle_type, list) .notIn(SchBaseVehiclematerialgroup::getVehicle_type, list)
.orderByDesc(SchBaseVehiclematerialgroup::getUpdate_time); .orderByDesc(SchBaseVehiclematerialgroup::getGroup_id);
List<SchBaseVehiclematerialgroup> selectOne = vehiclematerialgroupMapper.selectList(lambda); List<SchBaseVehiclematerialgroup> selectOne = vehiclematerialgroupMapper.selectList(lambda);
return selectOne.size() > 0 ? selectOne.get(0) : null; return selectOne.size() > 0 ? selectOne.get(0) : null;
} }

View File

@@ -241,7 +241,7 @@ export default {
name: 'Menu', name: 'Menu',
components: { Treeselect, IconSelect, crudOperation, rrOperation, udOperation, DateRangePicker }, components: { Treeselect, IconSelect, crudOperation, rrOperation, udOperation, DateRangePicker },
cruds() { cruds() {
return CRUD({ title: '菜单', idField: 'menu_id', crudMethod: { ...crudMenu }}) return CRUD({ title: '菜单', url: 'api/sysMenu', idField: 'menu_id', crudMethod: { ...crudMenu }})
}, },
mixins: [presenter(), header(), form(defaultForm), crud()], mixins: [presenter(), header(), form(defaultForm), crud()],
dicts: ['system_type'], dicts: ['system_type'],

View File

@@ -249,6 +249,9 @@
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item v-if="form.region_code === 'FJ'" label="冶炼单位">
<el-input v-model="form.smelting_unit" style="width: 240px;" />
</el-form-item>
<el-form-item label="静置时间(分钟)" prop="standing_time"> <el-form-item label="静置时间(分钟)" prop="standing_time">
<el-input-number <el-input-number
v-model.number="form.standing_time" v-model.number="form.standing_time"
@@ -500,6 +503,7 @@ const defaultForm = {
realproduceend_date: null, realproduceend_date: null,
material_spec: null, material_spec: null,
material_code: null, material_code: null,
smelting_unit: null,
material_name: null, material_name: null,
standing_time: null, standing_time: null,
point_code: null, point_code: null,
@@ -608,6 +612,7 @@ export default {
this.form.order_no = ext.order_no this.form.order_no = ext.order_no
this.form.order_subnum = ext.custer_no this.form.order_subnum = ext.custer_no
this.form.custer_no = ext.custer_no this.form.custer_no = ext.custer_no
this.form.smelting_unit = ext.smelting_unit
} }
}, },
getWorkShopList() { // 获取车间列表 getWorkShopList() { // 获取车间列表