Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/disinfectionInthaBox.js
===================================================================
diff -u -r25392 -r25695
--- ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/disinfectionInthaBox.js (.../disinfectionInthaBox.js) (revision 25392)
+++ ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/disinfectionInthaBox.js (.../disinfectionInthaBox.js) (revision 25695)
@@ -2,7 +2,9 @@
var lock = false;
var progressbar = null;
var progressLabel= null;
-
+var tousseArray = new Array();
+var deleteTousseItemArray = new Array();
+var unrecycleTousseItemArray = new Array();
$(function() {
progressbar = $("#progressbar");
progressLabel = $(".progress-label");
@@ -214,7 +216,6 @@
}else if(event.keyCode == 13){
loadBarcodeDevice(barcodeTemp);
}
-
stopBubble(event);
stopDefault(event);
}
@@ -353,6 +354,7 @@
});
return {
barcode : hiddenjson.barcode,
+ classifyBasketId : hiddenjson.classifyBasketId,
name:hiddenjson.containerName,
washClassifyType : hiddenjson.washClassifyType,
scanedGoods : scanedGoodsArray
@@ -372,23 +374,86 @@
});
return findEl;
}
-/*** 创建物品入筐*/
+//添加或删除器械包
+function addOrDelTousse(item){
+ var basketBarcode = item.basketBarcode;
+ var basketId = item.basketId;
+ var classifiedItemId = item.classifiedItemId;
+ var tousseName = item.tousseName;
+ var amount = item.amount;
+ var tousseAmountForMaterial = item.tousseAmountForMaterial;
+ var itemType = item.itemType;
+ var tousseNameForMaterial = item.tousseNameForMaterial;
+ var idCardBarcode = item.idCardBarcode;
+ var basketGroupBarcodes = item.basketGroupBarcodes;
+ var length = tousseArray.length;
+ var sigle = true;
+ var deleteIndex = [];
+ for(var i = 0;i < length ; i++){
+ var t_basketBarcode = tousseArray[i].basketBarcode;
+ var t_tousseName = tousseArray[i].tousseName;
+ var t_amount = tousseArray[i].amount;
+ var t_tousseNameForMaterial = tousseArray[i].tousseNameForMaterial;
+ var t_tousseDefinitionID = tousseArray[i].tousseDefinitionID;
+ var t_idCardBarcode = tousseArray[i].idCardBarcode;
+ var t_amountForMaterial = tousseArray[i].tousseAmountForMaterial;
+ var t_basketGroupBarcodes = tousseArray[i].basketGroupBarcodes;
+ var t_itemType = tousseArray[i].itemType;
+ if(t_basketBarcode == basketBarcode && itemType == t_itemType && t_tousseName == tousseName && t_tousseDefinitionID == item.tousseDefinitionID && t_idCardBarcode == idCardBarcode){
+ if(itemType == '材料' && (tousseNameForMaterial != t_tousseNameForMaterial || basketGroupBarcodes != t_basketGroupBarcodes)){
+ continue;
+ }
+ tousseArray[i].amount = t_amount + amount;
+ tousseArray[i].tousseAmountForMaterial = t_amountForMaterial + tousseAmountForMaterial;
+ tousseArray[i].basketSequence = item.basketSequence;
+ if(tousseArray[i].amount === 0){
+ //如果数量为0,入筐后又移除了
+ deleteIndex.push(i);
+ }
+ sigle = false;
+ }
+ }
+ for(var i = 0; i < deleteIndex.length;++i){
+ tousseArray.splice(deleteIndex[i],1);
+ }
+ if(sigle){
+ // if(basketBarcode && item.tousseDefinitionID && amount && tousseName && itemType){
+ if(basketBarcode){
+ //需要保证基本信息是有效的
+ var newTousse = {
+ basketBarcode: basketBarcode,
+ basketId: basketId,
+ classifiedItemId: '',
+ tousseDefinitionID: item.tousseDefinitionID,
+ tousseName: tousseName,
+ amount: amount,
+ tousseAmountForMaterial: tousseAmountForMaterial,
+ itemType: itemType,
+ tousseNameForMaterial: tousseNameForMaterial,
+ idCardBarcode: idCardBarcode,
+ basketGroupBarcodes: basketGroupBarcodes,
+ basketSequence: item.basketSequence
+ };
+ tousseArray.push(newTousse);
+ }
+ }
+}
+/*** 创建物品入筐*/
function addBasketItemElement(tousseName,materialName,materialAmount,tousseAmount,tousseDefinitionID,idCardBarcode,putBasketMaxAmount, batchToBasket,materialInstanceId,isImplant,tousseType){
var success = true;
var recyclingApplicationId = param_recyclingApplicationId;
if(batchToBasket && sstsConfig.enableMaterialWashclasifyInCustomRecycle){
var params = getScanedGoods();
DWREngine.setAsync(false);
////Annie 组合数组
- var putMaterialIntoBasketGood=[{
- materialInstanceId:materialInstanceId,
- amount:1,
- scanedBasketAnmaterials:'asd',
- tousseIntoBasketInfo:'asd',
- recyclingApplicationId:1,
- }];
-
+ // var putMaterialIntoBasketGood=[{
+ // materialInstanceId:materialInstanceId,
+ // amount:materialAmount,
+ // scanedBasketAndMaterials:JSON.stringify(params),
+ // tousseIntoBasketInfo:JSON.stringify(tousseIntoBasketInfo.getResult()),
+ // recyclingApplicationId:recyclingApplicationId,
+ // }];
RecyclingRecordTableManager.putMaterialIntoBasket(materialInstanceId,materialAmount,JSON.stringify(params),JSON.stringify(tousseIntoBasketInfo.getResult()),recyclingApplicationId,function(result){
var jsonObj = JSON.parse(result);
@@ -418,26 +483,46 @@
}else{
var params = getFirstBasketScanedGoods();
DWREngine.setAsync(false);
- //Annie 组合数组
- var materialInstanceGoood =[{
+ var materialInstanceItme =[{
materialInstanceId:materialInstanceId,
- scanedBasketAnmaterials:'asd',
- tousseIntoBasketInfo:'asd',
- recyclingApplicationId:1,
- }]
- RecyclingRecordTableManager.canAddThisBasketItem(materialInstanceId,JSON.stringify(params),JSON.stringify(tousseIntoBasketInfo.getResult()),recyclingApplicationId,function(result){
- var jsonObj = JSON.parse(result);
-
- if(!jsonObj.success){
- alertDiv(jsonObj.message);
- success = false;
- }else{
- success = addItemToThisBasket($("#basketsUl li:first"),tousseName,materialName,materialAmount,tousseAmount,
- tousseDefinitionID,idCardBarcode,putBasketMaxAmount,materialInstanceId,isImplant,tousseType);
+ scanedBasketAndMaterials:params,
+ tousseIntoBasketInfo:JSON.stringify(tousseIntoBasketInfo.getResult()),
+ recyclingApplicationId:recyclingApplicationId,
+ }];
+ $.ajax({
+ url: WWWROOT + '/disinfectSystem/recyclingRecordAction!canAddThisBasketItem.do',
+ data:{params:JSON.stringify(materialInstanceItme)},
+ type:'get',
+ success:function(data){
+ var jsonObj = JSON.parse(data);
+ if(jsonObj.success == true){
+ success = addItemToThisBasket($("#basketsUl li:first"),tousseName,materialName,materialAmount,tousseAmount,
+ tousseDefinitionID,idCardBarcode,putBasketMaxAmount,materialInstanceId,isImplant,tousseType);
+ }else{
+ alertDiv(jsonObj.message);
+ success = false;
+ }
}
- });
+ })
DWREngine.setAsync(true);
}
+ // var hideElement = $("#basketId"+params[0].barcode);
+ // var item = JSON.parse(hideElement.val());
+ var tousse = {
+ basketBarcode:params[0].barcode,//篮筐条码
+ basketId: params[0].classifyBasketId,//篮筐ID
+ classifiedItemId: '',
+ tousseName:materialName,
+ tousseDefinitionID: tousseDefinitionID,
+ amount: tousseAmount,
+ tousseAmountForMaterial: tousseAmount,//annie
+ itemType: '材料',
+ tousseNameForMaterial: tousseName,
+ idCardBarcode: '', // 如果没有标识牌,要把值设为空字符串
+ basketGroupBarcodes:params[0].barcode,
+ basketSequence:0
+ }
+ addOrDelTousse(tousse)
return success;
}
/**
@@ -482,10 +567,10 @@
return false;
}
});
-
if(!isExist){
- var element = '';
- element += '
' + showName + '';
+ var element ='';
+ // element += '' + showName + '';
+ element += '';
element += '' + materialName + '';
element += '' + materialAmount + '';
element += '删除';
@@ -574,6 +659,7 @@
}
//将器械包放入篮筐中
+var successBack = false;
function putMaterialInBasket(row,batchToBasket,thisAmount){
var inputSuccess = false;
if($('#basketsUl').children().length > 0){
@@ -583,7 +669,8 @@
var recycleAmount = parseInt($('#recycleAmount'+row).val(),10);
var applicationAmount = parseInt($('#applicationAmount'+row).val(),10);
var loadedAmount = parseInt($('#loadedAmount'+row).val(),10);
- var tousseAmount = parseInt($('#tousseAmount'+row).val(),10);
+ // var tousseAmount = parseInt($('#tousseAmount'+row).val(),10);
+ var tousseAmount = applicationAmount;
var tousseDefinitionID = $('#tousseDefinitionID'+row).val();
var idCardBarcode = $('#idCardBarcode'+row).val();
var putBasketMaxAmount = $('#putBasketMaxAmount'+row).val();
@@ -600,12 +687,10 @@
var success = addBasketItemElement(tousseName,materialName,insertBasketAmount,tousseAmount,tousseDefinitionID,idCardBarcode,
putBasketMaxAmount,batchToBasket,materialInstanceId,isImplant,tousseType);
-
if(success){
$('#loadedAmount'+row).val(loadedAmount + insertBasketAmount)
-
if(applicationAmount == parseInt($('#loadedAmount'+row).val(),10)){
- deleteTousseItem(row);
+ // deleteTousseItem(row);
}
inputSuccess = true;
}
@@ -625,6 +710,8 @@
$('#deleted'+row).val('1');
}
+
+
function add(row){
var recycleAmount = parseInt($('#recycleAmount'+row).val(),10);
var applicationAmount = parseInt($('#applicationAmount'+row).val(),10);
@@ -654,7 +741,7 @@
layerIndex = layer.open({
type : 2,
title : ['修改数量',true],
- content : 'updateAmount.jsp?resolution='+resolution+'&row='+row,
+ content : 'updateAmount.jsp?resolution='+1980+'&row='+row,
area : [width + 'px' , height + 'px'],
border : [5, 0.3, '#fff', true],
closeBtn : [2 , true],
@@ -718,32 +805,11 @@
var materialInstanceId = materialItem.materialInstanceId;
var isImplant = materialItem.isImplant;
var tousseType = materialItem.tousseType;
+ var urgentAmount = materialItem.urgentAmount;
if(tousseType==PACKAGE_TYPE_SPLIT|| tousseType==PACKAGE_TYPE_FOREIGN){
hasForeignTousse = true;
}
- // var trElement = $(''+
- // ''+
- // ''+
- // '' +
- // ''+
- // '' +
- // ''+
- // ''+
- // ''+
- // ''+
- // ''+
- // '' + idCardBarcode + ' | ' +
- // '' + tousseName + ' | ' +
- // ' | '+
- // ' | '+
- // '+ | '+
- // ' | '+
- // '- | '+
- // ' | '+
- // '入筐 | '+
- // '
');
-
//Annie 改
var trElement = $(''+
''+
@@ -756,15 +822,15 @@
''+
''+
''+
- // '' + idCardBarcode + ' | ' +
- // '' + tousseName + ' | ' +
- ' | '+
+ ''+
+ ' | '+
' | '+
'+ | '+
' | '+
'- | '+
' | '+
'入筐 | '+
+ '删除 |
'+
'');
$("#tousseItemTable").append(trElement);
return true;
@@ -775,116 +841,568 @@
$(spanElement).toggleClass("minus");
$(spanElement).nextAll('.sed').toggle();
}
-
+/**
+ * 判断tousseItem表是否是空的。删除的项不算在内
+ */
+function isTousseItemTableEmpty(){
+ var isEmpty = true;
+ $("#tousseItemTable > tbody > tr").each(function() {
+ var style = $(this).attr("style");
+ if (style != 'display: none;'){
+ isEmpty = false;
+ return false;
+ }
+ });
+ return isEmpty;
+}
+/**
+ * 验证加急数量是否大于回收数量。如果加急数量大于回收数量,返回true,否则返回false
+ * @param row
+ */
+function validateUrgentAmount(row,recycleAmount){
+ var urgentAmount = $('#urgentAmount'+row).val() == ''?0:parseInt($('#urgentAmount'+row).val(),10);
+ if(urgentAmount > recycleAmount){
+ alertDiv('回收数量不能小于加急数量');
+ return true;
+ }
+ return false;
+}
+/**
+ * 显示回收物品清单
+ */
+function showRecyclingDetail(recyclingItems,confirmCallback){
+ if(recyclingItems && recyclingItems.length > 0){
+ var tdStyle = 'font-size:28px;text-align:center;';
+ var tdLeftStyle = 'font-size:28px;text-align:left;';
+ var tdRightStyle = 'font-size:28px;text-align:right;';
+ var seqWidth = '70px;', nameWidth = '570px;',amoutWidth='140px;';
+ var table = '回收物品清单 |
序号 | 器械包 | 回收数量 |
';
+ for(var i = 0; i < recyclingItems.length;++i){
+ var recyclingItem = recyclingItems[i];
+ table += ''+(i+1)+' | '+recyclingItem.tousseName+' | '+recyclingItem.recyclingAmount+' |
';
+ }
+ table += '
';
+ var html = ''+table+'
';
+ $(html).dialog({
+ maxHeight: 600,
+ width: 800,
+ modal:true,
+ buttons: {
+ '保存':function(){
+ if(confirmCallback){
+ confirmCallback();
+ }
+ $(this).dialog( "close" );
+ },
+ '取消': function() {
+ $(this).dialog( "close" );
+ }
+ }
+ });
+ }
+}
function submitCheck(){
- var isThereRecycleAmountEmpty = false;
+ var isThereTousseItems = false;
+ var isAllTousseInTheBasket = true;
+ var urgentAmountError = false;
+ var recyclingRecordId = $('#recyclingApplicationId').val();
+ if (isTousseItemTableEmpty() && recyclingRecordId == ''){
+ alert("空白的回收单不能保存!");
+ return false;
+ }
+ var isEmptyFormSubmit = true;
$('#tousseItemTable').children().first().children().each(function(index,element){
if($('#deleted'+index).val() == '0'){
- isThereRecycleAmountEmpty = true;
- return false;
+ isThereTousseItems = true;
+
+ var tousseType = $('#tousseType'+index).val();
+ var recyclingAmount = parseInt($('#recycleAmount'+index).val(),10);
+ var loadedAmount = parseInt($('#loadedAmount'+index).val(),10);
+
+ if(loadedAmount > 0 && recyclingAmount > loadedAmount){
+ isAllTousseInTheBasket = false;
+ return false;
+ }
+
+ if(loadedAmount > 0){
+ isEmptyFormSubmit = false;
+ }
+ if(validateUrgentAmount(index,recyclingAmount)){
+ highlightExistTousseItem(index);
+ urgentAmountError = true;
+ return false;
+ }
+
+ //标识牌丢失验证
+ var isIDCard = $('#isThereIdentificationCard'+index).val();
+ if(isIDCard == '是'){
+ var recyclingErrorJsonArrayStr = $('#recyclingError'+index).val();
+ if(!isUndefinedOrNullOrEmpty(recyclingErrorJsonArrayStr)){
+ var recyclingErrorJsonArray = JSON.parse(recyclingErrorJsonArrayStr);
+ for(var j = 0;j < recyclingErrorJsonArray.length;j++) {
+ if(recyclingErrorJsonArray[j].materialName == '器械包标识牌'){
+ var errorType = recyclingErrorJsonArray[j].errorType;
+ var errorAmount = recyclingErrorJsonArray[j].amount;
+ var intoBasketAmount = recyclingErrorJsonArray[j].intoBasketAmount;
+ if(errorType == '缺失' && errorAmount != intoBasketAmount){
+ isAllTousseInTheBasket = false;
+ }
+ break;
+ }
+ }
+ }
+ }
}
});
- if(isThereRecycleAmountEmpty){
- alertDiv('还有物品未入筐,请全部入筐后再保存!');
+
+ if(!isAllTousseInTheBasket){
+ alertDiv('部分器械包回收数量大于装载数量,不能保存。');
return false;
}
+ if(urgentAmountError){
+ return false;
+ }
+ if(isEmptyFormSubmit){
+ alertDiv("不能保存空的回收单!");
+ return false;
+ }
+ // //验证清点人是否为空(前提为配置清点人强制不能为空,默认为允许为空)
+ // if(sstsConfig.recyclePageOperatorNotNull == true && $("#operator").val() == ''){
+ // alertDiv('清点人不能为空,请扫描清点人条码。');
+ // return false;
+ // }
+
+ //验证清点人是否为空(前提为配置清点人强制不能为空)
+ // if(sstsConfig.recyclePageRecyclingUserNotNull == true && $("#recyclingUser").val() == ''){
+ // alertDiv('回收人不能为空,请扫描回收人条码。');
+ // return false;
+ // }
return true;
}
+/*
+function submitCheck(){
+ var isThereRecycleAmountEmpty = false;
+ // $('#tousseItemTable').children().first().children().each(function(index,element){
+ // if($('#deleted'+index).val() == '0'){
+ // isThereRecycleAmountEmpty = true;
+ // return false;
+ // }
+ // });
+ // if(isThereRecycleAmountEmpty){
+ // alertDiv('还有物品未入筐,请全部入筐后再保存!');
+ // return false;
+ // }
+ return true;
+}
+*/
var btSave=false;
+
+//保存
+/**
+ * 获取此次回收的数据.
+ * @param confirmation
+ * @returns
+ */
+function getJsonParams(confirmation){
+ var paramJson = {};
+ paramJson.tousseJson = tousseArray;
+ paramJson.delToussItems = deleteTousseItemArray;
+ paramJson.unrecycleTousseItemArray = unrecycleTousseItemArray;
+ paramJson.tousseIntoBasketInfo = getTousseIntoBasketInfo();
+ paramJson.errorDamageDetail = getMaterialErrorDamageDetail();
+ paramJson.urgentTousseItems = getUrgentTousseItems();
+ paramJson.confirmation = confirmation;
+ paramJson.tally = false;
+ paramJson.recyclingItemArray = getRecyclingItemInfo();
+ return JSON.stringify(paramJson);
+}
+/**
+ * 获取左边的回收的信息.
+ * @returns {Array}
+ */
+function getRecyclingItemInfo(){
+ var recyclingItemJsonArray = new Array();
+ $('#tousseItemTable').children().first().children().each(function(index,element){
+ if($('#deleted'+index).val() == '0'){
+ var tousseName = $('#tousseName'+index).val();
+ var recycleAmount = $('#recycleAmount'+index).val();
+ var tousseDefinitionID = $('#tousseDefinitionID'+index).val();
+ var tousseRemark = $('#tousseRemark'+index).val();
+ var errorRemark = $('#hiddenErrorRemark'+index).val();
+ var damageRemark = $('#hiddenDamageRemark'+index).val();
+ var urgentLevel = $('#urgentLevel'+index).val();
+ var errorDamageQmKey = $('#hiddenErrorDamageQmKey'+index).val();
+ var loadedAmount =$('#loadedAmount'+index).val();
+ var tousseOrIDCardInstanceBarcodes = $('#tousseOrIDCardInstanceBarcodes'+index).val();
+ recyclingItemJsonArray.push({
+ tousseName:tousseName,
+ recycleAmount:recycleAmount,
+ loadedAmount:loadedAmount,//Annie
+ tousseDefinitionID:tousseDefinitionID,
+ tousseRemark:'',
+ errorRemark:'',
+ damageRemark:'',
+ urgentLevel:'',
+ errorDamageQmKey:'',
+ tousseOrIDCardInstanceBarcodes:''
+ });
+ }
+ });
+
+ return recyclingItemJsonArray;
+}
+function getTousseIntoBasketInfo(){
+ tousseIntoBasketInfo.clear();
+ $("#basketsUl li").each(function(){
+ var hide = $(this).find('input:first');
+ var basketItem = JSON.parse(hide.val());
+
+ $(this).find('dl').children().each(function(i,element){
+ if($(this).attr('type') == 'hidden'){
+ var obj = $(this).val();
+ var tousseItem = JSON.parse(obj);
+ tousseIntoBasketInfo.addTousseBasket(tousseItem,basketItem);
+ }
+ });
+ });
+ return tousseIntoBasketInfo.getResult();
+}
+/**
+ * 获取回收误差信息,拼成字符串传到后台
+ */
+function getMaterialErrorDamageDetail() {
+ var errorJsonArray = new Array();
+ $('#tousseItemTable').children().first().children().each(function(i,element){
+ if(!isUndefinedOrNullOrEmpty($('#recyclingError'+i).val())){
+ var recyclingItemErrorJsonStr = $('#recyclingError'+i).val();
+ if(!isUndefinedOrNullOrEmpty(recyclingItemErrorJsonStr)){
+ var jsonArray = JSON.parse(recyclingItemErrorJsonStr);
+ for(var j = 0;j < jsonArray.length ; j++){
+ jsonArray[j].itemType = '回收误差';
+ errorJsonArray.push(jsonArray[j]);
+ }
+ }
+ }
+ var recyclingItemDamageJsonStr = $('#recyclingDamage'+i).val();
+ if(!isUndefinedOrNullOrEmpty(recyclingItemDamageJsonStr)){
+ var jsonArray = JSON.parse(recyclingItemDamageJsonStr);
+ for(var j = 0;j < jsonArray.length ; j++){
+ jsonArray[j].itemType = '器械报损';
+ errorJsonArray.push(jsonArray[j]);
+ }
+ }
+ });
+ return errorJsonArray;
+}
+/**
+ * 加急物品
+ */
+function getUrgentTousseItems(){
+ var urgentItemJsonArray = new Array();
+ $('#tousseItemTable').children().first().children().each(function(index,element){
+ if($('#deleted'+index).val() == '0'){
+ var tousseName = $('#tousseName'+index).val();
+ var tousseDefinitionID = $('#tousseDefinitionID'+index).val();
+ var originalUrgentAmount = parseInt($('#originalUrgentAmount'+index).val(),10);
+ var urgentAmount = parseInt($('#urgentAmount'+index).val(),10);
+ var tousseItemId = $('#tousseItemId'+index).val();
+ //已保存的tousseItem不能再修改
+ // if(tousseItemId == ""){
+ // urgentItemJsonArray.push({
+ // tousseName:tousseName,
+ // tousseDefinitionID:tousseDefinitionID,
+ // urgentAmount:urgentAmount
+ // });
+ // }
+ //接口未返回 tousseItemId
+ if(tousseItemId == undefined){
+ urgentItemJsonArray.push({
+ tousseName:tousseName,
+ tousseDefinitionID:tousseDefinitionID,
+ urgentAmount:urgentAmount
+ });
+ }
+ }
+ });
+ return urgentItemJsonArray;
+}
function doSaveAction(){
+ submitFunction(false,false,false,false);
+}
+function submitFunction(confirmation,saveAndNew,print,recyclingAmountConfirm){
if(submitCheck()){
- var array = new Array();
- $("#basketsUl").children().each(function(){
- var id = null;
- var basketBarcode = null;
- var containerName = null;
- var washClassifyType = null;
- var sequence = null;
- var classifiedItemsInfo = {};
- $(this).children().each(function(){
- if($(this).is('input') && $(this).attr('type') == 'hidden'){
- var baskethideStr = $(this).val();
- var basketJson = JSON.parse(baskethideStr);
- basketBarcode = basketJson.barcode;
- id = basketJson.classifyBasketId;
- containerName = basketJson.containerName;
- washClassifyType = basketJson.washClassifyType;
- sequence = basketJson.sequence;
- }else if($(this).is('dl')){
- $(this).children().each(function(i,element){
- if($(this).attr('type') == 'hidden'){
- var itemJson = $(this).val();
- var json = JSON.parse(itemJson);
- var obj = {};
- obj.basketBarcode = basketBarcode;
- obj.containerName = containerName;
- obj.washClassifyType = washClassifyType;
- obj.sequence = sequence;
- obj.basketId = id;
- obj.materialName = json.materialName;
- obj.materialAmount = json.amount;
- obj.tousseName = json.tousseName;
- obj.tousseAmountForMaterial = json.tousseAmount;
- obj.tousseDefinitionID = json.tousseDefinitionID;
- obj.idCardBarcode = json.idCardBarcode;
- obj.putBasketMaxAmount = json.putBasketMaxAmount;
- var isExist = false;
- var len = array.length;
- for(var j = 0;j < len;j++){
- if(array[j].tousseDefinitionID == json.tousseDefinitionID){
- isExist = true;
- var materials = array[j].materials;
- if(materials == null){
- materials = new Array();
- }
- var m_len = materials.length;
- var idCardIsExist = false;
- for(var n = 0 ; n < m_len ; n++){
- if(materials[n].idCardBarcode == json.idCardBarcode){
- idCardIsExist = true;
- }
- }
- if(!idCardIsExist){
- array[j].recycleAmount = (parseInt(array[j].recycleAmount) + parseInt(json.tousseAmount));
- }
- materials[m_len] = obj;
- }
- }
- if(!isExist){
- array[len] = {};
- array[len].tousseDefinitionID = json.tousseDefinitionID;
- array[len].tousseName = json.tousseName;
- array[len].tousseType = json.tousseType;
- array[len].recycleAmount = json.tousseAmount;
- array[len].idCardBarcode = json.idCardBarcode;
- array[len].materials = new Array();
- array[len].materials[0] = obj;
- }
- }
- });
+ //回收物品清单
+ var recyclingTousses = [];
+ var isPartIntheBasket = false;
+ $('#tousseItemTable').children().first().children().each(function(index,element){
+ if($('#deleted'+index).val() == '0'){
+ var tousseName = $('#tousseName'+index).val();
+ // var tousseName = $('#showTousseName'+index).val();
+ var recyclingAmount = parseInt($('#recycleAmount'+index).val(),10);
+ var loadedAmount = parseInt($('#loadedAmount'+index).val(),10);
+ if(recyclingAmount > 0){
+ //有回收,那加入回收物品清单
+ recyclingTousses.push({tousseName:tousseName,recyclingAmount:recyclingAmount});
}
- });
+ if(recyclingAmount > loadedAmount){
+ isPartIntheBasket = true;
+ return false;
+ }
+ }
});
- window.opener.customIntoBasketFun(array);
- window.close();
+ //部分入筐提示
+ if(isPartIntheBasket){
+ if(sstsConfig.enablePartRecycle == true){
+ dialogConfirm("还有部分器械包未装入篮筐,是否继续保存?",function(){
+ if(sstsConfig.showRecyclingDetail && recyclingTousses.length > 0){
+ showRecyclingDetail(recyclingTousses,function(){
+ checkAutoReturnBorrowing(confirmation,saveAndNew,print,recyclingAmountConfirm);
+ });
+ }else{
+ checkAutoReturnBorrowing(confirmation,saveAndNew,print,recyclingAmountConfirm);
+ }
+ });
+ }else{
+ alertDiv('还有部分器械包未装入容器,不能保存。');
+ }
+ }else{
+ if(sstsConfig.showRecyclingDetail && recyclingTousses.length > 0){
+ showRecyclingDetail(recyclingTousses,function(){
+ checkAutoReturnBorrowing(confirmation,saveAndNew,print,recyclingAmountConfirm);
+ });
+ }else{
+ checkAutoReturnBorrowing(confirmation,saveAndNew,print,recyclingAmountConfirm);
+ }
+ }
}
}
+/**
+ * 检查是否有未归还的器械包,如果有,那就提示.
+ * @param confirmation 确认回收记录操作
+ * @param saveAndNew 保存并新建回收记录操作
+ * @param print 保存并打印回收记录操作
+ */
+var params_id;
+//添加或删除器械包
+function checkAutoReturnBorrowing(confirmation,saveAndNew,print,recyclingAmountConfirm){
+ //除申请还物单、自定义器械申请单、外来器械申请单、历史回收记录等可以直接提交外,其它类型的单回收都需要判断是否有物品要归还,包括手动添加回收申请单、科室申领添加的申请单、使用记录转换的申请单等都需要判断是否需要自动归还
+ if(!isUndefinedOrNullOrEmpty(params_id)){
+ submitFormFunction(confirmation,saveAndNew,false,print,recyclingAmountConfirm);
+ return;
+ }
+ var tousseNames = [];
+ for(var i = 0; i < tousseArray.length;++i){
+ if(parseInt(tousseArray[i].amount) > 0){
+ if(tousseArray[i].itemType == '材料'){
+ tousseNames.push(tousseArray[i].tousseNameForMaterial);
+ }else{
+ tousseNames.push(tousseArray[i].tousseName);
+ }
+ }
+ }
+ // var departCode = document.getElementById('departCode').value;
+ // // var departCode = '';
+ var borrowApplicationInfo = null;
+ // DWREngine.setAsync(false);
+ // RecyclingApplicationTableManager.getUnReturnBorrowApplication(params_appId , departCode,tousseNames.join(';'),function(datesOfTousseLease){
+ // borrowApplicationInfo = datesOfTousseLease;
+ // });
+ // DWREngine.setAsync(true);
+ if(borrowApplicationInfo){
+ // var borrowApplicationInfoJson = JSON.parse(borrowApplicationInfo);
+ // var borrowTimes = borrowApplicationInfoJson.borrowTimes;
+ // var tousseLeaseAmount = borrowTimes.split(';').length;
+ //
+ // var confirmMessage = '您有'+tousseLeaseAmount+'张申请日期为'+borrowTimes+'的借物单的以下物品未归还,是否申请归还?';
+ // var tdStyle = 'font-size:28px;text-align:center;';
+ // var nameWidth = '440px;',taskGroupWidth='200px;',amoutWidth='140px;';
+ // var table = ''+ confirmMessage +' |
器械包 | 数量 |
';
+ // for(var i = 0; i < borrowApplicationInfoJson.tousseData.length;++i){
+ // var tousseData = borrowApplicationInfoJson.tousseData[i];
+ // table += ''+tousseData.tousseName+' | '+tousseData.amount+' |
';
+ // }
+ // table += '
';
+ // var html = ''+table+'
';
+ dialogConfirm(html,function(){
+ submitFormFunction(confirmation,saveAndNew,true,print,recyclingAmountConfirm);
+ },function(){
+ submitFormFunction(confirmation,saveAndNew,false,print,recyclingAmountConfirm);
+ },800 , 500);
+ }else{
+ submitFormFunction(confirmation,saveAndNew,false,print,recyclingAmountConfirm);
+ }
+}
+/**
+ * 提交回收记录.
+ * @param confirmation 确认回收记录操作
+ * @param saveAndNew 保存并新建回收记录操作
+ * @param autoReturnTheBorrowingTousse 自动归还借物单
+ * @param print 保存并打印回收记录操作
+ * Annie 如果tally为true是清点确认 否则就是false
+ */
+function submitFormFunction(confirmation,saveAndNew,autoReturnTheBorrowingTousse,print,recyclingAmountConfirm,IntheBoxState){
+ alertDiv("保存中,请稍候......", true);
+ var jsonStr = getJsonParams(confirmation);
+ var jSONe= JSON.parse(jsonStr)
+ if(IntheBoxState == true){
+ jSONe.tally = true;
+ }else{
+ jSONe.tally = false;
+ }
+ var id = document.getElementById('id').value;
+ var app_id = document.getElementById('recyclingApplicationId').value;
+ var departCode = document.getElementById('departCode').value;
+ var recyclingUser = document.getElementById('recyclingUser').value;
+ var operator = document.getElementById('operator').value;
+ var depart = document.getElementById('depart').value;
+ var recyclingTime = document.getElementById('recyclingTime').value;
+ var recyclingUserDefault = true;
+ if(sstsConfig.hasOwnProperty('recyclingUserDefault') && !sstsConfig.recyclingUserDefault){
+ recyclingUserDefault = false;
+ }
+ $.ajax({
+ url : WWWROOT + "/disinfectSystem/recyclingRecordAction!saveRecyclingRecord.do",
+ type : "POST",
+ timeout : 300000,
+ dataType :'json',
+ data : {
+ jsonParam : "" + JSON.stringify(jSONe) + "",
+ id : id,
+ recyclingApplicationId : app_id,
+ invoicePlanVersion : $("#invoicePlanVersion").val(),
+ departCode : departCode,
+ recyclingUser : recyclingUser,
+ operator : operator,
+ depart : depart,
+ recyclingTime : recyclingTime,
+ recyclingUserDefault : recyclingUserDefault,
+ autoReturnTheBorrowingTousse : autoReturnTheBorrowingTousse,
+ recyclingAmountConfirm:recyclingAmountConfirm,
+ remark:$('#remarkText').text(),
+ communicationUserName:$('#communicationUserName').val(),
+ communicationUserCode:$('#communicationUserCode').val(),
+ needPrint : print
+ },
+ success : function(result) {
+ if(result.success){
+ if(print && result.recyclingPrintData && result.recyclingPrintData.length > 0){
+ printRecyclingDetail(result.recyclingPrintData);
+ }
+ alertDiv(result.message, true);
+ setTimeout("closeDiv()",1200);
+
+ var voluntarilyUrgentItems = result.voluntarilyUrgentItems;
+ var voluntarilyUrgentItemsString = '';
+ if (sstsConfig.enableTousseVoluntarilyUrgent &&
+ voluntarilyUrgentItems && voluntarilyUrgentItems.length > 0) {
+ voluntarilyUrgentItemsString = JSON.stringify(voluntarilyUrgentItems);
+ }
+ if(saveAndNew){
+ location.href = "disinfectionInthaBox.jsp?resolution=" + 1908 + "&rememberRecycleUser=" + rememberRecycleUser;
+ }else{
+ location.href = "awaitForRecycleList.jsp?resolution=" + 1908 + "&voluntarilyUrgentItems=" + voluntarilyUrgentItemsString;
+ }
+ }else{
+ if(result.versionNotMatch){
+ closeDiv();
+ layer.open({
+ type: 1,
+ content: '' + result.message + '', //这里content是一个普通的String
+ btn: ['关闭','关闭并刷新'],
+ area: ['600px', '400px'],
+ btnAlign: 'c',
+ btn2:function(){
+ refresh();
+ }
+ });
+ }else{
+ alertDiv(result.message);
+ }
+
+ }
+ },
+ error: function(x, t, m) {
+ closeDiv();
+ if(t == "timeout") {
+ alert("提交超时,请重试");
+ } else {
+ alert(t);
+ }
+ }
+ });
+}
function cancel() {
window.close();
}
+/*Annie 删除*/
+function deleteTousseItems(row){
+ $('#tousseItemsTr'+row).hide();
+ $('#deleted'+row).val('1');
+ var tousseName = $('#tousseName'+row).val();
+ var amountLeft = parseInt($('#loadedAmount'+row).val(),10);
+ var tousseDefinitionID = parseInt($('#tousseDefinitionID'+row).val(),10);
+ var tousse = {
+ tousseDefinitionID: tousseDefinitionID,
+ tousseName: tousseName,
+ amount: amountLeft
+ }
+ deleteTousseItemArray.push(tousse);
+ //移除篮筐内物品
+ $("#basketsUl li").each(function(){
+ var jsonObj = null;
+ $(this).find('dl').children().each(function(i,element){
+ if($(this).attr('type') == 'hidden'){
+ var obj = $(this).val();
+ jsonObj = JSON.parse(obj);
+ }else if($(this).attr('class') == 'del'){
+ if(jsonObj.tousseName == tousseName){
+ var deleteButton = $(this).find('a');
+ deleteBasketItem(deleteButton);
+ }
+ }
+ });
+ });
+ var depart = $('#depart').val();
+ var recyclingTime = $('#recyclingTime').val();
+ var applicationAmount = $('#applicationAmount'+row).val();
+ var description = "ID=" + params_appId + ",科室[" + depart + "]的申请单在" + recyclingTime + "回收时删除[" + tousseName + "]" + applicationAmount + "个";
+ //日志记录
+ $.ajax({
+ type:'get',
+ url : WWWROOT + '/log/saveLog.do',
+ data:'model=' + encodeURI("回收模块") + '&type=D&description=' + encodeURI(description),
+ dataType:'text',
+ success:function(msg){
+ },
+ error:function(msg){
+ }
+ });
+ return true;
+}
+function deleteConfirm(confirmMsg,actionFunction,row,deleteButton,basketBarcode,basketId){
+ if(actionFunction == 'deleteTousse'){//删器械包
+ deleteTousseItems(row);
+ }else if(actionFunction == 'deleteBasketItem'){//删篮筐内物品
+ deleteTousseItems(deleteButton);
+ }else if(actionFunction == 'deleteBasket'){//删篮筐
+ deleteBasket(deleteButton,basketBarcode,basketId);
+ }
+ refreshSplitBasketView();
+ refreshAllBasketTotalNum();
+ $(this).dialog("close");
+}
//一键入筐
function allInputBasket(){
$('#tousseItemTable').children().first().children().each(function(row,element){
if($('#deleted'+row).val() == '0'){
var amount = parseInt($('#recycleAmount'+row).val(),10) - parseInt($('#loadedAmount'+row).val(),10);
-
if(amount > 0){
putMaterialInBasket(row,true);
//var success = putMaterialInBasket(row);
//if(!success){
- //return false;
+ //return false;
//}
}
}
@@ -904,34 +1422,6 @@
$("#allIntoBasket").css('visibility','hidden');//元素隐藏,需要显示,否则拆分信息显示的位置会不对
}
}
-/*
-function loadItem() {
- initConfigControl();
- tousseIntoBasketInfo.parseJson(param_tousseIntoBasketInfo);
- $("#tousseItemTable").empty();
- $("#basketsUl").empty();
- document.onkeydown = showKeyDown;
- $.ajax({
- type : 'post',
- url : encodeURI(WWWROOT + '/disinfectSystem/recyclingRecordAction!loadUnCleanedEntirelyMaterial.do?data=' + param_data),
- dataType : 'json',
- success : function(result) {
- if(result && result.success){
- for ( var i = 0; i < result.data.length; i++) {
- var materialAmount = result.data[i].amount;
- if(materialAmount <= 0){
- continue;
- }
- addWaitRecycleMaterialItem(i,result.data[i]);
- }
- }
- updateSplitInfo();
- },
- error : function() {
- }
- });
-}
-*/
function encodeAll(text) {
var encoded = encodeURI(text);
@@ -951,7 +1441,6 @@
}
}
function sortBasket(){
-// $("#basketsUl").prepend($("#basketsUl li.otherBasket"));//其实不需要,因为把植入物跟空篮筐都排前后,剩下的自然就在最后面了
$("#basketsUl").prepend($("#basketsUl li.containImplantBasket"));
$("#basketsUl").prepend($("#basketsUl li.emptyBasket"));
}
Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/disinfectionInthaBox.jsp
===================================================================
diff -u -r25392 -r25695
--- ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/disinfectionInthaBox.jsp (.../disinfectionInthaBox.jsp) (revision 25392)
+++ ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/disinfectionInthaBox.jsp (.../disinfectionInthaBox.jsp) (revision 25695)
@@ -18,6 +18,7 @@
消毒供应中心质量追溯管理系统
+
@@ -33,6 +34,7 @@
<%----%>
+ <%----%>
@@ -55,9 +57,7 @@
@@ -92,6 +92,16 @@
overflow:hidden;
margin: 0px;
}
+ .zhuangzai-table .list-item .tousseName{
+ width:0;
+ }
+ .zhuangzai-table .list-item .materialName{
+ width:395px;
+ }
+ .mbody .btn-h,.mbody .btn-h:hover{
+ margin-top:285px;
+ display:inline-block;
+ }
- 提示信息
@@ -119,14 +129,19 @@
-
-
-
+
+
+
+
+
+
+
+