| | |
| | | .antMatchers(HttpMethod.GET, "/", "/*.html", "/**/*.html", "/**/*.css", "/**/*.js", "/profile/**").permitAll() |
| | | .antMatchers("/swagger-ui.html", "/swagger-resources/**", "/webjars/**", "/*/api-docs", "/druid/**").permitAll() |
| | | .antMatchers("/sendDemo/push").permitAll() |
| | | .antMatchers("/jcdmMes/deviceResultFeedback").permitAll() |
| | | .antMatchers("/jcdmMes/**").permitAll() |
| | | .antMatchers("/da/testDeviceInterface/**").permitAll() |
| | | .antMatchers("/main/paramCollection/**").permitAll() |
| | | // 除上面外的所有请求全部需要鉴权认证 |
| | |
| | | package com.jcdm.main.da.passingStationCollection.domain; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.jcdm.common.annotation.Excel; |
| | | import com.jcdm.common.core.domain.BaseEntity; |
| | | import org.apache.commons.lang3.builder.ToStringBuilder; |
| | |
| | | @Excel(name = "节拍时间") |
| | | private String beatTime; |
| | | |
| | | @TableField(exist = false) |
| | | private Long[] ids; |
| | | |
| | | public Long[] getIds() { |
| | |
| | | lists.add(OPCElement.PACK_OP230_RecordData);//请求记录数据 |
| | | lists.add(OPCElement.PACK_OP240_RecordData);//请求记录数据. |
| | | lists.add(OPCElement.PACK_OP240_AngleResult);//请求记录数据 |
| | | // lists.add(OPCElement.PACK_OP2502_RecordData);//请求记录数据. |
| | | lists.add(OPCElement.PACK_OP2501_AngleResult);//请求记录数据 |
| | | lists.add(OPCElement.PACK_OP2502_AngleResult);//请求记录数据 |
| | | lists.add(OPCElement.PACK_OP2503_AngleResult);//请求记录数据 |
| | |
| | | lists.add(OPCElement.PACK_OP310A_RecordData);//请求记录数据 |
| | | lists.add(OPCElement.PACK_OP310B_RecordData);//请求记录数据 |
| | | lists.add(OPCElement.PACK_OP330_RecordData);//请求记录数据 |
| | | // lists.add(OPCElement.PACK_OP330B_RecordData);//请求记录数据 |
| | | lists.add(OPCElement.PACK_OP380_RecordData);//请求记录数据 |
| | | lists.add(OPCElement.PACK_OP380_AngleResult);//请求记录数据 |
| | | lists.add(OPCElement.PACK_OP400_RecordData);//请求记录数据 |
| | |
| | | public List<String> automaticList = Arrays.asList("OP280","OP310A","OP310B", "OP300A","OP300B", "OP320A","OP320B", "OP340A","OP340B", "OP350A","OP350B", "OP360","OP365","OP370", "OP390", "OP470"); |
| | | |
| | | //采集模组工位 ModuleCode |
| | | public List<String> moduleCodeList = Arrays.asList("OP300A","OP300B","OP320A","OP320B","OP340A","OP340B","OP365", "OP350A", "OP350B", "OP330"); |
| | | public List<String> moduleCodeList = Arrays.asList("OP300A","OP310A","OP310B","OP300B","OP320A","OP320B","OP340A","OP340B","OP365", "OP350A", "OP350B", "OP330"); |
| | | |
| | | //区分模组型号工位 |
| | | public List<String> distinguishingModules = Arrays.asList("OP300","OP310", "OP340", "OP350", "OP330"); |
| | |
| | | miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(RecordDataDoneAddress).value(Integer.valueOf(recordDataDoneValue)).build()); |
| | | }else { |
| | | //手动工位 |
| | | if(device.contains("OP330")){ |
| | | String str = device.substring(0,5); |
| | | WebSocketUsers.sendMessageToUserByText(map.get(str), "END"); |
| | | }else { |
| | | // if(device.contains("OP330")){ |
| | | // String str = device.substring(0,5); |
| | | // WebSocketUsers.sendMessageToUserByText(map.get(str), "END"); |
| | | // }else { |
| | | WebSocketUsers.sendMessageToUserByText(map.get(device), "END"); |
| | | } |
| | | // } |
| | | if(testList.stream().anyMatch(s -> s.equals(device))){ |
| | | String RecordDataDoneAddress = thoroughfare + "." + device + ".RecordDataDone"; |
| | | // Object packCodeObject = miloService.readFromOpcUa(thoroughfare + "." + device + ".ModuleCode").getValue(); |
| | |
| | | public static void main(String[] args) { |
| | | String dateString = "Tue May 14 18:25:18 CST 2024"; |
| | | // System.out.println(test(dateString)); |
| | | |
| | | System.out.println(test( stringProcessing("DateTime{utcTime=133601559184960000, javaDate=Tue May 14 18:25:18 CST 2024}"))); |
| | | String str = "OP330"; |
| | | System.out.println(str.substring(0,5)); |
| | | // System.out.println(test( stringProcessing("DateTime{utcTime=133601559184960000, javaDate=Tue May 14 18:25:18 CST 2024}"))); |
| | | } |
| | | |
| | | public static String stringProcessing(String dateTimeStr){ |
| | |
| | | import com.jcdm.main.da.testDeviceInterface.service.IDaTestDeviceInterfaceService; |
| | | import com.jcdm.main.om.productionOrde.domain.OmProductionOrdeInfo; |
| | | import com.jcdm.main.om.productionOrde.service.IOmProductionOrdeInfoService; |
| | | import com.jcdm.main.restful.qingYan.doman.ChildVO; |
| | | import com.jcdm.main.restful.qingYan.doman.ParentVO; |
| | | import com.jcdm.main.restful.qingYan.doman.PostEntity; |
| | | import com.jcdm.main.restful.qingYan.doman.*; |
| | | import org.aspectj.weaver.loadtime.Aj; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | |
| | | |
| | | @Autowired |
| | | private IBsFormulaChildInfoService bsFormulaChildInfoService; |
| | | |
| | | private IDaPassingStationCollectionService passingStationCollectionService; |
| | | |
| | | |
| | | String url = "https://imes-uat-group.geelycv-test.com/api/mom-open/restful/aMesSysIntegration/deviceResultFeedback"; |
| | |
| | | @GetMapping("/productionWorkOrderRequest") |
| | | public AjaxResult productionWorkOrderRequest(){ |
| | | List<OmProductionOrdeInfo> list = omProductionOrdeInfoService.list(); |
| | | |
| | | return AjaxResult.success(list); |
| | | List<RestFulOrder> restFulOrders = new ArrayList<>(); |
| | | for (OmProductionOrdeInfo omProductionOrdeInfo : list) { |
| | | RestFulOrder order = new RestFulOrder(); |
| | | order.setProductionOrderNum(omProductionOrdeInfo.getWorkOrderNo()); |
| | | order.setProductNum(omProductionOrdeInfo.getProductNum()); |
| | | order.setMaterialCode(omProductionOrdeInfo.getMaterialCode()); |
| | | order.setStationCode(omProductionOrdeInfo.getStationCode()); |
| | | // order.setPlanQty(omProductionOrdeInfo.getPlanQty()); |
| | | restFulOrders.add(order); |
| | | } |
| | | return AjaxResult.success(restFulOrders); |
| | | } |
| | | |
| | | @GetMapping("/getQualityData") |
| | | public AjaxResult getQualityData(){ |
| | | List<DaPassingStationCollection> qualified = daPassingStationCollectionService.list(new LambdaQueryWrapper<DaPassingStationCollection>().eq(DaPassingStationCollection::getOutRsSign, "1")); |
| | | List<DaPassingStationCollection> unQualified = daPassingStationCollectionService.list(new LambdaQueryWrapper<DaPassingStationCollection>().eq(DaPassingStationCollection::getOutRsSign, "2")); |
| | | Map<String,Integer> map = new HashMap<>(); |
| | | map.put("qualified",qualified.size()); |
| | | map.put("unQualified",unQualified.size()); |
| | | return AjaxResult.success(map); |
| | | } |
| | | |
| | | |
| | | |
| | | @GetMapping("/productionOrderComponentRequest") |
| | | public AjaxResult productionOrderComponentRequest(BsFormulaChildInfo bsFormulaChildInfo){ |
| | |
| | | .eq(BsFormulaChildInfo::getProcessesCode, bsFormulaChildInfo.getProcessesCode()) |
| | | .eq(BsFormulaChildInfo::getOperationType, "2") |
| | | ); |
| | | List<String> materialCode = list.stream().map(BsFormulaChildInfo::getMaterialCode).collect(Collectors.toList()); |
| | | List<String> operationSteps = list.stream().map(BsFormulaChildInfo::getOperationSteps).collect(Collectors.toList()); |
| | | map.put("materialCode",materialCode); |
| | | map.put("operationSteps",operationSteps); |
| | | return AjaxResult.success(map); |
| | | List<ProductionOrderComponentRequest> requests = new ArrayList<>(); |
| | | for (BsFormulaChildInfo info : list) { |
| | | ProductionOrderComponentRequest request = new ProductionOrderComponentRequest(); |
| | | request.setMaterialCode(info.getMaterialCode()); |
| | | request.setOperationSteps(info.getOperationSteps()); |
| | | requests.add(request); |
| | | } |
| | | return AjaxResult.success(requests); |
| | | } |
| | | |
| | | |
| | |
| | | <result property="outRsSign" column="out_rs_sign" /> |
| | | <result property="outMsgSign" column="out_msg_sign" /> |
| | | <result property="collectionTime" column="collection_time" /> |
| | | <result property="spareField1" column="spare_field_1" /> |
| | | <result property="spareField2" column="spare_field_2" /> |
| | | <result property="spareField1" column="spare_field1" /> |
| | | <result property="spareField2" column="spare_field2" /> |
| | | <result property="createUser" column="create_user" /> |
| | | <result property="createTime" column="create_time" /> |
| | | <result property="updateUser" column="update_user" /> |
| | |
| | | </resultMap> |
| | | |
| | | <sql id="selectDaPassingStationCollectionVo"> |
| | | select id, work_order_no, sfc_code, product_code, production_line, location_code, equipment_no, inbound_time, outbound_time, in_rs_sign, in_msg_sign, out_rs_sign, out_msg_sign, collection_time, spare_field_1, spare_field_2, create_user, create_time, update_user, update_time, beat_time from da_passing_station_collection |
| | | select id, work_order_no, sfc_code, product_code, production_line, location_code, equipment_no, inbound_time, outbound_time, in_rs_sign, in_msg_sign, out_rs_sign, out_msg_sign, collection_time, spare_field1, spare_field2, create_user, create_time, update_user, update_time, beat_time from da_passing_station_collection |
| | | </sql> |
| | | |
| | | <select id="selectDaPassingStationCollectionList" parameterType="DaPassingStationCollection" resultMap="DaPassingStationCollectionResult"> |
| | |
| | | <if test="outRsSign != null">out_rs_sign,</if> |
| | | <if test="outMsgSign != null">out_msg_sign,</if> |
| | | <if test="collectionTime != null">collection_time,</if> |
| | | <if test="spareField1 != null">spare_field_1,</if> |
| | | <if test="spareField2 != null">spare_field_2,</if> |
| | | <if test="spareField1 != null">spare_field1,</if> |
| | | <if test="spareField2 != null">spare_field2,</if> |
| | | <if test="createUser != null">create_user,</if> |
| | | <if test="createTime != null">create_time,</if> |
| | | <if test="updateUser != null">update_user,</if> |
| | |
| | | } else if (event.data === "END") { |
| | | const param = { |
| | | workOrderNo: self.workpieceInformation.workOrderNo, |
| | | productCode: self.workpieceInformation.productCode, |
| | | productCode: "1P102S", |
| | | locationCode: self.headContent.processesCode, |
| | | productBarcode: self.headContent.sfcCode, |
| | | } |
| | |
| | | this.headContent.moduleB = scanValue; |
| | | this.$message('扫码识别产品序列号'+scanValue); |
| | | this.getList() |
| | | this.cakeLamp.InPlace = 1 |
| | | // this.cakeLamp.InPlace = 1 |
| | | this.cakeLamp.scanFinish = 1 |
| | | this.cakeLamp.startWork = 1 |
| | | } |
| | |
| | | <el-col></el-col> |
| | | <span style="width: 130px;" class="head-font">预装总成号 : {{headContent.yzSfcCode}}</span> |
| | | </el-row> |
| | | <el-row v-show="showInput" style="margin-top: 20px"> |
| | | <el-button @click="bindYzSfc" type="primary">绑定</el-button> |
| | | |
| | | </el-row> |
| | | <!-- <el-row v-show="showInput" style="margin-top: 20px">--> |
| | | <!-- <el-button @click="bindYzSfc" type="primary">绑定</el-button>--> |
| | | <!-- </el-row>--> |
| | | |
| | | <el-row v-show="onLineBinDing" style="margin-top: 20px"> |
| | | <el-col></el-col> |
| | | <span style="width: 130px;" class="head-font">小车码 : {{headContent.cardCode}}</span> |
| | | </el-row> |
| | | <el-row v-show="onLineBinDing" style="margin-top: 20px"> |
| | | <el-button @click="bindcardCode" type="primary">绑定</el-button> |
| | | </el-row> |
| | | <!-- <el-row v-show="onLineBinDing" style="margin-top: 20px">--> |
| | | <!-- <el-button @click="bindcardCode" type="primary">绑定</el-button>--> |
| | | <!-- </el-row>--> |
| | | </el-card> |
| | | |
| | | </el-col> |
| | |
| | | }, |
| | | methods: { |
| | | bindcardCode(){ |
| | | this.$message('可以绑定!'); |
| | | this.$message('绑定成功!'); |
| | | let param = { |
| | | productNum: this.headContent.sfcCode, |
| | | trolleyYard: this.headContent.cardCode, |
| | |
| | | locationCode: this.headContent.processesCode, |
| | | yzSfcCode: this.headContent.yzSfcCode |
| | | } |
| | | this.$message('可以绑定!'); |
| | | replaceAssemblyCode(param).then(response => { |
| | | |
| | | this.$message('绑定成功!'); |
| | | }); |
| | | } |
| | | }, |
| | |
| | | if(this.headContent.sfcCode !== ''){ |
| | | if(scanValue.includes("P9900173252")){ |
| | | this.headContent.yzSfcCode = scanValue |
| | | }else if(scanValue.includes("RSP01TE")){ |
| | | this.bindYzSfc(); |
| | | }else if(scanValue.includes("0RSP1TE")){ |
| | | this.headContent.cardCode = scanValue |
| | | this.bindcardCode(); |
| | | }else { |
| | | this.$message('扫描物料编码'+scanValue); |
| | | console.log(scanValue) |