Merge branch 'master' of http://121.40.234.130:8899/root/lanzhouhailiang_one
This commit is contained in:
@@ -251,7 +251,7 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
// }
|
||||
// }
|
||||
;
|
||||
// this.setNow_steps_type2(1);
|
||||
// this.setNow_steps_type2(1);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -318,15 +318,15 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
}
|
||||
|
||||
//单任务/或双任务 后工位收到取货完成信号并反馈
|
||||
if (mode == 3 && action2 == 2 && move2 == 1 && task2 > 0){
|
||||
this.writing("to_command2","3");
|
||||
if (type == 2){
|
||||
if (mode == 3 && action2 == 2 && move2 == 1 && task2 > 0) {
|
||||
this.writing("to_command2", "3");
|
||||
if (type == 2) {
|
||||
this.setNow_steps_type2(4);
|
||||
}
|
||||
if (type == 3){
|
||||
if (type == 3) {
|
||||
this.setNow_steps_type3(4);
|
||||
}
|
||||
}else {
|
||||
} else {
|
||||
if (this.getNow_steps_type2() == 3 || this.getNow_steps_type3() == 3) {
|
||||
feedMessage = "请检查:mode == 3 && action2 == 2 && move2 == 1 && task2 > 0";
|
||||
}
|
||||
@@ -347,15 +347,15 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
}
|
||||
|
||||
//单任务/双任务 前工位取货完成并反馈
|
||||
if (mode == 3 && action1 == 2 && move1 == 1 && task1 > 0){
|
||||
this.writing("to_command1","3");
|
||||
if (type == 1){
|
||||
if (mode == 3 && action1 == 2 && move1 == 1 && task1 > 0) {
|
||||
this.writing("to_command1", "3");
|
||||
if (type == 1) {
|
||||
this.setNow_steps_type1(4);
|
||||
}
|
||||
if (type == 3){
|
||||
if (type == 3) {
|
||||
this.setNow_steps_type3(6);
|
||||
}
|
||||
}else {
|
||||
} else {
|
||||
if (this.getNow_steps_type1() == 3 || this.getNow_steps_type3() == 5) {
|
||||
feedMessage = "请检查:mode == 3 && action1 == 2 && move1 == 1 && task1 > 0";
|
||||
}
|
||||
@@ -478,7 +478,6 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
}
|
||||
|
||||
|
||||
|
||||
//双工位 任务完成 前工位反馈4
|
||||
if (mode == 3 && action1 == 4 && move1 == 0 && task1 > 0 && task2 > 0 && type == 3) {
|
||||
//inst_message
|
||||
@@ -510,7 +509,6 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
}
|
||||
|
||||
|
||||
|
||||
} catch (Exception var17) {
|
||||
return;
|
||||
}
|
||||
@@ -662,7 +660,7 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
return flag;
|
||||
} else {
|
||||
//去任务表中查询是否有后工位关联设备的就绪状态下的任务
|
||||
taskDtos = taskserver.queryTaskByStartDeviceCode(backGetDeviceCode);
|
||||
taskDtos = taskserver.queryTaskByBackDeviceCode(backGetDeviceCode);
|
||||
if (ObjectUtil.isNotEmpty(taskDtos)) {
|
||||
//按照优先级排序 优先级相等按照创建时间排序
|
||||
taskDtos = this.sortTask(taskDtos);
|
||||
@@ -735,7 +733,7 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
return flag;
|
||||
} else {
|
||||
//去任务表中查询是否有后工位关联设备的就绪状态下的任务
|
||||
taskDtos = taskserver.queryTaskByStartDeviceCode(backGetDeviceCode);
|
||||
taskDtos = taskserver.queryTaskByBackDeviceCode(backGetDeviceCode);
|
||||
if (ObjectUtil.isNotEmpty(taskDtos)) {
|
||||
//按照优先级排序 优先级相等按照创建时间排序
|
||||
taskDtos = this.sortTask(taskDtos);
|
||||
@@ -956,12 +954,12 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
Device nextDevice2 = deviceAppservice.findDeviceByCode(next_device_code2);
|
||||
String start_addr2 = startDevice2.getExtraValue().get("address").toString();
|
||||
String next_addr2 = nextDevice2.getExtraValue().get("address").toString();
|
||||
this.writing("to_onset1", start_addr);
|
||||
this.writing("to_target1", next_addr);
|
||||
this.writing("to_onset1", start_addr2);
|
||||
this.writing("to_target1", next_addr2);
|
||||
this.writing("to_task1", dto.getInstruction_code());
|
||||
this.writing("to_command1", "1");
|
||||
this.writing("to_onset2", start_addr2);
|
||||
this.writing("to_target2", next_addr2);
|
||||
this.writing("to_onset2", start_addr);
|
||||
this.writing("to_target2", next_addr);
|
||||
this.writing("to_task2", dto.getInstruction_code());
|
||||
this.writing("to_command2", "1");
|
||||
this.writing("to_type", "3");
|
||||
@@ -1060,7 +1058,7 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
//将扩展表中的字符串数组数据转换成集合
|
||||
public List<String> getExtraDeviceCodes(String extraName) {
|
||||
String extraValue = (String) this.getDevice().getExtraValue().get(extraName);
|
||||
if (StrUtil.isEmpty(extraValue)){
|
||||
if (StrUtil.isEmpty(extraValue)) {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
String devicesString = extraValue.substring(1, extraValue.length() - 1);
|
||||
@@ -1073,14 +1071,14 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
|
||||
return devicesList;
|
||||
}
|
||||
|
||||
public List<TaskDto> sortTask(List<TaskDto> taskDtos){
|
||||
public List<TaskDto> sortTask(List<TaskDto> taskDtos) {
|
||||
Collections.sort(taskDtos, new Comparator<TaskDto>() {
|
||||
@Override
|
||||
public int compare(TaskDto t1, TaskDto t2) {
|
||||
//优先级从大到小
|
||||
int i = t2.getPriority().compareTo(t1.getPriority());
|
||||
//如果优先级相等
|
||||
if (i == 0){
|
||||
if (i == 0) {
|
||||
//时间从早到晚
|
||||
i = t1.getCreate_time().compareTo(t2.getCreate_time());
|
||||
}
|
||||
|
||||
@@ -108,6 +108,7 @@ public interface TaskService {
|
||||
* 根据设备号查询未执行的任务
|
||||
*/
|
||||
List<TaskDto> queryTaskByStartDeviceCode(String start_device_code);
|
||||
List<TaskDto> queryTaskByBackDeviceCode(String back_start_device_code);
|
||||
|
||||
/**
|
||||
* 根据设备号和任务状态查询
|
||||
|
||||
@@ -248,7 +248,7 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial {
|
||||
public List<TaskDto> queryAllUnfinished(Map whereJson) {
|
||||
WQLObject wo = WQLObject.getWQLObject("acs_task");
|
||||
JSONArray arr = wo.query("task_status < 2 ").getResultJSONArray(0);
|
||||
List<TaskDto> list =arr.toJavaList(TaskDto.class);
|
||||
List<TaskDto> list = arr.toJavaList(TaskDto.class);
|
||||
return list;
|
||||
}
|
||||
|
||||
@@ -286,6 +286,19 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial {
|
||||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<TaskDto> queryTaskByBackDeviceCode(String back_start_device_code) {
|
||||
List<TaskDto> list = new ArrayList<>();
|
||||
Iterator<TaskDto> iterator = tasks.iterator();
|
||||
while (iterator.hasNext()) {
|
||||
TaskDto task = iterator.next();
|
||||
if (task.getStart_device_code().equals(back_start_device_code) && StrUtil.equals(task.getTask_status(), "0")) {
|
||||
list.add(task);
|
||||
}
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<TaskDto> queryTaskByDeviceCodeAndStatus(String device_code) {
|
||||
List<TaskDto> list = new ArrayList<>();
|
||||
@@ -294,7 +307,7 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial {
|
||||
TaskDto task = iterator.next();
|
||||
if (task.getStart_device_code().equals(device_code) && StrUtil.equals(task.getTask_status(), "1")) {
|
||||
Instruction instruction = instructionService.findByTaskcodeAndStatus(task.getTask_code());
|
||||
if (ObjectUtil.isNotEmpty(instruction)){
|
||||
if (ObjectUtil.isNotEmpty(instruction)) {
|
||||
list.add(task);
|
||||
}
|
||||
}
|
||||
@@ -303,14 +316,14 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial {
|
||||
}
|
||||
|
||||
|
||||
public List<TaskDto> queryTaskByStartAndIntStatus(String head_start_device_code){
|
||||
public List<TaskDto> queryTaskByStartAndIntStatus(String head_start_device_code) {
|
||||
List<TaskDto> list = new ArrayList<>();
|
||||
Iterator<TaskDto> iterator = tasks.iterator();
|
||||
while (iterator.hasNext()) {
|
||||
TaskDto task = iterator.next();
|
||||
if ((task.getStart_device_code().equals(head_start_device_code) || task.getStart_device_code2().equals(head_start_device_code)) && StrUtil.equals(task.getTask_status(), "1")) {
|
||||
Instruction instruction = instructionService.findByTaskcodeAndStatus(task.getTask_code());
|
||||
if (ObjectUtil.isNotEmpty(instruction)){
|
||||
if (ObjectUtil.isNotEmpty(instruction)) {
|
||||
list.add(task);
|
||||
}
|
||||
}
|
||||
@@ -318,14 +331,14 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial {
|
||||
return list;
|
||||
}
|
||||
|
||||
public List<TaskDto> queryTaskByNextAndIntStatus(String back_start_device_code){
|
||||
public List<TaskDto> queryTaskByNextAndIntStatus(String back_start_device_code) {
|
||||
List<TaskDto> list = new ArrayList<>();
|
||||
Iterator<TaskDto> iterator = tasks.iterator();
|
||||
while (iterator.hasNext()) {
|
||||
TaskDto task = iterator.next();
|
||||
if ((task.getStart_device_code().equals(back_start_device_code) || task.getStart_device_code2().equals(back_start_device_code)) && StrUtil.equals(task.getTask_status(), "1")) {
|
||||
if ((task.getStart_device_code().equals(back_start_device_code)) && StrUtil.equals(task.getTask_status(), "1")) {
|
||||
Instruction instruction = instructionService.findByTaskcodeAndStatus(task.getTask_code());
|
||||
if (ObjectUtil.isNotEmpty(instruction)){
|
||||
if (ObjectUtil.isNotEmpty(instruction)) {
|
||||
list.add(task);
|
||||
}
|
||||
}
|
||||
@@ -452,7 +465,7 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial {
|
||||
}
|
||||
}
|
||||
WQLObject wo = WQLObject.getWQLObject("acs_task");
|
||||
JSONObject json = (JSONObject) JSONObject.toJSON(dto);
|
||||
JSONObject json = (JSONObject) JSONObject.toJSON(dto);
|
||||
|
||||
wo.insert(json);
|
||||
tasks.add(dto);
|
||||
@@ -554,7 +567,7 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial {
|
||||
}
|
||||
|
||||
if (ObjectUtil.isNotEmpty(this.findByStartCode(start_device_code))
|
||||
|| ObjectUtil.isNotEmpty(this.findByNextCode(next_device_code))) {
|
||||
|| ObjectUtil.isNotEmpty(this.findByNextCode(next_device_code))) {
|
||||
throw new WDKException("已存在该起点或终点的任务!");
|
||||
}
|
||||
if (StrUtil.equals(material_type, "") || StrUtil.equals(quantity, "")) {
|
||||
@@ -585,7 +598,7 @@ public class TaskServiceImpl implements TaskService, ApplicationAutoInitial {
|
||||
dto.setUpdate_by(currentUsername);
|
||||
|
||||
WQLObject wo = WQLObject.getWQLObject("acs_task");
|
||||
JSONObject json = (JSONObject) JSONObject.toJSON(dto);
|
||||
JSONObject json = (JSONObject) JSONObject.toJSON(dto);
|
||||
|
||||
wo.update(json);
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@ import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang.text.StrBuilder;
|
||||
import org.nl.modules.common.exception.BadRequestException;
|
||||
import org.nl.modules.common.utils.SecurityUtils;
|
||||
import org.nl.modules.system.service.impl.ParamServiceImpl;
|
||||
@@ -2751,7 +2752,13 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
||||
oneMap.put("page",pageNow+ "/" + MapUtil.getStr(whereJson,"pageNum"));
|
||||
oneMap.put("consignee", jsonMst.getString("consignee")); // 收货单位
|
||||
oneMap.put("receiver", jsonMst.getString("receiver")); // 收货人
|
||||
oneMap.put("receiptaddress", jsonMst.getString("receiptaddress")); // 收货地址
|
||||
String receiptaddress = jsonMst.getString("receiptaddress");
|
||||
/* StrBuilder strBuilder = new StrBuilder(receiptaddress);
|
||||
|
||||
if (receiptaddress.length() > 10) {
|
||||
strBuilder.insert(11,"\n");
|
||||
}*/
|
||||
oneMap.put("receiptaddress", receiptaddress); // 收货地址
|
||||
oneMap.put("receiptphone", jsonMst.getString("receiptphone")); // 收货人联系电话
|
||||
// 物流公司
|
||||
JSONObject jsonTran = tranTab.query("cust_code = '" + jsonMst.getString("trans_code") + "'").uniqueResult(0);
|
||||
@@ -2793,7 +2800,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
||||
order_no = jsonSub.getString("sale_order_name");
|
||||
|
||||
// 规格: 厚度*幅宽
|
||||
String material_spec = jsonSub.getString("thickness") + "*" + jsonSub.getString("width");
|
||||
String material_spec = jsonSub.getString("thickness_request") + "*" + jsonSub.getString("width");
|
||||
// 箱号
|
||||
String box_no = json.getString("box_no");
|
||||
String sub_box_no = "";
|
||||
@@ -2840,7 +2847,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
||||
order_no = jsonSub.getString("sale_order_name");
|
||||
|
||||
// 规格: 厚度*幅宽
|
||||
String material_spec = jsonSub.getString("thickness") + "*" + jsonSub.getString("width");
|
||||
String material_spec = jsonSub.getString("thickness_request") + "*" + jsonSub.getString("width");
|
||||
// 箱号
|
||||
String box_no = json.getString("box_no");
|
||||
String sub_box_no = "";
|
||||
|
||||
@@ -343,13 +343,19 @@
|
||||
task.task_status,
|
||||
task.task_type,
|
||||
point2.point_code,
|
||||
sub.sap_pcsn
|
||||
sub.sap_pcsn,
|
||||
attr.out_order_seq,
|
||||
attr.row_num,
|
||||
attr.col_num,
|
||||
attr.layer_num,
|
||||
attr.block_num
|
||||
FROM
|
||||
ST_IVT_IOStorInvDis dis
|
||||
LEFT JOIN ST_IVT_IOStorInv ios ON ios.iostorinv_id = dis.iostorinv_id
|
||||
LEFT JOIN md_me_materialbase mb ON mb.material_id = dis.material_id
|
||||
LEFT JOIN SCH_BASE_Task task ON task.task_id = dis.task_id
|
||||
LEFT JOIN SCH_BASE_Point point2 ON point2.point_id = dis.point_id
|
||||
LEFT JOIN st_ivt_structattr attr ON attr.struct_id = dis.struct_id
|
||||
LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn
|
||||
WHERE
|
||||
1 = 1
|
||||
@@ -375,7 +381,7 @@
|
||||
dis.work_status <= 输入.bill_status
|
||||
ENDOPTION
|
||||
|
||||
order by dis.struct_code ASC
|
||||
order by attr.row_num,attr.out_order_seq ASC
|
||||
ENDSELECT
|
||||
ENDQUERY
|
||||
ENDIF
|
||||
|
||||
@@ -84,7 +84,7 @@
|
||||
st_ivt_structattr sa3
|
||||
WHERE
|
||||
IFNULL( sa3.storagevehicle_code, '' ) <> ''
|
||||
AND AND sa3.lock_type = '1'
|
||||
AND sa3.lock_type = '1'
|
||||
) c
|
||||
WHERE
|
||||
c.block_num = a.block_num
|
||||
@@ -137,7 +137,7 @@
|
||||
st_ivt_structattr sa2
|
||||
WHERE
|
||||
IFNULL( sa2.storagevehicle_code, '' ) <> ''
|
||||
AND AND sa2.lock_type = '1'
|
||||
AND sa2.lock_type = '1'
|
||||
) b
|
||||
WHERE
|
||||
b.block_num = a.block_num
|
||||
|
||||
@@ -482,13 +482,33 @@ export default {
|
||||
},
|
||||
setPoint() {
|
||||
if (this.form2.point_code === '') {
|
||||
this.crud.notify('请先选择检验站点!', CRUD.NOTIFICATION_TYPE.INFO)
|
||||
this.crud.notify('请先选择站点!', CRUD.NOTIFICATION_TYPE.INFO)
|
||||
return
|
||||
}
|
||||
if (this.currentDis.point_code) {
|
||||
this.crud.notify('站点已设置!', CRUD.NOTIFICATION_TYPE.INFO)
|
||||
return
|
||||
}
|
||||
if (this.currentDis.work_status !== '00') {
|
||||
this.crud.notify('任务已生成!', CRUD.NOTIFICATION_TYPE.INFO)
|
||||
return
|
||||
}
|
||||
// 根据此仓位的 ‘相同块、相同排、相同层’ 判断上一个任务是否生成
|
||||
const tab = this.tabledis
|
||||
for (let i = 0; i < tab.length; i++) {
|
||||
debugger
|
||||
const item = tab[i]
|
||||
if (this.currentDis.block_num === item.block_num && this.currentDis.row_num === item.row_num && this.currentDis.layer_num === item.layer_num) {
|
||||
const out_order_seq = parseInt(this.currentDis.out_order_seq) - 1
|
||||
if (parseInt(item.out_order_seq) === out_order_seq) {
|
||||
if (item.work_status === '00') {
|
||||
this.crud.notify('请先生成上一个任务:' + item.struct_code, CRUD.NOTIFICATION_TYPE.INFO)
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (this.currentDis.iostorinvdis_id !== null) {
|
||||
this.currentDis.point_code = this.form2.point_code
|
||||
checkoutbill.setPoint(this.currentDis).then(res => {
|
||||
|
||||
Reference in New Issue
Block a user