Index: ssts-maintain/src/main/java/com/forgon/disinfectsystem/maintain/device/service/BelimedDataManagerImpl.java =================================================================== diff -u -r27121 -r28769 --- ssts-maintain/src/main/java/com/forgon/disinfectsystem/maintain/device/service/BelimedDataManagerImpl.java (.../BelimedDataManagerImpl.java) (revision 27121) +++ ssts-maintain/src/main/java/com/forgon/disinfectsystem/maintain/device/service/BelimedDataManagerImpl.java (.../BelimedDataManagerImpl.java) (revision 28769) @@ -20,6 +20,7 @@ import org.apache.commons.collections.CollectionUtils; import org.apache.commons.io.output.ByteArrayOutputStream; import org.apache.commons.lang3.StringUtils; +import org.apache.commons.net.ftp.FTP; import org.apache.commons.net.ftp.FTPClient; import org.apache.commons.net.ftp.FTPFile; import org.apache.commons.net.ftp.FTPFileFilter; @@ -36,6 +37,7 @@ import com.forgon.disinfectsystem.entity.sterilizationmanager.sterilizerrecord.SterilizerFileName; import com.forgon.disinfectsystem.entity.sterilizationmanager.sterilizerrecord.SterilizerRecord; import com.forgon.disinfectsystem.entity.washanddisinfectmanager.washData.WashData; +import com.forgon.disinfectsystem.entity.washanddisinfectmanager.washData.WashDataOfBelimed; import com.forgon.disinfectsystem.entity.washanddisinfectmanager.washanddisinfectrecord.WashAndDisinfectRecord; import com.forgon.disinfectsystem.filemanager.CommonFileManager; import com.forgon.disinfectsystem.filemanager.FtpFileManager; @@ -44,6 +46,7 @@ import com.forgon.log.model.Log; import com.forgon.log.service.LogManager; import com.forgon.tools.FileSystemHelper; +import com.forgon.tools.date.DateTools; import com.forgon.tools.hibernate.ObjectDao; /** @@ -171,6 +174,13 @@ machineNumber = (String)jsArray.get(0); cycleCounter = (String)jsArray.get(1); refreshWashRecordAmounts(devInterface.getId().toString(),Long.parseLong(cycleCounter),machineNumber); + boolean isReadKFile = (boolean) jsArray.get(2); + if(isReadKFile){ + // 从K开头的清洗参数文件中获取:(ZJJSRM-15) + // 周期数(循环次数)、周期开始、周期结束、是否通过、周期时间、消毒时间 + String kFileName = name.replaceFirst("C", "K"); + readWashDataFromKFile(smbForm,devInterface, remoteType, ftp, kFileName); + } } }else{ // 灭菌炉数据处理 JSONArray jsArray = sterilizerDataReadAndSave(smbForm,devInterface, remoteType, ftp, ftpFile); @@ -222,6 +232,67 @@ } /** + * 从K开头的清洗参数文件中获取以下信息:(ZJJSRM-15) + * 周期数(循环次数)、周期开始、周期结束、是否通过、周期时间、消毒时间 + * @param smbForm + * @param devInterface + * @param remoteType + * @param ftp + * @param kFileName + */ + private void readWashDataFromKFile(SmbFile remoteFile, DeviceInterface devInterface, String remoteType, FTPClient ftp, String fileName) { + InputStream inputStream = null; + ByteArrayOutputStream out = null; + InputStreamReader isr = null; + BufferedReader br = null; + try { + inputStream = commonFileManager.getInputStream(remoteType, ftp, fileName, remoteFile, out); + br = commonFileManager.getBufferedReader(isr, inputStream,"GBK"); + + // 读取直到最后一行 + String line = ""; + int lineNo = 0; + while ((line = br.readLine()) != null) { + lineNo++; + String[] split = line.split(";"); + if(split.length == 29 && lineNo != 1){ + String machineNo = split[0];//设备编号 + String cycleCounter = split[1];//周期数 + String cycleStartTimeStr = split[3].replaceAll("\"", "");//周期开始 + String cycleEndTimeStr = split[4].replaceAll("\"", "");//周期结束 + String isPassed = split[5].replaceAll("\"", "");//是否通过 + String cycleTotalTimeStr = split[10];//周期时间 + String disinfectTotalTimeStr = split[11];//消毒时间 + + WashDataOfBelimed washDataOfBelimed = new WashDataOfBelimed(); + washDataOfBelimed.setMachineNo(machineNo); + washDataOfBelimed.setDeviceInterfaceID(devInterface.getId()); + washDataOfBelimed.setCycleCounter(Long.parseLong(cycleCounter)); + cycleStartTimeStr = cycleStartTimeStr.substring(0, cycleStartTimeStr.lastIndexOf(".")); + cycleEndTimeStr = cycleEndTimeStr.substring(0, cycleEndTimeStr.lastIndexOf(".")); + washDataOfBelimed.setCycleStartTime(DateTools.coverStrToDate(cycleStartTimeStr, "yyyy-MM-dd-HH.mm.ss")); + washDataOfBelimed.setCycleEndTime(DateTools.coverStrToDate(cycleEndTimeStr, "yyyy-MM-dd-HH.mm.ss")); + washDataOfBelimed.setIsPassed(isPassed); + washDataOfBelimed.setCycleTotalTime(Long.parseLong(cycleTotalTimeStr)); + washDataOfBelimed.setDisinfectTotalTime(Long.parseLong(disinfectTotalTimeStr)); + objectDao.save(washDataOfBelimed); + } + } + } catch (FileNotFoundException e) { + logger.warn(e.getMessage()); + } catch (IOException e) { + logger.warn(e.getMessage()); + appLogManager.saveLog(AcegiHelper.getLoginUser(), + Log.MODEL_DEVICE_INTERFACE, Log.TYPE_ADD, + devInterface.getName() + "设备接口连接异常," + e.getMessage()); + } catch (Exception e){ + logger.warn(e.getMessage()); + } finally{ + FileSystemHelper.closeInputStream(inputStream, br, isr, out); + } + } + + /** * 灭菌炉数据处理 */ public JSONArray sterilizerDataReadAndSave(SmbFile remoteFile, @@ -557,10 +628,20 @@ InputStreamReader isr = null; BufferedReader br = null; boolean isSave = false;//是否已经解析保存 + boolean isReadKFile = false;//是否从K开头的清洗参数文件中获取清洗参数 try { inputStream = commonFileManager.getInputStream(remoteType, ftp, fileName, remoteFile, out); br = commonFileManager.getBufferedReader(isr, inputStream,"GBK"); - long dateTime = remoteFile.getDate(); + // 获取文件日期 + long dateTime = remoteFile != null ? remoteFile.getDate() : 0; + if(ftp != null){ + FTPFile[] ftpFiles = ftp.listFiles(new String(fileName.getBytes(),FTP.DEFAULT_CONTROL_ENCODING)); + if(ftpFiles != null){ + if (ftpFiles.length == 1 && ftpFiles[0].isFile()) { + dateTime = ftpFiles[0].getTimestamp().getTimeInMillis(); + } + } + } Date da = new Date(); da.setTime(dateTime); DateFormat df1 = DateFormat.getDateInstance();// 日期格式,精确到日 @@ -598,12 +679,45 @@ } machineNumber = record.getMachineNo(); cycleCounter = record.getCycleCounter().toString(); + } else if (split.length == 30 && lineNo != 1) { + // ZJJSRM的倍力曼清洗机参数文件(ZJJSRM-15) + if(!isReadKFile){ + isReadKFile = true; + } + // 没有温度的数据不保存 + if(StringUtils.isBlank(split[7]) && StringUtils.isBlank(split[8]) + && StringUtils.isBlank(split[9]) && StringUtils.isBlank(split[10])){ + continue; + } + record.setMachineNo(split[0].replaceAll("\"", ""));//设备编号 + record.setCycleCounter(Long.parseLong(split[1]));//周期数 + String time = yymmdd + getTime(split[2].replaceAll("\"", "")); + record.setTime(time);//时间 + record.setStep(split[3]);//步骤 + record.setPhase(split[4]);//阶段 + record.setMessageNo(split[5]);//信息编号 + record.setMessage(split[6]);//信息 + record.setT1Temp(split[7]);//TS1℃ + record.setT2Temp(split[8]);//TI1℃ + record.setT3Temp(split[9]);//TS2℃ + record.setT4Temp(split[10]);//TI2℃ + record.setZoneNr(split[29]);//区号 + record.setDeviceInterfaceID(devInterface.getId().toString());//追溯系统的设备接口ID + objectDao.saveOrUpdate(record); + if(!isSave){ + isSave = true; + } + machineNumber = record.getMachineNo(); + cycleCounter = record.getCycleCounter().toString(); } } br.close(); JSONArray jsonArray = new JSONArray(); jsonArray.add(0, machineNumber); jsonArray.add(1, cycleCounter); + if(isReadKFile){ + jsonArray.add(2, isReadKFile); + } return jsonArray; } catch (FileNotFoundException e) { logger.warn(e.getMessage()); @@ -614,7 +728,10 @@ Log.MODEL_DEVICE_INTERFACE, Log.TYPE_ADD, devInterface.getName() + "设备接口连接异常," + e.getMessage()); return null; - }finally{ + } catch (Exception e){ + logger.warn(e.getMessage()); + return null; + } finally{ if(isSave){ SterilizerFileName sf = new SterilizerFileName(); sf.setFileName(fileName); Index: ssts-web/src/main/webapp/disinfectsystem/useRecord/tabs/tousseInstanceInfoTab.js =================================================================== diff -u -r28439 -r28769 --- ssts-web/src/main/webapp/disinfectsystem/useRecord/tabs/tousseInstanceInfoTab.js (.../tousseInstanceInfoTab.js) (revision 28439) +++ ssts-web/src/main/webapp/disinfectsystem/useRecord/tabs/tousseInstanceInfoTab.js (.../tousseInstanceInfoTab.js) (revision 28769) @@ -80,16 +80,32 @@ var resultStr = Ext.decode(result.responseText); var data = resultStr.data - if(data.deviceBrand == changLong){ + if(data.deviceBrand == changLong){ openModalWindowForExt(WWWROOT+'/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataGridChart.jsp?washAndDisinfectRecordId='+id,'', '清洗参数', '800', '600'); }else if (data.deviceBrand == marge){ openModalWindowForExt(WWWROOT+'/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/wahsDataChartOfMarge.jsp?washAndDisinfectRecordId='+id+'&deviceModel='+data.deviceModel,'', '清洗参数', '800', '600'); }else if(data.deviceBrand == xinHua){ - if(data.deviceModel == changLong){ - openModalWindowForExt(WWWROOT+'/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataChart/washDataChartOfXinHua_ChangLong.jsp?washAndDisinfectRecordId='+id,'', '清洗参数', '800', '600'); + if(sstsConfig.washDataLineChartType == 1){ + if(data.deviceModel == changLong){ + openModalWindowForExt(WWWROOT+'/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataChart/washDataChartOfXinHuaChangLong.jsp?washAndDisinfectRecordId='+id,'', '清洗参数', '800', '600'); + } else { + openModalWindowForExt(WWWROOT+'/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataChart/washDataChartOfXinHua.jsp?washAndDisinfectRecordId='+id,'', '清洗参数', '800', '600'); + } + } else { + if(data.deviceModel == changLong){ + openModalWindowForExt(WWWROOT+'/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataChart/washDataChartOfXinHua_ChangLong.jsp?washAndDisinfectRecordId='+id,'', '清洗参数', '800', '600'); + } else { + // ZJJSRM-6新华清洗机(负压清洗机和单舱清洗机(super6000)清洗参数显示) + openModalWindowForExt(WWWROOT+'/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataChart/washDataChartOfXinHuaOfZJJSRM.jsp?washAndDisinfectRecordId='+id,'', '清洗参数', '800', '600'); + } } }else{ - openModalWindowForExt(WWWROOT+'/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataLineChart.jsp?washAndDisinfectRecordId='+id,'', '清洗参数', '800', '600'); + if(sstsConfig.belimedLineChartType == 1){ + // ZJJSRM-15倍力曼清洗机接口 + openModalWindowForExt(WWWROOT+'/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataChart/washDataChartOfBelimed.jsp?washAndDisinfectRecordId='+id,'', '清洗参数', '800', '600'); + } else { + openModalWindowForExt(WWWROOT+'/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataLineChart.jsp?washAndDisinfectRecordId='+id,'', '清洗参数', '800', '600'); + } } }}); } Index: ssts-wash/src/main/java/com/forgon/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/service/WashAndDisinfectRecordManagerImpl.java =================================================================== diff -u -r28764 -r28769 --- ssts-wash/src/main/java/com/forgon/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/service/WashAndDisinfectRecordManagerImpl.java (.../WashAndDisinfectRecordManagerImpl.java) (revision 28764) +++ ssts-wash/src/main/java/com/forgon/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/service/WashAndDisinfectRecordManagerImpl.java (.../WashAndDisinfectRecordManagerImpl.java) (revision 28769) @@ -77,6 +77,7 @@ import com.forgon.disinfectsystem.entity.recyclingrecord.RecyclingRecord; import com.forgon.disinfectsystem.entity.washanddisinfectmanager.washData.WashData; import com.forgon.disinfectsystem.entity.washanddisinfectmanager.washData.WashDataItemOfChangLong; +import com.forgon.disinfectsystem.entity.washanddisinfectmanager.washData.WashDataOfBelimed; import com.forgon.disinfectsystem.entity.washanddisinfectmanager.washData.WashDataOfChangLong; import com.forgon.disinfectsystem.entity.washanddisinfectmanager.washData.WashDataOfMarge; import com.forgon.disinfectsystem.entity.washanddisinfectmanager.washanddisinfectrecord.WashAndDisinfectPic; @@ -3251,12 +3252,91 @@ reusltJSON = getWashDataAndLineEchartDateOfXinHua(wdr,dif.getId(),rs.getMachineNumber()); return reusltJSON; } + } else if(DeviceInterface.BELIMED.equals(deviceBrand)){ + // 倍力曼清洗机(ZJJSRM-15) + reusltJSON = getWashDataAndLineEchartDateOfBelimed(wdr,dif.getId(),rs.getMachineNumber()); + return reusltJSON; } } return reusltJSON; } /** + * 获取倍力曼清洗机清洗参数(ZJJSRM-15) + * @param wdr + * @param deviceInterfaceId + * @param machineNo + * @return + */ + private JSONObject getWashDataAndLineEchartDateOfBelimed(WashAndDisinfectRecord wdr, Long deviceInterfaceId, String machineNo) { + Long cycleCounter = wdr.getCycleCounter(); + //获取新华清洗机的详细参数 + List washDataList = getWashDatas(deviceInterfaceId,cycleCounter,machineNo); + JSONObject resultData = new JSONObject(); + if(CollectionUtils.isNotEmpty(washDataList)){ + WashDataOfBelimed washDataOfBelimed = getWashDatasOfBelimed(deviceInterfaceId,cycleCounter,machineNo); + if(washDataOfBelimed != null){ + //程序名称(取值追溯系统) + resultData.put("methodName",wdr.getDisinfectProgram()); + //清洗人(取值追溯系统) + resultData.put("operator",wdr.getOperator()); + //周期开始(从K文件读取) + String startedDateTimeStr = DateTools.getFormatDateStr(washDataOfBelimed.getCycleStartTime(), DateTools.COMMON_DATE_HMS); + resultData.put("startedTime", startedDateTimeStr); + //周期结束(从K文件读取) + String completedTimeStr = DateTools.getFormatDateStr(washDataOfBelimed.getCycleEndTime(), DateTools.COMMON_DATE_HMS); + resultData.put("completedTime", completedTimeStr); + //是否通过(从K文件读取) + String isPassed = washDataOfBelimed.getIsPassed(); + resultData.put("isPassed", isPassed); + //周期数(循环次数)(从K文件读取) + resultData.put("cycleCounter", washDataOfBelimed.getCycleCounter()); + //周期时间(从K文件读取) + resultData.put("cycleTotalTime", washDataOfBelimed.getCycleTotalTime()); + //消毒时间(从K文件读取) + resultData.put("disinfectTotalTime", washDataOfBelimed.getDisinfectTotalTime()); + //折线图需要的参数明细 + JSONObject lineChartData = new JSONObject(); + JSONArray timeArray = new JSONArray(); + JSONArray t1TempArray = new JSONArray(); + JSONArray t2TempArray = new JSONArray(); + JSONArray t3TempArray = new JSONArray(); + JSONArray t4TempArray = new JSONArray(); + for(WashData washData : washDataList){ + //鼠标放在曲线图的线条上时,需要显示出对应的时间、步骤、TS1℃、TI1℃、TS2℃、TI2℃、区号 + timeArray.add(washData.getTime() + "/" + washData.getPhase() + "/" + washData.getZoneNr()); + t1TempArray.add(washData.getT1Temp()); + t2TempArray.add(washData.getT2Temp()); + t3TempArray.add(washData.getT3Temp()); + t4TempArray.add(washData.getT4Temp()); + } + lineChartData.put("time", timeArray); + lineChartData.put("t1Temp", t1TempArray); + lineChartData.put("t2Temp", t2TempArray); + lineChartData.put("t3Temp", t3TempArray); + lineChartData.put("t4Temp", t4TempArray); + resultData.put("washDataItemLineChart", lineChartData); + } + } + return resultData; + } + + /** + * 获取倍力曼K文件里面的清洗参数 + * @param deviceInterfaceId + * @param cycleCounter + * @param machineNo + * @return + */ + private WashDataOfBelimed getWashDatasOfBelimed(Long deviceInterfaceId, Long cycleCounter, String machineNo) { + String whereSql = String.format( + " where po.deviceInterfaceID = %s and po.machineNo = '%s' and po.cycleCounter = %s ", + deviceInterfaceId,machineNo,cycleCounter); + WashDataOfBelimed washData = (WashDataOfBelimed) objectDao.getBySql(WashDataOfBelimed.class.getSimpleName(), whereSql); + return washData; + } + + /** * 获取新华清洗机(负压清洗机\单舱清洗机(super6000))的信息和折线图需要的参数(ZJJSRM-6) * @param wdr * @param deviceInterfaceId Index: ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataChart/washDataChartOfBelimed.jsp =================================================================== diff -u --- ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataChart/washDataChartOfBelimed.jsp (revision 0) +++ ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataChart/washDataChartOfBelimed.jsp (revision 28769) @@ -0,0 +1,146 @@ +<%@page import="com.forgon.disinfectsystem.entity.washanddisinfectmanager.washanddisinfectrecord.WashAndDisinfectRecord"%> +<%@page import="com.forgon.disinfectsystem.entity.washanddisinfectmanager.washData.WashDataItemOfChangLong"%> +<%@ page contentType="text/html; charset=UTF-8"%> + + + + + + <%@include file="/common/taglibs.jsp" %> + 清洗机参数 + + + + + + + + + + + + + +

清洗机运行参数

+
+
+
+ 程序名称: +
+
+ 清洗人: +
+
+
+
+ 周期数: +
+
+ 是否通过: +
+
+
+
+ 周期开始: +
+
+ 周期结束: +
+
+
+
+ 周期时间: +
+
+ 消毒时间: +
+
+
+
+
+
+
+
+ + + \ No newline at end of file Index: ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataChart/washDataChartOfBelimed.js =================================================================== diff -u --- ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataChart/washDataChartOfBelimed.js (revision 0) +++ ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataChart/washDataChartOfBelimed.js (revision 28769) @@ -0,0 +1,248 @@ +$(function () { + loadWashDataAndLineChart(); +}) + +function loadWashDataAndLineChart() { + //创建echart + //获取清洗机信息和曲线图 + loadWashDataAndLineChartInfo(washAndDisinfectRecordId); +} + +function loadWashDataAndLineChartInfo(washAndDisinfectRecordId) { + $.ajax({ + type: "get", + url: WWWROOT + "/disinfectSystem/washData/washDataLineChartAction!getWashDataAndLineEchartDate.do?washAndDisinfectRecordId=" + washAndDisinfectRecordId + "&time=" + new Date(), + data: "data", + dataType: "json", + success: function (response) { + if (response.success) { + var data = response.data; + renderWashData(data); + var lineChartInfo = data.washDataItemLineChart; + creatLineChartOfBelimed("", "washChartId"); + renderLineChartOfBelimed(lineChartInfo, 'washChartId'); + } else { + alert("请求数据失败!" + response.message); + } + } + }); +} + +/** + * 加载清洗机信息 + * @param {*} data + */ +function renderWashData(data) { + $('#methodName').text(data['methodName']); + $('#operator').text(data['operator']); + $('#startedTime').text(data['startedTime']); + $('#completedTime').text(data['completedTime']); + $('#cycleCounter').text(data['cycleCounter']); + $('#isPassed').text(data['isPassed']); + $('#cycleTotalTime').text(data['cycleTotalTime']); + $('#disinfectTotalTime').text(data['disinfectTotalTime']); +} + +/** + * 创建倍力曼清洗机曲线图表 + * @param {*} text + * @param {*} echartsId + */ +function creatLineChartOfBelimed(text, echartsId) { + var myChart = echarts.init(document.getElementById(echartsId)); + var myChartOption = { + title: { + text: text, + left: 'center', + top: 0 + }, + tooltip: { + trigger: 'axis', + extraCssText: 'width:230px;height:150px;' + }, + color: ['#00CD66', '#FF6A6A', '#2E2EFE', '#DF7401'], + legend: { + top: 25, + data: ['TS1℃', 'TI1℃', 'TS2℃', 'TI2℃'] + }, + grid: { + left: '6%', + containLabel: true + }, + xAxis: { + type: 'category', + boundaryGap: true, + axisTick: { + alignWithLabel: true, + inside: true //刻度线朝内 + }, + name: "时间/时分", + nameLocation: 'center', + nameGap: 30, //坐标名称与轴线之间的距离 + data: [] + }, + yAxis: { + type: 'value', + name: "温度", + nameLocation: 'center', + nameGap: 35, //坐标名称与轴线之间的距离 + axisTick: { + alignWithLabel: true, + inside: true + } + }, + series: [{ + name: 'TS1℃', + type: 'line', + symbol: "none", //去掉圆点 + itemStyle: { + normal: { + lineStyle: { + color: '#00CD66' //设置线的颜色,如果在这里设置了要再上面的colo数组里面一起修改 + } + } + }, + data: [] + }, + { + name: 'TI1℃', + type: 'line', + symbol: "none", + itemStyle: { + normal: { + lineStyle: { + color: '#FF6A6A' + } + } + }, + data: [] + }, + { + name: 'TS2℃', + type: 'line', + symbol: "none", //去掉圆点 + itemStyle: { + normal: { + lineStyle: { + color: '#2E2EFE' //设置线的颜色,如果在这里设置了要再上面的colo数组里面一起修改 + } + } + }, + data: [] + }, + { + name: 'TI2℃', + type: 'line', + symbol: "none", + itemStyle: { + normal: { + lineStyle: { + color: '#DF7401' + } + } + }, + data: [] + } + ] + }; + myChart.setOption(myChartOption); + //自适应 + window.onresize = function () { + myChart.resize(); + } +} + +/** + * 加载倍力曼清洗机曲线数据 + * @param {*} dataObject + * @param {*} echartsId + */ +function renderLineChartOfBelimed(dataObject, echartsId) { + if (dataObject) { + // console.log(dataObject); + var myChart = echarts.init(document.getElementById(echartsId)); + var timeArray = dataObject['time']; + var t1Array = dataObject['t1Temp']; + var t2Array = dataObject['t2Temp']; + var t3Array = dataObject['t3Temp']; + var t4Array = dataObject['t4Temp']; + myChart.setOption({ + xAxis: { + type: 'category', + boundaryGap: true, + axisTick: { + alignWithLabel: true, + inside: true //刻度线朝内 + }, + name: "时间/时分", + nameLocation: 'center', + nameGap: 30, //坐标名称与轴线之间的距离 + data: timeArray, + axisLabel: { + formatter: function (value, index) { //截取分钟 + var minutesData = []; + var timeDataArr = value.split(" "); + var timeDataArrTwo = timeDataArr[1]; + timeDataArrTwo = timeDataArrTwo.substring(3, 8); + minutesData.push(timeDataArrTwo); + return minutesData; + } + } + }, + series: [{ + name: 'TS1℃', + type: 'line', + symbol: "none", //去掉圆点 + itemStyle: { + normal: { + lineStyle: { + color: '#00CD66' //设置线的颜色,如果在这里设置了要再上面的colo数组里面一起修改 + } + } + }, + data: t1Array + }, + { + name: 'TI1℃', + type: 'line', + symbol: "none", + itemStyle: { + normal: { + lineStyle: { + color: '#FF6A6A' + } + } + }, + data: t2Array + }, + { + name: 'TS2℃', + type: 'line', + symbol: "none", //去掉圆点 + itemStyle: { + normal: { + lineStyle: { + color: '#2E2EFE' //设置线的颜色,如果在这里设置了要再上面的colo数组里面一起修改 + } + } + }, + data: t3Array + }, + { + name: 'TI2℃', + type: 'line', + symbol: "none", + itemStyle: { + normal: { + lineStyle: { + color: '#DF7401' + } + } + }, + data: t4Array + } + ] + }); + } +} + Index: ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washAndDisinfectView.js =================================================================== diff -u -r28764 -r28769 --- ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washAndDisinfectView.js (.../washAndDisinfectView.js) (revision 28764) +++ ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washAndDisinfectView.js (.../washAndDisinfectView.js) (revision 28769) @@ -107,7 +107,12 @@ } } }else{ - openModalWindowForExt(WWWROOT+'/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataLineChart.jsp?washAndDisinfectRecordId='+id,'', '清洗参数', '800', '600'); + if(sstsConfig.belimedLineChartType == 1){ + // ZJJSRM-15倍力曼清洗机接口 + openModalWindowForExt(WWWROOT+'/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataChart/washDataChartOfBelimed.jsp?washAndDisinfectRecordId='+id,'', '清洗参数', '800', '600'); + } else { + openModalWindowForExt(WWWROOT+'/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washDataLineChart.jsp?washAndDisinfectRecordId='+id,'', '清洗参数', '800', '600'); + } } }}); } Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/washanddisinfectmanager/washData/WashDataOfBelimed.java =================================================================== diff -u --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/washanddisinfectmanager/washData/WashDataOfBelimed.java (revision 0) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/washanddisinfectmanager/washData/WashDataOfBelimed.java (revision 28769) @@ -0,0 +1,141 @@ +package com.forgon.disinfectsystem.entity.washanddisinfectmanager.washData; + +import java.util.Date; + +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; + +import org.hibernate.annotations.Cache; +import org.hibernate.annotations.CacheConcurrencyStrategy; +import org.hibernate.annotations.DynamicInsert; +import org.hibernate.annotations.DynamicUpdate; + +/** + * @author ZhouPeiMian + * @since 2020-08-17 + */ +@Entity +@DynamicInsert(false) +@DynamicUpdate(true) +@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE) +public class WashDataOfBelimed { + + private Long id; + + /** + * 清洗机的设备号 + */ + private String machineNo; + + /** + * 设备接口id + */ + private Long deviceInterfaceID; + + /** + * 周期数(循环次数) + */ + private Long cycleCounter; + + /** + * 周期开始 + */ + private Date cycleStartTime; + + /** + * 周期结束 + */ + private Date cycleEndTime; + + /** + * 是否通过(0-周期通过、1-运行时报警) + */ + private String isPassed; + + /** + * 周期时间 + */ + private Long cycleTotalTime; + + /** + * 消毒时间 + */ + private Long disinfectTotalTime; + + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getMachineNo() { + return machineNo; + } + + public void setMachineNo(String machineNo) { + this.machineNo = machineNo; + } + + public Long getDeviceInterfaceID() { + return deviceInterfaceID; + } + + public void setDeviceInterfaceID(Long deviceInterfaceID) { + this.deviceInterfaceID = deviceInterfaceID; + } + + public Long getCycleCounter() { + return cycleCounter; + } + + public void setCycleCounter(Long cycleCounter) { + this.cycleCounter = cycleCounter; + } + + public Date getCycleStartTime() { + return cycleStartTime; + } + + public void setCycleStartTime(Date cycleStartTime) { + this.cycleStartTime = cycleStartTime; + } + + public Date getCycleEndTime() { + return cycleEndTime; + } + + public void setCycleEndTime(Date cycleEndTime) { + this.cycleEndTime = cycleEndTime; + } + + public String getIsPassed() { + return isPassed; + } + + public void setIsPassed(String isPassed) { + this.isPassed = isPassed; + } + + public Long getCycleTotalTime() { + return cycleTotalTime; + } + + public void setCycleTotalTime(Long cycleTotalTime) { + this.cycleTotalTime = cycleTotalTime; + } + + public Long getDisinfectTotalTime() { + return disinfectTotalTime; + } + + public void setDisinfectTotalTime(Long disinfectTotalTime) { + this.disinfectTotalTime = disinfectTotalTime; + } + +} Index: ssts-web/src/main/webapp/disinfectsystem/config/zjjsrmyy/config.js =================================================================== diff -u -r28693 -r28769 --- ssts-web/src/main/webapp/disinfectsystem/config/zjjsrmyy/config.js (.../config.js) (revision 28693) +++ ssts-web/src/main/webapp/disinfectsystem/config/zjjsrmyy/config.js (.../config.js) (revision 28769) @@ -134,5 +134,7 @@ //外来器械申请时显示原始包定义还是显示最近一次申请的包定义 isShowForeignTousseAncestorDefinitionForApply:true, //是否开启根据科室加载模板 - isOpenLoadTemplateByUnit:true + isOpenLoadTemplateByUnit:true, + //倍力曼清洗机温度曲线格式:值为1时显示ZJJSRM-15的格式;没值或者为0只显示一条温度曲线 + belimedLineChartType : 1 } \ No newline at end of file