Browse Source

更新工单 驱动

master
汪菘 3 years ago
parent
commit
6e6114a620
  1. 1
      nladmin-system/src/main/java/org/nl/AppRun.java
  2. 2
      nladmin-system/src/main/java/org/nl/acs/device/device_driver/DriverTypeEnum.java
  3. 85
      nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_feeding_trunk/ItemProtocol.java
  4. 26
      nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_lettering/HaiLiangLetteringDefination.java
  5. 24
      nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_lettering/HaiLiangLetteringDeviceDriver.java
  6. 5
      nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_lettering/ItemProtocol.java
  7. 22
      nladmin-system/src/main/java/org/nl/acs/order/service/ProduceshiftorderService.java
  8. 38
      nladmin-system/src/main/java/org/nl/acs/order/service/impl/ProduceshiftorderServiceImpl.java
  9. BIN
      nladmin-system/src/main/java/org/nl/acs/order/service/wql/order.xls

1
nladmin-system/src/main/java/org/nl/AppRun.java

@ -50,7 +50,6 @@ public class AppRun implements CommandLineRunner {
@Override @Override
public void run(String... args) throws Exception { public void run(String... args) throws Exception {
System.out.println(111);
} }
@Bean @Bean

2
nladmin-system/src/main/java/org/nl/acs/device/device_driver/DriverTypeEnum.java

@ -14,7 +14,7 @@ public enum DriverTypeEnum {
HAILIANG_FEEDING(2, "hailiang_feeding", "海亮包装项目-上料线体", "conveyor"), HAILIANG_FEEDING(2, "hailiang_feeding", "海亮包装项目-上料线体", "conveyor"),
HAILIANG_LEETERING(3, "hailiang_lettering", "海亮包装项目-刻字线体", "conveyor"), HAILIANG_LETTERING(3, "hailiang_lettering", "海亮包装项目-刻字线体", "conveyor"),
HAILIANG_RISKING(4, "hailiang_risking", "海亮包装项目-套冒线体", "conveyor"), HAILIANG_RISKING(4, "hailiang_risking", "海亮包装项目-套冒线体", "conveyor"),

85
nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_feeding_trunk/ItemProtocol.java

@ -12,8 +12,51 @@ public class ItemProtocol {
public static String item_mode = "mode"; public static String item_mode = "mode";
public static String item_action = "action"; public static String item_action = "action";
public static String item_error = "error"; public static String item_error = "error";
public static String item_to_command = "to_command"; public static String item_order = "order";
public static String item_order_detail = "order_detail";
public static String item_last_order_detail = "last_order_detail";
//当前工单上料数量
public static String item_order_feeding_qty = "order_feeding_qty";
//当前工单明细号上料数量
public static String item_detail_feeding_qty = "detail_feeding_qty";
//当前工单明细顺序号刻字数量
public static String item_detail_lettering_qty = "detail_lettering_qty";
//当前工单明细顺序号刻字合格数量
public static String item_detail_lettering_qualified_qty = "detail_lettering_qualified_qty";
//当前工单明细号套冒合格数
public static String item_detail_risking_qualified_qty = "detail_risking_qualified_qty";
//当前工单明细号套冒数
public static String item_detail_risking_qty = "detail_risking_qty";
//当前工单明细号捆扎数
public static String item_detail_strapping_qty = "detail_strapping_qty";
//当前工单明细号捆扎根数
public static String item_detail_strapping_oneqty = "detail_strapping_oneqty";
//当前工单明细号裹膜数
public static String item_detail_coating_qty = "detail_coating_qty";
//当前贴标工单明细号
public static String item_labeling_order = "labeling_order";
//当前贴标工单明细号贴标合格数
public static String item_detail_rlabeling_qualified_qty = "detail_rlabeling_qualified_qty";
//当前贴标工单明细号贴标数
public static String item_detail_rlabeling_qty = "detail_rlabeling_qty";
public static String item_to_command = "to_command";
public static String item_to_order = "to_order";
public static String item_to_order_detail = "to_order_detail";
public static String item_to_order_feeding_qty = "to_order_feeding_qty";
public static String item_to_detail_feeding_qty = "to_detail_feeding_qty";
public static String item_to_outer_diameter = "to_outer_diameter";
public static String item_to_wall_thickness = "to_wall thickness";
public static String item_to_length = "to_length";
public static String item_to_is_last = "to_is_last";
public static String item_to_strapping_qty = "to_strapping_qty";
public static String item_to_one_strapping_qty = "to_one_strapping_qty";
public static String item_to_lastone_strapping_qty = "to_lastone_strapping_qty";
public static String item_to_coating_qty = "to_coating_qty";
public static String item_to_labeling_qty = "to_labeling_qty";
public static String item_to_stop = "to_stop";
public static String item_to_force_complete = "to_force_complete";
private HaiLiangFeedingTrunkDeviceDriver driver; private HaiLiangFeedingTrunkDeviceDriver driver;
@ -55,16 +98,46 @@ public class ItemProtocol {
public static List<ItemDto> getReadableItemDtos() { public static List<ItemDto> getReadableItemDtos() {
ArrayList list = new ArrayList(); ArrayList list = new ArrayList();
list.add(new ItemDto(item_heartbeat, "心跳", "DB51.B0")); list.add(new ItemDto(item_heartbeat, "心跳", "DB600.B0"));
list.add(new ItemDto(item_mode, "工作状态", "DB51.B1", Boolean.valueOf(true))); list.add(new ItemDto(item_mode, "工作模式", "DB600.B2", Boolean.valueOf(true)));
list.add(new ItemDto(item_action, "动作信号", "DB51.B2")); list.add(new ItemDto(item_error, "故障信号", "DB600.B3"));
list.add(new ItemDto(item_error, "报警信号", "DB51.B4")); list.add(new ItemDto(item_order, "当前执行工单号", "DB600.D4"));
list.add(new ItemDto(item_order_detail, "当前工单明细号", "DB600.D8"));
list.add(new ItemDto(item_last_order_detail, "上次完成工单明细号", "DB600.D12"));
list.add(new ItemDto(item_order_feeding_qty, "当前工单上料数量", "DB600.D16"));
list.add(new ItemDto(item_detail_feeding_qty, "当前工单明细号上料数量", "DB600.D20"));
list.add(new ItemDto(item_detail_lettering_qty, "当前工单明细号刻字数量", "DB600.D24"));
list.add(new ItemDto(item_detail_lettering_qualified_qty, "当前工单明细号刻字合格数量", "DB600.D28"));
list.add(new ItemDto(item_detail_risking_qualified_qty, "当前工单明细号套冒合格数", "DB600.D32"));
list.add(new ItemDto(item_detail_risking_qty, "当前工单明细号套冒数", "DB600.D36"));
list.add(new ItemDto(item_detail_strapping_qty, "当前工单明细号捆扎包数", "DB600.D40"));
list.add(new ItemDto(item_detail_strapping_oneqty, "当前工单明细号捆扎根数", "DB600.D44"));
list.add(new ItemDto(item_detail_coating_qty, "当前工单明细号裹膜数", "DB600.D48"));
list.add(new ItemDto(item_labeling_order, "当前贴标工单明细号", "DB600.D52"));
list.add(new ItemDto(item_detail_rlabeling_qualified_qty, "当前工单明细号刻字数量", "DB600.D56"));
list.add(new ItemDto(item_detail_rlabeling_qty, "当前贴标工单明细号贴标数", "DB600.D60"));
return list; return list;
} }
public static List<ItemDto> getWriteableItemDtos() { public static List<ItemDto> getWriteableItemDtos() {
ArrayList list = new ArrayList(); ArrayList list = new ArrayList();
list.add(new ItemDto(item_to_command, "作业命令", "DB52.W2", Boolean.valueOf(true))); list.add(new ItemDto(item_to_order, "工单号", "DB600.D2"));
list.add(new ItemDto(item_to_order_detail, "工单明细号", "DB600.D6"));
list.add(new ItemDto(item_to_order_feeding_qty, "工单上料总数量", "DB600.D10"));
list.add(new ItemDto(item_to_detail_feeding_qty, "工单明细号上料数量", "DB600.D14"));
list.add(new ItemDto(item_to_outer_diameter, "外径", "DB600.REAL18"));
list.add(new ItemDto(item_to_wall_thickness, "壁厚", "DB600.REAL22"));
list.add(new ItemDto(item_to_length, "长度", "DB600.REAL26"));
list.add(new ItemDto(item_to_is_last, "是否最后工单明细号", "DB600.D30"));
list.add(new ItemDto(item_to_strapping_qty, "总捆扎包数", "DB600.D34"));
list.add(new ItemDto(item_to_one_strapping_qty, "标准每捆数量", "DB600.D38"));
list.add(new ItemDto(item_to_lastone_strapping_qty, "捆扎尾料数量", "DB600.D42"));
list.add(new ItemDto(item_to_coating_qty, "需要裹膜捆数", "DB600.D42"));
list.add(new ItemDto(item_to_labeling_qty, "需要贴标数量", "DB600.D46"));
list.add(new ItemDto(item_to_stop, "急停", "DB600.D50"));
list.add(new ItemDto(item_to_force_complete, "工单强制完成", "DB600.D54"));
list.add(new ItemDto(item_to_command, "作业命令", "DB52.D62", Boolean.valueOf(true)));
return list; return list;
} }

26
nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_lettering/HaiLiangLetteringDefination.java

@ -1,19 +1,21 @@
package org.nl.acs.device_driver.hailiang.hailiang_lettering; package org.nl.acs.device_driver.hailiang.hailiang_lettering;
import org.nl.acs.device.device_driver.standard_inspect.ItemDto;
import org.nl.acs.device_driver.DeviceDriver; import org.nl.acs.device_driver.DeviceDriver;
import org.nl.acs.device_driver.DeviceDriverDefination; import org.nl.acs.device_driver.defination.OpcDeviceDriverDefination;
import org.nl.acs.opc.Device; import org.nl.acs.opc.Device;
import org.nl.acs.opc.DeviceType; import org.nl.acs.opc.DeviceType;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.LinkedList; import java.util.LinkedList;
import java.util.List; import java.util.List;
/** /**
* 海亮刻字线体 * 海亮贴标线体
*/ */
@Service @Service
public class HaiLiangLetteringDefination implements DeviceDriverDefination { public class HaiLiangLetteringDefination implements OpcDeviceDriverDefination {
@Override @Override
public String getDriverCode() { public String getDriverCode() {
return "hailiang_lettering"; return "hailiang_lettering";
@ -47,4 +49,22 @@ public class HaiLiangLetteringDefination implements DeviceDriverDefination {
return types; return types;
} }
@Override
public List<ItemDto> getReadableItemDtos() {
return getReadableItemDtos2();
}
public static List<ItemDto> getReadableItemDtos2() {
List<ItemDto> list = new ArrayList();
list.add(new ItemDto(ItemProtocol.item_mode, "工作状态", "V100.1", true));
list.add(new ItemDto(ItemProtocol.item_action, "动作信号", "V100.0"));
list.add(new ItemDto(ItemProtocol.item_error, "报警信号", "VB101"));
return list;
}
@Override
public List<ItemDto> getWriteableItemDtos() {
return ItemProtocol.getWriteableItemDtos();
}
} }

24
nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_lettering/HaiLiangLetteringDeviceDriver.java

@ -4,31 +4,27 @@ import lombok.Data;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.nl.acs.device_driver.DeviceDriver; import org.nl.acs.device_driver.DeviceDriver;
import org.nl.acs.device_driver.RouteableDeviceDriver; import org.nl.acs.device_driver.driver.AbstractOpcDeviceDriver;
import org.nl.acs.device_driver.driver.AbstractDeviceDriver;
import org.nl.acs.device_driver.driver.ExecutableDeviceDriver; import org.nl.acs.device_driver.driver.ExecutableDeviceDriver;
import org.nl.acs.instruction.service.dto.Instruction; import org.nl.acs.opc.Device;
import org.nl.acs.route.service.RouteLineService;
import org.nl.acs.task.service.TaskService;
import org.nl.utils.SpringContextHolder;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.Date;
/** /**
* * 海亮贴标线体
*/ */
@Slf4j @Slf4j
@Data @Data
@RequiredArgsConstructor @RequiredArgsConstructor
public class HaiLiangLetteringDeviceDriver extends AbstractDeviceDriver implements DeviceDriver, ExecutableDeviceDriver, RouteableDeviceDriver { public class HaiLiangLetteringDeviceDriver extends AbstractOpcDeviceDriver implements DeviceDriver, ExecutableDeviceDriver {
protected ItemProtocol itemProtocol = new ItemProtocol(this);
@Override
public Device getDevice() {
return this.device;
}
@Override @Override
public void execute() { public void execute() {
} }
} }

5
nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_lettering/ItemProtocol.java

@ -2,7 +2,6 @@ package org.nl.acs.device_driver.hailiang.hailiang_lettering;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.nl.acs.device.device_driver.standard_inspect.ItemDto; import org.nl.acs.device.device_driver.standard_inspect.ItemDto;
import org.nl.acs.device_driver.hailiang.hailiang_labeling.HaiLiangLabelingDeviceDriver;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -15,9 +14,9 @@ public class ItemProtocol {
public static String item_to_command = "to_command"; public static String item_to_command = "to_command";
private HaiLiangLabelingDeviceDriver driver; private HaiLiangLetteringDeviceDriver driver;
public ItemProtocol(HaiLiangLabelingDeviceDriver driver) { public ItemProtocol(HaiLiangLetteringDeviceDriver driver) {
this.driver = driver; this.driver = driver;
} }

22
nladmin-system/src/main/java/org/nl/acs/order/service/ProduceshiftorderService.java

@ -3,6 +3,8 @@ package org.nl.acs.order.service;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import org.nl.acs.order.service.dto.ProduceshiftorderDto; import org.nl.acs.order.service.dto.ProduceshiftorderDto;
import org.nl.acs.order.service.dto.ProduceshiftorderdetailDto;
import org.nl.acs.task.service.dto.TaskDto;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
@ -34,6 +36,26 @@ public interface ProduceshiftorderService {
*/ */
List<ProduceshiftorderDto> queryAll(Map whereJson); List<ProduceshiftorderDto> queryAll(Map whereJson);
/**
* 查询所有未完成工单
*
* @param whereJson 条件参数
* @return List<ProduceshiftorderDto>
*/
List<ProduceshiftorderDto> queryAllOrder(String whereJson);
/**
* 查询所有未完成工单明细
*
* @param whereJson 条件参数
* @return List<ProduceshiftorderdetailDto>
*/
List<ProduceshiftorderdetailDto> queryAllOrderDteail(String whereJson);
/** /**
* 根据ID查询 * 根据ID查询
* *

38
nladmin-system/src/main/java/org/nl/acs/order/service/impl/ProduceshiftorderServiceImpl.java

@ -14,8 +14,10 @@ import org.nl.acs.order.service.ProduceshiftorderService;
import org.nl.acs.order.service.dto.CustomerbaseDto; import org.nl.acs.order.service.dto.CustomerbaseDto;
import org.nl.acs.order.service.dto.ProduceshiftorderDto; import org.nl.acs.order.service.dto.ProduceshiftorderDto;
import org.nl.acs.order.service.dto.ProduceshiftorderdetailDto; import org.nl.acs.order.service.dto.ProduceshiftorderdetailDto;
import org.nl.acs.task.service.dto.TaskDto;
import org.nl.exception.BadRequestException; import org.nl.exception.BadRequestException;
import org.nl.modules.system.util.CodeUtil; import org.nl.modules.system.util.CodeUtil;
import org.nl.start.auto.initial.ApplicationAutoInitial;
import org.nl.utils.SecurityUtils; import org.nl.utils.SecurityUtils;
import org.nl.wql.WQL; import org.nl.wql.WQL;
import org.nl.wql.core.bean.ResultBean; import org.nl.wql.core.bean.ResultBean;
@ -31,6 +33,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -43,10 +46,24 @@ import java.util.Map;
@Service @Service
@RequiredArgsConstructor @RequiredArgsConstructor
@Slf4j @Slf4j
public class ProduceshiftorderServiceImpl implements ProduceshiftorderService { public class ProduceshiftorderServiceImpl implements ProduceshiftorderService, ApplicationAutoInitial {
List<ProduceshiftorderDto> order = new ArrayList();
List<ProduceshiftorderdetailDto> detail = new ArrayList();
private final MongoTemplate mongoTemplate; private final MongoTemplate mongoTemplate;
@Override
public void autoInitial() throws Exception {
this.reload();
}
public synchronized void reload() {
this.order = this.queryAllOrder("order_status <2 and is_delete =0");
this.detail = this.queryAllOrderDteail("order_detail_status <2 and is_delete =0");
}
@Override @Override
public Map<String, Object> queryAll(Map whereJson, Pageable page) { public Map<String, Object> queryAll(Map whereJson, Pageable page) {
WQLObject wo = WQLObject.getWQLObject("acs_produceshiftorder"); WQLObject wo = WQLObject.getWQLObject("acs_produceshiftorder");
@ -96,6 +113,24 @@ public class ProduceshiftorderServiceImpl implements ProduceshiftorderService {
return null; return null;
} }
@Override
public List<ProduceshiftorderDto> queryAllOrder(String whereJson) {
WQLObject wo = WQLObject.getWQLObject("acs_produceshiftorder");
JSONArray arr = wo.query(whereJson).getResultJSONArray(0);
List<ProduceshiftorderDto> list = arr.toJavaList(ProduceshiftorderDto.class);
return list;
}
@Override
public List<ProduceshiftorderdetailDto> queryAllOrderDteail(String whereJson) {
WQLObject wo = WQLObject.getWQLObject("acs_produceshiftorderdetail");
JSONArray arr = wo.query(whereJson).getResultJSONArray(0);
List<ProduceshiftorderdetailDto> list = arr.toJavaList(ProduceshiftorderdetailDto.class);
return list;
}
@Override @Override
public ProduceshiftorderDto findById(String order_id) { public ProduceshiftorderDto findById(String order_id) {
WQLObject wo = WQLObject.getWQLObject("acs_produceshiftorder"); WQLObject wo = WQLObject.getWQLObject("acs_produceshiftorder");
@ -231,4 +266,5 @@ public class ProduceshiftorderServiceImpl implements ProduceshiftorderService {
JSONArray arr = wo.query("order_id = '"+order_id+"'").getResultJSONArray(0); JSONArray arr = wo.query("order_id = '"+order_id+"'").getResultJSONArray(0);
return arr; return arr;
} }
} }

BIN
nladmin-system/src/main/java/org/nl/acs/order/service/wql/order.xls

Binary file not shown.
Loading…
Cancel
Save