fix:反馈ACS管芯库存
This commit is contained in:
@@ -108,7 +108,7 @@ public class ProcessTask extends AbstractAcsTask {
|
|||||||
String task_type = jsonTask.getString("task_type");
|
String task_type = jsonTask.getString("task_type");
|
||||||
String container_name = jsonTask.getString("material_code");
|
String container_name = jsonTask.getString("material_code");
|
||||||
|
|
||||||
if ("010701".equals(task_type)) {
|
if ("011001".equals(task_type)) {
|
||||||
//维护冷却区满轴点位的库存
|
//维护冷却区满轴点位的库存
|
||||||
JSONObject cool_jo1 = ivtTab.query("full_point_code = '" + point_code1 + "'").uniqueResult(0);
|
JSONObject cool_jo1 = ivtTab.query("full_point_code = '" + point_code1 + "'").uniqueResult(0);
|
||||||
String full_vehicle_code = cool_jo1.getString("full_vehicle_code");
|
String full_vehicle_code = cool_jo1.getString("full_vehicle_code");
|
||||||
@@ -129,7 +129,7 @@ public class ProcessTask extends AbstractAcsTask {
|
|||||||
map3.put("empty_point_status", "02");
|
map3.put("empty_point_status", "02");
|
||||||
ivtTab.update(map3, "empty_point_code = '" + point_code4 + "'");
|
ivtTab.update(map3, "empty_point_code = '" + point_code4 + "'");
|
||||||
}
|
}
|
||||||
if ("010702".equals(task_type)) {
|
if ("011002".equals(task_type)) {
|
||||||
//维护冷却区满轴点位的库存
|
//维护冷却区满轴点位的库存
|
||||||
JSONObject cool_jo1 = ivtTab.query("full_point_code = '" + point_code1 + "'").uniqueResult(0);
|
JSONObject cool_jo1 = ivtTab.query("full_point_code = '" + point_code1 + "'").uniqueResult(0);
|
||||||
String full_vehicle_code = cool_jo1.getString("full_vehicle_code");
|
String full_vehicle_code = cool_jo1.getString("full_vehicle_code");
|
||||||
@@ -156,7 +156,7 @@ public class ProcessTask extends AbstractAcsTask {
|
|||||||
map3.put("empty_point_status", "02");
|
map3.put("empty_point_status", "02");
|
||||||
ivtTab.update(map3, "empty_point_code = '" + point_code2 + "'");
|
ivtTab.update(map3, "empty_point_code = '" + point_code2 + "'");
|
||||||
}
|
}
|
||||||
if ("010704".equals(task_type)) {
|
if ("011004".equals(task_type)) {
|
||||||
//维护表处区点位
|
//维护表处区点位
|
||||||
JSONObject st_jo1 = stTab.query("up_point_code = '" + point_code1.split("_M")[0] + "'").uniqueResult(0);
|
JSONObject st_jo1 = stTab.query("up_point_code = '" + point_code1.split("_M")[0] + "'").uniqueResult(0);
|
||||||
String full_vehicle_code = st_jo1.getString("up_scroll");
|
String full_vehicle_code = st_jo1.getString("up_scroll");
|
||||||
|
|||||||
@@ -5,16 +5,21 @@ import cn.hutool.core.util.IdUtil;
|
|||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.nl.b_lms.bst.ivt.papervehicle.service.IMdPbPapervehicleService;
|
||||||
|
import org.nl.b_lms.bst.ivt.papervehicle.service.dao.MdPbPapervehicle;
|
||||||
import org.nl.b_lms.bst.ivt.stockingivt.service.IBstIvtStockingivtService;
|
import org.nl.b_lms.bst.ivt.stockingivt.service.IBstIvtStockingivtService;
|
||||||
import org.nl.b_lms.bst.ivt.stockingivt.service.dao.BstIvtStockingivt;
|
import org.nl.b_lms.bst.ivt.stockingivt.service.dao.BstIvtStockingivt;
|
||||||
import org.nl.b_lms.sch.task.dao.SchBaseTask;
|
import org.nl.b_lms.sch.task.dao.SchBaseTask;
|
||||||
import org.nl.b_lms.sch.task.service.IschBaseTaskService;
|
import org.nl.b_lms.sch.task.service.IschBaseTaskService;
|
||||||
|
import org.nl.b_lms.sch.tasks.slitter.util.SlitterTaskUtil;
|
||||||
import org.nl.b_lms.storage_manage.ios.enums.IOSEnum;
|
import org.nl.b_lms.storage_manage.ios.enums.IOSEnum;
|
||||||
import org.nl.common.utils.SecurityUtils;
|
import org.nl.common.utils.SecurityUtils;
|
||||||
import org.nl.common.utils.TaskUtils;
|
import org.nl.common.utils.TaskUtils;
|
||||||
import org.nl.modules.wql.WQL;
|
import org.nl.modules.wql.WQL;
|
||||||
import org.nl.modules.wql.core.bean.WQLObject;
|
import org.nl.modules.wql.core.bean.WQLObject;
|
||||||
|
import org.nl.wms.ext.acs.service.WmsToAcsService;
|
||||||
import org.nl.wms.sch.AcsTaskDto;
|
import org.nl.wms.sch.AcsTaskDto;
|
||||||
import org.nl.wms.sch.manage.AbstractAcsTask;
|
import org.nl.wms.sch.manage.AbstractAcsTask;
|
||||||
import org.nl.wms.sch.manage.TaskStatusEnum;
|
import org.nl.wms.sch.manage.TaskStatusEnum;
|
||||||
@@ -22,6 +27,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -38,6 +44,11 @@ public class StockAreaCallTubeTask extends AbstractAcsTask {
|
|||||||
private IschBaseTaskService taskService;
|
private IschBaseTaskService taskService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private IBstIvtStockingivtService stockingivtService;
|
private IBstIvtStockingivtService stockingivtService;
|
||||||
|
@Autowired
|
||||||
|
private IMdPbPapervehicleService mdPbPapervehicleService;
|
||||||
|
@Autowired
|
||||||
|
private WmsToAcsService wmsToAcsService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<AcsTaskDto> addTask() {
|
public List<AcsTaskDto> addTask() {
|
||||||
/*
|
/*
|
||||||
@@ -90,6 +101,34 @@ public class StockAreaCallTubeTask extends AbstractAcsTask {
|
|||||||
startPointObj.setIvt_status("0");
|
startPointObj.setIvt_status("0");
|
||||||
TaskUtils.updateOptMessageByBStockingPoint(startPointObj);
|
TaskUtils.updateOptMessageByBStockingPoint(startPointObj);
|
||||||
stockingivtService.update(startPointObj);
|
stockingivtService.update(startPointObj);
|
||||||
|
|
||||||
|
|
||||||
|
//下发ACS点位库存信息
|
||||||
|
List<MdPbPapervehicle> list = mdPbPapervehicleService.list(new LambdaQueryWrapper<MdPbPapervehicle>().eq(MdPbPapervehicle::getVehicle_code, task.getVehicle_code()));
|
||||||
|
String[] material_codes = new String[list.size()];
|
||||||
|
String[] material_specs = new String[list.size()];
|
||||||
|
int[] qtys = new int[list.size()];
|
||||||
|
for (int i = 0; i < list.size(); i++) {
|
||||||
|
MdPbPapervehicle vehicle = list.get(i);
|
||||||
|
String material_code = vehicle.getMaterial_code();
|
||||||
|
int qty = vehicle.getQty().intValue();
|
||||||
|
if (containscode(material_codes, material_code)) {
|
||||||
|
int index = getIndex(material_codes, material_code);
|
||||||
|
qtys[index] += qty;
|
||||||
|
} else {
|
||||||
|
material_codes[i] = vehicle.getMaterial_code();
|
||||||
|
String spec = SlitterTaskUtil.getComposePaperTubeInformation(vehicle.getMaterial_name());
|
||||||
|
material_specs[i] = spec;
|
||||||
|
qtys[i] = qty;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
JSONObject jsonObject = new JSONObject();
|
||||||
|
jsonObject.put("to_material", material_codes);
|
||||||
|
jsonObject.put("to_spec", material_codes);
|
||||||
|
jsonObject.put("to_qty", qtys);
|
||||||
|
jsonObject.put("device_code", material_specs);
|
||||||
|
wmsToAcsService.getTubeMsg(jsonObject);
|
||||||
|
|
||||||
}
|
}
|
||||||
// 取消
|
// 取消
|
||||||
if (status.equals(IOSEnum.IS_NOTANDYES.code("否"))) {
|
if (status.equals(IOSEnum.IS_NOTANDYES.code("否"))) {
|
||||||
@@ -99,6 +138,25 @@ public class StockAreaCallTubeTask extends AbstractAcsTask {
|
|||||||
taskService.updateById(task);
|
taskService.updateById(task);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean containscode(String[] names, String name) {
|
||||||
|
for (String n : names) {
|
||||||
|
if (name.equals(n)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取name在数组中的索引
|
||||||
|
public int getIndex(String[] names, String name) {
|
||||||
|
for (int i = 0; i < names.length; i++) {
|
||||||
|
if (name.equals(names[i])) {
|
||||||
|
return i;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return -1; // 如果找不到返回-1
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String createTask(JSONObject form) {
|
public String createTask(JSONObject form) {
|
||||||
String currentUserId = SecurityUtils.getCurrentUserId();
|
String currentUserId = SecurityUtils.getCurrentUserId();
|
||||||
|
|||||||
@@ -134,5 +134,11 @@ public class WmsToAcsController {
|
|||||||
return new ResponseEntity<>(wmsToAcsService.getWeight(jo), HttpStatus.OK);
|
return new ResponseEntity<>(wmsToAcsService.getWeight(jo), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/getTubeMsg")
|
||||||
|
@Log(value = "反馈管芯库存信息", isInterfaceLog = true, interfaceLogType = InterfaceLogType.LMS_TO_ACS)
|
||||||
|
public ResponseEntity<Object> getTubeMsg(@RequestBody JSONObject jo) {
|
||||||
|
return new ResponseEntity<>(wmsToAcsService.getTubeMsg(jo), HttpStatus.OK);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -144,4 +144,9 @@ public interface WmsToAcsService {
|
|||||||
* @return /
|
* @return /
|
||||||
*/
|
*/
|
||||||
JSONObject getWeight(JSONObject jo);
|
JSONObject getWeight(JSONObject jo);
|
||||||
|
|
||||||
|
JSONObject getTubeMsg(JSONObject jo);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -467,4 +467,11 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
|||||||
return AcsUtil.notifyAcs(api, arr);
|
return AcsUtil.notifyAcs(api, arr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JSONObject getTubeMsg(JSONObject whereJson) {
|
||||||
|
String api = "api/wms/getTubeMes";
|
||||||
|
JSONArray arr = new JSONArray();
|
||||||
|
arr.add(whereJson);
|
||||||
|
return AcsUtil.notifyAcs(api, arr);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1530,7 +1530,7 @@ public class MesToLmsServiceImpl implements MesToLmsService {
|
|||||||
//取满放满
|
//取满放满
|
||||||
form.put("point_code1", jsonCoolIvt.getString("full_point_code"));
|
form.put("point_code1", jsonCoolIvt.getString("full_point_code"));
|
||||||
form.put("point_code2", device_jo.getString("up_point_code") + "_M");
|
form.put("point_code2", device_jo.getString("up_point_code") + "_M");
|
||||||
form.put("task_type", "010702");
|
form.put("task_type", "011002");
|
||||||
form.put("material_code", containerName);
|
form.put("material_code", containerName);
|
||||||
form.put("vehicle_code", jsonCoolIvt.getString("full_vehicle_code"));
|
form.put("vehicle_code", jsonCoolIvt.getString("full_vehicle_code"));
|
||||||
form.put("product_area", device_jo.getString("product_area"));
|
form.put("product_area", device_jo.getString("product_area"));
|
||||||
@@ -1549,7 +1549,7 @@ public class MesToLmsServiceImpl implements MesToLmsService {
|
|||||||
JSONObject jsonIvt = WQL.getWO("PDA_RAWFOIL_01").addParamMap(map).process().uniqueResult(0);
|
JSONObject jsonIvt = WQL.getWO("PDA_RAWFOIL_01").addParamMap(map).process().uniqueResult(0);
|
||||||
form.put("point_code4", jsonIvt.getString("empty_point_code"));
|
form.put("point_code4", jsonIvt.getString("empty_point_code"));
|
||||||
}
|
}
|
||||||
form.put("task_type", "010701");
|
form.put("task_type", "011001");
|
||||||
form.put("material_code", containerName);
|
form.put("material_code", containerName);
|
||||||
form.put("vehicle_code", jsonCoolIvt.getString("full_vehicle_code"));
|
form.put("vehicle_code", jsonCoolIvt.getString("full_vehicle_code"));
|
||||||
form.put("product_area", device_jo.getString("product_area"));
|
form.put("product_area", device_jo.getString("product_area"));
|
||||||
@@ -1567,7 +1567,7 @@ public class MesToLmsServiceImpl implements MesToLmsService {
|
|||||||
form.put("point_code1", device_jo.getString("up_point_code") + "_M");
|
form.put("point_code1", device_jo.getString("up_point_code") + "_M");
|
||||||
//寻找可用的冷却区满轴点位
|
//寻找可用的冷却区满轴点位
|
||||||
form.put("point_code2", jsonIvt.getString("full_point_code"));
|
form.put("point_code2", jsonIvt.getString("full_point_code"));
|
||||||
form.put("task_type", "010704");
|
form.put("task_type", "011004");
|
||||||
form.put("material_code", containerName);
|
form.put("material_code", containerName);
|
||||||
form.put("vehicle_code", device_jo.getString("up_scroll"));
|
form.put("vehicle_code", device_jo.getString("up_scroll"));
|
||||||
form.put("product_area", device_jo.getString("product_area"));
|
form.put("product_area", device_jo.getString("product_area"));
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
server:
|
server:
|
||||||
port: 9999
|
port: 8010
|
||||||
#配置数据源
|
#配置数据源
|
||||||
spring:
|
spring:
|
||||||
datasource:
|
datasource:
|
||||||
druid:
|
druid:
|
||||||
db-type: com.alibaba.druid.pool.DruidDataSource
|
db-type: com.alibaba.druid.pool.DruidDataSource
|
||||||
driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
|
driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
|
||||||
# url: jdbc:log4jdbc:mysql://${DB_HOST:10.1.3.91}:${DB_PORT:3306}/${DB_NAME:lms_test2}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
|
url: jdbc:log4jdbc:mysql://${DB_HOST:10.1.3.91}:${DB_PORT:3306}/${DB_NAME:lzhl_lms}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
|
||||||
url: jdbc:log4jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3306}/${DB_NAME:lzhl_two_test}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
|
# url: jdbc:log4jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3306}/${DB_NAME:lzhl_two_test}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true
|
||||||
username: ${DB_USER:root}
|
username: ${DB_USER:root}
|
||||||
password: ${DB_PWD:12356}
|
password: ${DB_PWD:NLABC&hl123}
|
||||||
# 初始连接数
|
# 初始连接数
|
||||||
initial-size: 5
|
initial-size: 5
|
||||||
# 最小连接数
|
# 最小连接数
|
||||||
|
|||||||
Reference in New Issue
Block a user