fix:反馈ACS管芯库存
This commit is contained in:
@@ -108,7 +108,7 @@ public class ProcessTask extends AbstractAcsTask {
|
||||
String task_type = jsonTask.getString("task_type");
|
||||
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);
|
||||
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");
|
||||
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);
|
||||
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");
|
||||
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);
|
||||
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.StrUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
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.dao.BstIvtStockingivt;
|
||||
import org.nl.b_lms.sch.task.dao.SchBaseTask;
|
||||
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.common.utils.SecurityUtils;
|
||||
import org.nl.common.utils.TaskUtils;
|
||||
import org.nl.modules.wql.WQL;
|
||||
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.manage.AbstractAcsTask;
|
||||
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.transaction.annotation.Transactional;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@@ -38,6 +44,11 @@ public class StockAreaCallTubeTask extends AbstractAcsTask {
|
||||
private IschBaseTaskService taskService;
|
||||
@Autowired
|
||||
private IBstIvtStockingivtService stockingivtService;
|
||||
@Autowired
|
||||
private IMdPbPapervehicleService mdPbPapervehicleService;
|
||||
@Autowired
|
||||
private WmsToAcsService wmsToAcsService;
|
||||
|
||||
@Override
|
||||
public List<AcsTaskDto> addTask() {
|
||||
/*
|
||||
@@ -90,6 +101,34 @@ public class StockAreaCallTubeTask extends AbstractAcsTask {
|
||||
startPointObj.setIvt_status("0");
|
||||
TaskUtils.updateOptMessageByBStockingPoint(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("否"))) {
|
||||
@@ -99,6 +138,25 @@ public class StockAreaCallTubeTask extends AbstractAcsTask {
|
||||
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
|
||||
public String createTask(JSONObject form) {
|
||||
String currentUserId = SecurityUtils.getCurrentUserId();
|
||||
|
||||
@@ -134,5 +134,11 @@ public class WmsToAcsController {
|
||||
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 /
|
||||
*/
|
||||
JSONObject getWeight(JSONObject jo);
|
||||
|
||||
JSONObject getTubeMsg(JSONObject jo);
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -467,4 +467,11 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
||||
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);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1540,7 +1540,7 @@ public class MesToLmsServiceImpl implements MesToLmsService {
|
||||
//取满放满
|
||||
form.put("point_code1", jsonCoolIvt.getString("full_point_code"));
|
||||
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("vehicle_code", jsonCoolIvt.getString("full_vehicle_code"));
|
||||
form.put("product_area", device_jo.getString("product_area"));
|
||||
@@ -1559,7 +1559,7 @@ public class MesToLmsServiceImpl implements MesToLmsService {
|
||||
JSONObject jsonIvt = WQL.getWO("PDA_RAWFOIL_01").addParamMap(map).process().uniqueResult(0);
|
||||
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("vehicle_code", jsonCoolIvt.getString("full_vehicle_code"));
|
||||
form.put("product_area", device_jo.getString("product_area"));
|
||||
@@ -1577,7 +1577,7 @@ public class MesToLmsServiceImpl implements MesToLmsService {
|
||||
form.put("point_code1", device_jo.getString("up_point_code") + "_M");
|
||||
//寻找可用的冷却区满轴点位
|
||||
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("vehicle_code", device_jo.getString("up_scroll"));
|
||||
form.put("product_area", device_jo.getString("product_area"));
|
||||
|
||||
Reference in New Issue
Block a user