Merge branch 'master' of http://10.153.19.25:10101/r/Albania_Mes
| | |
| | | { |
| | | "Customer":"Customer", |
| | | "Tier":"Tier", |
| | | "Matching":"Matching", |
| | | "Productname":"Productname", |
| | | "All Out":"All Out", |
| | | "Operation failed":"Operation canceled", |
| | | "Flowcard":"Flowcard", |
| | |
| | | </el-main> |
| | | <el-dialog :visible.sync="Importorder" :title="$t('Import order')" top="5vh"> |
| | | <!--文件导入数据页面--> |
| | | <div id="fileinput" class="container"> |
| | | <div id="" class="container"> |
| | | <div class="header"> |
| | | <div class="btn"> |
| | | <el-button type="primary" @click="importData()">保存</el-button> |
| | | </div> |
| | | <div class="inp"> |
| | | |
| | | <input type="file" id="uploadExcel" multiple @change="Change" /> |
| | | </div> |
| | | </div> |
| | | <table id="table"> |
| | | <el-table :data="this.dataList" border style="width: 100%;"> |
| | | <el-table-column prop="Customer" :label="$t('Customer')"></el-table-column> |
| | | <el-table-column prop="order" :label="$t('Order')"></el-table-column> |
| | | <el-table-column prop="base" :label="$t('Width')"></el-table-column> |
| | | <el-table-column prop="height" :label="$t('Height')"></el-table-column> |
| | | <el-table-column prop="thickness" :label="$t('Thickness')"></el-table-column> |
| | | <el-table-column prop="films" :label="$t('Films')"></el-table-column> |
| | | <el-table-column prop="quantity" :label="$t('No')"></el-table-column> |
| | | <el-table-column prop="tier" :label="$t('Tier')"></el-table-column> |
| | | <el-table-column prop="matching" :label="$t('Matching')"></el-table-column> |
| | | <el-table-column prop="glasstype" :label="$t('Glasstype')"></el-table-column> |
| | | <el-table-column prop="productname" :label="$t('Productname')"></el-table-column> |
| | | </el-table> |
| | | <!-- <table id="table"> |
| | | <thead> |
| | | <tr> |
| | | <th>Customer</th> |
| | |
| | | </thead> |
| | | <tbody style="text-align: center"> |
| | | <tr v-for="item in dataList" :key="item.id"> |
| | | <!-- <td>{{ item[0] }}</td> |
| | | <td>{{ item[1] }}</td> |
| | | <td>{{ item[2] }}</td> |
| | | <td>{{ item[3] }}</td> |
| | | <td>{{ item[4] }}</td> |
| | | <td>{{ item[5] }}</td> |
| | | <td>{{ item[6] }}</td> |
| | | <td>{{ item[7] }}</td> |
| | | <td>{{ item[8] }}</td> |
| | | <td>{{ item[9] }}</td> |
| | | <td>{{ item[10] }}</td> --> |
| | | <td>{{ item.Customer }}</td> |
| | | <td>{{ item.order }}</td> |
| | | <td>{{ item.base }}</td> |
| | |
| | | <td>{{ item.productname }}</td> |
| | | </tr> |
| | | </tbody> |
| | | </table> |
| | | </table> --> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | |
| | | <el-button type="primary" @click="AnewMeasure()" :disabled="SoftEmergencyStopState" |
| | | style="z-index: 999;">重新测量</el-button> |
| | | </div> |
| | | <br> |
| | | <!--显示--> |
| | | <div style="width:1000px;height: 720px;border: 2px solid #d1d1d1;margin: auto auto;"> |
| | | <div style="width:1000px;height: 720px;border: 2px solid #d1d1d1;"> |
| | | <!--玻璃图 #81b337--> |
| | | <div :style="'top:10px;bottom: 10px;left: 10px;right: 10px;margin: auto;position:absolute;width:' |
| | | + (this.LastQueue.glasswidth / 25 * 7) + 'px;height:' |
| | | + (this.LastQueue.glassheight / 25 * 7) + 'px;line-height: ' |
| | | + (this.LastQueue.glassheight / 25 * 7) + 'px;background-color: #93d2f3;text-align: center;'"> |
| | | <div :style="'top:10px;bottom: 10px;left: 10px;right: 10px;margin:auto auto;position:absolute;width:' |
| | | + (this.LastQueue.glasswidth / 25 * 7) + 'px;height:' |
| | | + (this.LastQueue.glassheight / 25 * 7) + 'px;line-height: ' |
| | | + (this.LastQueue.glassheight / 25 * 7) + 'px;background-color: #93d2f3;text-align: center;'"> |
| | | {{ this.LastQueue.glasswidth }}*{{ this.LastQueue.glassheight }} |
| | | </div> |
| | | |
| | |
| | | |
| | | }, |
| | | importData() { |
| | | |
| | | alert(1); |
| | | //let tbdata=JSON.stringify(this.dataList); |
| | | let tbdata=this.dataList; |
| | | console.log(tbdata); |
| | |
| | | public class MyGenerator { |
| | | |
| | | /** 数据源配置*/ |
| | | private static final String jdbc = "jdbc:mysql://192.168.10.99:3306/albania?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai"; |
| | | private static final String jdbc = "jdbc:mysql://10.153.19.150:3306/albania?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai"; |
| | | private static final String driverName = "com.mysql.cj.jdbc.Driver"; |
| | | |
| | | private static final String username = "root"; |
| | |
| | | // double width=Double.valueOf(plcmes.getPlcParameter("Height").getValue());//宽 |
| | | // double height=Double.valueOf(plcmes.getPlcParameter("width").getValue());//高 |
| | | |
| | | String PlcRequest=S7control.getinstance().ReadWord("DB14.26", 1).get(0)+""; |
| | | double width=Double.parseDouble(S7control.getinstance().ReadWord("DB14.28", 1).get(0)+""); |
| | | double height=Double.parseDouble(S7control.getinstance().ReadWord("DB14.30", 1).get(0)+""); |
| | | String MesSend=S7control.getinstance().ReadWord("DB14.170", 1).get(0)+""; |
| | | // String PlcRequest=S7control.getinstance().ReadWord("DB14.26", 1).get(0)+""; |
| | | // double width=Double.parseDouble(S7control.getinstance().ReadWord("DB14.28", 1).get(0)+""); |
| | | // double height=Double.parseDouble(S7control.getinstance().ReadWord("DB14.30", 1).get(0)+""); |
| | | // String MesSend=S7control.getinstance().ReadWord("DB14.170", 1).get(0)+""; |
| | | |
| | | //获取测量的长,宽 |
| | | |
| | | |
| | | //String url="C:\\Users\\SNG-ZDH-012\\Desktop\\阿尔巴尼亚数据要求.xlsx";E:\ |
| | | //String url="E:\\阿尔巴尼亚数据要求.xlsx"; |
| | | // List result= HomeService.ReadExecl(url); |
| | | // for(int i=0;i<result.size();i++){ |
| | | // System.out.println(result.get(i)); |
| | | // } |
| | | |
| | | |
| | | |
| | | // String PlcRequest = "1"; |
| | | // String MesSend = "0"; |
| | | // double width = 402; |
| | | // double height = 402; |
| | | boolean istest = false; |
| | | String PlcRequest = "1"; |
| | | String MesSend = "0"; |
| | | double width = 402; |
| | | double height = 402; |
| | | |
| | | //匹配 |
| | | //System.err.println(PlcRequest+","+MesSend+","+width+","+height); |
| | | if ("0".equals(PlcRequest)) { |
| | | if ("0".equals(PlcRequest)&&istest) { |
| | | S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),(short) 0); |
| | | } |
| | | if ("1".equals(PlcRequest)&&"0".equals(MesSend)) { |
| | | boolean is=HomeService.Normal(width, height, "1"); |
| | | if (is) { |
| | | if (is&&istest) { |
| | | // 测量成功 |
| | | S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),(short) 1); |
| | | |
| | | }else{ |
| | | }else if(istest){ |
| | | // 重新测量 |
| | | S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),(short) 4); |
| | | } |
| | |
| | | // TODO Auto-generated method stub |
| | | // |
| | | System.out.println("启动完成"); |
| | | new PLCAutoMes().start(); |
| | | //new PLCAutoMes().start(); |
| | | // new PlcHold().start(); |
| | | new PlcHoldNew().start(); |
| | | //new PlcHoldNew().start(); |
| | | |
| | | //new Plchome().start(); |
| | | new Plchome().start(); |
| | | // new PlcLayout().start(); |
| | | // new Plcalarm().start(); |
| | | // new Plcsign().start(); |
| | |
| | | @Select("select * from storage_cage where cage=#{cage} order by id desc") |
| | | List<StorageCage> SelectStorageCageByCage(Integer cage); |
| | | |
| | | // 添加出片队列 |
| | | @Insert("INSERT INTO flowcard(`flowcard`, `totaltier`, `number`, `line`, `state`, `method`, `starttime`) " |
| | | +" select #{flowcard}, 0, #{number}, 0, 0, 0, now() where 0=( select count(*) from flowcard where flowcard=#{flowcard});") |
| | | void InsertFlowcard(String flowcard, Integer number); |
| | | } |
| | |
| | | // 查询订单任务 |
| | | public List<FlowCard> SelectOrderTask() { |
| | | List<FlowCard> OrderTask = homeMapper.SelectOrderTask(); |
| | | // for (FlowCard flowcard : OrderTask) { |
| | | // flowcard.setglassinfo(homeMapper.SelectOrderView(flowcard.getFlowcard())); |
| | | // } |
| | | for (FlowCard flowcard : OrderTask) { |
| | | flowcard.setglassinfo(homeMapper.SelectOrderView(flowcard.getFlowcard())); |
| | | } |
| | | return OrderTask; |
| | | } |
| | | |
| | |
| | | List<Map> TypeDatas = homeMapper.SelectType(); |
| | | Map<String, String> TypeData = new HashMap<String, String>();// 得到处理完后所有的类型 |
| | | Map<String, Integer> groupby=new HashMap<String, Integer>(); // 得到处理完后所有总层数; |
| | | |
| | | Map<String, Integer> OrderFinishedProduct=new HashMap<String, Integer>(); // 得到处理完后订单成品总数量; |
| | | //"order zong 0 1 10 2 10" |
| | | List<Map> RemoveErrorData = IportDataStr.stream() |
| | | .filter(item -> (item.get("order") != null && item.get("glasstype") != null && item.get("tier") != null |
| | | && |
| | |
| | | |
| | | RemoveErrorData.forEach(item -> { |
| | | String key=item.get("order").toString()+"_"+item.get("matching").toString(); |
| | | String keyCount=item.get("order").toString()+"_"+item.get("matching").toString()+"_"+item.get("tier").toString(); |
| | | String keyCountSum=item.get("order").toString()+"_"+item.get("matching").toString()+"_Sum";//订单总数 |
| | | if (OrderFinishedProduct.get(keyCount)!=null) { |
| | | Integer count=OrderFinishedProduct.get(keyCount)+1; |
| | | Integer sumcount=OrderFinishedProduct.get(keyCountSum)+Integer.parseInt(item.get("quantity").toString()); |
| | | OrderFinishedProduct.put(keyCount,count); |
| | | OrderFinishedProduct.put(keyCountSum,sumcount); |
| | | }else if(OrderFinishedProduct.get(keyCount)==null&&groupby.get(key)==null){ |
| | | OrderFinishedProduct.put(keyCount,1); |
| | | OrderFinishedProduct.put(keyCountSum,Integer.parseInt(item.get("quantity").toString())); |
| | | } |
| | | if (groupby.get(key)!=null) { |
| | | Integer Tiers=groupby.get(key)+1; |
| | | groupby.put(key, Tiers); |
| | |
| | | glasstype = Integer.valueOf(value); |
| | | } |
| | | homeMapper.AddGlassinfo(map.get("order").toString(), glasstype, |
| | | Integer.parseInt(map.get("glasstype").toString()) // 需要计算 配片ID |
| | | Integer.parseInt(map.get("matching").toString()) // 需要计算 配片ID |
| | | , glasstype+"" // 需要计算 玻璃ID |
| | | , Integer.parseInt(map.get("tier").toString()), map.get("films").toString(), |
| | | Double.parseDouble(map.get("base").toString()), Double.parseDouble(map.get("height").toString()), |
| | | Double.parseDouble(map.get("thickness").toString()), |
| | | Integer.parseInt(map.get("quantity").toString()),groupby.get(tierkey));// 需要计算总层数 |
| | | //订单内总层数 |
| | | homeMapper.InsertFlowcard(map.get("order").toString(),OrderFinishedProduct.get(tierkey+"_Sum")); |
| | | } |
| | | Map<String, Object> ResultCode = new HashMap<>(); |
| | | ResultCode.put("message", "200"); |
| | |
| | | #\u6570\u636E\u5E93\u9A71\u52A8 |
| | | spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver |
| | | #\u6570\u636E\u5E93\u8FDE\u63A5\u5730\u5740 |
| | | spring.datasource.url=jdbc:mysql://localhost:3306/albania?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai |
| | | #spring.datasource.url=jdbc:mysql://localhost:3306/albania?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai |
| | | spring.datasource.url=jdbc:mysql://10.153.19.150:3306/albania?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai |
| | | #\u6570\u636E\u5E93\u7528\u6237\u540D |
| | | spring.datasource.username=root |
| | | #\u6570\u636E\u5E93\u7528\u6237\u5BC6\u7801 |