From 9906e6b188bf2c36dddc0d5adadbf02e69ea3e4b Mon Sep 17 00:00:00 2001 From: wujian <14790700720@163.com> Date: 星期五, 25 十月 2024 09:17:29 +0800 Subject: [PATCH] add -sap --- jcdm-quartz/src/main/java/com/jcdm/quartz/task/RyTask.java | 53 ++- jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java | 35 +++ jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/vo/ReportVO.java | 12 + jcdm-ui/src/views/main/da/spcDataAnalyse/index.vue | 354 ++++++++++++++++++++++++++++++++ jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/vo/Options.java | 11 + jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/Query/SAPQuery.java | 9 jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/mapper/DaCollectionParamConfMapper.java | 1 jcdm-ui/src/api/main/da/paramCollection/paramCollection.js | 14 + jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/controller/DaParamCollectionController.java | 87 +++++++ jcdm-framework/src/main/java/com/jcdm/framework/config/SecurityConfig.java | 1 jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/vo/ChartVO.java | 13 + jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/service/IDaCollectionParamConfService.java | 1 jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/service/impl/DaCollectionParamConfServiceImpl.java | 5 jcdm-main/src/main/resources/mapper/da/collectionParamConf/DaCollectionParamConfMapper.xml | 15 + 14 files changed, 589 insertions(+), 22 deletions(-) diff --git a/jcdm-framework/src/main/java/com/jcdm/framework/config/SecurityConfig.java b/jcdm-framework/src/main/java/com/jcdm/framework/config/SecurityConfig.java index 8210e0f..b004244 100644 --- a/jcdm-framework/src/main/java/com/jcdm/framework/config/SecurityConfig.java +++ b/jcdm-framework/src/main/java/com/jcdm/framework/config/SecurityConfig.java @@ -116,6 +116,7 @@ .antMatchers(HttpMethod.GET, "/", "/*.html", "/**/*.html", "/**/*.css", "/**/*.js", "/profile/**").permitAll() .antMatchers("/swagger-ui.html", "/swagger-resources/**", "/webjars/**", "/*/api-docs", "/druid/**").permitAll() .antMatchers("/bs/technologyRouteChild/ttest").permitAll() + .antMatchers("/bs/orderScheduling/engine-report").permitAll() .antMatchers("/websocket/**").anonymous() // 闄や笂闈㈠鐨勬墍鏈夎姹傚叏閮ㄩ渶瑕侀壌鏉冭璇� .anyRequest().authenticated() diff --git a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/Query/SAPQuery.java b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/Query/SAPQuery.java new file mode 100644 index 0000000..a45f475 --- /dev/null +++ b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/Query/SAPQuery.java @@ -0,0 +1,9 @@ +package com.jcdm.main.bs.orderScheduling.Query; + +import lombok.Data; + +@Data +public class SAPQuery { + + private String IV_ZFDJM; +} diff --git a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java index bb18be3..be19a73 100644 --- a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java +++ b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java @@ -1,6 +1,7 @@ package com.jcdm.main.bs.orderScheduling.controller; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.ExcelWriter; @@ -17,11 +18,13 @@ import com.jcdm.common.exception.ServiceException; import com.jcdm.common.utils.StringUtils; import com.jcdm.common.utils.poi.ExcelUtil; +import com.jcdm.main.bs.orderScheduling.Query.SAPQuery; import com.jcdm.main.bs.orderScheduling.common.Constants; import com.jcdm.main.bs.orderScheduling.domain.BsOrderScheduling; import com.jcdm.main.bs.orderScheduling.service.IBsOrderSchedulingService; import com.jcdm.main.bs.orderScheduling.vo.FollowReportVO; import com.jcdm.main.bs.orderScheduling.vo.LineChartVO; +import com.jcdm.main.bs.orderScheduling.vo.ReportVO; import com.jcdm.main.bs.orderScheduling.vo.SumDataVO; import com.jcdm.main.da.paramCollection.domain.DaParamCollection; import com.jcdm.main.da.paramCollection.mapper.DaParamCollectionMapper; @@ -499,4 +502,36 @@ return R.fail("鏈煡鎵惧埌璇ュ彂鍔ㄦ満鍙峰搴旂殑绠变綋"); } } + + + @PostMapping("/engine-report") + public R getReportDetail(SAPQuery sapQuery){ + ReportVO reportVO = new ReportVO(); + if (StrUtil.isBlank(sapQuery.getIV_ZFDJM())){ + reportVO.setEV_STATUS("E"); + reportVO.setEV_MESSAGE("鍙戝姩鏈哄彿涓嶈兘涓虹┖"); + } + BsOrderScheduling query = new BsOrderScheduling(); + query.setEngineNo(sapQuery.getIV_ZFDJM()); + List<BsOrderScheduling> bsOrderSchedulingList = bsOrderSchedulingService.selectBsOrderSchedulingList(query); + if (CollUtil.isNotEmpty(bsOrderSchedulingList)){ + BsOrderScheduling bsOrderScheduling = bsOrderSchedulingList.get(0); + if (StrUtil.isBlank(bsOrderScheduling.getReport20())){ + reportVO.setEV_STATUS("0"); + reportVO.setEV_MESSAGE("鏈姤宸�"); + } else { + if ("1".equals(bsOrderScheduling.getReport20())){ + reportVO.setEV_STATUS("1"); + reportVO.setEV_MESSAGE("宸叉姤宸�"); + } else if ("3".equals(bsOrderScheduling.getReport20())){ + reportVO.setEV_STATUS("E"); + reportVO.setEV_MESSAGE(bsOrderScheduling.getRemarks()); + } + } + } else { + reportVO.setEV_STATUS("E"); + reportVO.setEV_MESSAGE("鏈煡璇㈠埌姝ゅ彂鍔ㄦ満淇℃伅"); + } + return R.ok(reportVO); + } } diff --git a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/vo/ReportVO.java b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/vo/ReportVO.java new file mode 100644 index 0000000..c60f2ae --- /dev/null +++ b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/vo/ReportVO.java @@ -0,0 +1,12 @@ +package com.jcdm.main.bs.orderScheduling.vo; + +import lombok.Data; + +@Data +public class ReportVO { + + private String EV_STATUS; + + private String EV_MESSAGE; + +} diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/mapper/DaCollectionParamConfMapper.java b/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/mapper/DaCollectionParamConfMapper.java index 56baedd..1d7b987 100644 --- a/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/mapper/DaCollectionParamConfMapper.java +++ b/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/mapper/DaCollectionParamConfMapper.java @@ -26,6 +26,7 @@ * @return 閲囬泦鍙傛暟閰嶇疆闆嗗悎 */ public List<DaCollectionParamConf> selectDaCollectionParamConfList(DaCollectionParamConf daCollectionParamConf); + public List<DaCollectionParamConf> getSelectOption(DaCollectionParamConf daCollectionParamConf); /** * 鏂板閲囬泦鍙傛暟閰嶇疆 diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/service/IDaCollectionParamConfService.java b/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/service/IDaCollectionParamConfService.java index 0d268b1..a38cd41 100644 --- a/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/service/IDaCollectionParamConfService.java +++ b/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/service/IDaCollectionParamConfService.java @@ -26,6 +26,7 @@ * @return 閲囬泦鍙傛暟閰嶇疆闆嗗悎 */ public List<DaCollectionParamConf> selectDaCollectionParamConfList(DaCollectionParamConf daCollectionParamConf); + public List<DaCollectionParamConf> getSelectOption(DaCollectionParamConf daCollectionParamConf); /** * 鏂板閲囬泦鍙傛暟閰嶇疆 diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/service/impl/DaCollectionParamConfServiceImpl.java b/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/service/impl/DaCollectionParamConfServiceImpl.java index ffb43c0..9ffb4c3 100644 --- a/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/service/impl/DaCollectionParamConfServiceImpl.java +++ b/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/service/impl/DaCollectionParamConfServiceImpl.java @@ -44,6 +44,11 @@ return daCollectionParamConfMapper.selectDaCollectionParamConfList(daCollectionParamConf); } + @Override + public List<DaCollectionParamConf> getSelectOption(DaCollectionParamConf daCollectionParamConf) { + return daCollectionParamConfMapper.getSelectOption(daCollectionParamConf); + } + /** * 鏂板閲囬泦鍙傛暟閰嶇疆 * diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/vo/ChartVO.java b/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/vo/ChartVO.java new file mode 100644 index 0000000..dfc3656 --- /dev/null +++ b/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/vo/ChartVO.java @@ -0,0 +1,13 @@ +package com.jcdm.main.da.collectionParamConf.vo; + +import lombok.Data; + +import java.util.List; + +@Data +public class ChartVO { + + private List<Options> locationList; + + private List<Options> paramCodeList; +} diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/vo/Options.java b/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/vo/Options.java new file mode 100644 index 0000000..12a588b --- /dev/null +++ b/jcdm-main/src/main/java/com/jcdm/main/da/collectionParamConf/vo/Options.java @@ -0,0 +1,11 @@ +package com.jcdm.main.da.collectionParamConf.vo; + +import lombok.Data; + +@Data +public class Options { + + private String label; + + private String value; +} diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/controller/DaParamCollectionController.java b/jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/controller/DaParamCollectionController.java index 5165166..a862bf1 100644 --- a/jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/controller/DaParamCollectionController.java +++ b/jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/controller/DaParamCollectionController.java @@ -1,10 +1,20 @@ package com.jcdm.main.da.paramCollection.controller; import java.time.LocalTime; +import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; +import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.StrUtil; +import com.jcdm.common.core.domain.R; import com.jcdm.common.utils.DateUtils; +import com.jcdm.main.da.collectionParamConf.domain.DaCollectionParamConf; +import com.jcdm.main.da.collectionParamConf.service.IDaCollectionParamConfService; +import com.jcdm.main.da.collectionParamConf.vo.ChartVO; +import com.jcdm.main.da.collectionParamConf.vo.Options; import com.jcdm.main.da.paramCollection.domain.DaParamCollection; import com.jcdm.main.da.paramCollection.service.IDaParamCollectionService; import org.springframework.security.access.prepost.PreAuthorize; @@ -37,6 +47,9 @@ @Autowired private IDaParamCollectionService daParamCollectionService; + @Resource + private IDaCollectionParamConfService daCollectionParamConfService; + /** * 鏌ヨ璁惧浜у搧杩囩▼鍙傛暟閲囬泦鍒楄〃 */ @@ -57,6 +70,80 @@ return getDataTable(list); } + + @GetMapping("/queryChart") + public R queryChart(DaParamCollection daParamCollection) + { + if(daParamCollection.getDateConditions()!=null){ + String[] conditions = daParamCollection.getDateConditions(); + daParamCollection.setStartTime(conditions[0]); + daParamCollection.setEndTime(conditions[1]); + } else { + return R.fail("璇烽�夋嫨鏃ユ湡鑼冨洿"); + } + if (StrUtil.isBlank(daParamCollection.getLocationCode())){ + return R.fail("璇疯緭鍏ュ伐浣嶇紪鍙�"); + } + if (StrUtil.isBlank(daParamCollection.getParamName())){ + return R.fail("璇烽�夋嫨鏁版嵁绫诲瀷"); + } + if (StrUtil.isBlank(daParamCollection.getParamCode())){ + return R.fail("璇烽�夋嫨铻烘爴"); + } + List<DaParamCollection> list = daParamCollectionService.queryDaParamCollectionListForSearch(daParamCollection); + String[] array = list.stream().map(DaParamCollection::getParamValue).toArray(String[]::new); + return R.ok(array); + } + + + @GetMapping("/getSelectOption") + public R getSelectOption(DaParamCollection daParamCollection){ + ChartVO chartVO = new ChartVO(); + List<Options> locationList = new ArrayList<>(); + List<Options> paramCodeList = new ArrayList<>(); + DaCollectionParamConf daCollectionParamConf = new DaCollectionParamConf(); + if (StrUtil.isBlank(daParamCollection.getLocationCode())){ + List<DaCollectionParamConf> selectOption = daCollectionParamConfService.getSelectOption(daCollectionParamConf); + List<String> collect = selectOption.stream().map(DaCollectionParamConf::getProcessesCode).distinct().collect(Collectors.toList()); + if (CollUtil.isNotEmpty(collect)){ + for (String s : collect) { + Options options = new Options(); + options.setLabel(s); + options.setValue(s); + locationList.add(options); + } + } + } else { + List<DaCollectionParamConf> selectOption2 = daCollectionParamConfService.getSelectOption(daCollectionParamConf); + List<String> collect = selectOption2.stream().map(DaCollectionParamConf::getProcessesCode).distinct().collect(Collectors.toList()); + if (CollUtil.isNotEmpty(collect)){ + for (String s : collect) { + Options options = new Options(); + options.setLabel(s); + options.setValue(s); + locationList.add(options); + } + } + + daCollectionParamConf.setProcessesCode(daParamCollection.getLocationCode()); + if (StrUtil.isNotBlank(daParamCollection.getParamName())){ + daCollectionParamConf.setCollectParameterName(daParamCollection.getParamName()); + List<DaCollectionParamConf> selectOption = daCollectionParamConfService.getSelectOption(daCollectionParamConf); + if (CollUtil.isNotEmpty(selectOption)){ + for (DaCollectionParamConf collectionParamConf : selectOption) { + Options options = new Options(); + options.setLabel(collectionParamConf.getParameterSetName()); + options.setValue(collectionParamConf.getParameterSetCode()); + paramCodeList.add(options); + } + } + } + } + chartVO.setLocationList(locationList); + chartVO.setParamCodeList(paramCodeList); + return R.ok(chartVO); + } + /** * 瀵煎嚭璁惧浜у搧杩囩▼鍙傛暟閲囬泦鍒楄〃 */ diff --git a/jcdm-main/src/main/resources/mapper/da/collectionParamConf/DaCollectionParamConfMapper.xml b/jcdm-main/src/main/resources/mapper/da/collectionParamConf/DaCollectionParamConfMapper.xml index fb1e17f..8e8faad 100644 --- a/jcdm-main/src/main/resources/mapper/da/collectionParamConf/DaCollectionParamConfMapper.xml +++ b/jcdm-main/src/main/resources/mapper/da/collectionParamConf/DaCollectionParamConfMapper.xml @@ -35,6 +35,9 @@ <sql id="selectDaCollectionParamConfVo"> select id, processes_code, parameter_set_code, parameter_set_name, collect_parameter_id, collect_parameter_name, contrast_parameter_flag, collect_parameter_type, collect_parameter_unit, Descriptives, param_upper, param_lower, param_Central, product_code, gather_address, gather_sequence, remarks, create_user, create_time, update_user, update_time, spare_field_1, spare_field_2, spare_field_3, spare_field_4 from da_collection_param_conf </sql> + <sql id="selectOptionVo"> + select id, processes_code, parameter_set_code, parameter_set_name, collect_parameter_id, collect_parameter_name, remarks from da_collection_param_conf + </sql> <select id="selectDaCollectionParamConfList" parameterType="DaCollectionParamConf" resultMap="DaCollectionParamConfResult"> <include refid="selectDaCollectionParamConfVo"/> @@ -56,7 +59,17 @@ <include refid="selectDaCollectionParamConfVo"/> where id = #{id} </select> - + <select id="getSelectOption" + resultMap="DaCollectionParamConfResult"> + <include refid="selectOptionVo"/> + <where> + remarks = '1' and collect_parameter_name in ('瑙掑害','鎵煩') + <if test="processesCode != null and processesCode != ''"> and processes_code like concat('%', #{processesCode}, '%')</if> + <if test="parameterSetCode != null and parameterSetCode != ''"> and parameter_set_code like concat('%', #{parameterSetCode}, '%')</if> + <if test="collectParameterName != null and collectParameterName != ''"> and collect_parameter_name like concat('%', #{collectParameterName}, '%')</if> + </where> + </select> + <insert id="insertDaCollectionParamConf" parameterType="DaCollectionParamConf"> insert into da_collection_param_conf <trim prefix="(" suffix=")" suffixOverrides=","> diff --git a/jcdm-quartz/src/main/java/com/jcdm/quartz/task/RyTask.java b/jcdm-quartz/src/main/java/com/jcdm/quartz/task/RyTask.java index 5d0b1fc..dbdf12a 100644 --- a/jcdm-quartz/src/main/java/com/jcdm/quartz/task/RyTask.java +++ b/jcdm-quartz/src/main/java/com/jcdm/quartz/task/RyTask.java @@ -114,7 +114,7 @@ if (CollUtil.isNotEmpty(bsOrderSchedulings)){ BsOrderScheduling orderScheduling = bsOrderSchedulings.get(0); try { - String xmlResult = ReceivingServices.getInterfaceInformationXml(url, getProductionPlanInformationXml(orderScheduling.getOrderNo(), "0010")); + String xmlResult = ReceivingServices.getInterfaceInformationXml(url, getProductionPlanInformationXml(orderScheduling.getOrderNo(),orderScheduling.getEngineNo(), "0010")); ev_meassage=ReceivingServices.xmlToJSON1(xmlResult); status = ReceivingServices.xmlToJSON3(xmlResult); } catch (Exception e) { @@ -124,6 +124,7 @@ orderScheduling.setReport10("1"); int i = bsOrderSchedulingService.updateBsOrderScheduling(orderScheduling); logger.info("{}鍚堢鎶ュ伐鎴愬姛",orderScheduling.getOrderNo()); + orderScheduling.setRemarks("鍚堢鎶ュ伐鎴愬姛"); }else { if(StringUtils.isEmpty(orderScheduling.getSpareField1())){ orderScheduling.setSpareField1("1"); @@ -136,12 +137,16 @@ }else { orderScheduling.setSpareField1(String.valueOf(Integer.valueOf(orderScheduling.getSpareField1()) + 1)); } + if(status.equals("3")){ + orderScheduling.setRemarks("鍚堢鎶ュ伐鍥犱负缃戠粶鍘熷洜锛屾姤宸ュけ璐�"); + logger.info("{}鍚堢鎶ュ伐鍥犱负缃戠粶鍘熷洜锛屾姤宸ュけ璐ワ紒",orderScheduling.getOrderNo()); + } else{ + orderScheduling.setRemarks("鍚堢鎶ュ伐澶辫触"+ev_meassage); + logger.info("{}鍚堢鎶ュ伐澶辫触,鍘熷洜锛歿}",orderScheduling.getOrderNo(),ev_meassage); + } bsOrderSchedulingService.updateBsOrderScheduling(orderScheduling); } - if(status.equals("3")) - logger.info("{}鍚堢鎶ュ伐鍥犱负缃戠粶鍘熷洜锛屾姤宸ュけ璐ワ紒",orderScheduling.getOrderNo()); - else - logger.info("{}鍚堢鎶ュ伐澶辫触,鍘熷洜锛歿}",orderScheduling.getOrderNo(),ev_meassage); + } } } @@ -155,7 +160,7 @@ if (CollUtil.isNotEmpty(bsOrderSchedulings)){ BsOrderScheduling orderScheduling = bsOrderSchedulings.get(0); try { - String xmlResult = ReceivingServices.getInterfaceInformationXml(url, getProductionPlanInformationXml(orderScheduling.getOrderNo(), "0020")); + String xmlResult = ReceivingServices.getInterfaceInformationXml(url, getProductionPlanInformationXml(orderScheduling.getOrderNo(), orderScheduling.getEngineNo(),"0020")); ev_meassage=ReceivingServices.xmlToJSON1(xmlResult); status = ReceivingServices.xmlToJSON3(xmlResult); } catch (Exception e) { @@ -165,6 +170,7 @@ orderScheduling.setReport20("1"); int i = bsOrderSchedulingService.updateBsOrderScheduling(orderScheduling); logger.info("{}鎬昏鎶ュ伐鎴愬姛",orderScheduling.getOrderNo()); + orderScheduling.setRemarks("鎬昏鎶ュ伐鎴愬姛"); }else { if(StringUtils.isEmpty(orderScheduling.getSpareField2())){ orderScheduling.setSpareField2("1"); @@ -177,11 +183,14 @@ }else{ orderScheduling.setSpareField2(String.valueOf(Integer.valueOf(orderScheduling.getSpareField2()) + 1)); } - bsOrderSchedulingService.updateBsOrderScheduling(orderScheduling); - if(status.equals("3")) + if(status.equals("3")){ logger.info("{}鎬昏鎶ュ伐鍥犱负缃戠粶鍘熷洜锛屾姤宸ュけ璐ワ紒",orderScheduling.getOrderNo()); - else + orderScheduling.setRemarks("鎬昏鎶ュ伐鍥犱负缃戠粶鍘熷洜锛屾姤宸ュけ璐�"); + } else{ logger.info("{}鎬昏鎶ュ伐澶辫触,鍘熷洜锛歿}",orderScheduling.getOrderNo(),ev_meassage); + orderScheduling.setRemarks("鎬昏鎶ュ伐澶辫触,"+ev_meassage); + } + bsOrderSchedulingService.updateBsOrderScheduling(orderScheduling); } } } @@ -244,17 +253,18 @@ //鏇存柊 //鍒ゆ柇鏄惁闇�瑕佹洿鏂� ProductNumTable productNumTable = collect1.get(0); - Integer hxOnlineNum = productNumTable.getHxOnlineNum(); - Integer zzOnlineNum = productNumTable.getZzOnlineNum(); - Integer zzOfflineNum = productNumTable.getZzOfflineNum(); - if (!hxOnlineNum.equals((int)count1) || !zzOnlineNum.equals((int) count2) || !zzOfflineNum.equals((int)count3)){ - //鏇存柊 - productNumTable.setHxOnlineNum((int) count1); - productNumTable.setZzOnlineNum((int) count2); - productNumTable.setZzOfflineNum((int) count3); - productNumTable.setProductNumTheory(productNumTheory); - productNumTableService.updateProductNum(productNumTable); - } +// Integer hxOnlineNum = productNumTable.getHxOnlineNum(); +// Integer zzOnlineNum = productNumTable.getZzOnlineNum(); +// Integer zzOfflineNum = productNumTable.getZzOfflineNum(); +// if (!hxOnlineNum.equals((int)count1) || !zzOnlineNum.equals((int) count2) || !zzOfflineNum.equals((int)count3)){ +// +// } + //鏇存柊 + productNumTable.setHxOnlineNum((int) count1); + productNumTable.setZzOnlineNum((int) count2); + productNumTable.setZzOfflineNum((int) count3); + productNumTable.setProductNumTheory(productNumTheory); + productNumTableService.updateProductNum(productNumTable); } } if (CollUtil.isNotEmpty(saveDate)){ @@ -377,13 +387,14 @@ return productNumTheory; } - public static String getProductionPlanInformationXml(String orderNo,String location){ + public static String getProductionPlanInformationXml(String orderNo,String engineNo,String location){ String content = "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:urn=\"urn:sap-com:document:sap:rfc:functions\">\n" + " <soapenv:Header/>\n" + " <soapenv:Body>\n" + " <urn:ZPP_BC_001>\n" + " <IV_AUFNR>"+orderNo+"</IV_AUFNR>\n" + " <IV_VORNR>"+location+"</IV_VORNR>\n" + + " <IV_ZFDJM>"+engineNo+"</IV_ZFDJM>\n" + " <IV_LMNGA>1</IV_LMNGA>\n" + " <IV_XMNGA>0</IV_XMNGA> \n" + " <IV_STATU>1</IV_STATU> \n" + diff --git a/jcdm-ui/src/api/main/da/paramCollection/paramCollection.js b/jcdm-ui/src/api/main/da/paramCollection/paramCollection.js index cd48024..aad81b0 100644 --- a/jcdm-ui/src/api/main/da/paramCollection/paramCollection.js +++ b/jcdm-ui/src/api/main/da/paramCollection/paramCollection.js @@ -50,3 +50,17 @@ method: 'delete' }) } +export function queryChart(query) { + return request({ + url: '/main/paramCollection/queryChart', + method: 'get', + params: query + }) +} +export function getSelectOption(query) { + return request({ + url: '/main/paramCollection/getSelectOption', + method: 'get', + params: query + }) +} diff --git a/jcdm-ui/src/views/main/da/spcDataAnalyse/index.vue b/jcdm-ui/src/views/main/da/spcDataAnalyse/index.vue new file mode 100644 index 0000000..09960e3 --- /dev/null +++ b/jcdm-ui/src/views/main/da/spcDataAnalyse/index.vue @@ -0,0 +1,354 @@ +<template> + <div class="app-container"> + <el-card class="box-card"> + <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="90px"> + <el-form-item label="鏃ユ湡鑼冨洿" prop="dateConditions"> + <el-date-picker + v-model="queryParams.dateConditions" + type="daterange" + align="right" + unlink-panels + range-separator="鑷�" + start-placeholder="寮�濮嬫棩鏈�" + end-placeholder="缁撴潫鏃ユ湡" + value-format="yyyy-MM-dd" + @change="handleDateChange"> + </el-date-picker> + </el-form-item> + <el-form-item label="宸ヤ綅缂栧彿" prop="locationCode"> + <el-select v-model="queryParams.locationCode" placeholder="璇烽�夋嫨宸ヤ綅缂栧彿" clearable> + <el-option + v-for="item in locationOption" + :key="item.value" + :label="item.label" + :value="item.value" + /> + </el-select> + </el-form-item> + <el-form-item label="鏁版嵁绫诲瀷" prop="paramName"> + <el-select v-model="queryParams.paramName" @change="getSelectOptionMethod" placeholder="璇烽�夋嫨鏁版嵁绫诲瀷" clearable> + <el-option + v-for="item in dataTypeList" + :key="item.value" + :label="item.label" + :value="item.value" + /> + </el-select> + </el-form-item> + <el-form-item label="铻烘爴鍚嶇О" prop="paramCode"> + <el-select v-model="queryParams.paramCode" placeholder="璇烽�夋嫨铻烘爴鍚嶇О" clearable> + <el-option + v-for="item in screwNameList" + :key="item.value" + :label="item.label" + :value="item.value" + /> + </el-select> + </el-form-item> + + + <el-form-item style="float: right"> + <el-button type="primary" icon="el-icon-search" size="mini" @click="queryChartMethod">鎼滅储</el-button> + <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button> + </el-form-item> + </el-form> + </el-card> + <el-card style="margin-top: 10px" class="box-card"> + <el-row :gutter="10" class="mb8"> + <el-tabs v-model="activeName" @tab-click="handleClick"> + <el-tab-pane label="鐢ㄦ埛绠$悊" name="first">鐢ㄦ埛绠$悊</el-tab-pane> + <el-tab-pane label="閰嶇疆绠$悊" name="second">閰嶇疆绠$悊</el-tab-pane> + <el-tab-pane label="瑙掕壊绠$悊" name="third">瑙掕壊绠$悊</el-tab-pane> + </el-tabs> + </el-row> + + <el-table v-loading="loading" border :data="paramCollectionList" @selection-change="handleSelectionChange" v-if="paramCollectionList.length > 0"> + + </el-table> + <el-empty v-else> + <span slot="description">鏆傛棤鏁版嵁</span> + </el-empty> + </el-card> + + + </div> +</template> + +<script> +import { listParamCollection, getParamCollection, delParamCollection, addParamCollection, updateParamCollection } from "@/api/main/da/paramCollection/paramCollection"; +import {queryDaParamCollectionListForSearch, getSelectOption, queryChart} from "../../../../api/main/da/paramCollection/paramCollection"; + +export default { + name: "ParamCollection", + data() { + return { + activeName: 'second', + dataTypeList:[ + { + value: "鎵煩", + label: "鎵煩" + }, + { + value: "瑙掑害", + label: "瑙掑害" + }, + ], + locationOption:[], + screwNameList:[], + maxDate: '', + // 閬僵灞� + loading: true, + // 閫変腑鏁扮粍 + ids: [], + // 闈炲崟涓鐢� + single: true, + // 闈炲涓鐢� + multiple: true, + // 鏄剧ず鎼滅储鏉′欢 + showSearch: true, + // 鎬绘潯鏁� + total: 0, + // 璁惧浜у搧杩囩▼鍙傛暟閲囬泦琛ㄦ牸鏁版嵁 + paramCollectionList: [], + // 寮瑰嚭灞傛爣棰� + title: "", + // 鏄惁鏄剧ず寮瑰嚭灞� + open: false, + // 鏌ヨ鍙傛暟 + queryParams: { + dateConditions: [], + pageNum: 1, + pageSize: 10, + workOrderNo: null, + sfcCode: null, + productCode: null, + productionLine: null, + locationCode: null, + equipmentNo: null, + paramCode: null, + }, + // 琛ㄥ崟鍙傛暟 + form: {}, + // 琛ㄥ崟鏍¢獙 + rules: { + id: [ + { required: true, message: "涓婚敭id涓嶈兘涓虹┖", trigger: "blur" } + ], + // workOrderNo: [ + // { required: true, message: "宸ュ崟缂栧彿涓嶈兘涓虹┖", trigger: "blur" } + // ], + sfcCode: [ + { required: true, message: "鎬绘垚搴忓垪鍙蜂笉鑳戒负绌�", trigger: "blur" } + ], + productCode: [ + { required: true, message: "浜у搧缂栧彿涓嶈兘涓虹┖", trigger: "blur" } + ], + // productionLine: [ + // { required: true, message: "浜х嚎缂栧彿涓嶈兘涓虹┖", trigger: "blur" } + // ], + locationCode: [ + { required: true, message: "宸ヤ綅缂栧彿涓嶈兘涓虹┖", trigger: "blur" } + ], + paramCode: [ + { required: true, message: "鍙傛暟缂栫爜涓嶈兘涓虹┖", trigger: "blur" } + ], + paramValue: [ + { required: true, message: "鍙傛暟鍊间笉鑳戒负绌�", trigger: "blur" } + ], + } + }; + }, + created() { + // this.getList(); + }, + mounted() { + this.getSelectOptionMethod() + }, + methods: { + getSelectOptionMethod(){ + getSelectOption(this.queryParams).then(res => { + console.log('rrrrrrr',res) + if (res.code === 200){ + this.locationOption = res.data.locationList + this.screwNameList = res.data.paramCodeList + } + }) + }, + queryChartMethod(){ + queryChart(this.queryParams).then(res => { + if (res.code === 200){ + console.log('res',res) + let dataArray = [] + if (res.data.length > 0){ + res.data.forEach(x => { + let num = parseInt(x) + dataArray.push(num) + }) + } + console.log('res222',dataArray) + let array=dataArray + console.log('arra',array) + // 骞冲潎鍊� + let mean=(array.reduce((a,b)=>a+b))/array.length + console.log('mean',mean) + // 鏂瑰樊 + let variance=array.map(x=>{ + return Math.pow(x-mean,2) + }).reduce((a,b)=>a+b)/array.length + console.log('variance',variance) + // 鏍囧噯宸� + let StandardDeviation = Math.sqrt(variance) + console.log('StandardDeviation',StandardDeviation) + //璁$畻鏂瑰紡鍙互鐧惧害 + let convertedData=[] + for(let x=mean-3*StandardDeviation;x<=mean + 3*StandardDeviation;x++){ + //for寰幆涓殑鏉′欢浠h〃浣犺鐢熸垚鍑犱釜鏍囧噯宸殑鏁版嵁锛� + // 鍐嶅甫鍏ユ鎬佸垎甯冨叕寮忥紝灏卞彲浠ョ敓鎴愪竴鏉℃暣鏉″垎甯冩洸绾跨殑鏁版嵁 + let y=1/(StandardDeviation*Math.sqrt(2*(Math.PI)))*Math.exp(-(Math.pow(x-mean,2))/(2*(Math.pow(StandardDeviation,2)))) + convertedData.push([x,y]) + } + } + }) + }, + handleClick(tab, event) { + console.log(tab, event); + }, + handleDateChange(value) { + if (value && value.length === 2) { + const startDate = value[0]; + const endDate = value[1]; + const dayCount = this.daysBetween(startDate, endDate); + if (dayCount + 1 > 7) { + this.$message.error('璇烽�夋嫨杩炵画鐨�7澶╋紒'); + this.queryParams.dateConditions = []; // 閲嶇疆鏃ユ湡鑼冨洿 + } + } + }, + daysBetween(startDate, endDate) { + const oneDay = 24 * 60 * 60 * 1000; // 姣忓ぉ鐨勬绉掓暟 + const startTime = new Date(startDate).getTime(); + const endTime = new Date(endDate).getTime(); + return Math.round(Math.abs((startTime - endTime) / oneDay)); + }, + /** 鏌ヨ璁惧浜у搧杩囩▼鍙傛暟閲囬泦鍒楄〃 */ + getList() { + this.loading = true; + if ((this.queryParams.sfcCode == null || this.queryParams.sfcCode === '') && this.queryParams.dateConditions.length === 0){ + this.$message({ + message: '璇疯緭鍏ュ彂鍔ㄦ満鍙风爜鎴栬�呴�夋嫨鏌ヨ鏃ユ湡', + type: 'info' + }); + } else { + queryDaParamCollectionListForSearch(this.queryParams).then(response => { + this.paramCollectionList = response.rows; + this.total = response.total; + this.loading = false; + }); + } + + }, + // 鍙栨秷鎸夐挳 + cancel() { + this.open = false; + this.reset(); + }, + // 琛ㄥ崟閲嶇疆 + reset() { + this.form = { + id: null, + workOrderNo: null, + sfcCode: null, + productCode: null, + productionLine: null, + locationCode: null, + equipmentNo: null, + paramCode: null, + paramValue: null, + paramUpper: null, + paramLower: null, + paramStandard: null, + collectionTime: null, + spareField1: null, + spareField2: null, + createUser: null, + createTime: null, + updateUser: null, + updateTime: null, + state: null, + paramName: null, + unit: null, + type: null + }; + this.resetForm("form"); + }, + /** 鎼滅储鎸夐挳鎿嶄綔 */ + handleQuery() { + this.queryParams.pageNum = 1; + this.getList(); + }, + /** 閲嶇疆鎸夐挳鎿嶄綔 */ + resetQuery() { + this.resetForm("queryForm"); + this.handleQuery(); + }, + // 澶氶�夋閫変腑鏁版嵁 + handleSelectionChange(selection) { + this.ids = selection.map(item => item.id) + this.single = selection.length!==1 + this.multiple = !selection.length + }, + /** 鏂板鎸夐挳鎿嶄綔 */ + handleAdd() { + this.reset(); + this.open = true; + this.title = "娣诲姞璁惧浜у搧杩囩▼鍙傛暟閲囬泦"; + }, + /** 淇敼鎸夐挳鎿嶄綔 */ + handleUpdate(row) { + this.reset(); + const id = row.id || this.ids + getParamCollection(id).then(response => { + this.form = response.data; + this.open = true; + this.title = "淇敼璁惧浜у搧杩囩▼鍙傛暟閲囬泦"; + }); + }, + /** 鎻愪氦鎸夐挳 */ + submitForm() { + this.$refs["form"].validate(valid => { + if (valid) { + if (this.form.id != null) { + updateParamCollection(this.form).then(response => { + this.$modal.msgSuccess("淇敼鎴愬姛"); + this.open = false; + this.getList(); + }); + } else { + addParamCollection(this.form).then(response => { + this.$modal.msgSuccess("鏂板鎴愬姛"); + this.open = false; + this.getList(); + }); + } + } + }); + }, + /** 鍒犻櫎鎸夐挳鎿嶄綔 */ + handleDelete(row) { + const ids = row.id || this.ids; + this.$modal.confirm('鏄惁纭鍒犻櫎璁惧浜у搧杩囩▼鍙傛暟閲囬泦缂栧彿涓�"' + ids + '"鐨勬暟鎹」锛�').then(function() { + return delParamCollection(ids); + }).then(() => { + this.getList(); + this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); + }).catch(() => {}); + }, + /** 瀵煎嚭鎸夐挳鎿嶄綔 */ + handleExport() { + this.download('main/paramCollection/export', { + ...this.queryParams + }, `paramCollection_${new Date().getTime()}.xlsx`) + } + } +}; +</script> -- Gitblit v1.9.3