Browse Source

更新

master
汪菘 3 years ago
parent
commit
a2b252a2b0
  1. 161
      nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_feeding_trunk/HaiLiangFeedingTrunkDeviceDriver.java
  2. 31
      nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_labeling/HaiLiangLabelingDeviceDriver.java
  3. 4
      nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_lettering/HaiLiangLetteringDeviceDriver.java
  4. 89
      nladmin-system/src/main/java/org/nl/acs/order/service/impl/LabelingTemplateServiceImpl.java

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

@ -54,9 +54,6 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
int move = 0;
int order = 0;
int order_detail = 0;
int last_mode = 0;
int last_order = order;
int last_order_detail = order_detail;
int ready = 0;
int pause = 0;
int clear = 0;
@ -74,6 +71,28 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
int detail_labeling_qualified_qty = 0;
int detail_labeling_qty = 0;
int last_mode = 0;
int last_error = 0;
int last_move = 0;
int last_order = 0;
int last_order_detail = 0;
int last_last_order = order;
int last_ready = 0;
int last_pause = 0;
int last_clear = 0;
int last_order_feeding_qty = 0;
int last_detail_feeding_qty = 0;
int last_detail_feeding_qualified_qty = 0;
int last_detail_lettering_qty = 0;
int last_detail_lettering_qualified_qty = 0;
int last_detail_risking_qualified_qty = 0;
int last_detail_risking_qty = 0;
int last_detail_strapping_qty = 0;
int last_detail_strapping_oneqty = 0;
int last_detail_coating_qty = 0;
int last_labeling_order = 0;
int last_detail_labeling_qualified_qty = 0;
int last_detail_labeling_qty = 0;
Boolean send_letter_flag_back = false;
Boolean send_letter_flag = false;
@ -123,6 +142,7 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
if (mode != last_mode) {
this.setRequireSucess(false);
logServer.deviceLogToacs(this.device_code,"","","工作模式切换,刷新请求标记:"+this.requireSucess);
logServer.deviceLog(this.device_code,"mode" ,String.valueOf(mode));
logServer.deviceLogToacs(this.device_code,"","","信号mode:" + last_mode + "->" + mode);
}
@ -143,6 +163,109 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
logServer.deviceLog(this.device_code,"order_detail" ,String.valueOf(order_detail));
logServer.deviceLogToacs(this.device_code,"","","信号order_detail:" + last_order_detail + "->" + order_detail);
}
if(error != last_error)
{
logServer.deviceLog(this.device_code,"error" ,String.valueOf(error));
logServer.deviceLogToacs(this.device_code,"","","信号error:" + last_error + "->" + error);
}
if(ready != last_ready)
{
logServer.deviceLog(this.device_code,"ready" ,String.valueOf(ready));
logServer.deviceLogToacs(this.device_code,"","","信号ready:" + last_ready + "->" + ready);
}
if(pause != last_pause)
{
logServer.deviceLog(this.device_code,"pause" ,String.valueOf(pause));
logServer.deviceLogToacs(this.device_code,"","","信号pause:" + last_pause + "->" + pause);
}
if(clear != last_clear)
{
logServer.deviceLog(this.device_code,"clear" ,String.valueOf(clear));
logServer.deviceLogToacs(this.device_code,"","","信号clear:" + last_clear + "->" + clear);
}
if(order_feeding_qty != last_order_feeding_qty)
{
logServer.deviceLog(this.device_code,"order_feeding_qty" ,String.valueOf(order_feeding_qty));
logServer.deviceLogToacs(this.device_code,"","","信号order_feeding_qty:" + last_order_feeding_qty + "->" + order_feeding_qty);
}
if(detail_feeding_qty != last_detail_feeding_qty)
{
logServer.deviceLog(this.device_code,"detail_feeding_qty" ,String.valueOf(detail_feeding_qty));
logServer.deviceLogToacs(this.device_code,"","","信号detail_feeding_qty:" + last_detail_feeding_qty + "->" + detail_feeding_qty);
}
if(detail_feeding_qualified_qty != last_detail_feeding_qualified_qty)
{
logServer.deviceLog(this.device_code,"detail_feeding_qualified_qty" ,String.valueOf(detail_feeding_qualified_qty));
logServer.deviceLogToacs(this.device_code,"","","信号error:" + last_detail_feeding_qualified_qty + "->" + detail_feeding_qualified_qty);
}
if(detail_lettering_qty != last_detail_lettering_qty)
{
logServer.deviceLog(this.device_code,"detail_lettering_qty" ,String.valueOf(detail_lettering_qty));
logServer.deviceLogToacs(this.device_code,"","","信号detail_lettering_qty:" + last_detail_lettering_qty + "->" + detail_lettering_qty);
}
if(detail_lettering_qualified_qty != last_detail_lettering_qualified_qty)
{
logServer.deviceLog(this.device_code,"detail_lettering_qualified_qty" ,String.valueOf(detail_lettering_qualified_qty));
logServer.deviceLogToacs(this.device_code,"","","信号detail_lettering_qualified_qty:" + last_detail_lettering_qualified_qty + "->" + detail_lettering_qualified_qty);
}
if(detail_risking_qualified_qty != last_detail_risking_qualified_qty)
{
logServer.deviceLog(this.device_code,"detail_risking_qualified_qty" ,String.valueOf(detail_risking_qualified_qty));
logServer.deviceLogToacs(this.device_code,"","","信号detail_risking_qualified_qty:" + last_detail_risking_qualified_qty + "->" + detail_risking_qualified_qty);
}
if(detail_risking_qty != last_detail_risking_qty)
{
logServer.deviceLog(this.device_code,"detail_risking_qty" ,String.valueOf(detail_risking_qty));
logServer.deviceLogToacs(this.device_code,"","","信号detail_risking_qty:" + last_detail_risking_qty + "->" + detail_risking_qty);
}
if(detail_strapping_qty != last_detail_strapping_qty)
{
logServer.deviceLog(this.device_code,"detail_strapping_qty" ,String.valueOf(detail_strapping_qty));
logServer.deviceLogToacs(this.device_code,"","","信号detail_strapping_qty:" + last_detail_strapping_qty + "->" + detail_strapping_qty);
}
if(detail_strapping_oneqty != last_detail_strapping_oneqty)
{
logServer.deviceLog(this.device_code,"detail_strapping_oneqty" ,String.valueOf(detail_strapping_oneqty));
logServer.deviceLogToacs(this.device_code,"","","信号detail_strapping_oneqty:" + last_detail_strapping_oneqty + "->" + detail_strapping_oneqty);
}
if(detail_coating_qty != last_detail_coating_qty)
{
logServer.deviceLog(this.device_code,"detail_coating_qty" ,String.valueOf(detail_coating_qty));
logServer.deviceLogToacs(this.device_code,"","","信号detail_coating_qty:" + last_detail_coating_qty + "->" + detail_coating_qty);
}
if(labeling_order != last_labeling_order)
{
logServer.deviceLog(this.device_code,"labeling_order" ,String.valueOf(labeling_order));
logServer.deviceLogToacs(this.device_code,"","","信号labeling_order:" + last_labeling_order + "->" + labeling_order);
}
if(detail_labeling_qualified_qty != last_detail_labeling_qualified_qty)
{
logServer.deviceLog(this.device_code,"detail_labeling_qualified_qty" ,String.valueOf(detail_labeling_qualified_qty));
logServer.deviceLogToacs(this.device_code,"","","信号detail_labeling_qualified_qty:" + last_detail_labeling_qualified_qty + "->" + detail_labeling_qualified_qty);
}
if(detail_labeling_qty != last_detail_labeling_qty)
{
logServer.deviceLog(this.device_code,"detail_labeling_qty" ,String.valueOf(detail_labeling_qty));
logServer.deviceLogToacs(this.device_code,"","","信号detail_labeling_qty:" + last_detail_labeling_qty + "->" + detail_labeling_qty);
}
try{
if(order >0 && order_detail>0){
update_detail(String.valueOf(order),String.valueOf(order_detail));
@ -190,6 +313,25 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
last_mode = mode;
last_order = order;
last_order_detail = order_detail;
last_error = error;
last_move = move;
last_last_order = last_order;
last_ready = ready;
last_pause = pause;
last_clear = clear;
last_order_feeding_qty = order_feeding_qty;
last_detail_feeding_qty = detail_feeding_qty;
last_detail_feeding_qualified_qty = detail_feeding_qualified_qty;
last_detail_lettering_qty = detail_lettering_qty;
last_detail_lettering_qualified_qty = detail_lettering_qualified_qty;
last_detail_risking_qualified_qty = detail_risking_qualified_qty;
last_detail_risking_qty = detail_risking_qty;
last_detail_strapping_qty = detail_strapping_qty;
last_detail_strapping_oneqty = detail_strapping_oneqty;
last_detail_coating_qty = detail_coating_qty;
last_labeling_order = labeling_order;
last_detail_labeling_qualified_qty = detail_labeling_qualified_qty;
last_detail_labeling_qty = detail_labeling_qty;
}
public synchronized boolean update_detail(String order, String order_detail) throws Exception {
@ -223,7 +365,6 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
dto.setPresent_wraping_number(String.valueOf(detail_coating_qty));
produceshiftorderdetailService.update(dto);
return true;
}
}
@ -237,10 +378,12 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
this.detail_time= date;
ProduceshiftorderdetailDto dto = produceshiftorderdetailService.findOrderDetailFromCache(String.valueOf(order),String.valueOf(order_detail));
if(ObjectUtil.isEmpty(dto)){
logServer.deviceLogToacs(this.device_code,"","","修改工单明细状态失败,order:"+order+",orderdetail:"+order_detail);
return false;
}
if(!StrUtil.equals(dto.getOrder_detail_status(),status)){
dto.setOrder_detail_status("01");
logServer.deviceLogToacs(this.device_code,"","","修改工单明细状态成功,order:"+order+",orderdetail:"+order_detail);
produceshiftorderdetailService.update(dto);
}
return true;
@ -256,12 +399,14 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
this.detail_time= date;
ProduceshiftorderDto dto = produceshiftorderService.findOrderByOrderCodeFromCache(String.valueOf(order));
if(ObjectUtil.isEmpty(dto)){
logServer.deviceLogToacs(this.device_code,"","","修改工单状态失败,order:"+order);
return false;
}
//02是已下发
if(!StrUtil.equals(dto.getOrder_status(),status) && StrUtil.equals(dto.getOrder_status(),"02") ){
dto.setOrder_status("03");
produceshiftorderService.autoupdate(dto);
logServer.deviceLogToacs(this.device_code,"","","修改工单状态成功,order:"+order);
}
return true;
}
@ -290,7 +435,7 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
String wall_thickness = dto.getWall_thickness();
String length = dto.getLength();
String qty = dto.getQty();
logServer.deviceLogToacs(this.device_code,"","","申请工单号成功,order:"+order);
writing(ItemProtocol.item_to_order,order);
writing(ItemProtocol.item_to_feeding_mouth,feeding_mouth);
writing(ItemProtocol.item_to_order_feeding_qty,qty);
@ -304,7 +449,7 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
writing(ItemProtocol.item_to_is_lettering,is_lettering);
writing(ItemProtocol.item_to_command,String.valueOf(mode));
dto.setOrder_status("03");
dto.setOrder_status("02");
produceshiftorderService.autoupdate(dto);
requireSucess = true;
@ -323,13 +468,14 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
String str = dto.getLabeling_message();
//判断是否最后一个客户
boolean last_detail = produceshiftorderdetailService.isLastOrderDetail(String.valueOf(order));
//下发激光刻字信息
//判断下发刻字成功
if(!send_letter_flag){
send_letter_flag = produceshiftorderdetailService.sendLetteringMess(str);
logServer.deviceLogToacs(this.device_code,"","","下发激光刻字信息结果:"+send_letter_flag);
}
if(send_letter_flag_back) {
logServer.deviceLogToacs(this.device_code,"","","申请工单明细成功,order:"+order+",orderdetail:"+orderDetail);
if(last_detail){
writing(ItemProtocol.item_to_is_last,"1");
} else {
@ -360,6 +506,7 @@ public class HaiLiangFeedingTrunkDeviceDriver extends AbstractOpcDeviceDriver im
Map<String, Object> itemMap = new HashMap<String, Object>();
itemMap.put(to_param, Double.parseDouble(value));
ReadUtil.write(itemMap, server);
logServer.deviceLogToacs(this.device_code,"","","下发信号:"+param+",value:"+value);
}

31
nladmin-system/src/main/java/org/nl/acs/device_driver/hailiang/hailiang_labeling/HaiLiangLabelingDeviceDriver.java

@ -17,6 +17,7 @@ import org.nl.acs.order.service.LabelingTemplateService;
import org.nl.acs.order.service.ProduceshiftorderService;
import org.nl.acs.order.service.ProduceshiftorderdetailService;
import org.nl.acs.order.service.dto.LabelingTemplateDto;
import org.nl.acs.order.service.dto.ProduceshiftorderDto;
import org.nl.acs.order.service.dto.ProduceshiftorderdetailDto;
import org.nl.exception.BadRequestException;
import org.nl.utils.SpringContextHolder;
@ -155,9 +156,15 @@ public class HaiLiangLabelingDeviceDriver extends AbstractOpcDeviceDriver implem
break;
//工单完成
case 7:
if(!requireSucess && order > 0 && order_detail > 0 ) {
finish_order(String.valueOf(order),String.valueOf(order_detail),"01");
}
break;
//工单强制完成
case 8:
if(!requireSucess && order > 0 && order_detail > 0 ) {
finish_order(String.valueOf(order),String.valueOf(order_detail),"02");
}
break;
}
}
@ -192,6 +199,30 @@ public class HaiLiangLabelingDeviceDriver extends AbstractOpcDeviceDriver implem
}
}
public synchronized boolean finish_order(String order, String order_detail,String status) {
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 {
ProduceshiftorderDto dto = produceshiftorderService.findOrderByOrderCodeFromCache(String.valueOf(order));
if(ObjectUtil.isEmpty(dto)){
return false;
}
if(!StrUtil.equals(dto.getOrder_status(),status)){
if(StrUtil.equals(status,"1")){
dto.setOrder_status("07");
} else {
dto.setOrder_status("08");
}
produceshiftorderService.autoupdate(dto);
}
writing(itemProtocol.item_to_command,String.valueOf(mode));
requireSucess = true;
return true;
}
}
public synchronized boolean apply_labeling_message(String order, String order_detail,String qty) {
Date date = new Date();
if (date.getTime() - this.detail_time_out < (long) this.detail_time_out) {

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

@ -132,13 +132,13 @@ public class HaiLiangLetteringDeviceDriver extends AbstractOpcDeviceDriver imple
case 3:
case 4:
//贴标完成
//刻字完成
if(!requireSucess && order > 0 && order_detail > 0 && detail_qty>0 && detail_qualified_qty>0){
update_detail(String.valueOf(order),String.valueOf(order_detail),"01");
}
break;
case 5:
//强制贴标完成
//强制刻字完成
if(!requireSucess && order > 0 && order_detail > 0 && detail_qty>0 && detail_qualified_qty>0 ) {
update_detail(String.valueOf(order),String.valueOf(order_detail),"02");
}

89
nladmin-system/src/main/java/org/nl/acs/order/service/impl/LabelingTemplateServiceImpl.java

@ -12,6 +12,7 @@ import lombok.extern.slf4j.Slf4j;
import org.nl.acs.config.AcsConfig;
import org.nl.acs.config.server.AcsConfigService;
import org.nl.acs.order.service.LabelingTemplateService;
import org.nl.acs.order.service.ProduceshiftorderdetailService;
import org.nl.acs.order.service.dto.LabelingTemplateDto;
import org.nl.acs.order.service.dto.ProduceshiftorderdetailDto;
import org.nl.exception.BadRequestException;
@ -41,8 +42,9 @@ import java.util.*;
@Slf4j
public class LabelingTemplateServiceImpl implements LabelingTemplateService {
@Autowired
AcsConfigService acsConfigService = SpringContextHolder.getBean(AcsConfigService.class);
AcsConfigService acsConfigService;
@Override
public Map<String,Object> queryAll(Map whereJson, Pageable page){
@ -193,38 +195,123 @@ public class LabelingTemplateServiceImpl implements LabelingTemplateService {
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 3:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 4:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 5:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 6:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 7:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 8:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 9:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 10:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 11:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 12:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 13:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 14:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 15:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 16:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 17:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 18:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
case 19:
printProcess = Runtime
.getRuntime()
.exec(new String[] {
printurl, "PrinterName=" + printName,
"LabelName="+address, "Text1="+ "111","Text2="+"222"});
break;
default:
break;

Loading…
Cancel
Save