add: 管芯库联调修改

This commit is contained in:
ls
2024-11-11 14:48:50 +08:00
parent df04adcf6d
commit b239b13cc7
25 changed files with 434 additions and 315 deletions

View File

@@ -55,7 +55,7 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
@Override
public JSONObject toAcsGxInStorage(JSONArray param) {
return AcsUtil.notifyAcs4("/api/wms/getTubeMsg", param);
return AcsUtil.notifyAcs4("api/wms/getTubeMsg", param);
}
}

View File

@@ -11,6 +11,7 @@ import org.nl.config.lucene.TagNameEnum;
import org.nl.wms.basedata.master.classification.service.IMdBaseClassstandardService;
import org.nl.wms.basedata.master.classification.service.dao.MdBaseClassstandard;
import org.nl.wms.basedata.material.dao.MdMeMaterialbase;
import org.nl.wms.basedata.material.dao.mapper.MdMeMaterialbaseMapper;
import org.nl.wms.basedata.material.service.ImdMeMaterialbaseService;
import org.nl.wms.ext.acs.service.WmsToAcsService;
import org.nl.wms.pda.st.service.GxPdaService;
@@ -48,19 +49,17 @@ public class GxPdaServiceImpl implements GxPdaService {
private GxOutStorageTask gxOutStorageTask;
@Autowired
private WmsToAcsService wmsToAcsService;
@Autowired
private MdMeMaterialbaseMapper mdMeMaterialbaseMapper;
@Override
public JSONArray getGxSpecification() {
// todo: 可能维护到物料表中!!!
MdBaseClassstandard one = classstandardService.getOne(new LambdaQueryWrapper<MdBaseClassstandard>()
.eq(MdBaseClassstandard::getClass_code, "0002"));
List<MdBaseClassstandard> list = classstandardService.list(new LambdaQueryWrapper<MdBaseClassstandard>()
.eq(MdBaseClassstandard::getParent_class_id, one.getClass_id()));
List<MdMeMaterialbase> list = mdMeMaterialbaseMapper.selectList(new LambdaQueryWrapper<MdMeMaterialbase>().eq(MdMeMaterialbase::getMaterial_code, "GX"));
JSONArray jsonArray = list.stream()
.map(item -> {
JSONObject jsonObject = new JSONObject();
jsonObject.put("text", item.getClass_name());
jsonObject.put("value", item.getClass_code());
jsonObject.put("text", item.getMaterial_spec());
jsonObject.put("value", item.getMaterial_model());
return jsonObject;
})
.collect(Collectors.toCollection(JSONArray::new));
@@ -156,6 +155,7 @@ public class GxPdaServiceImpl implements GxPdaService {
List<SchBasePoint> allGxPoints = pointService.getGxPointNotLock();
if (allGxPoints.size() < gxNumber) {
log.warn("管芯库不够存放,只够存放{}个管芯", allGxPoints.size());
throw new BadRequestException("管芯库不够存放,只够存放"+allGxPoints.size()+"个管芯");
}
int actualQuantity = Math.min(gxNumber, allGxPoints.size());
// 更新点位信息
@@ -174,12 +174,13 @@ public class GxPdaServiceImpl implements GxPdaService {
acs.put("product_area", URLEnum.ACS_URL_A1.getProduct_area());
acs.put("device_code", gxRks.get(0).getPoint_code());
acs.put("num", gxNumber);
for (int i = 0; i < actualQuantity; i++) {
// 查找点位最终一次性发给ACS
acs.put("barcode" + (i + 1), materialCode);
acs.put("target" + (i + 1), allGxPoints.get(i).getPoint_code());
acsArray.add(acs);
}
acsArray.add(acs);
// 调用ACS
log.info("调用ACS管芯入库的参数 - {}", acsArray);
JSONObject jsonObject = wmsToAcsService.toAcsGxInStorage(acsArray);
@@ -240,6 +241,11 @@ public class GxPdaServiceImpl implements GxPdaService {
}
SchBasePoint endPoint = endPoints.get(0);
List<SchBasePoint> updatePoints = new ArrayList<>();
String[] split = materialSpec.split("/");
JSONObject interaction_json = new JSONObject();
interaction_json.put("size", split[1]);
interaction_json.put("len", split[2]);
interaction_json.put("thickness", split[3]);
for (int i = 0; i < number; i++) {
// 由任务完成来清除点位
SchBasePoint point = allPoint.get(i);
@@ -251,6 +257,7 @@ public class GxPdaServiceImpl implements GxPdaService {
taskParam.put("vehicle_code", point.getVehicle_code());
taskParam.put("vehicle_type", point.getVehicle_type());
taskParam.put("config_code", "GxOutStorageTask");
taskParam.put("interaction_json", interaction_json);
taskParam.put("create_mode", GeneralDefinition.PDA_CREATION);
String task = gxOutStorageTask.createTask(taskParam);
log.info("任务创建成功 - {}", task);

View File

@@ -282,7 +282,6 @@ public abstract class AbstractTask {
List<SchBaseTask> unFinishTasksByTaskConfig = taskService.findUnFinishTasksByTaskConfig(
taskConfig.getConfig_code(), taskConfig.getTask_direction());
Assert.isFalse(unFinishTasksByTaskConfig.size() >= tcmn, LangProcess.msg("common_maxTaskTip", applyPointCode));
// 校验同个点位,同种任务是否多次请求创建任务固定只能1个任务此处不判断调用此处前判断
// List<SchBaseTask> applyPointTask = taskService.findUnFinishTasksByTaskConfig(
// taskConfig.getConfig_code(), applyPointCode, taskConfig.getTask_direction());

View File

@@ -1,5 +1,6 @@
package org.nl.wms.sch.task_manage;
import com.alibaba.fastjson.JSONObject;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
@@ -139,6 +140,11 @@ public class AcsTaskDto {
* 扩展属性
*/
Map<String,String> params;
/**
* 扩展属性
*/
JSONObject interaction_json;
/**
* 区域
*/

View File

@@ -19,6 +19,8 @@ import org.nl.wms.util.TaskUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.Objects;
import static org.nl.wms.util.TaskUtils.checkTaskOptionStatus;
import static org.nl.wms.util.TaskUtils.setUpdateByType;
@@ -42,8 +44,12 @@ public class GxOutStorageTask extends AbstractTask {
@Override
public void deliveryBeforeProcessing(SchBaseTask task, AcsTaskDto acsTaskDto) {
acsTaskDto.setVehicle_code("");
acsTaskDto.setVehicle_code2("");
JSONObject param = JSONObject.parseObject(task.getRequest_param());
Object interactionObject = param.get("interaction_json");
if (!Objects.isNull(interactionObject)){
JSONObject interactionJson = (JSONObject)param.get("interaction_json");
acsTaskDto.setInteraction_json(interactionJson);
}
}
@Override

View File

@@ -4,13 +4,13 @@ server:
nl:
config:
mysql:
ip: 127.0.0.1
ip: 192.168.20.15
port: 3306
username: root
password: 12356
database: nl-platform
password: NLABC&ld123
database: ldnx_lms2
redis:
ip: 127.0.0.1
ip: 192.168.20.15
port: 6379
password: null
database: 1

View File

@@ -176,6 +176,7 @@ https://juejin.cn/post/6844903775631572999
<root level="INFO">
<appender-ref ref="asyncFileAppender"/>
<appender-ref ref="asyncLuceneAppender"/>
<appender-ref ref="CONSOLE"/>
</root>
<logger name="org.springframework" level="ERROR" additivity="false">
<appender-ref ref="asyncFileAppender"/>

View File

@@ -2,6 +2,6 @@ ENV = 'production'
# 如果使用 Nginx 代理后端接口,那么此处需要改为 '/',文件查看 Docker 部署篇Nginx 配置
# 接口地址,注意协议,如果你没有配置 ssl需要将 https 改为 http
VUE_APP_BASE_API = 'http://10.93.41.201:8010'
VUE_APP_BASE_API = 'http://192.168.20.13:8011'
# 如果接口是 http 形式, wss 需要改为 ws
VUE_APP_WS_API = 'ws://10.93.41.201:8010'
VUE_APP_WS_API = 'ws://192.168.20.13:8011'

View File

@@ -3,7 +3,7 @@ window.g = {
VUE_APP_BASE_API: 'http://127.0.0.1:8010'
},
prod: {
VUE_APP_BASE_API: 'http://127.0.0.1:8010'
VUE_APP_BASE_API: 'http://192.168.20.13:8011'
}
}