Browse Source

更新

master
汪菘 3 years ago
parent
commit
3a1263e72b
  1. 97
      nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_feeding/HaiLiangFeedingDeviceDriver.java
  2. 95
      nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_feeding_trunk/HaiLiangFeedingTrunkDeviceDriver.java
  3. 7
      nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_feeding_trunk/ItemProtocol.java
  4. 2
      nladmin-system/src/main/java/org/nl/acs/order/service/ProduceshiftorderdetailService.java
  5. 29
      nladmin-system/src/main/java/org/nl/acs/order/service/dto/ProduceshiftorderdetailDto.java
  6. 15
      nladmin-system/src/main/java/org/nl/acs/order/service/impl/ProduceshiftorderServiceImpl.java
  7. 23
      nladmin-system/src/main/java/org/nl/acs/order/service/impl/ProduceshiftorderdetailServiceImpl.java
  8. 29
      nladmin-system/src/main/java/org/nl/acs/order/service/impl/Test.java
  9. BIN
      nladmin-system/src/main/java/org/nl/acs/order/service/wql/order.xls

97
nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_feeding/HaiLiangFeedingDeviceDriver.java

@ -33,101 +33,8 @@ public class HaiLiangFeedingDeviceDriver extends AbstractOpcDeviceDriver impleme
@Override
public void execute() {
// String message = null;
// try {
// device_code = this.getDeviceCode();
// mode = this.itemProtocol.getMode();
// error = this.itemProtocol.getError();
// move = this.itemProtocol.getMove();
// task = this.itemProtocol.getTask();
// action = this.itemProtocol.getAction();
// ioaction = this.itemProtocol.getIoAction();
// height = this.itemProtocol.getHeight();
// operation_type = this.itemProtocol.getOperation_type();
// direction = this.itemProtocol.getDirection();
// hasGoods = this.itemProtocol.getMove();
//
// if (mode != last_mode) {
// this.setRequireSucess(false);
// }
// if (move != last_move) {
// if (move == 0) {
// thingToNothing();
// }
// }
// if (error != last_error) {
// }
// if (mode == 2 && move != 0 && task > 0) {
// //inst_message
// inst = instructionService.findByCodeFromCache(String.valueOf(task));
// if (inst != null) {
// inst_message = "指令号:" + inst.getInstruction_code() + " " + inst.getStart_point_code() + "->" + inst.getNext_point_code() + " 载具号:" + inst.getVehicle_code();
// if (StrUtil.equals(inst.getInstruction_status(), "0") && StrUtil.equals(this.getDeviceCode(), inst.getStart_device_code())) {
// inst.setInstruction_status("1");
// instructionService.update(inst);
// }
// if (StrUtil.equals(inst.getInstruction_status(), "1") && StrUtil.equals(this.getDeviceCode(), inst.getNext_device_code())) {
// finish_instruction();
// }
// }
// }
//
// if (getBarcode() != null) {
//
// }
// } catch (Exception var17) {
// return;
// }
// if (!this.itemProtocol.getIsonline()) {
// this.setIsonline(false);
// this.setIserror(true);
// message = "信号量同步异常";
// //未联机
// } else if (mode == 0) {
// this.setIsonline(false);
// this.setIserror(true);
// message = "未联机";
// //有报警
// } else if (error != 0) {
// this.setIsonline(false);
// this.setIserror(true);
// message = "有报警";
// //无报警
// } else {
// this.setIsonline(true);
// this.setIserror(false);
// message = "";
// Instruction instruction = null;
// List toInstructions;
// switch (mode) {
// case 1:
// log.debug("设备运转模式:等待工作");
// break;
// case 2:
// //申请任务
// if (hasGoods > 0 && !StrUtil.isEmpty(barcode()) && height > 0 && !requireSucess) {
// instruction_require(barcode());
// }
// if (hasGoods > 0 && !StrUtil.isEmpty(barcode()) && height > 0 && !applySucess) {
// instruction_apply(barcode());
// }
// }
// switch (flag) {
// //取货完成
// case 1:
// writing(2);
// break;
// //放货完成
// case 2:
// writing(3);
// break;
//
// }
// }
// last_mode = mode;
// last_error = error;
// last_move = move;
// last_task = task;
}

