Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.jsp =================================================================== diff -u -r34475 -r34556 --- ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.jsp (.../recycleForTouchScreen.jsp) (revision 34475) +++ ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.jsp (.../recycleForTouchScreen.jsp) (revision 34556) @@ -505,11 +505,31 @@ bottom: 2px; display: none; } - .departmentTemplate select{ - min-width: 100px; + #departmentTemplate{ + width: 150px; padding: 14px 10px; font-size: 28px; + cursor: pointer; } + #selectDiv { + display:none; + border:1px solid #A9A9A9; + width:300px; + overflow-y :scroll; + min-height:100px; + max-height: 300px; + background-color:white; + right: -128px; + z-index: 100; + } + #selectDiv div { + position: relative; + font-size: 28px; + } + #selectDiv div input { + width: 30px; + height: 20px; + } .departmentTemplate label{ font-weight: bold; font-size: 28px; @@ -597,9 +617,12 @@
- +
+
+ - +
Index: ssts-web/src/main/webapp/disinfectsystem/config/gdsy/config.js =================================================================== diff -u -r33839 -r34556 --- ssts-web/src/main/webapp/disinfectsystem/config/gdsy/config.js (.../config.js) (revision 33839) +++ ssts-web/src/main/webapp/disinfectsystem/config/gdsy/config.js (.../config.js) (revision 34556) @@ -317,6 +317,8 @@ enableExportVideosAndPicturesAndOtherFilesOfTousseDefinitions:true, //启用导出培训管理模块文件功能 enableExportFilesOfTrainingModule:true, + //回收界面是否显示选择模板的下拉框 + isOpenLoadTemplateByUnitInRecyclingModule:true, //发货计划背景颜色设定 backgroudColorConfigOfInvoiceGoodsList : { unsterilizedColor : { "className" : "my_row_white" , "color" : "#ffffff"},//未灭菌的颜色 Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.js =================================================================== diff -u -r34502 -r34556 --- ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.js (.../recycleForTouchScreen.js) (revision 34502) +++ ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.js (.../recycleForTouchScreen.js) (revision 34556) @@ -29,7 +29,7 @@ var sessionIDCardBarcodes = new newMap(); // 是否开启根据科室加载模板 function openLoadTemplateByUnit() { - if (sstsConfig.isOpenLoadTemplateByUnit) { + if (sstsConfig.isLoadApplyTemplateForAddRecycleRecord) { $("#departmentTemplate").change(function () { var requestParms = {}; requestParms.templateId = $('#departmentTemplate').val(); @@ -43,36 +43,39 @@ //if(dataArray.length > 0){ //获取页面显示的每个包 var tousseItemsTable2 = $('#tousseItemTable').children().first().children(); - var tousseItemsTable2length = tousseItemsTable2.length; - var hasCloumns = [];//存数量大于等于1的tousseDefinitionID var hasCloumsObjs = [];//存数量大于等于1的对象 for (var j = 0; j < tousseItemsTable2.length; j++) { - var recycleAmountVal = parseInt($('#recycleAmount' + j).val(), 10); - if (recycleAmountVal >= 1) { - hasCloumns.push($('#tousseDefinitionID' + j).val()); + var id = tousseItemsTable2[j].id || ''; + if (id !== '') { + var index = id.split('tousseItemsTr')[1]; + var tousseDefinitionID = $("#tousseDefinitionID" + index).val(); + var recycleAmountVal = parseInt($('#recycleAmount' + index).val(), 10); + if (recycleAmountVal >= 1) { + hasCloumns.push(tousseDefinitionID); - var obj = {}; - obj.tousseItemId = ""; - obj.tousseName = $("#tousseName" + j).val(); - obj.tousseDefinitionID = $("#tousseDefinitionID" + j).val(); - obj.applicationAmount = $("#applicationAmount" + j).val(); - obj.recycleAmount = recycleAmountVal; - obj.loadedAmount = $("#loadedAmount" + j).val(); - obj.isCleanedEntirely = $("#isCleanedEntirely" + j).val(); - obj.tousseType = $("#tousseType" + j).val(); - obj.isThereIdentificationCard = $("#isThereIdentificationCard" + j).val(); - obj.isApplyEntireTousse = $("#isApplyEntireTousse" + j).val(); - obj.urgentAmount = $("#urgentAmount" + j).val(); - obj.tousseRemark = $("#tousseRemark" + j).val(); - obj.errorDamageQmKey = $("#hiddenErrorDamageQmKey" + j).val(); - obj.spelling = $("#spelling" + j).val(); + var obj = {}; + obj.tousseItemId = ""; + obj.tousseName = $("#tousseName" + index).val(); + obj.tousseDefinitionID = $("#tousseDefinitionID" + index).val(); + obj.applicationAmount = $("#applicationAmount" + index).val(); + obj.recycleAmount = recycleAmountVal; + obj.loadedAmount = $("#loadedAmount" + index).val(); + obj.isCleanedEntirely = $("#isCleanedEntirely" + index).val(); + obj.tousseType = $("#tousseType" + index).val(); + obj.isThereIdentificationCard = $("#isThereIdentificationCard" + index).val(); + obj.isApplyEntireTousse = $("#isApplyEntireTousse" + index).val(); + obj.urgentAmount = $("#urgentAmount" + index).val(); + obj.tousseRemark = $("#tousseRemark" + index).val(); + obj.errorDamageQmKey = $("#hiddenErrorDamageQmKey" + index).val(); + obj.spelling = $("#spelling" + index).val(); - hasCloumsObjs.push(obj); + hasCloumsObjs.push(obj); + } + $('#tousseItemsTr' + index).remove(); } - $('#tousseItemsTr' + j).remove();//把全部都删掉,后面挨个添加,先添加数量大于等于1,再添加接口返回的 } @@ -86,15 +89,13 @@ } } //获取到大于等于1的数组的长度,后面每次加一下,就是新增加的包的row - var totalLength = hasCloumns.length - 1; for (var i = 0; i < dataArray.length; i++) { //没找到,就是数量大于等于1的id,在后台返回的数据中没有,这时候就需要直接取到后台数据,增加到页面上 if (hasCloumns.indexOf(dataArray[i].tousseDefinitionID + "") == -1) { - totalLength++; var timeStr = new Date().getTime(); var errorDamageQmKey = dataArray[i].tousseDefinitionID + "_" + timeStr; var toussItem = { - row: totalLength, + row: dataArray[i].tousseDefinitionID, tousseItemId: '', tousseName: dataArray[i].tousseName, tousseDefinitionID: dataArray[i].tousseDefinitionID, @@ -820,7 +821,7 @@ refreshSplitBasketView(); refreshAllBasketTotalNum(); $(that).dialog("close"); - }else { + } else { alertDiv(result.msg); } }, @@ -3134,12 +3135,12 @@ var maxCount = Math.max.call(null, packAmount, invoiceAmount); var putBasketMaxAmount = data.putBasketMaxAmount || 0; var basketsObj = JSON.parse($("#basketsUl li").eq(0).find('input').val()); - if(tousseType == '消毒物品'){ + if (tousseType == '消毒物品') { var recyclingItemArray = getRecyclingItemInfo(); - if(recyclingItemArray.length > 0){ - for(var k=0;k 0) { + for (var k = 0; k < recyclingItemArray.length; k++) { var leftTousseName = recyclingItemArray[k].tousseName; - if(leftTousseName == data.tousseName){ + if (leftTousseName == data.tousseName) { tousseDefinitionID = recyclingItemArray[k].tousseDefinitionID; } } @@ -6175,7 +6176,7 @@ // 加载选择模板下拉框的数据 function loadTemplateSelectData() { - if (sstsConfig.isOpenLoadTemplateByUnit) { + if (sstsConfig.isLoadApplyTemplateForAddRecycleRecord || sstsConfig.isOpenLoadTemplateByUnitInRecyclingModule) { var appType = $("#appType").val(); if (appType == "") {//为空代表是回收申请单 $('.departmentTemplate').show(); @@ -6192,13 +6193,33 @@ success: function (result) { var result = JSON.parse(result); if (result.success) { - $('#departmentTemplate').html(""); + $('#selectDiv').html(""); for (var i = 0; i < result.data.length; i++) { var str = ""; - str += ""; - $('#departmentTemplate').append(str); - } + str += '
'; + if (sstsConfig.isLoadApplyTemplateForAddRecycleRecord) { + str += ''; + } else { + str += ''; + } + str += result.data[i].title; + str += '
'; + $('#selectDiv').append(str); + } + //鼠标点击事件,如果点击在 selectedbutton,或者是在多选框div中的点击事件,不作处理。其他情况的点击事件,将多选空div隐藏 + document.onclick = function () { + if (event.srcElement) { + if (event.srcElement.id == "departmentTemplate" || event.srcElement.className == "checkbox") { + return; + } + } else if (event.target) { + if (event.target.id == "departmentTemplate" || event.target.className == "checkbox") { + return; + } + } + $('#selectDiv').hide(); + }; } }, error: function (msg) { @@ -6273,7 +6294,7 @@ } var oldValue = document.getElementById('departCode').value; //加载科室申领模板 - if (params_id == '' && params_appId == '' && sstsConfig.isLoadApplyTemplateForAddRecycleRecord == true) { + if (params_id == '' && params_appId == '' && (sstsConfig.isLoadApplyTemplateForAddRecycleRecord == true || sstsConfig.isOpenLoadTemplateByUnitInRecyclingModule == true)) { if (oldValue != departCode) { if (!canEmptyTousseItemTable()) { alertDiv('器械包有登记丢失报损信息,请先删除后再操作!'); @@ -6310,33 +6331,34 @@ document.getElementById('depart').innerText = departName; document.getElementById('departCode').value = departCode; } - loadTemplateSelectData(); - emptyTousseItemTable(); - // $("#tousseItemTable").empty(); - if (dataArray.length > 0) { - for (var i = (dataArray.length - 1); i >= 0; i--) { - var timeStr = new Date().getTime(); - var errorDamageQmKey = dataArray[i].tousseDefinitionID + "_" + timeStr; - var toussItem = { - row: i, - tousseItemId: '', - tousseName: dataArray[i].tousseName, - tousseDefinitionID: dataArray[i].tousseDefinitionID, - applicationAmount: 0, - recycleAmount: 0, - loadedAmount: 0, - isCleanedEntirely: dataArray[i].isCleanedEntirely, - tousseType: dataArray[i].tousseType, - isThereIdentificationCard: dataArray[i].isThereIdentificationCard, - isApplyEntireTousse: dataArray[i].isApplyEntireTousse, - urgentAmount: 0, - tousseRemark: '', - errorDamageQmKey: errorDamageQmKey, - spelling: dataArray[i].spelling, - packed: dataArray[i].packed - }; - addToussItem(toussItem, false); + if (sstsConfig.isLoadApplyTemplateForAddRecycleRecord == true) { + emptyTousseItemTable(); + + if (dataArray.length > 0) { + for (var i = (dataArray.length - 1); i >= 0; i--) { + var timeStr = new Date().getTime(); + var errorDamageQmKey = dataArray[i].tousseDefinitionID + "_" + timeStr; + var toussItem = { + row: dataArray[i].tousseDefinitionID, + tousseItemId: '', + tousseName: dataArray[i].tousseName, + tousseDefinitionID: dataArray[i].tousseDefinitionID, + applicationAmount: 0, + recycleAmount: 0, + loadedAmount: 0, + isCleanedEntirely: dataArray[i].isCleanedEntirely, + tousseType: dataArray[i].tousseType, + isThereIdentificationCard: dataArray[i].isThereIdentificationCard, + isApplyEntireTousse: dataArray[i].isApplyEntireTousse, + urgentAmount: 0, + tousseRemark: '', + errorDamageQmKey: errorDamageQmKey, + spelling: dataArray[i].spelling, + packed: dataArray[i].packed + }; + addToussItem(toussItem, false); + } } } loadWashBasketsByDepartCode(departCode); @@ -6665,8 +6687,8 @@ if (recyclingStatus == '部分回收') { $('#saveBtnTd').show(); } - //选择模板按钮显示,isOpenLoadTemplateByUnit为true - if (sstsConfig.isOpenLoadTemplateByUnit) { + //选择模板按钮显示,isOpenLoadTemplateByUnitInRecyclingModule为true + if (sstsConfig.isOpenLoadTemplateByUnitInRecyclingModule || sstsConfig.isLoadApplyTemplateForAddRecycleRecord) { var appType = $("#appType").val(); if (appType == "") {//为空代表是回收申请单 $('.departmentTemplate').show(); @@ -6689,6 +6711,226 @@ } } +//点击selectButton,展示多选框 +function showSelectDiv() { + $('#selectDiv').show(); +} + +//鼠标进入多选框的div【selectdiv】 +function selectDivMousein() { + $('#selectDiv').show(); +} + +//鼠标离开多选框的div【selectdiv】 +function selectDivMouseout() { + $('#selectDiv').hide(); +} +//checkbox的点击事件 +function changeTemplate(obj) { + var checkboxs = document.getElementById('selectDiv').querySelectorAll('input.checkbox'); + var tousseNameValue = []; + if (obj.value == 0) { + for (var i = 0; i < checkboxs.length; i++) { + checkboxs[i].checked = obj.checked; + } + if (obj.checked) { + var requestParms = {}; + requestParms.orgUnitCoding = $("#departCode").val(); + $.ajax({ + type: 'get', + url: WWWROOT + '/disinfectSystem/recyclingRecordAction!loadDepartmentAppTemplateForRecycle.do', + data: requestParms, + dataType: 'json', + success: function (dataArray) { + //获取页面显示的每个包 + var tousseItemsTable2 = $('#tousseItemTable').children().first().children(); + + var hasCloumns = [];//存数量大于等于1的tousseDefinitionID + var hasCloumsObjs = [];//存数量大于等于1的对象 + + for (var j = 0; j < tousseItemsTable2.length; j++) { + var id = tousseItemsTable2[j].id || ''; + if (id !== '') { + var index = id.split('tousseItemsTr')[1]; + var tousseDefinitionID = $("#tousseDefinitionID" + index).val(); + var recycleAmountVal = parseInt($('#recycleAmount' + index).val(), 10); + if (recycleAmountVal >= 1) { + hasCloumns.push(tousseDefinitionID); + + var obj = {}; + obj.tousseItemId = ""; + obj.tousseName = $("#tousseName" + index).val(); + obj.tousseDefinitionID = $("#tousseDefinitionID" + index).val(); + obj.applicationAmount = $("#applicationAmount" + index).val(); + obj.recycleAmount = recycleAmountVal; + obj.loadedAmount = $("#loadedAmount" + index).val(); + obj.isCleanedEntirely = $("#isCleanedEntirely" + index).val(); + obj.tousseType = $("#tousseType" + index).val(); + obj.isThereIdentificationCard = $("#isThereIdentificationCard" + index).val(); + obj.isApplyEntireTousse = $("#isApplyEntireTousse" + index).val(); + obj.urgentAmount = $("#urgentAmount" + index).val(); + obj.tousseRemark = $("#tousseRemark" + index).val(); + obj.errorDamageQmKey = $("#hiddenErrorDamageQmKey" + index).val(); + obj.spelling = $("#spelling" + index).val(); + + hasCloumsObjs.push(obj); + + } + $('#tousseItemsTr' + index).remove(); + } + } + + + var addColumnArr = [];//用来增加的数据 + if (hasCloumns.length > 0) { + //先获取到大于等于1的包的,循环拿到row,赋值给大于等于1的对象的row,保证这个id唯一和连续 + for (var m = 0; m < hasCloumns.length; m++) { + var myObj = hasCloumsObjs[m]; + myObj.row = m; + addColumnArr.push(myObj); + } + } + //获取到大于等于1的数组的长度,后面每次加一下,就是新增加的包的row + for (var i = 0; i < dataArray.length; i++) { + //没找到,就是数量大于等于1的id,在后台返回的数据中没有,这时候就需要直接取到后台数据,增加到页面上 + if (hasCloumns.indexOf(dataArray[i].tousseDefinitionID + "") == -1) { + var timeStr = new Date().getTime(); + var errorDamageQmKey = dataArray[i].tousseDefinitionID + "_" + timeStr; + var toussItem = { + row: dataArray[i].tousseDefinitionID, + tousseItemId: '', + tousseName: dataArray[i].tousseName, + tousseDefinitionID: dataArray[i].tousseDefinitionID, + applicationAmount: 0, + recycleAmount: 0, + loadedAmount: 0, + isCleanedEntirely: dataArray[i].isCleanedEntirely, + tousseType: dataArray[i].tousseType, + isThereIdentificationCard: dataArray[i].isThereIdentificationCard, + isApplyEntireTousse: dataArray[i].isApplyEntireTousse, + urgentAmount: 0, + tousseRemark: '', + errorDamageQmKey: errorDamageQmKey, + spelling: dataArray[i].spelling, + packed: dataArray[i].packed + }; + addColumnArr.push(toussItem); + } + } + + for (var i = 0; i < addColumnArr.length; i++) { + var addColumnObj = addColumnArr[i]; + //统一增加的原因,是防止下次去拿数据的时候,拿到刚增加进去的数据 + addToussItem(addColumnObj, true); + } + + //恢复点击入筐后,回收数量和装配数量背景色的控制,因为前面删掉了全部的数据 + if (hasCloumns.length > 0) { + for (var k = 0; k < hasCloumns.length; k++) { + setTousseItemLoadedAmountCss(k); + } + } + + $('#departmentTemplate').val('全部模板'); + } + }) + } else { + var tousseItemsTable2 = $('#tousseItemTable').children().first().children(); + for (var j = 0; j < tousseItemsTable2.length; j++) { + var id = tousseItemsTable2[j].id || ''; + if (id !== '') { + var index = id.split('tousseItemsTr')[1]; + $('#tousseItemsTr' + index).remove(); + } + } + $('#departmentTemplate').val('选择模板'); + } + } else { + for (var i = 0; i < checkboxs.length; i++) { + if (checkboxs[i].checked) { + if (checkboxs[i].dataset) { + tousseNameValue.push(checkboxs[i].dataset.value) + } else if (checkboxs[i]['data-value']) { + tousseNameValue.push(checkboxs[i]['data-value']) + } + } + } + if (obj.checked) { + var requestParms = {}; + requestParms.templateId = obj.value; + requestParms.orgUnitCoding = $("#departCode").val(); + $.ajax({ + type: 'get', + url: WWWROOT + '/disinfectSystem/recyclingRecordAction!loadDepartmentAppTemplateForRecycle.do', + data: requestParms, + dataType: 'json', + success: function (dataArray) { + //获取页面显示的每个包 + var addColumnArr = [];//用来增加的数据 + for (var i = 0; i < dataArray.length; i++) { + var timeStr = new Date().getTime(); + var errorDamageQmKey = dataArray[i].tousseDefinitionID + "_" + timeStr; + var toussItem = { + row: dataArray[i].tousseDefinitionID, + tousseItemId: '', + tousseName: dataArray[i].tousseName, + tousseDefinitionID: dataArray[i].tousseDefinitionID, + applicationAmount: 0, + recycleAmount: 0, + loadedAmount: 0, + isCleanedEntirely: dataArray[i].isCleanedEntirely, + tousseType: dataArray[i].tousseType, + isThereIdentificationCard: dataArray[i].isThereIdentificationCard, + isApplyEntireTousse: dataArray[i].isApplyEntireTousse, + urgentAmount: 0, + tousseRemark: '', + errorDamageQmKey: errorDamageQmKey, + spelling: dataArray[i].spelling, + packed: dataArray[i].packed + }; + addColumnArr.push(toussItem); + } + for (var i = 0; i < addColumnArr.length; i++) { + var addColumnObj = addColumnArr[i]; + //统一增加的原因,是防止下次去拿数据的时候,拿到刚增加进去的数据 + addToussItem(addColumnObj, true); + } + $('#departmentTemplate').val(tousseNameValue.join(',')); + } + }) + } else { + var requestParms = {}; + requestParms.templateId = obj.value; + requestParms.orgUnitCoding = $("#departCode").val(); + $.ajax({ + type: 'get', + url: WWWROOT + '/disinfectSystem/recyclingRecordAction!loadDepartmentAppTemplateForRecycle.do', + data: requestParms, + dataType: 'json', + success: function (dataArray) { + //获取页面显示的每个包 + var tousseItemsTable2 = $('#tousseItemTable').children().first().children(); + for (var j = 0; j < tousseItemsTable2.length; j++) { + var id = tousseItemsTable2[j].id || ''; + if (id !== '') { + var index = id.split('tousseItemsTr')[1]; + var tousseDefinitionID = $("#tousseDefinitionID" + index).val(); + if (dataArray.length > 0) { + for (var k = 0; k < dataArray.length; k++) { + if (tousseDefinitionID == dataArray[k].tousseDefinitionID) { + $('#tousseItemsTr' + index).remove(); + } + } + } + $('#departmentTemplate').val(tousseNameValue.join(',')); + } + } + } + }) + } + } +} + // 装载数量根据其值更新背景色 function checkLoadedAmount() { $('#tousseItemTable').children().first().children().each(function (i, element) { @@ -7283,7 +7525,7 @@ var params = { usbVendorId: 4292, usbProductId: 60000, - isRecyleForTouchScreen:true + isRecyleForTouchScreen: true } openPort(params, function (value, isData, errorStatus) { if (isData) {