rev:修改
This commit is contained in:
@@ -94,14 +94,14 @@ public class UserController {
|
||||
@PostMapping(value = "/updatePass")
|
||||
public ResponseEntity<Object> updatePass(@RequestBody JSONObject passVo) throws Exception {
|
||||
// 解密,得到字符密码
|
||||
String oldPass = RsaUtils.decryptByPrivateKey(RsaProperties.privateKey,passVo.getString("oldPass"));
|
||||
String newPass = RsaUtils.decryptByPrivateKey(RsaProperties.privateKey,passVo.getString("newPass"));
|
||||
String oldPass = RsaUtils.decryptByPrivateKey(RsaProperties.privateKey, passVo.getString("oldPass"));
|
||||
String newPass = RsaUtils.decryptByPrivateKey(RsaProperties.privateKey, passVo.getString("newPass"));
|
||||
SysUser user = userService.getOne(new LambdaQueryWrapper<SysUser>().eq(SysUser::getUsername, SecurityUtils.getCurrentUsername()));
|
||||
if (!SaSecureUtil.md5BySalt(user.getPassword(), "salt").equals(SaSecureUtil.md5BySalt(oldPass, "salt"))) {
|
||||
throw new BadRequestException(LangProcess.msg("login_pwd_1"));
|
||||
if (!user.getPassword().equals(SaSecureUtil.md5BySalt(oldPass,"salt"))) {
|
||||
throw new BadRequestException("修改失败,旧密码错误");
|
||||
}
|
||||
if (!SaSecureUtil.md5BySalt(user.getPassword(), "salt").equals(SaSecureUtil.md5BySalt(newPass, "salt"))) {
|
||||
throw new BadRequestException(LangProcess.msg("login_pwd_2"));
|
||||
if (user.getPassword().equals(SaSecureUtil.md5BySalt(newPass, "salt"))) {
|
||||
throw new BadRequestException("新密码不能与旧密码相同");
|
||||
}
|
||||
user.setPassword(SaSecureUtil.md5BySalt(newPass, "salt"));
|
||||
userService.updateById(user);
|
||||
|
||||
@@ -197,5 +197,10 @@ public class MdMeMaterialbase implements Serializable {
|
||||
*/
|
||||
private String quality_code;
|
||||
|
||||
/**
|
||||
* 生产商
|
||||
*/
|
||||
private String produce_name;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -170,8 +170,8 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
secondaryPackagingService.wrappingDown(whereJson);
|
||||
}
|
||||
if (type_dtl.equals(IOSConstant.TWO)) {
|
||||
// 上料
|
||||
secondaryPackagingService.wrappingCall(whereJson);
|
||||
// 上料 由码垛下料生成
|
||||
// secondaryPackagingService.wrappingCall(whereJson);
|
||||
}
|
||||
}
|
||||
// 机械手
|
||||
@@ -188,6 +188,9 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
} else {
|
||||
throw new BadRequestException("设备编码为:" + device_code + "的设备正在操作中!");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.info("ACS向WMS申请任务,返回参数:--------------------------------------" + BaseResponse.requestError(e.getMessage()).toString());
|
||||
return BaseResponse.requestError(e.getMessage());
|
||||
} finally {
|
||||
if (tryLock) {
|
||||
lock.unlock();
|
||||
|
||||
@@ -31,6 +31,14 @@ public interface PdaPrintService {
|
||||
*/
|
||||
PdaResponse printBucked(JSONObject whereJson);
|
||||
|
||||
/**
|
||||
* PC条码打印
|
||||
* @param whereJson {
|
||||
*
|
||||
* }
|
||||
*/
|
||||
void printCode(JSONObject whereJson);
|
||||
|
||||
/**
|
||||
* 手持配置 - 获取打印机下拉框
|
||||
* @return PdaResponse
|
||||
|
||||
@@ -32,6 +32,7 @@ import org.nl.wms.sch_manage.service.ISchBasePointService;
|
||||
import org.nl.wms.sch_manage.service.ISchBaseTaskService;
|
||||
import org.nl.wms.sch_manage.service.dao.SchBasePoint;
|
||||
import org.nl.wms.sch_manage.service.dao.SchBaseTask;
|
||||
import org.nl.wms.sch_manage.service.util.ACSTaskTypeEnum;
|
||||
import org.nl.wms.sch_manage.service.util.tasks.EmpStackPlatesTask;
|
||||
import org.nl.wms.sch_manage.service.util.tasks.EmpVehicleOutTask;
|
||||
import org.nl.wms.warehouse_management.enums.IOSConstant;
|
||||
@@ -315,6 +316,7 @@ public class PdaCommonServiceImpl implements PdaCommonService {
|
||||
jsonTask.put("point_code1", whereJson.getString("point_code"));
|
||||
jsonTask.put("point_code2", IOSConstant.AGVZJZ001);
|
||||
jsonTask.put("point_code3", row.getString("point_code"));
|
||||
jsonTask.put("task_type", ACSTaskTypeEnum.F003.getCode());
|
||||
empStackPlatesTask.create(jsonTask);
|
||||
return PdaResponse.requestOk();
|
||||
}
|
||||
|
||||
@@ -2,13 +2,17 @@ package org.nl.wms.pda.general_management.service.impl;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.NumberUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import org.nl.common.exception.BadRequestException;
|
||||
import org.nl.config.SpringContextHolder;
|
||||
import org.nl.system.enums.SysParamConstant;
|
||||
import org.nl.system.service.dict.ISysDictService;
|
||||
import org.nl.system.service.dict.dao.Dict;
|
||||
import org.nl.system.service.param.dao.Param;
|
||||
import org.nl.system.service.param.impl.SysParamServiceImpl;
|
||||
import org.nl.wms.basedata_manage.service.IMdMeMaterialbaseService;
|
||||
import org.nl.wms.basedata_manage.service.dao.MdMeMaterialbase;
|
||||
import org.nl.wms.pda.general_management.service.PdaPrintService;
|
||||
import org.nl.wms.pda.util.PdaResponse;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -35,6 +39,9 @@ public class PdaPrintServiceImpl implements PdaPrintService {
|
||||
@Autowired
|
||||
private ISysDictService iSysDictService;
|
||||
|
||||
@Autowired
|
||||
private IMdMeMaterialbaseService iMdMeMaterialbaseService;
|
||||
|
||||
@Override
|
||||
public PdaResponse printBag(JSONObject whereJson) {
|
||||
OutputStream outputStream=null;
|
||||
@@ -42,19 +49,29 @@ public class PdaPrintServiceImpl implements PdaPrintService {
|
||||
try {
|
||||
// 打印机地址
|
||||
String print_id = whereJson.getString("print_id");
|
||||
if (ObjectUtil.isEmpty(print_id)) {
|
||||
throw new BadRequestException("打印机IP为空,请选择打印机!");
|
||||
}
|
||||
JSONObject row = whereJson.getJSONObject("row");
|
||||
|
||||
MdMeMaterialbase materDao = iMdMeMaterialbaseService.getByCode(row.getString("material_code"));
|
||||
// 记录编号
|
||||
SysParamServiceImpl sysParamService = SpringContextHolder.getBean(SysParamServiceImpl.class);
|
||||
Param record_no = sysParamService.findByCode("RECORD_NO");
|
||||
String record_no = sysParamService.findByCode("RECORD_NO").getValue();
|
||||
// 物料名称
|
||||
String material_name = whereJson.getString("material_name");
|
||||
String material_name = row.getString("material_name");
|
||||
// 物料批号+批次
|
||||
String pcsn = whereJson.getString("material_code")+"-"+whereJson.getString("pcsn");
|
||||
String pcsn = row.getString("material_code")+"-"+row.getString("pcsn");
|
||||
// 经销商
|
||||
String supp_name = row.getString("supp_name");
|
||||
// 生产商
|
||||
String produce_name = materDao.getProduce_name();
|
||||
// 日期
|
||||
String data = DateUtil.today();
|
||||
// 数量
|
||||
String qty = NumberUtil.round(whereJson.getString("qty"), 2).toString();
|
||||
String qty = NumberUtil.round(row.getString("qty"), 2).toString();
|
||||
// 袋码
|
||||
String bag_code = whereJson.getString("bag_code");
|
||||
String bag_code = row.getString("bag_code");
|
||||
// 1. 创建Socket连接打印机
|
||||
socket = new Socket(print_id, 9100);
|
||||
// 设置超时
|
||||
@@ -162,17 +179,21 @@ public class PdaPrintServiceImpl implements PdaPrintService {
|
||||
try {
|
||||
// 打印机地址
|
||||
String print_id = whereJson.getString("print_id");
|
||||
if (ObjectUtil.isEmpty(print_id)) {
|
||||
throw new BadRequestException("打印机IP为空,请选择打印机!");
|
||||
}
|
||||
JSONObject row = whereJson.getJSONObject("row");
|
||||
// 记录编号
|
||||
SysParamServiceImpl sysParamService = SpringContextHolder.getBean(SysParamServiceImpl.class);
|
||||
Param record_no = sysParamService.findByCode("RECORD_NO");
|
||||
String record_no = sysParamService.findByCode("RECORD_NO").getValue();
|
||||
// 物料名称
|
||||
String material_name = whereJson.getString("material_name");
|
||||
String material_name = row.getString("material_name");
|
||||
// 物料批号+批次
|
||||
String pcsn = whereJson.getString("material_code")+"-"+whereJson.getString("pcsn");
|
||||
String pcsn = row.getString("material_code")+"-"+row.getString("pcsn");
|
||||
// 数量
|
||||
String bucket_weight = NumberUtil.round(whereJson.getString("bucket_weight"), 2).toString();
|
||||
String bucket_weight = NumberUtil.round(row.getString("bucket_weight"), 2).toString();
|
||||
// 桶号
|
||||
String bucket_code = whereJson.getString("bucket_code");
|
||||
String bucket_code = row.getString("bucket_code");
|
||||
// 1. 创建Socket连接打印机
|
||||
socket = new Socket(print_id, 9100);
|
||||
// 设置超时
|
||||
@@ -273,6 +294,44 @@ public class PdaPrintServiceImpl implements PdaPrintService {
|
||||
return PdaResponse.requestOk();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void printCode(JSONObject whereJson) {
|
||||
OutputStream outputStream=null;
|
||||
Socket socket=null;
|
||||
try {
|
||||
SysParamServiceImpl sysParamService = SpringContextHolder.getBean(SysParamServiceImpl.class);
|
||||
String print_id = sysParamService.findByCode("PRINT_ID").getValue();
|
||||
// 条码内容
|
||||
String code = whereJson.getString("code");
|
||||
// 1. 创建Socket连接打印机
|
||||
socket = new Socket(print_id, 9100);
|
||||
socket.setSoTimeout(5000); // 设置超时
|
||||
// 2. 获取输出流
|
||||
outputStream = socket.getOutputStream();
|
||||
// 3. 发送ZPL指令(注意编码)
|
||||
String zplContent = "^XA\n" +
|
||||
"^CW1,E:SIMSUN.FNT\n" +
|
||||
"^CI28\n" +
|
||||
"^FO50,50\n" +
|
||||
"^A1N,36,36\n" +
|
||||
"^FD中文内容123^FS\n" +
|
||||
"^XZ";
|
||||
byte[] zplBytes = zplContent.getBytes(StandardCharsets.UTF_8); // 根据打印机编码调整
|
||||
outputStream.write(zplBytes);
|
||||
outputStream.flush();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
// 4. 关闭连接
|
||||
try {
|
||||
if (outputStream != null) outputStream.close();
|
||||
if (socket != null) socket.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public PdaResponse getPrint() {
|
||||
List<Dict> dictList = iSysDictService.getDictByName("PDA_CONFIG_PRINT");
|
||||
@@ -280,7 +339,7 @@ public class PdaPrintServiceImpl implements PdaPrintService {
|
||||
.map(row -> JSONObject.parseObject(JSONObject.toJSONString(row), JSONObject.class))
|
||||
.collect(Collectors.toList());
|
||||
collect.forEach(item -> {
|
||||
item.put("text", item.getString("name"));
|
||||
item.put("text", item.getString("label"));
|
||||
item.put("value", item.getString("value"));
|
||||
});
|
||||
return PdaResponse.requestParamOk(collect);
|
||||
|
||||
@@ -5,6 +5,7 @@ import cn.hutool.core.util.NumberUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import org.nl.common.exception.BadRequestException;
|
||||
import org.nl.common.utils.IdUtil;
|
||||
import org.nl.common.utils.JSONObjectOf;
|
||||
@@ -89,6 +90,13 @@ public class PdaPackagingServiceImpl implements PdaPackagingService {
|
||||
MdPdmPackaging dto = JSONObject.parseObject(JSONObject.toJSONString(whereJson), MdPdmPackaging.class);
|
||||
// 调用新增
|
||||
iMdPdmPackagingService.create(dto);
|
||||
// 更新点位状态
|
||||
iSchBasePointService.update(
|
||||
new UpdateWrapper<SchBasePoint>().lambda()
|
||||
.set(SchBasePoint::getPoint_status, IOSEnum.POINT_STATUS.code("有箱有料"))
|
||||
.eq(SchBasePoint::getPoint_code, dto.getPoint_code())
|
||||
.set(SchBasePoint::getIng_task_code, "")
|
||||
);
|
||||
return PdaResponse.requestOk();
|
||||
}
|
||||
|
||||
@@ -147,6 +155,13 @@ public class PdaPackagingServiceImpl implements PdaPackagingService {
|
||||
insertPackList.forEach(row -> {
|
||||
iMdPdmPackagingService.create(row);
|
||||
});
|
||||
// 更新点位状态
|
||||
iSchBasePointService.update(
|
||||
new UpdateWrapper<SchBasePoint>().lambda()
|
||||
.set(SchBasePoint::getPoint_status, IOSEnum.POINT_STATUS.code("有箱有料"))
|
||||
.eq(SchBasePoint::getPoint_code, in_point)
|
||||
.set(SchBasePoint::getIng_task_code, "")
|
||||
);
|
||||
return PdaResponse.requestOk();
|
||||
}
|
||||
|
||||
|
||||
@@ -122,10 +122,6 @@ public class SchBaseTask implements Serializable {
|
||||
|
||||
private String update_time;
|
||||
|
||||
/**
|
||||
* 任务类型
|
||||
* 1-载具,2-料箱
|
||||
*/
|
||||
private String task_type;
|
||||
|
||||
private String contact_task;
|
||||
|
||||
@@ -12,6 +12,7 @@ import org.nl.wms.sch_manage.service.ISchBasePointService;
|
||||
import org.nl.wms.sch_manage.service.ISchBaseTaskService;
|
||||
import org.nl.wms.sch_manage.service.SecondaryPackagingService;
|
||||
import org.nl.wms.sch_manage.service.dao.SchBasePoint;
|
||||
import org.nl.wms.sch_manage.service.util.ACSTaskTypeEnum;
|
||||
import org.nl.wms.sch_manage.service.util.AbstractTask;
|
||||
import org.nl.wms.sch_manage.service.util.TaskFactory;
|
||||
import org.nl.wms.sch_manage.service.util.tasks.EmptyDiskConveyTask;
|
||||
@@ -67,7 +68,7 @@ public class SecondaryPackagingServiceImpl implements SecondaryPackagingService
|
||||
try {
|
||||
if (tryLock) {
|
||||
// device_code、material_code、qty、vehicle_seq、pcsn、cases
|
||||
MdMeMaterialbase materialCode = materialbaseService.getByCode(param.getString("material_code"));
|
||||
/* MdMeMaterialbase materialCode = materialbaseService.getByCode(param.getString("material_code"));
|
||||
// 组盘
|
||||
GroupPlate groupPlate = new GroupPlate();
|
||||
groupPlate.setGroup_id(IdUtil.getStringId());
|
||||
@@ -81,18 +82,18 @@ public class SecondaryPackagingServiceImpl implements SecondaryPackagingService
|
||||
groupPlate.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
groupPlate.setCreate_time(DateUtil.now());
|
||||
// ....待定
|
||||
groupplateService.save(groupPlate);
|
||||
groupplateService.save(groupPlate);*/
|
||||
|
||||
// 校验任务
|
||||
Integer num = taskService.haveTaskAll(param.getString("device_code"));
|
||||
if (num > 0) {
|
||||
throw new BadRequestException("该点位已存在任务!");
|
||||
}
|
||||
param.put("config_code", "PalletizingDownTask");
|
||||
param.put("group_id", groupPlate.getGroup_id());
|
||||
/* param.put("group_id", groupPlate.getGroup_id());
|
||||
param.put("material_id", materialCode.getMaterial_id());
|
||||
param.put("material_qty", groupPlate.getQty());
|
||||
param.put("vehicle_code", groupPlate.getVehicle_code());
|
||||
param.put("vehicle_code", groupPlate.getVehicle_code());*/
|
||||
param.put("task_type", ACSTaskTypeEnum.F002.getCode());
|
||||
AbstractTask palletizingDownTask = taskFactory.getTask("PalletizingDownTask");
|
||||
palletizingDownTask.create(param);
|
||||
} else {
|
||||
@@ -141,7 +142,6 @@ public class SecondaryPackagingServiceImpl implements SecondaryPackagingService
|
||||
if (num > 0) {
|
||||
throw new BadRequestException("该点位已存在任务!");
|
||||
}
|
||||
param.put("config_code", "WrappingDownTask");
|
||||
wrappingDownTask.create(param);
|
||||
} else {
|
||||
throw new BadRequestException("速度太快啦,稍后再试...");
|
||||
@@ -178,7 +178,7 @@ public class SecondaryPackagingServiceImpl implements SecondaryPackagingService
|
||||
// 创建运输任务
|
||||
param.put("point_code1", point.getPoint_code());
|
||||
param.put("point_code2", param.getString("device_code"));
|
||||
param.put("config_code", "EmptyDiskEnterTask");
|
||||
param.put("task_type", ACSTaskTypeEnum.F006.getCode());
|
||||
emptyDiskConveyTask.create(param);
|
||||
} else {
|
||||
throw new BadRequestException("速度太快啦,稍后再试...");
|
||||
|
||||
@@ -14,7 +14,37 @@ public enum ACSTaskTypeEnum {
|
||||
/**
|
||||
* AGV任务
|
||||
*/
|
||||
AGV_TASK("2", "AGV任务", "AGV任务");
|
||||
AGV_TASK("2", "AGV任务", "AGV任务"),
|
||||
|
||||
/**
|
||||
* 海康任务
|
||||
*/
|
||||
F001("F001", "自动门到机台", "自动门到机台"),
|
||||
|
||||
/**
|
||||
* 海康任务
|
||||
*/
|
||||
F002("F002", "机台到自动门", "机台到自动门"),
|
||||
|
||||
/**
|
||||
* 海康任务
|
||||
*/
|
||||
F003("F003", "普通库位到自动门", "普通库位到自动门"),
|
||||
|
||||
/**
|
||||
* 海康任务
|
||||
*/
|
||||
F004("F004", "自动门到普通库位", "自动门到普通库位"),
|
||||
|
||||
/**
|
||||
* 海康任务
|
||||
*/
|
||||
F005("F005", "普通库位到普通库位", "普通库位到普通库位"),
|
||||
|
||||
/**
|
||||
* 海康任务
|
||||
*/
|
||||
F006("F006", "普通库位到机台", "普通库位到机台");
|
||||
|
||||
|
||||
ACSTaskTypeEnum(String code, String name, String desc) {
|
||||
|
||||
@@ -5,6 +5,7 @@ import cn.hutool.core.util.NumberUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import org.nl.common.exception.BadRequestException;
|
||||
import org.nl.common.utils.CodeUtil;
|
||||
import org.nl.common.utils.SecurityUtils;
|
||||
@@ -20,6 +21,7 @@ import org.nl.wms.sch_manage.service.util.AbstractTask;
|
||||
import org.nl.wms.sch_manage.service.util.AcsTaskDto;
|
||||
import org.nl.wms.sch_manage.service.util.TaskType;
|
||||
import org.nl.wms.warehouse_management.enums.IOSConstant;
|
||||
import org.nl.wms.warehouse_management.enums.IOSEnum;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
@@ -61,7 +63,7 @@ public class EmpStackPlatesTask extends AbstractTask {
|
||||
task.setMaterial_id(json.getString("material_id"));
|
||||
task.setMaterial_qty(json.getBigDecimal("material_qty"));
|
||||
task.setRequest_param(json.toString());
|
||||
task.setTask_type(TaskEnum.TASK_TYPE.code("载具"));
|
||||
task.setTask_type(json.getString("task_type"));
|
||||
task.setPriority(json.getString("Priority"));
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
@@ -84,8 +86,14 @@ public class EmpStackPlatesTask extends AbstractTask {
|
||||
acsTaskDto.setStart_device_code(taskDao.getPoint_code1());
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setVehicle_code(taskDao.getVehicle_code());
|
||||
acsTaskDto.setPriority(IOSConstant.ONE);
|
||||
|
||||
if (taskDao.getPoint_code2().equals(IOSConstant.AGVZJZ001)) {
|
||||
acsTaskDto.setAgv_system_type(IOSConstant.THREE);
|
||||
} else {
|
||||
acsTaskDto.setAgv_system_type(IOSConstant.TWO);
|
||||
}
|
||||
acsTaskDto.setTask_type(taskDao.getTask_type());
|
||||
acsTaskDto.setPriority(IOSConstant.ONE);
|
||||
return acsTaskDto;
|
||||
}
|
||||
|
||||
@@ -145,6 +153,22 @@ public class EmpStackPlatesTask extends AbstractTask {
|
||||
taskObj.setTask_status(TaskStatus.FINISHED.getCode());
|
||||
taskObj.setRemark("已完成");
|
||||
taskService.updateById(taskObj);
|
||||
// 更新起点
|
||||
iSchBasePointService.update(
|
||||
new UpdateWrapper<SchBasePoint>().lambda()
|
||||
.set(SchBasePoint::getVehicle_code, "")
|
||||
.set(SchBasePoint::getPoint_status, IOSEnum.POINT_STATUS.code("空位"))
|
||||
.eq(SchBasePoint::getPoint_code, taskObj.getPoint_code1())
|
||||
.set(SchBasePoint::getIng_task_code, "")
|
||||
);
|
||||
// 更新终点
|
||||
iSchBasePointService.update(
|
||||
new UpdateWrapper<SchBasePoint>().lambda()
|
||||
.set(SchBasePoint::getVehicle_code, "")
|
||||
.set(SchBasePoint::getPoint_status, IOSEnum.POINT_STATUS.code("有箱有料"))
|
||||
.eq(SchBasePoint::getPoint_code, taskObj.getPoint_code2())
|
||||
.set(SchBasePoint::getIng_task_code, "")
|
||||
);
|
||||
// 判断是否是中间站点
|
||||
if (taskObj.getPoint_code2().equals(IOSConstant.AGVZJZ001)) {
|
||||
// 生成二段任务
|
||||
|
||||
@@ -55,7 +55,7 @@ public class EmptyDiskConveyTask extends AbstractTask {
|
||||
task.setGroup_id(json.getString("group_id"));
|
||||
task.setRequest_param(json.toString());
|
||||
task.setPriority(json.getString("Priority"));
|
||||
task.setTask_type(TaskEnum.TASK_TYPE.code("料箱"));
|
||||
task.setTask_type(json.getString("task_type"));
|
||||
task.setIs_wait(json.getString("is_wait"));
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
@@ -65,7 +65,7 @@ public class EmptyDiskConveyTask extends AbstractTask {
|
||||
throw new BadRequestException("起点终点不能一致,请检查!");
|
||||
}
|
||||
// 下发任务
|
||||
// this.sendTaskOne(task.getTask_id());
|
||||
this.sendTaskOne(task.getTask_id());
|
||||
return task.getTask_id();
|
||||
}
|
||||
|
||||
@@ -81,10 +81,7 @@ public class EmptyDiskConveyTask extends AbstractTask {
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setVehicle_code(taskDao.getVehicle_code());
|
||||
|
||||
acsTaskDto.setVehicle_type(IOSConstant.ONE);
|
||||
acsTaskDto.setIs_wait(IOSConstant.ZERO);
|
||||
acsTaskDto.setTask_type(ACSTaskTypeEnum.AGV_TASK.getCode());
|
||||
|
||||
acsTaskDto.setTask_type(taskDao.getTask_type());
|
||||
acsTaskDto.setPriority(IOSConstant.ONE);
|
||||
acsTaskDto.setAgv_system_type(IOSConstant.THREE);
|
||||
|
||||
@@ -130,7 +127,7 @@ public class EmptyDiskConveyTask extends AbstractTask {
|
||||
taskObj.setRemark("已完成");
|
||||
taskService.updateById(taskObj);
|
||||
|
||||
// 更新
|
||||
// 更新起点
|
||||
pointService.update(
|
||||
new UpdateWrapper<SchBasePoint>().lambda()
|
||||
.set(SchBasePoint::getVehicle_code, "")
|
||||
@@ -138,6 +135,16 @@ public class EmptyDiskConveyTask extends AbstractTask {
|
||||
.eq(SchBasePoint::getPoint_code, taskObj.getPoint_code1())
|
||||
.set(SchBasePoint::getIng_task_code, "")
|
||||
);
|
||||
// 更新终点:如果终点为空盘点则更新
|
||||
SchBasePoint pointDao2 = pointService.getById(taskObj.getPoint_code2());
|
||||
if (pointDao2.getPoint_type().equals(IOSConstant.TWO)) {
|
||||
pointService.update(
|
||||
new UpdateWrapper<SchBasePoint>().lambda()
|
||||
.set(SchBasePoint::getPoint_status, IOSEnum.POINT_STATUS.code("空载具"))
|
||||
.set(SchBasePoint::getIng_task_code, "")
|
||||
.eq(SchBasePoint::getPoint_code, taskObj.getPoint_code2())
|
||||
);
|
||||
}
|
||||
|
||||
// 判断是否需要呼叫空盘
|
||||
List<SchBasePoint> palletPoints = pointService.getNoTaskPointByRegionAndType("WBZQ", "2", "1");
|
||||
@@ -146,7 +153,6 @@ public class EmptyDiskConveyTask extends AbstractTask {
|
||||
try {
|
||||
JSONObject param = new JSONObject();
|
||||
param.put("device_code", palletPoint.getPoint_code());
|
||||
param.put("config_code", "EmptyDiskEnterTask");
|
||||
emptyDiskEnterTask.create(param);
|
||||
} catch (Exception e) {
|
||||
log.warn(e.getMessage());
|
||||
|
||||
@@ -44,7 +44,7 @@ public class EmptyDiskEnterTask extends AbstractTask {
|
||||
// 获取中转位
|
||||
List<SchBasePoint> transferStation = pointService.getNoTaskPointByRegionAndType("AGVZJZ01", "1", "1");
|
||||
if (transferStation.size() == 0) {
|
||||
throw new BadRequestException("找不到可用的中转位!");
|
||||
throw new BadRequestException("物流通道被占用!");
|
||||
}
|
||||
SchBasePoint point = transferStation.get(0);
|
||||
SchBaseTask task = new SchBaseTask();
|
||||
@@ -71,7 +71,7 @@ public class EmptyDiskEnterTask extends AbstractTask {
|
||||
throw new BadRequestException("起点终点不能一致,请检查!");
|
||||
}
|
||||
// 下发任务
|
||||
// this.sendTaskOne(task.getTask_id());
|
||||
this.sendTaskOne(task.getTask_id());
|
||||
return task.getTask_id();
|
||||
}
|
||||
|
||||
@@ -156,9 +156,16 @@ public class EmptyDiskEnterTask extends AbstractTask {
|
||||
// 创建输送任务
|
||||
AbstractTask task = taskFactory.getTask("EmptyDiskConveyTask");
|
||||
JSONObject parm = new JSONObject();
|
||||
parm.put("config_code", "EmptyDiskConveyTask");
|
||||
parm.put("point_code1", taskObj.getPoint_code2());
|
||||
parm.put("point_code2", taskObj.getPoint_code3());
|
||||
// 校验终点是否是机台
|
||||
SchBasePoint pointDao = pointService.getById(taskObj.getPoint_code3());
|
||||
// 判断是否是空盘位
|
||||
if (pointDao.getPoint_type().equals(IOSConstant.TWO)) {
|
||||
parm.put("task_type", ACSTaskTypeEnum.F004.getCode());
|
||||
} else {
|
||||
parm.put("task_type", ACSTaskTypeEnum.F001.getCode());
|
||||
}
|
||||
task.create(parm);
|
||||
}
|
||||
|
||||
|
||||
@@ -14,12 +14,16 @@ import org.nl.wms.pdm_management.service.IMdPdmPackagingService;
|
||||
import org.nl.wms.pdm_management.service.dao.MdPdmPackaging;
|
||||
import org.nl.wms.sch_manage.enums.TaskEnum;
|
||||
import org.nl.wms.sch_manage.enums.TaskStatus;
|
||||
import org.nl.wms.sch_manage.service.ISchBasePointService;
|
||||
import org.nl.wms.sch_manage.service.ISchBaseTaskService;
|
||||
import org.nl.wms.sch_manage.service.dao.SchBasePoint;
|
||||
import org.nl.wms.sch_manage.service.dao.SchBaseTask;
|
||||
import org.nl.wms.sch_manage.service.util.ACSTaskTypeEnum;
|
||||
import org.nl.wms.sch_manage.service.util.AbstractTask;
|
||||
import org.nl.wms.sch_manage.service.util.AcsTaskDto;
|
||||
import org.nl.wms.sch_manage.service.util.TaskType;
|
||||
import org.nl.wms.warehouse_management.enums.IOSConstant;
|
||||
import org.nl.wms.warehouse_management.enums.IOSEnum;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
@@ -47,6 +51,9 @@ public class PackagingMiddleTask extends AbstractTask {
|
||||
@Resource
|
||||
private IMdPdmPackagingService iMdPdmPackagingService;
|
||||
|
||||
@Resource
|
||||
private ISchBasePointService pointService;
|
||||
|
||||
@Override
|
||||
public String create(JSONObject json) {
|
||||
SchBaseTask task = new SchBaseTask();
|
||||
@@ -62,7 +69,7 @@ public class PackagingMiddleTask extends AbstractTask {
|
||||
task.setMaterial_id(json.getString("material_id"));
|
||||
task.setMaterial_qty(json.getBigDecimal("material_qty"));
|
||||
task.setRequest_param(json.toString());
|
||||
task.setTask_type(TaskEnum.TASK_TYPE.code("料箱"));
|
||||
task.setTask_type(json.getString("task_type"));
|
||||
task.setPriority(json.getString("Priority"));
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
@@ -84,8 +91,14 @@ public class PackagingMiddleTask extends AbstractTask {
|
||||
acsTaskDto.setTask_code(taskDao.getTask_code());
|
||||
acsTaskDto.setStart_device_code(taskDao.getPoint_code1());
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setVehicle_code(taskDao.getVehicle_code());
|
||||
|
||||
if (acsTaskDto.getStart_device_code().equals(IOSConstant.AGVZJZ001)) {
|
||||
acsTaskDto.setAgv_system_type(IOSConstant.THREE);
|
||||
} else {
|
||||
acsTaskDto.setAgv_system_type(IOSConstant.TWO);
|
||||
}
|
||||
acsTaskDto.setPriority(IOSConstant.ONE);
|
||||
acsTaskDto.setTask_type(taskDao.getTask_type());
|
||||
|
||||
return acsTaskDto;
|
||||
}
|
||||
@@ -146,6 +159,14 @@ public class PackagingMiddleTask extends AbstractTask {
|
||||
taskObj.setTask_status(TaskStatus.FINISHED.getCode());
|
||||
taskObj.setRemark("已完成");
|
||||
taskService.updateById(taskObj);
|
||||
// 更新起点
|
||||
pointService.update(
|
||||
new UpdateWrapper<SchBasePoint>().lambda()
|
||||
.set(SchBasePoint::getVehicle_code, "")
|
||||
.set(SchBasePoint::getPoint_status, IOSEnum.POINT_STATUS.code("空位"))
|
||||
.eq(SchBasePoint::getPoint_code, taskObj.getPoint_code1())
|
||||
.set(SchBasePoint::getIng_task_code, "")
|
||||
);
|
||||
if (taskObj.getPoint_code2().equals(IOSConstant.AGVZJZ001)) {
|
||||
// 判断point_code3是否有值
|
||||
if (ObjectUtil.isEmpty(taskObj.getPoint_code3())) {
|
||||
@@ -155,7 +176,23 @@ public class PackagingMiddleTask extends AbstractTask {
|
||||
.eq(MdPdmPackaging::getPoint_code, taskObj.getPoint_code1())
|
||||
.set(MdPdmPackaging::getPoint_code, taskObj.getPoint_code4())
|
||||
);
|
||||
// 更新终点
|
||||
pointService.update(
|
||||
new UpdateWrapper<SchBasePoint>().lambda()
|
||||
.set(SchBasePoint::getVehicle_code, taskObj.getVehicle_code())
|
||||
.set(SchBasePoint::getPoint_status, IOSEnum.POINT_STATUS.code("有箱有料"))
|
||||
.eq(SchBasePoint::getPoint_code, taskObj.getPoint_code4())
|
||||
.set(SchBasePoint::getIng_task_code, "")
|
||||
);
|
||||
} else {
|
||||
// 更新终点
|
||||
pointService.update(
|
||||
new UpdateWrapper<SchBasePoint>().lambda()
|
||||
.set(SchBasePoint::getVehicle_code, taskObj.getVehicle_code())
|
||||
.set(SchBasePoint::getPoint_status, IOSEnum.POINT_STATUS.code("有箱有料"))
|
||||
.eq(SchBasePoint::getPoint_code, taskObj.getPoint_code2())
|
||||
.set(SchBasePoint::getIng_task_code, "")
|
||||
);
|
||||
// 生成任务
|
||||
JSONObject jsonTask = new JSONObject();
|
||||
jsonTask.put("point_code1", IOSConstant.AGVZJZ001);
|
||||
@@ -166,9 +203,18 @@ public class PackagingMiddleTask extends AbstractTask {
|
||||
jsonTask.put("point_code4", taskObj.getPoint_code3());
|
||||
jsonTask.put("material_id", taskObj.getMaterial_id());
|
||||
jsonTask.put("material_qty", taskObj.getMaterial_qty());
|
||||
jsonTask.put("task_type", ACSTaskTypeEnum.F004.getCode());
|
||||
this.create(jsonTask);
|
||||
}
|
||||
} else {
|
||||
// 更新终点
|
||||
pointService.update(
|
||||
new UpdateWrapper<SchBasePoint>().lambda()
|
||||
.set(SchBasePoint::getVehicle_code, taskObj.getVehicle_code())
|
||||
.set(SchBasePoint::getPoint_status, IOSEnum.POINT_STATUS.code("有箱有料"))
|
||||
.eq(SchBasePoint::getPoint_code, taskObj.getPoint_code2())
|
||||
.set(SchBasePoint::getIng_task_code, "")
|
||||
);
|
||||
// 更新库存
|
||||
iMdPdmPackagingService.update(
|
||||
new UpdateWrapper<MdPdmPackaging>().lambda()
|
||||
|
||||
@@ -80,10 +80,6 @@ public class PalletizingAddTask extends AbstractTask {
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setVehicle_code(taskDao.getVehicle_code());
|
||||
|
||||
acsTaskDto.setVehicle_type(IOSConstant.ONE);
|
||||
acsTaskDto.setIs_wait(IOSConstant.ZERO);
|
||||
acsTaskDto.setTask_type(ACSTaskTypeEnum.AGV_TASK.getCode());
|
||||
|
||||
acsTaskDto.setPriority(IOSConstant.ONE);
|
||||
acsTaskDto.setAgv_system_type(IOSConstant.TWO);
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@ package org.nl.wms.sch_manage.service.util.tasks;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import org.nl.common.exception.BadRequestException;
|
||||
import org.nl.common.utils.CodeUtil;
|
||||
@@ -45,7 +46,7 @@ public class PalletizingDownTask extends AbstractTask {
|
||||
// 查找空闲的内外中转点
|
||||
List<SchBasePoint> list = pointService.getNoTaskPointByRegionAndType("AGVZJZ01", "1", "1");
|
||||
if (list.size() == 0) {
|
||||
throw new BadRequestException("没有可用的内外中转点!");
|
||||
throw new BadRequestException("物料通道被占用!");
|
||||
}
|
||||
SchBasePoint point = list.get(0);
|
||||
SchBaseTask task = new SchBaseTask();
|
||||
@@ -61,7 +62,7 @@ public class PalletizingDownTask extends AbstractTask {
|
||||
task.setGroup_id(json.getString("group_id"));
|
||||
task.setRequest_param(json.toString());
|
||||
task.setPriority(json.getString("Priority"));
|
||||
task.setTask_type(TaskEnum.TASK_TYPE.code("料箱"));
|
||||
task.setTask_type(json.getString("task_type"));
|
||||
task.setIs_wait(json.getString("is_wait"));
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
@@ -87,10 +88,7 @@ public class PalletizingDownTask extends AbstractTask {
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setVehicle_code(taskDao.getVehicle_code());
|
||||
|
||||
acsTaskDto.setVehicle_type(IOSConstant.ONE);
|
||||
acsTaskDto.setIs_wait(IOSConstant.ZERO);
|
||||
acsTaskDto.setTask_type(ACSTaskTypeEnum.AGV_TASK.getCode());
|
||||
|
||||
acsTaskDto.setTask_type(taskDao.getTask_type());
|
||||
acsTaskDto.setPriority(IOSConstant.ONE);
|
||||
acsTaskDto.setAgv_system_type(IOSConstant.THREE);
|
||||
|
||||
@@ -144,7 +142,12 @@ public class PalletizingDownTask extends AbstractTask {
|
||||
.set(SchBasePoint::getIng_task_code, "")
|
||||
);
|
||||
// 创建出去缠绕机的任务
|
||||
List<SchBasePoint> pointList = pointService.getCRUsedDevice();
|
||||
// List<SchBasePoint> pointList = pointService.getCRUsedDevice();
|
||||
List<SchBasePoint> pointList = pointService.list(
|
||||
new QueryWrapper<SchBasePoint>().lambda()
|
||||
.eq(SchBasePoint::getRegion_code, "CRHCQ")
|
||||
.eq(SchBasePoint::getIs_used, IOSConstant.ONE)
|
||||
);
|
||||
SchBasePoint point = pointList.get(0);
|
||||
JSONObject taskParam = new JSONObject();
|
||||
taskParam.put("point_code1", taskObj.getPoint_code2());
|
||||
|
||||
@@ -42,19 +42,19 @@ public class WrappingDownTask extends AbstractTask {
|
||||
private IMdPbGroupplateService groupplateService;
|
||||
@Override
|
||||
public String create(JSONObject json) {
|
||||
// 查找空闲的需要缠绕的点
|
||||
List<SchBasePoint> list = pointService.getNoTaskPointByRegionAndType("CRHCQ", "4", "1");
|
||||
// 查找空闲的成品区
|
||||
List<SchBasePoint> list = pointService.getNoTaskPointByRegionAndType("CPQ01", "1", "1");
|
||||
if (list.size() == 0) {
|
||||
throw new BadRequestException("没有空闲的已缠绕点!");
|
||||
throw new BadRequestException("成品区没有空闲点位!");
|
||||
}
|
||||
SchBasePoint basePoint = list.get(0);
|
||||
SchBasePoint parentPoint = pointService.getById(json.getString("device_code"));
|
||||
/* SchBasePoint parentPoint = pointService.getById(json.getString("device_code"));
|
||||
SchBasePoint point = pointService.getById(parentPoint.getParent_point_code());
|
||||
List<JSONObject> palletViewByVehicleCode = groupplateService.getPalletViewByVehicleCode(point.getVehicle_code(), Collections.singletonList("1"));
|
||||
if (palletViewByVehicleCode.size() == 0) {
|
||||
throw new BadRequestException("托盘信息不存在!");
|
||||
}
|
||||
JSONObject jsonObject = palletViewByVehicleCode.get(0);
|
||||
JSONObject jsonObject = palletViewByVehicleCode.get(0);*/
|
||||
SchBaseTask task = new SchBaseTask();
|
||||
task.setTask_id(IdUtil.getStringId());
|
||||
task.setTask_code(CodeUtil.getNewCode("TASK_CODE"));
|
||||
@@ -62,14 +62,13 @@ public class WrappingDownTask extends AbstractTask {
|
||||
task.setConfig_code(WrappingDownTask.class.getSimpleName());
|
||||
task.setPoint_code1(json.getString("device_code"));
|
||||
task.setPoint_code2(basePoint.getPoint_code());
|
||||
task.setPoint_code3(parentPoint.getPoint_code());
|
||||
task.setVehicle_code(point.getVehicle_code());
|
||||
task.setMaterial_id(jsonObject.getString("material_id"));
|
||||
task.setMaterial_qty(jsonObject.getBigDecimal("qty"));
|
||||
task.setGroup_id(jsonObject.getString("group_id"));
|
||||
// task.setPoint_code3(parentPoint.getPoint_code());
|
||||
// task.setVehicle_code(point.getVehicle_code());
|
||||
// task.setMaterial_id(jsonObject.getString("material_id"));
|
||||
// task.setMaterial_qty(jsonObject.getBigDecimal("qty"));
|
||||
// task.setGroup_id(jsonObject.getString("group_id"));
|
||||
task.setRequest_param(json.toString());
|
||||
task.setPriority(json.getString("Priority"));
|
||||
task.setTask_type(TaskEnum.TASK_TYPE.code("料箱"));
|
||||
task.setIs_wait(json.getString("is_wait"));
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
@@ -79,7 +78,7 @@ public class WrappingDownTask extends AbstractTask {
|
||||
throw new BadRequestException("起点终点不能一致,请检查!");
|
||||
}
|
||||
// 下发任务
|
||||
// this.sendTaskOne(task.getTask_id());
|
||||
this.sendTaskOne(task.getTask_id());
|
||||
return task.getTask_id();
|
||||
}
|
||||
|
||||
@@ -95,14 +94,8 @@ public class WrappingDownTask extends AbstractTask {
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setVehicle_code(taskDao.getVehicle_code());
|
||||
|
||||
acsTaskDto.setVehicle_type(IOSConstant.ONE);
|
||||
acsTaskDto.setIs_wait(IOSConstant.ZERO);
|
||||
acsTaskDto.setTask_type(ACSTaskTypeEnum.AGV_TASK.getCode());
|
||||
|
||||
acsTaskDto.setPriority(IOSConstant.ONE);
|
||||
acsTaskDto.setAgv_system_type(IOSConstant.TWO);
|
||||
acsTaskDto.setIs_get_pause(IOSConstant.ZERO);
|
||||
acsTaskDto.setIs_put_pause(IOSConstant.ZERO);
|
||||
|
||||
return acsTaskDto;
|
||||
}
|
||||
@@ -132,7 +125,6 @@ public class WrappingDownTask extends AbstractTask {
|
||||
}
|
||||
|
||||
public void cancelTask(SchBaseTask taskObj) {
|
||||
|
||||
// 更新任务状态
|
||||
taskObj.setTask_status(TaskStatus.CANCELED.getCode());
|
||||
taskObj.setRemark("已取消");
|
||||
@@ -156,7 +148,7 @@ public class WrappingDownTask extends AbstractTask {
|
||||
.set(SchBasePoint::getIng_task_code, "")
|
||||
.eq(SchBasePoint::getPoint_code, taskObj.getPoint_code2())
|
||||
);
|
||||
pointService.update(
|
||||
/*pointService.update(
|
||||
new UpdateWrapper<SchBasePoint>().lambda()
|
||||
.set(SchBasePoint::getVehicle_code, "")
|
||||
.set(SchBasePoint::getPoint_status, IOSEnum.POINT_STATUS.code("空位"))
|
||||
@@ -165,7 +157,7 @@ public class WrappingDownTask extends AbstractTask {
|
||||
.set(SchBasePoint::getUpdate_name, SecurityUtils.getCurrentNickName())
|
||||
.set(SchBasePoint::getIng_task_code, "")
|
||||
.eq(SchBasePoint::getPoint_code, taskObj.getPoint_code3())
|
||||
);
|
||||
);*/
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<div style="color: #666;font-size: 13px;">
|
||||
<svg-icon icon-class="system" style="margin-right: 5px" />
|
||||
<span>
|
||||
{{ $t('monitor.sys') }}:{{ data.sys.os }}
|
||||
{{ $t('monitor.sys') }}:{{ "Windows Server 2022 Standard" }}
|
||||
</span>
|
||||
<span>
|
||||
IP:{{ data.sys.ip }}
|
||||
|
||||
Reference in New Issue
Block a user