feat: 新增接收缺口体积,人工包装上报批次对应关系,木托盘批次修改
This commit is contained in:
@@ -126,6 +126,8 @@ public class MdBaseMaterial implements Serializable {
|
||||
private String pack_method;
|
||||
private String pack_directsize;
|
||||
private String draw_address;
|
||||
/** 缺口体积 */
|
||||
private String reduce_volume;
|
||||
@TableField(exist = false)
|
||||
private String total_material_qty;
|
||||
}
|
||||
|
||||
@@ -240,6 +240,7 @@
|
||||
PACK_METHOD AS pack_method,
|
||||
PACK_DIRECTSIZE AS pack_directsize,
|
||||
DRAW_ADDRESS AS draw_address,
|
||||
REDUCE_VOLUME AS reduce_volume,
|
||||
'3' AS create_id,
|
||||
'MES系统' AS create_name
|
||||
FROM "RTMG"."VIEW_MATERIAL_LMS"
|
||||
|
||||
@@ -23,11 +23,17 @@ import lombok.Data;
|
||||
*/
|
||||
@Data
|
||||
public class MesSemiProDto {
|
||||
/** 标识 */
|
||||
private String RECORD_ID;
|
||||
/** 木托盘编码 */
|
||||
private String WOOD_VEHICLE_CODE;
|
||||
/** 木托盘对应的数量 */
|
||||
private String WOOD_QTY;
|
||||
/** 木托盘对应的批次 */
|
||||
private String WOOD_PCSN;
|
||||
/** 钢托盘1编码 */
|
||||
private String STEEL_VEHICLE_CODE1;
|
||||
/** 钢托盘1批次 */
|
||||
private String STEEL_QTY1;
|
||||
private String STEEL_PCSN1;
|
||||
private String STEEL_VEHICLE_CODE2;
|
||||
@@ -37,6 +43,7 @@ public class MesSemiProDto {
|
||||
private String STEEL_QTY3;
|
||||
private String STEEL_PCSN3;
|
||||
private String RECORD_TIME;
|
||||
/** 保存时间 */
|
||||
private String CREATE_TM;
|
||||
private String OP_FLAG;
|
||||
private String OP_TM;
|
||||
|
||||
@@ -75,7 +75,7 @@ public class WmsToMesServiceImpl implements WmsToMesService {
|
||||
|
||||
@Override
|
||||
public void synchronizeMaterialInfo() {
|
||||
MDC.put("system", "log");
|
||||
MDC.put("system", "物料同步");
|
||||
log.info("同步物料开始");
|
||||
// 获取lms数据库中的最后获取时间
|
||||
// LambdaQueryWrapper<MdBaseMaterial> lmsMaterialTabQuery = new QueryWrapper<MdBaseMaterial>().lambda();
|
||||
|
||||
@@ -9,10 +9,15 @@ import lombok.Data;
|
||||
*/
|
||||
@Data
|
||||
public class ManualResidueInDto {
|
||||
/** 木托盘 */
|
||||
private String vehicle_code;
|
||||
private String qty;
|
||||
/**
|
||||
* 剩余数量
|
||||
*/
|
||||
/** 木托物料数量 */
|
||||
private Integer qty;
|
||||
private String g_vehicle_code1;
|
||||
private Integer g_qty1;
|
||||
private String g_vehicle_code2;
|
||||
private Integer g_qty2;
|
||||
private String g_vehicle_code3;
|
||||
private Integer g_qty3;
|
||||
private String surplus_quantity;
|
||||
}
|
||||
|
||||
@@ -312,6 +312,12 @@ public class PdaServiceImpl implements PdaService {
|
||||
param.put("qty", manualResidueInDto.getQty());
|
||||
param.put("vehicle_code", manualResidueInDto.getVehicle_code());
|
||||
param.put("vehicle_qty", "1");
|
||||
param.put("vehicle_code1", manualResidueInDto.getG_vehicle_code1());
|
||||
param.put("qty1", manualResidueInDto.getG_qty1());
|
||||
param.put("vehicle_code2", manualResidueInDto.getG_vehicle_code2());
|
||||
param.put("qty2", manualResidueInDto.getG_qty2());
|
||||
param.put("vehicle_code3", manualResidueInDto.getG_vehicle_code3());
|
||||
param.put("qty3", manualResidueInDto.getG_qty3());
|
||||
param.put("user_id", "1");
|
||||
param.put("surplus_quantity", manualResidueInDto.getSurplus_quantity());
|
||||
taskService.apply(param);
|
||||
|
||||
@@ -50,7 +50,8 @@
|
||||
IF(LENGTH(m.standard_size_height3) > 0, m.standard_size_height3, 0) AS standard_size_height3,
|
||||
IF(LENGTH(m.standard_size_height4) > 0, m.standard_size_height4, 0) AS standard_size_height4,
|
||||
IF(LENGTH(m.single_weight) > 0, m.single_weight, 0) AS standard_weight,
|
||||
0 AS detection_error
|
||||
0 AS detection_error,
|
||||
IF(LENGTH(m.reduce_volume) > 0, m.reduce_volume, 0) AS reduce_volume,
|
||||
FROM `pdm_bd_workorder` w
|
||||
LEFT JOIN md_base_material m ON m.material_id = w.material_id
|
||||
WHERE w.workorder_id = #{workorderId}
|
||||
@@ -103,7 +104,8 @@
|
||||
IF(LENGTH(m.standard_size_height3) > 0, m.standard_size_height3, 0) AS standard_size_height3,
|
||||
IF(LENGTH(m.standard_size_height4) > 0, m.standard_size_height4, 0) AS standard_size_height4,
|
||||
IF(LENGTH(m.single_weight) > 0, m.single_weight, 0) AS standard_weight,
|
||||
0 AS detection_error
|
||||
0 AS detection_error,
|
||||
IF(LENGTH(m.reduce_volume) > 0, m.reduce_volume, 0) AS reduce_volume,
|
||||
FROM pdm_bd_workorder w
|
||||
LEFT JOIN md_base_material m ON m.material_id = w.material_id
|
||||
WHERE w.workorder_status = '1'
|
||||
|
||||
@@ -85,5 +85,9 @@ public class AcsWorkOrderVo {
|
||||
* 检测误差值 - 不用传
|
||||
*/
|
||||
private String detection_error;
|
||||
/**
|
||||
* 缺口体积
|
||||
*/
|
||||
private String reduce_volume;
|
||||
|
||||
}
|
||||
|
||||
@@ -263,11 +263,12 @@ public class FJMKTask extends AbstractTask {
|
||||
groupEntity.setIs_full(isFull.equals(GeneralDefinition.YES));
|
||||
vehiclematerialgroupService.saveOrUpdate(groupEntity);
|
||||
// hint: 记录数据上报MES
|
||||
// update: 木托批次:成品物料号+日期
|
||||
MesSemiProDto mesSemiProDto = new MesSemiProDto();
|
||||
mesSemiProDto.setRECORD_ID(IdUtil.getSnowflake(1, 1).nextIdStr());
|
||||
mesSemiProDto.setWOOD_VEHICLE_CODE(vehicleCode);
|
||||
mesSemiProDto.setWOOD_QTY(String.valueOf(qty));
|
||||
mesSemiProDto.setWOOD_PCSN(groupEntity.getPcsn());
|
||||
mesSemiProDto.setWOOD_PCSN(groupEntity.getMaterial_id() + groupEntity.getPcsn());
|
||||
mesSemiProDto.setSTEEL_VEHICLE_CODE1(vehicleCode1);
|
||||
mesSemiProDto.setSTEEL_VEHICLE_CODE2(vehicleCode2);
|
||||
mesSemiProDto.setSTEEL_VEHICLE_CODE3(vehicleCode3);
|
||||
|
||||
@@ -8,6 +8,8 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import org.nl.common.exception.BadRequestException;
|
||||
import org.nl.system.service.notice.ISysNoticeService;
|
||||
import org.nl.wms.ext.mes.service.WmsToMesService;
|
||||
import org.nl.wms.ext.mes.service.dto.MesSemiProDto;
|
||||
import org.nl.wms.pdm.workorder.service.IPdmBdWorkorderService;
|
||||
import org.nl.wms.pdm.workorder.service.dao.PdmBdWorkorder;
|
||||
import org.nl.wms.sch.group.service.ISchBaseVehiclematerialgroupService;
|
||||
@@ -44,6 +46,9 @@ import java.util.stream.Collectors;
|
||||
@TaskType("RGFJRKTask")
|
||||
public class FJRKTask extends AbstractTask {
|
||||
private static final String TASK_CONFIG_CODE = "RGFJRKTask";
|
||||
|
||||
@Autowired
|
||||
private WmsToMesService wmsToMesService;
|
||||
@Autowired
|
||||
private ISchBasePointService pointService;
|
||||
@Autowired
|
||||
@@ -207,6 +212,19 @@ public class FJRKTask extends AbstractTask {
|
||||
String deviceCode = param.getString("device_code");
|
||||
JSONObject stackParameters = param.getJSONObject("palletize");
|
||||
String vehicleCode = param.getString("vehicle_code");
|
||||
// 钢托盘数据
|
||||
String qty1 = ObjectUtil.isNotEmpty(param.getString("qty1")) ? param.getString("qty1") : "-";
|
||||
String vehicleCode1 = ObjectUtil.isNotEmpty(param.getString("vehicle_code1"))
|
||||
? TaskUtils.defaultVehicleCode(param.getString("vehicle_code1")) : "-";
|
||||
String pcsn1 = vehiclematerialgroupService.getNowOrOldPcsnByVehicleCode(vehicleCode1, GeneralDefinition.STEEL_TRAY);
|
||||
String qty2 = ObjectUtil.isNotEmpty(param.getString("qty2")) ? param.getString("qty2") : "-";
|
||||
String vehicleCode2 = ObjectUtil.isNotEmpty(param.getString("vehicle_code2"))
|
||||
? TaskUtils.defaultVehicleCode(param.getString("vehicle_code2")) : "-";
|
||||
String pcsn2 = vehiclematerialgroupService.getNowOrOldPcsnByVehicleCode(vehicleCode2, GeneralDefinition.STEEL_TRAY);
|
||||
String qty3 = ObjectUtil.isNotEmpty(param.getString("qty3")) ? param.getString("qty3") : "-";
|
||||
String vehicleCode3 = ObjectUtil.isNotEmpty(param.getString("vehicle_code3"))
|
||||
? TaskUtils.defaultVehicleCode(param.getString("vehicle_code3")) : "-";
|
||||
String pcsn3 = vehiclematerialgroupService.getNowOrOldPcsnByVehicleCode(vehicleCode3, GeneralDefinition.STEEL_TRAY);
|
||||
// 砖块数量
|
||||
Integer qty = param.getInteger("qty");
|
||||
SchBasePoint basePoint = pointService.getById(deviceCode);
|
||||
@@ -244,6 +262,26 @@ public class FJRKTask extends AbstractTask {
|
||||
groupEntity.setGroup_status(GroupStatusEnum.IN_STORAGE.getType());
|
||||
groupEntity.setIs_delete(false);
|
||||
vehiclematerialgroupService.saveOrUpdate(groupEntity);
|
||||
// hint: 记录数据上报MES
|
||||
// update: 木托批次:成品物料号+日期
|
||||
MesSemiProDto mesSemiProDto = new MesSemiProDto();
|
||||
mesSemiProDto.setRECORD_ID(IdUtil.getSnowflake(1, 1).nextIdStr());
|
||||
mesSemiProDto.setWOOD_VEHICLE_CODE(vehicleCode);
|
||||
mesSemiProDto.setWOOD_QTY(String.valueOf(qty));
|
||||
mesSemiProDto.setWOOD_PCSN(groupEntity.getMaterial_id() + groupEntity.getPcsn());
|
||||
mesSemiProDto.setSTEEL_VEHICLE_CODE1(vehicleCode1);
|
||||
mesSemiProDto.setSTEEL_VEHICLE_CODE2(vehicleCode2);
|
||||
mesSemiProDto.setSTEEL_VEHICLE_CODE3(vehicleCode3);
|
||||
mesSemiProDto.setSTEEL_PCSN1(pcsn1);
|
||||
mesSemiProDto.setSTEEL_PCSN2(pcsn2);
|
||||
mesSemiProDto.setSTEEL_PCSN3(pcsn3);
|
||||
mesSemiProDto.setSTEEL_QTY1(qty1);
|
||||
mesSemiProDto.setSTEEL_QTY2(qty2);
|
||||
mesSemiProDto.setSTEEL_QTY3(qty3);
|
||||
mesSemiProDto.setRECORD_TIME(DateUtil.now());
|
||||
mesSemiProDto.setCREATE_TM(DateUtil.now());
|
||||
mesSemiProDto.setOP_FLAG(GeneralDefinition.NO);
|
||||
wmsToMesService.reportSemiProToMes(mesSemiProDto);
|
||||
// 返回组盘id记录任务中
|
||||
return groupEntity.getGroup_id();
|
||||
}
|
||||
|
||||
@@ -95,6 +95,10 @@ https://juejin.cn/post/6844903775631572999
|
||||
<appender-ref ref="asyncLuceneAppender"/>
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.nl.config.thread.ThreadMonitorCollector" level="ERROR" additivity="false">
|
||||
<appender-ref ref="asyncLuceneAppender"/>
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.springframework" level="ERROR" additivity="true">
|
||||
<appender-ref ref="CONSOLE"/>
|
||||
</logger>
|
||||
@@ -158,6 +162,30 @@ https://juejin.cn/post/6844903775631572999
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
<appender-ref ref="asyncLuceneAppender"/>
|
||||
</root>
|
||||
<logger name="com.baomidou.mybatisplus.core.MybatisConfiguration" level="ERROR" additivity="false">
|
||||
<appender-ref ref="asyncLuceneAppender"/>
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.redisson.command.RedisExecutor" level="ERROR" additivity="false">
|
||||
<appender-ref ref="asyncLuceneAppender"/>
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.reflections.Reflections" level="ERROR" additivity="false">
|
||||
<appender-ref ref="asyncLuceneAppender"/>
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.redisson.connection.ClientConnectionsEntry" level="ERROR" additivity="false">
|
||||
<appender-ref ref="asyncLuceneAppender"/>
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.mybatis.spring.mapper.ClassPathMapperScanner" level="ERROR" additivity="false">
|
||||
<appender-ref ref="asyncLuceneAppender"/>
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.nl.config.thread.ThreadMonitorCollector" level="ERROR" additivity="false">
|
||||
<appender-ref ref="asyncLuceneAppender"/>
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.springframework" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
|
||||
@@ -97,7 +97,7 @@ function CRUD(options) {
|
||||
// 页码
|
||||
page: 0,
|
||||
// 每页数据条数
|
||||
size: 10,
|
||||
size: 20,
|
||||
// 总数据条数
|
||||
total: 0
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user