Merge branch 'master' of git.picaiba.com:CaiXiang/cigs4 into yanyang

This commit is contained in:
2023-03-02 13:23:05 +08:00
5 changed files with 267 additions and 192 deletions

View File

@@ -9,6 +9,7 @@ import com.cnbm.dispatch.enums.kuka.step3.Step3Plc2MesVar;
import com.cnbm.packing.service.DynamicDataSourceService;
import com.cnbm.s7.entity.R;
import com.cnbm.s7.s7connector.enmuc.S7Client;
import com.cnbm.s7.s7connector.type.PlcVar;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -20,6 +21,7 @@ import com.cnbm.common.utils.Result;
import springfox.documentation.annotations.ApiIgnore;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import java.text.ParseException;
import java.util.Map;
@@ -124,6 +126,34 @@ public class TestController {
}
return R.ok();
}
public static void main(String[] args) {
BigDecimal voc = new BigDecimal(59.799);
System.out.println(Float.valueOf(voc.toString()));
}
@PostMapping("/testWrite")
public R testWrite() {
BigDecimal voc = new BigDecimal(59.799);
BigDecimal isc = new BigDecimal(3.799);
BigDecimal vmpp = new BigDecimal(46.799);
BigDecimal impp = new BigDecimal(3.0799);
write(S7Client.S7_KUKA,Step1Mes2PlcVar.dLable_Pnom,new Integer(1));
write(S7Client.S7_KUKA,Step1Mes2PlcVar.dLable_Voc,voc);
write(S7Client.S7_KUKA,Step1Mes2PlcVar.dLable_Isc,isc);
write(S7Client.S7_KUKA,Step1Mes2PlcVar.dLable_Vmpp,vmpp);
write(S7Client.S7_KUKA,Step1Mes2PlcVar.dLable_Impp,impp);
write(S7Client.S7_KUKA,Step2Mes2PlcVar.BoxId,"12345678901111111111");
write(S7Client.S7_KUKA,Step1Mes2PlcVar.SubArrivedFinish,true);
write(S7Client.S7_KUKA,Step2Mes2PlcVar.ShelfIsFullFinish,false);
write(S7Client.S7_KUKA,Step3Mes2PlcVar.ShelfIsFullArrivedFinish,true);
return R.ok();
}
@PostMapping("/testlogger")
public R testlogger() {
logger.info("test logger");
@@ -159,4 +189,51 @@ public class TestController {
return new Result<String>().ok(service.getExtendArgFromCamline(subId.toString()).toString());
}
private void write(S7Client s7Client, Step1Mes2PlcVar var, Object newValue) {
if(var.getType().equals(PlcVar.STRING_Array)){
String[] s = (String[])newValue;
String[] ss = (String[])newValue;
if(s.length > var.getLength() ){
ss = new String[var.getLength()];
for(int i=0;i< var.getLength();i++){
ss[i] = s[i];
}
}
s7Client.write(var.getArea(), var.getAreaNumber(), var.getByteOffset(), var.getBitOffset(), var.getStrSize(), var.getType(),ss);
}else {
s7Client.write(var.getArea(), var.getAreaNumber(), var.getByteOffset(), var.getBitOffset(), var.getStrSize(), var.getType(),newValue);
}
}
private void write(S7Client s7Client, Step2Mes2PlcVar var, Object newValue) {
if(var.getType().equals(PlcVar.STRING_Array)){
String[] s = (String[])newValue;
String[] ss = (String[])newValue;
if(s.length > var.getLength() ){
ss = new String[var.getLength()];
for(int i=0;i< var.getLength();i++){
ss[i] = s[i];
}
}
s7Client.write(var.getArea(), var.getAreaNumber(), var.getByteOffset(), var.getBitOffset(), var.getStrSize(), var.getType(),ss);
}else {
s7Client.write(var.getArea(), var.getAreaNumber(), var.getByteOffset(), var.getBitOffset(), var.getStrSize(), var.getType(),newValue);
}
}
private void write(S7Client s7Client, Step3Mes2PlcVar var, Object newValue) {
if(var.getType().equals(PlcVar.STRING_Array)){
String[] s = (String[])newValue;
String[] ss = (String[])newValue;
if(s.length > var.getLength() ){
ss = new String[var.getLength()];
for(int i=0;i< var.getLength();i++){
ss[i] = s[i];
}
}
s7Client.write(var.getArea(), var.getAreaNumber(), var.getByteOffset(), var.getBitOffset(), var.getStrSize(), var.getType(),ss);
}else {
s7Client.write(var.getArea(), var.getAreaNumber(), var.getByteOffset(), var.getBitOffset(), var.getStrSize(), var.getType(),newValue);
}
}
}