95
nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_feeding_trunk/HaiLiangFeedingTrunkDeviceDriver.java

@ -18,6 +18,7 @@ import org.nl.utils.SpringContextHolder;
import org.openscada.opc.lib.da.Server;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
@ -53,9 +54,27 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
int ready = 0;
int pause = 0;
int clear = 0;
int order_feeding_qty = 0;
int detail_feeding_qty = 0;
int detail_feeding_qualified_qty = 0;
int detail_lettering_qty = 0;
int detail_lettering_qualified_qty = 0;
int detail_risking_qualified_qty = 0;
int detail_risking_qty = 0;
int detail_strapping_qty = 0;
int detail_strapping_oneqty = 0;
int detail_coating_qty = 0;
int labeling_order = 0;
int detail_labeling_qualified_qty = 0;
int detail_labeling_qty = 0;
Boolean send_letter_flag_back = false;
Boolean send_letter_flag = false;
private Date detail_time = new Date();
private int detail_time_out = 3000;
@Override
public void execute() throws Exception {
String message = null;
@ -67,12 +86,44 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
order_detail = this.itemProtocol.getOrder_detail();
ready = this.itemProtocol.getReady();
pause = this.itemProtocol.getPause();
clear = this.itemProtocol.getPause();
clear = this.itemProtocol.getClear();
//当前工单明细号上料数量
order_feeding_qty = this.itemProtocol.getDetail_feeding_qty();
detail_feeding_qty = this.itemProtocol.getDetail_feeding_qty();
//当前工单明细号上料合格数量
detail_feeding_qualified_qty = this.itemProtocol.getDetail_feeding_qualified_qty();
//当前工单明细号刻字数量
detail_lettering_qty = this.itemProtocol.getDetail_lettering_qty();
//当前工单明细号刻字合格数量
detail_lettering_qualified_qty = this.itemProtocol.getDetail_lettering_qualified_qty();
//当前工单明细号套冒合格数
detail_risking_qualified_qty = this.itemProtocol.getDetail_risking_qualified_qty();
//当前工单明细号套冒数
detail_risking_qty = this.itemProtocol.getDetail_risking_qty();
//当前工单明细号捆扎包数
detail_strapping_qty = this.itemProtocol.getDetail_strapping_qty();
//当前工单明细号捆扎根数
detail_strapping_oneqty = this.itemProtocol.getDetail_strapping_oneqty();
//当前工单明细号裹膜数
detail_coating_qty =this.itemProtocol.getDetail_coating_qty();
//当前贴标工单明细号
labeling_order = this.itemProtocol.getLabeling_order();
//当前贴标工单明细号贴标合格数
detail_labeling_qualified_qty = this.itemProtocol.getDetail_strapping_qty();
//当前贴标工单明细号贴标数
detail_labeling_qty = this.itemProtocol.getDetail_labeling_qty();
if (mode != last_mode) {
this.setRequireSucess(false);
}
if(order >0 && order_detail>0){
update_detail(String.valueOf(order),String.valueOf(order_detail));
}
} catch (Exception var17) {
return;
}
@ -112,6 +163,39 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
last_order = order;
}
public synchronized boolean update_detail(String order, String order_detail) throws Exception {
Date date = new Date();
if (date.getTime() - this.detail_time_out < (long) this.detail_time_out) {
log.trace("触发时间因为小于{}毫秒,而被无视", this.detail_time_out);
return false;
} else {
this.detail_time= date;
ProduceshiftorderdetailDto dto = produceshiftorderdetailService.findOrderDetailFromCache(String.valueOf(order),String.valueOf(order_detail));
//上料数量
dto.setPresent_feeding_number(String.valueOf(detail_feeding_qty));
//上料合格数量
dto.setFeeding_qualified_qty(String.valueOf(detail_feeding_qualified_qty));
//当前工单明细号刻字数量
dto.setPresent_lettering_number(String.valueOf(detail_lettering_qty));
//当前工单明细号刻字合格数量
dto.setQualified_lettering_number(String.valueOf(detail_lettering_qualified_qty));
//当前工单明细号套冒数
dto.setPresent_sleeveing_number(String.valueOf(detail_risking_qty));
//当前工单明细号套冒合格数
dto.setQualified_sleeveing_number(String.valueOf(detail_risking_qualified_qty));
//当前捆扎包数
dto.setPresent_strap_pack_number(String.valueOf(detail_strapping_qty));
//当前捆扎数
dto.setPresent_strap_number(String.valueOf(detail_strapping_oneqty));
//当前工单明细号裹膜数
dto.setPresent_wraping_number(String.valueOf(detail_coating_qty));
produceshiftorderdetailService.update(dto);
return true;
}
}
public boolean apply_order() throws Exception {
ProduceshiftorderDto dto = produceshiftorderService.apply_order();
if(ObjectUtil.isEmpty(dto)){
@ -122,18 +206,21 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
String is_lettering = dto.getIs_lettering();
//是否套冒
String is_risking = dto.getIs_risking();
//捆扎
//是否捆扎
String is_strapping = dto.getIs_strapping();
//裹膜
//是否裹膜
String is_coating = dto.getIs_coating();
//贴标
//是否贴标
String is_labeling = dto.getIs_labeling();
//选择上料口
String feeding_mouth = dto.getFeeding_mouth();
String outer_diameter = dto.getOuter_diameter();
String wall_thickness = dto.getWall_thickness();
String length = dto.getLength();
String qty = dto.getQty();
writing(ItemProtocol.item_to_order,order);
writing(ItemProtocol.item_to_feeding_mouth,feeding_mouth);
writing(ItemProtocol.item_to_order_feeding_qty,qty);
writing(ItemProtocol.item_to_outer_diameter,outer_diameter);
writing(ItemProtocol.item_to_wall_thickness,wall_thickness);

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

@ -18,6 +18,8 @@ public class ItemProtocol {
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_feeding_qualified_qty = "detail_feeding_qualified_qty";
//当前工单明细顺序号刻字数量
public static String item_detail_lettering_qty = "detail_lettering_qty";
//当前工单明细顺序号刻字合格数量
@ -126,6 +128,10 @@ public class ItemProtocol {
return this.getOpcIntegerValue(item_detail_feeding_qty);
}
public int getDetail_feeding_qualified_qty() {
return this.getOpcIntegerValue(item_detail_feeding_qualified_qty);
}
public int getDetail_lettering_qty() {
return this.getOpcIntegerValue(item_detail_lettering_qty);
}
@ -371,6 +377,7 @@ public class ItemProtocol {
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_feeding_qualified_qty, "当前工单明细号上料合格数量", "DB600.D120"));
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"));

2
nladmin-system/src/main/java/org/nl/acs/order/service/ProduceshiftorderdetailService.java

@ -76,6 +76,8 @@ public interface ProduceshiftorderdetailService {
ProduceshiftorderdetailDto apply_orderDetail(String order);
ProduceshiftorderdetailDto findOrderDetailFromCache(String order,String detail);
List<ProduceshiftorderdetailDto> findOrderDetailByOrderIdFromCache(String order_id);
List<ProduceshiftorderdetailDto> findOrderDetailByOrderCodeFromCache(String order_code);

29
nladmin-system/src/main/java/org/nl/acs/order/service/dto/ProduceshiftorderdetailDto.java

@ -45,17 +45,33 @@ public class ProduceshiftorderdetailDto implements Serializable {
/** 当前捆扎包数 */
private String present_strap_pack_number;
/** 当前捆扎数 */
private String present_strap_number;
/** 每捆数量 */
private String strap_number;
/** 捆扎尾料数量 */
private String strap_tailint_number;
/** 刻字信息 */
/** 图标前刻字信息 */
private String lettering_message;
/** 刻字图标类型 */
private String lettering_icon_type;
/** 图标后刻字信息 */
private String lettering_message2;
/** 当前刻字数量 */
private String present_lettering_numer;
private String present_lettering_number;
/** 贴标模板 */
private String labeling_template;
/** 贴标信息 */
private String labeling_message;
@ -115,8 +131,11 @@ public class ProduceshiftorderdetailDto implements Serializable {
/** 上料数量 */
private String feeding_qty;
/** 当前上料数量 */
private String present_feeding_number;
/** 上料合格数量 */
private String lettering_qualified_qty;
private String feeding_qualified_qty;
/** 上料开始时间 */
private String feeding_start_time;
@ -125,7 +144,7 @@ public class ProduceshiftorderdetailDto implements Serializable {
private String feeding_end_time;
/** 刻字合格数量 */
private String qualified_lettering_numer;
private String qualified_lettering_number;
/** 刻字开始时间 */
private String lettering_start_time;
@ -134,7 +153,7 @@ public class ProduceshiftorderdetailDto implements Serializable {
private String lettering_finish_time;
/** 当前套冒数量 */
private String present_sleeveing_numer;
private String present_sleeveing_number;
/** 套冒合格数量 */
private String qualified_sleeveing_number;

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

@ -303,7 +303,7 @@ public class ProduceshiftorderServiceImpl implements ProduceshiftorderService, A
iterator.remove();
}
}
if (StrUtil.equals(dto.getOrder_id(), "07") || StrUtil.equals(dto.getOrder_id(), "08")) {
if (!StrUtil.equals(dto.getOrder_id(), "07") || !StrUtil.equals(dto.getOrder_id(), "08")) {
order.add(dto);
}
}
@ -622,6 +622,19 @@ public class ProduceshiftorderServiceImpl implements ProduceshiftorderService, A
new_jo.put("qty", orderDteail_jo.getString("order_detail_qty"));
new_jo.put("type", "orderDteail");
new_jo.put("is_flag", "0");
new_jo.put("feeding_qty", orderDteail_jo.getString("feeding_qty"));
new_jo.put("feeding_qualified_qty", orderDteail_jo.getString("feeding_qualified_qty"));
new_jo.put("present_lettering_number", orderDteail_jo.getString("present_lettering_number"));
new_jo.put("qualified_lettering_number", orderDteail_jo.getString("qualified_lettering_number"));
new_jo.put("present_sleeveing_number", orderDteail_jo.getString("present_sleeveing_number"));
new_jo.put("qualified_sleeveing_number", orderDteail_jo.getString("qualified_sleeveing_number"));
new_jo.put("present_strap_pack_number", orderDteail_jo.getString("present_strap_pack_number"));
new_jo.put("present_strap_number", orderDteail_jo.getString("present_strap_number"));
new_jo.put("present_wraping_number", orderDteail_jo.getString("present_wraping_number"));
new_jo.put("qualified_wraping_number", orderDteail_jo.getString("qualified_wraping_number"));
new_jo.put("present_labeling_number", orderDteail_jo.getString("present_labeling_number"));
children.add(new_jo);
}
jo.put("children", children);

23
nladmin-system/src/main/java/org/nl/acs/order/service/impl/ProduceshiftorderdetailServiceImpl.java

@ -121,7 +121,7 @@ public class ProduceshiftorderdetailServiceImpl implements Produceshiftorderdeta
iterator.remove();
}
}
if (StrUtil.equals(dto.getOrder_detail_status(), "07") || StrUtil.equals(dto.getOrder_detail_status(), "08")) {
if (!StrUtil.equals(dto.getOrder_detail_status(), "07") || !StrUtil.equals(dto.getOrder_detail_status(), "08")) {
detail.add(dto);
}
@ -154,7 +154,7 @@ public class ProduceshiftorderdetailServiceImpl implements Produceshiftorderdeta
map.put("每捆数量", produceshiftorderdetail.getStrap_number());
map.put("捆扎尾料数量", produceshiftorderdetail.getStrap_tailint_number());
map.put("刻字信息", produceshiftorderdetail.getLettering_message());
map.put("当前刻字数量", produceshiftorderdetail.getPresent_lettering_numer());
map.put("当前刻字数量", produceshiftorderdetail.getPresent_lettering_number());
map.put("贴标信息", produceshiftorderdetail.getLabeling_message());
map.put("当前贴标数量", produceshiftorderdetail.getPresent_labeling_number());
map.put("创建者", produceshiftorderdetail.getCreate_by());
@ -173,13 +173,13 @@ public class ProduceshiftorderdetailServiceImpl implements Produceshiftorderdeta
map.put("物料长度", produceshiftorderdetail.getLength());
map.put("工单明细状态", produceshiftorderdetail.getOrder_detail_status());
map.put("上料数量", produceshiftorderdetail.getFeeding_qty());
map.put("上料合格数量", produceshiftorderdetail.getLettering_qualified_qty());
map.put("上料合格数量", produceshiftorderdetail.getFeeding_qualified_qty());
map.put("上料开始时间", produceshiftorderdetail.getFeeding_start_time());
map.put("上料完成时间", produceshiftorderdetail.getFeeding_end_time());
map.put("刻字合格数量", produceshiftorderdetail.getQualified_lettering_numer());
map.put("刻字合格数量", produceshiftorderdetail.getQualified_lettering_number());
map.put("刻字开始时间", produceshiftorderdetail.getLettering_start_time());
map.put("刻字完成时间", produceshiftorderdetail.getLettering_finish_time());
map.put("当前套冒数量", produceshiftorderdetail.getPresent_sleeveing_numer());
map.put("当前套冒数量", produceshiftorderdetail.getPresent_sleeveing_number());
map.put("套冒合格数量", produceshiftorderdetail.getQualified_sleeveing_number());
map.put("套冒开始时间", produceshiftorderdetail.getSleeveing_start_time());
map.put("套冒完成时间", produceshiftorderdetail.getSleeveing_finish_time());
@ -276,10 +276,21 @@ public class ProduceshiftorderdetailServiceImpl implements Produceshiftorderdeta
if(ObjectUtil.isEmpty(order_detail)){
throw new BadRequestException("未找到处于就绪状态的工单明细!");
}
return order_detail;
}
@Override
public ProduceshiftorderdetailDto findOrderDetailFromCache(String order,String detail) {
Iterator var3 = this.detail.iterator();
while (var3.hasNext()) {
ProduceshiftorderdetailDto onedetail = (ProduceshiftorderdetailDto) var3.next();
if (StrUtil.equals(onedetail.getOrder_code(), order) && StrUtil.equals(onedetail.getOrder_detail_code(), detail) ) {
return onedetail;
}
}
return null;
}
@Override
public Boolean isLastOrderDetail(String order) {
List<ProduceshiftorderdetailDto> list = new ArrayList<>();

29
nladmin-system/src/main/java/org/nl/acs/order/service/impl/Test.java

@ -0,0 +1,29 @@
package org.nl.acs.order.service.impl;
public class Test {
public static void main(String[] args) {
Process printProcess;
String printName ="HP LaserJet Pro MFP M225-M226 PCL 6";
try
{
printProcess = Runtime
.getRuntime()
.exec(new String[] {
"C:\\Users\\noblelift\\Desktop\\条码标签设计软件和打印程序\\BarcodePrint\\BarcodePrint.exe",
"PrinterName=" + printName,
"LabelName=Label.ct", "Text5="+ "111","Text6="+"222","Text7="+"333","Text8="+"444"});
}
catch (Exception e)
{
System.out.println("aaa");
}
}
}

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

Binary file not shown.
Loading…
Cancel
Save