lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcEquipmentRunningSectionController.java
@@ -4,14 +4,11 @@ import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; import org.jeecg.common.api.vo.Result; import org.jeecg.common.system.base.controller.JeecgController; import org.jeecg.common.system.vo.LoginUser; import org.jeecg.modules.mdc.dto.EquipmentMachingDto; import org.jeecg.modules.mdc.dto.MdcEquipmentRunningSectionDto; import org.jeecg.modules.mdc.entity.MdcEquipmentRunningSection; import org.jeecg.modules.mdc.entity.MdcNoplanClose; import org.jeecg.modules.mdc.service.IMdcEquipmentRunningSectionService; import org.jeecg.modules.mdc.service.IMdcEquipmentWorkLineService; import org.jeecg.modules.mdc.vo.MdcEquipmentRunningSectionVo; @@ -66,6 +63,11 @@ return equipmentRunningSectionService.exportXls(equipmentRunningSectionVo); } @RequestMapping(value = "/batchExportLogXls") public ModelAndView batchExportLogXls(HttpServletRequest request, MdcEquipmentRunningSectionVo equipmentRunningSectionVo) { return equipmentRunningSectionService.batchExportXls(equipmentRunningSectionVo); } @ApiOperation(value = "è®¾å¤æ¥å¿-å岿¥è¯¢", notes = "è®¾å¤æ¥å¿-å岿¥è¯¢") @GetMapping("/logCharts") public Result<List<Map<String, Object>>> logCharts(MdcEquipmentRunningSectionVo equipmentRunningSectionVo){ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcEquipmentDaySchedule.java
@@ -25,7 +25,7 @@ * ä¸»é® */ @ApiModelProperty(value = "主é®") private String medId; private String mesId; /** * åå */ @@ -87,10 +87,15 @@ @ApiModelProperty(value = "å·¥åºå·") private String opreationSeqNo; /** * æ´¾å·¥æ¥æ * 计åå¼å§æ¶é´ */ @ApiModelProperty(value = "æ´¾å·¥æ¥æ") private String dispatchDate; @ApiModelProperty(value = "计åå¼å§æ¶é´") private String planStartTime; /** * 计åç»ææ¶é´ */ @ApiModelProperty(value = "计åç»ææ¶é´") private String planEndTime; /** * 设å¤ç¼å· */ @@ -109,4 +114,7 @@ @TableField(exist = false) @ApiModelProperty(value = "æ¯å¦å®æ") private String qualifiedStatus; @TableField(exist = false) private String productName; } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcEquipmentDaySummary.java
@@ -21,7 +21,7 @@ /** * ä¸»é® */ private String medId; private String mesId; /** * åå */ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/WebServiceCompletedJob.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,130 @@ package org.jeecg.modules.mdc.job; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.extern.slf4j.Slf4j; import org.jeecg.common.util.DateUtils; import org.jeecg.common.util.RedisUtil; import org.jeecg.modules.mdc.entity.MdcEquipment; import org.jeecg.modules.mdc.entity.MdcEquipmentDaySchedule; import org.jeecg.modules.mdc.service.IEquipmentWorkLineService; import org.jeecg.modules.mdc.service.IMdcEquipmentService; import org.jeecg.modules.mdc.util.CxfClientUtil; import org.jeecg.modules.mdc.util.ThrowableUtil; import org.jeecg.modules.mdc.vo.WsEquipmentEndWork; import org.jeecg.modules.quartz.entity.QuartzJob; import org.jeecg.modules.quartz.entity.SysQuartzLog; import org.jeecg.modules.quartz.service.IQuartzJobService; import org.jeecg.modules.quartz.service.ISysQuartzLogService; import org.quartz.*; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Lazy; import javax.annotation.Resource; import java.util.Date; import java.util.List; import java.util.Map; /** * @Author: Lius * @CreateTime: 2025-04-29 * @Description: å®å·¥ä»»å¡ */ @PersistJobDataAfterExecution @DisallowConcurrentExecution @Slf4j public class WebServiceCompletedJob implements Job { /** * url */ @Value("${webservice2.url}") private String url; /** * namespace */ @Value("${webservice2.namespace}") private String namespace; /** * method */ @Value("${webservice2.endWorkMethod}") private String method; @Resource private IQuartzJobService quartzJobService; @Resource private ISysQuartzLogService sysQuartzLogService; @Resource @Lazy private RedisUtil redisUtil; @Resource private IMdcEquipmentService mdcEquipmentService; @Resource private IEquipmentWorkLineService equipmentWorkLineService; @Override public void execute(JobExecutionContext context) throws JobExecutionException { SysQuartzLog quartzLog = new SysQuartzLog(); quartzLog.setCreateTime(new Date()); List<QuartzJob> byJobClassName = this.quartzJobService.findByJobClassName(this.getClass().getName()); if (byJobClassName != null && !byJobClassName.isEmpty()) { quartzLog.setJobId(byJobClassName.get(0).getId()); } log.info("WebService䏿¥å®å·¥ä»»å¡ WebServiceCompletedJob start! æ¶é´:" + DateUtils.now()); long startTime = System.currentTimeMillis(); try { List<MdcEquipment> mdcEquipmentList = mdcEquipmentService.list(new LambdaQueryWrapper<MdcEquipment>().eq(MdcEquipment::getDriveType, "FANUC")); if (mdcEquipmentList != null && !mdcEquipmentList.isEmpty()) { for (MdcEquipment mdcEquipment : mdcEquipmentList) { if (redisUtil.hasKey("work:" + mdcEquipment.getEquipmentId())) { MdcEquipmentDaySchedule mdcEquipmentDaySchedule = (MdcEquipmentDaySchedule) redisUtil.get("work:" + mdcEquipment.getEquipmentId()); String productName = mdcEquipmentDaySchedule.getProductName(); Map<String, Object> dataProductName = equipmentWorkLineService.getDataProductName(mdcEquipment.getSaveTableName()); if (dataProductName != null && !dataProductName.isEmpty()) { if (dataProductName.containsKey("productname")) { String proName = dataProductName.get("productname") == null ? "" : dataProductName.get("productname").toString(); if (!productName.equals(proName)) { //å®å·¥ WsEquipmentEndWork wsEquipmentEndWork = new WsEquipmentEndWork(); wsEquipmentEndWork.setMesId(mdcEquipmentDaySchedule.getMesId()); wsEquipmentEndWork.setWorkshop(mdcEquipmentDaySchedule.getWorkshop()); wsEquipmentEndWork.setProcessProgress("100"); wsEquipmentEndWork.setTaskCode(mdcEquipmentDaySchedule.getTaskCode()); wsEquipmentEndWork.setOpreationSeqNo(mdcEquipmentDaySchedule.getOpreationSeqNo()); wsEquipmentEndWork.setMdsItemCode(mdcEquipmentDaySchedule.getMdsItemCode()); wsEquipmentEndWork.setEquipmentId(mdcEquipment.getEquipmentId()); wsEquipmentEndWork.setProcessNumber(mdcEquipmentDaySchedule.getBatchNum()); Date date = dataProductName.get("collecttime") == null ? null : (Date) dataProductName.get("collecttime"); wsEquipmentEndWork.setEndProcessTime(date); String s = JSONObject.toJSONString(wsEquipmentEndWork); log.info("䏿¥å®å·¥æ°æ® ===== " + s); String result = CxfClientUtil.invokeService(url, s, namespace, method); log.info("䏿¥å®å·¥ç»æ ===== " + result); if (result.contains("æå")) { // mdcEquipmentDaySchedule.setProductName(productName); //å¼å·¥è®¾å¤å é¤redis redisUtil.del("work:" + mdcEquipment.getEquipmentId()); } } } } } } } quartzLog.setIsSuccess(0); } catch (Exception e) { quartzLog.setIsSuccess(-1); quartzLog.setExceptionDetail(ThrowableUtil.getStackTrace(e)); } long endTime = System.currentTimeMillis(); quartzLog.setExecutionTime(Integer.parseInt(String.valueOf(endTime - startTime))); sysQuartzLogService.save(quartzLog); } } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/WebServiceStartWorkJob.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,135 @@ package org.jeecg.modules.mdc.job; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.extern.slf4j.Slf4j; import org.jeecg.common.util.RedisUtil; import org.jeecg.modules.mdc.entity.MdcEquipment; import org.jeecg.modules.mdc.entity.MdcEquipmentDaySchedule; import org.jeecg.modules.mdc.service.IEquipmentWorkLineService; import org.jeecg.modules.mdc.service.IMdcEquipmentDayScheduleService; import org.jeecg.modules.mdc.service.IMdcEquipmentService; import org.jeecg.modules.mdc.util.CxfClientUtil; import org.jeecg.modules.mdc.util.DateUtils; import org.jeecg.modules.mdc.util.ThrowableUtil; import org.jeecg.modules.mdc.vo.WsEquipmentStartWork; import org.jeecg.modules.quartz.entity.QuartzJob; import org.jeecg.modules.quartz.entity.SysQuartzLog; import org.jeecg.modules.quartz.service.IQuartzJobService; import org.jeecg.modules.quartz.service.ISysQuartzLogService; import org.quartz.*; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Lazy; import javax.annotation.Resource; import java.util.Date; import java.util.List; import java.util.Map; /** * @Author: Lius * @CreateTime: 2025-04-29 * @Description: å¼å·¥ä»»å¡ */ @PersistJobDataAfterExecution @DisallowConcurrentExecution @Slf4j public class WebServiceStartWorkJob implements Job { /** * url */ @Value("${webservice2.url}") private String url; /** * namespace */ @Value("${webservice2.namespace}") private String namespace; /** * method */ @Value("${webservice2.startWorkMethod}") private String method; @Resource private IQuartzJobService quartzJobService; @Resource private ISysQuartzLogService sysQuartzLogService; @Resource private IMdcEquipmentDayScheduleService mdcEquipmentDayScheduleService; @Resource private IMdcEquipmentService mdcEquipmentService; @Resource @Lazy private RedisUtil redisUtil; @Resource private IEquipmentWorkLineService equipmentWorkLineService; @Override public void execute(JobExecutionContext context) throws JobExecutionException { SysQuartzLog quartzLog = new SysQuartzLog(); quartzLog.setCreateTime(new Date()); List<QuartzJob> byJobClassName = this.quartzJobService.findByJobClassName(this.getClass().getName()); if (byJobClassName != null && !byJobClassName.isEmpty()) { quartzLog.setJobId(byJobClassName.get(0).getId()); } log.info("WebService䏿¥å¼å·¥ä»»å¡ WebServiceStartWorkJob start! æ¶é´:" + DateUtils.getNow()); long startTime = System.currentTimeMillis(); try { List<MdcEquipment> mdcEquipmentList = mdcEquipmentService.list(new LambdaQueryWrapper<MdcEquipment>().eq(MdcEquipment::getDriveType, "FANUC")); if (mdcEquipmentList != null && !mdcEquipmentList.isEmpty()) { for (MdcEquipment mdcEquipment : mdcEquipmentList) { if (!redisUtil.hasKey("work:" + mdcEquipment.getEquipmentId())) { MdcEquipmentDaySchedule mdcEquipmentDaySchedule = mdcEquipmentDayScheduleService.selectLast(mdcEquipment.getEquipmentId()); if (mdcEquipmentDaySchedule != null) { //æ¥è¯¢è®¾å¤å表é¶ä»¶å· Map<String, Object> dataList = equipmentWorkLineService.getDataProductName(mdcEquipment.getSaveTableName()); if (dataList != null) { if (dataList.containsKey("productname")) { String productName = dataList.get("productname") == null ? "" : dataList.get("productname").toString(); if (productName.contains(mdcEquipmentDaySchedule.getMdsItemCode())) { log.info("éªè¯èªå¨å¼å·¥å¼å§,设å¤ç¼å·ä¸º ====== " + mdcEquipment.getEquipmentId()); WsEquipmentStartWork wsEquipmentStartWork = new WsEquipmentStartWork(); wsEquipmentStartWork.setMesId(mdcEquipmentDaySchedule.getMesId()); wsEquipmentStartWork.setEquipmentId(mdcEquipmentDaySchedule.getEquipmentId()); wsEquipmentStartWork.setWorkshop(mdcEquipmentDaySchedule.getWorkshop()); wsEquipmentStartWork.setTaskCode(mdcEquipmentDaySchedule.getTaskCode()); wsEquipmentStartWork.setOpreationSeqNo(mdcEquipmentDaySchedule.getOpreationSeqNo()); //è·åå¼å·¥æ¶é´ Date date = dataList.get("collecttime") == null ? null : (Date) dataList.get("collecttime"); wsEquipmentStartWork.setStartProcessTime(date); String s = JSONObject.toJSONString(wsEquipmentStartWork); log.info("䏿¥å¼å·¥æ°æ® ===== " + s); String result = CxfClientUtil.invokeService(url, s, namespace, method); log.info("䏿¥å¼å·¥ç»æ ===== " + result); if (result.contains("æå")) { mdcEquipmentDaySchedule.setProductName(productName); //å¼å·¥è®¾å¤åå ¥redis redisUtil.set("work:" + mdcEquipment.getEquipmentId(), mdcEquipmentDaySchedule); } return; } } } } } } } quartzLog.setIsSuccess(0); } catch (Exception e) { quartzLog.setIsSuccess(-1); quartzLog.setExceptionDetail(ThrowableUtil.getStackTrace(e)); } long endTime = System.currentTimeMillis(); quartzLog.setExecutionTime(Integer.parseInt(String.valueOf(endTime - startTime))); sysQuartzLogService.save(quartzLog); } } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentWorklineMapper.java
@@ -48,4 +48,8 @@ @InterceptorIgnore(tenantLine = "1") Map<String, Object> getDataList(@Param("tableName") String saveTableName); @InterceptorIgnore(tenantLine = "1") Map<String, Object> getDataProductName(@Param("tableName") String saveTableName); } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentDayScheduleMapper.java
@@ -9,4 +9,6 @@ public interface MdcEquipmentDayScheduleMapper extends BaseMapper<MdcEquipmentDaySchedule> { IPage<MdcEquipmentDaySchedule> pageList(@Param("vo") MdcEquipmentDayScheduleVo mdcEquipmentDayScheduleVo, Page<MdcEquipmentDaySchedule> page); MdcEquipmentDaySchedule selectLast(@Param("equipmentId") String equipmentId); } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentWorklineMapper.xml
@@ -25,4 +25,8 @@ <select id="getDataList" resultType="java.util.Map"> select top 1 ${tableName}.* from ${tableName} order by CollectTime desc </select> <select id="getDataProductName" resultType="java.util.Map"> select top 1 ${tableName}.* from ${tableName} where productname != '' order by CollectTime desc </select> </mapper> lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentDayScheduleMapper.xml
@@ -16,11 +16,15 @@ ON t2.id = t3.equipment_id INNER JOIN mdc_production t4 ON t3.production_id = t4.id WHERE TO_CHAR(t1.dispatch_date, 'YYYY-MM') = TO_CHAR(SYSDATE, 'YYYY-MM') WHERE TO_CHAR(t1.create_time, 'YYYY-MM') = TO_CHAR(SYSDATE, 'YYYY-MM') AND t4.parent_id = #{vo.productionId} <if test="vo.proChildId != null and vo.proChildId != ''"> AND t4.id = #{vo.proChildId} </if> ORDER BY t1.dispatch_date DESC ORDER BY t1.create_time DESC </select> <select id="selectLast" resultType="org.jeecg.modules.mdc.entity.MdcEquipmentDaySchedule"> SELECT TOP 1 * FROM mdc_equipment_day_schedule WHERE equipment_id = #{equipmentId} ORDER BY create_time DESC </select> </mapper> lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IEquipmentWorkLineService.java
@@ -59,4 +59,7 @@ * @return */ Map<String, Object> getDataList(String saveTableName); Map<String, Object> getDataProductName(String saveTableName); } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentDayScheduleService.java
@@ -7,5 +7,8 @@ import org.jeecg.modules.mdc.vo.MdcEquipmentDayScheduleVo; public interface IMdcEquipmentDayScheduleService extends IService<MdcEquipmentDaySchedule> { IPage<MdcEquipmentDaySchedule> pageList(MdcEquipmentDayScheduleVo mdcEquipmentDayScheduleVo, Page<MdcEquipmentDaySchedule> page); MdcEquipmentDaySchedule selectLast(String equipmentId); } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentRunningSectionService.java
@@ -94,4 +94,11 @@ */ ModelAndView exportXls(MdcEquipmentRunningSectionVo equipmentRunningSectionVo); /** * æ¶é´æ®µå¯¼åº * @param equipmentRunningSectionVo * @return */ ModelAndView batchExportXls(MdcEquipmentRunningSectionVo equipmentRunningSectionVo); } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/EquipmentWorkLineServiceImpl.java
@@ -80,6 +80,15 @@ } } @Override public Map<String, Object> getDataProductName(String saveTableName) { try { return equipmentWorkLineMapper.getDataProductName(saveTableName); } catch (Exception e) { return null; } } private List<EquipmentMachingDto> convertData(List<Map<String, Object>> list) { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); List<EquipmentMachingDto> dto = new ArrayList<>(); lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentDayScheduleServiceImpl.java
@@ -47,4 +47,9 @@ } return mdcEquipmentDayScheduleIPage; } @Override public MdcEquipmentDaySchedule selectLast(String equipmentId) { return this.baseMapper.selectLast(equipmentId); } } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentRunningSectionServiceImpl.java
@@ -752,6 +752,31 @@ return mv; } @Override public ModelAndView batchExportXls(MdcEquipmentRunningSectionVo equipmentRunningSectionVo) { ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); List<MdcEquipmentRunningSectionDto> mdcEquipmentRunningSectionDtos = new ArrayList<>(); if (StringUtils.isNotBlank(equipmentRunningSectionVo.getStartTime()) && StringUtils.isNotBlank(equipmentRunningSectionVo.getEndTime()) ) { Date startDate = DateUtils.toDate(equipmentRunningSectionVo.getStartTime(), DateUtils.STR_DATE); Date endDate = DateUtils.toDate(equipmentRunningSectionVo.getEndTime(), DateUtils.STR_DATE); List<String> datesStringList = DateUtils.getDatesStringList(startDate, endDate); datesStringList.forEach(date -> { equipmentRunningSectionVo.setCollectTimeStr(date); List<MdcEquipmentRunningSectionDto> equipmentRunningSectionDtos = this.logList(equipmentRunningSectionVo); if (equipmentRunningSectionDtos != null && !equipmentRunningSectionDtos.isEmpty()) { mdcEquipmentRunningSectionDtos.addAll(equipmentRunningSectionDtos); } }); } // å¯¼åºæä»¶åç§° mv.addObject(NormalExcelConstants.FILE_NAME, "è®¾å¤æ¥å¿"); mv.addObject(NormalExcelConstants.CLASS, MdcEquipmentRunningSectionDto.class); LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("è®¾å¤æ¥å¿åè¡¨æ°æ®", "导åºäºº:" + user.getRealname(), "è®¾å¤æ¥å¿")); mv.addObject(NormalExcelConstants.DATA_LIST, mdcEquipmentRunningSectionDtos); return mv; } private Map<String, List<MdcEquipmentRunningSectionDto>> logCharts(MdcEquipmentRunningSectionVo equipmentRunningSectionVo, String date) { Map<String, List<MdcEquipmentRunningSectionDto>> map = new HashMap<>(); List<MdcEquipmentRunningSectionDto> normal = new ArrayList<>(); lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/util/CxfClientUtil.java
@@ -15,7 +15,6 @@ * 卿è°ç¨ */ public static String invokeService(String url, String data, String namespace, String method) throws Exception { JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance(); Client client = dcf.createClient(url); QName opName = new QName(namespace, method); lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/vo/EquipmentDaySchedule.java
@@ -14,7 +14,7 @@ /** * ä¸»é® */ private String medId; private String mesId; /** * åå */ @@ -76,4 +76,13 @@ */ private String taskType; /** * 计åå¼å§æ¶é´ */ private String planStartTime; /** * 计åç»ææ¶é´ */ private String planEndTime; } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/vo/EquipmentDaySummary.java
@@ -13,7 +13,7 @@ /** * ä¸»é® */ private String medId; private String mesId; /** * åå */ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/vo/WsEquipmentEndWork.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,35 @@ package org.jeecg.modules.mdc.vo; import com.alibaba.fastjson.annotation.JSONField; import lombok.Data; import java.util.Date; /** * @Author: Lius * @CreateTime: 2025-05-16 * @Description: å®å·¥ */ @Data public class WsEquipmentEndWork { private String mesId; private String workshop; private String equipmentId; private String mdsItemCode; private String taskCode; private String opreationSeqNo; @JSONField(format = "yyyy-MM-dd HH:mm:ss") private Date endProcessTime; private String processProgress; private String processNumber; } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/vo/WsEquipmentStartWork.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,31 @@ package org.jeecg.modules.mdc.vo; import com.alibaba.fastjson.annotation.JSONField; import lombok.Data; import java.util.Date; /** * @Author: Lius * @CreateTime: 2025-05-16 * @Description: å¼å·¥ */ @Data public class WsEquipmentStartWork { private String mesId; private String workshop; private String equipmentId; private String mdsItemCode; private String taskCode; private String opreationSeqNo; @JSONField(format = "yyyy-MM-dd HH:mm:ss") private Date startProcessTime; } lxzn-module-system/lxzn-system-start/src/main/resources/application-dev.yml
@@ -83,7 +83,7 @@ type: com.alibaba.druid.pool.DruidDataSource druid: driverClassName: dm.jdbc.driver.DmDriver url: jdbc:dm://192.168.1.118:5236/?LXZN_MDC_420&zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8 url: jdbc:dm://LOCALHOST:5236/?LXZN_MDC_420&zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8 username: LXZN_MDC_420 password: 123 #redis é ç½® @@ -237,3 +237,8 @@ namespace: http://service.server.webservice.example.com statusMethod: equipmentStatus rateMethod: equipmentRate webservice2: url: 20.10.193.21:9308/webservice/mes/equipment/v1/mdcProcessTask2MEs.asmx?wsdl namespace: http://service.server.webservice.example.com startWorkMethod: equipmentStart endWorkMethod: equipmentEnd