Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/customIntoBasket.js
===================================================================
diff -u -r24673 -r25392
--- ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/customIntoBasket.js (.../customIntoBasket.js) (revision 24673)
+++ ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/customIntoBasket.js (.../customIntoBasket.js) (revision 25392)
@@ -372,11 +372,9 @@
});
return findEl;
}
-/**
- * 创建物品入筐
- */
-function addBasketItemElement(tousseName,materialName,materialAmount,tousseAmount,tousseDefinitionID,idCardBarcode,putBasketMaxAmount,
- batchToBasket,materialInstanceId,isImplant,tousseType){
+/*** 创建物品入筐*/
+
+function addBasketItemElement(tousseName,materialName,materialAmount,tousseAmount,tousseDefinitionID,idCardBarcode,putBasketMaxAmount, batchToBasket,materialInstanceId,isImplant,tousseType){
var success = true;
var recyclingApplicationId = param_recyclingApplicationId;
if(batchToBasket && sstsConfig.enableMaterialWashclasifyInCustomRecycle){
@@ -430,8 +428,7 @@
* 将物品添加到篮筐
* trElement basketsUl中的li元素,通过jquery封装的对象
*/
-function addItemToThisBasket(trElement,tousseName,materialName,materialAmount,tousseAmount,tousseDefinitionID,
- idCardBarcode,putBasketMaxAmount,materialInstanceId,isImplant,tousseType){
+function addItemToThisBasket(trElement,tousseName,materialName,materialAmount,tousseAmount,tousseDefinitionID, idCardBarcode,putBasketMaxAmount,materialInstanceId,isImplant,tousseType){
if(trElement == null){
//目前不可能会有这种情况
return false;
Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.js
===================================================================
diff -u -r25368 -r25392
--- ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.js (.../recycleForTouchScreen.js) (revision 25368)
+++ ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.js (.../recycleForTouchScreen.js) (revision 25392)
@@ -3017,7 +3017,6 @@
}
});
- // console.log(confirmation)
submitFormFunction(confirmation,saveAndNew,false,print,recyclingAmountConfirm,true);
}
}
@@ -3036,17 +3035,16 @@
var recyclingRecordId = $('#recyclingApplicationId').val();
if (isTousseItemTableEmpty() && recyclingRecordId == ''){
alert("空白的回收单不能保存!");
+ alert("空白的回收单不能保存!");
return false;
}
var isEmptyFormSubmit = true;
$('#tousseItemTable').children().first().children().each(function(index,element){
- // console.log(element)
if($('#deleted'+index).val() == '0'){
isThereTousseItems = true;
var tousseType = $('#tousseType'+index).val();
var recyclingAmount = parseInt($('#recycleAmount'+index).val(),10);
var loadedAmount = parseInt($('#loadedAmount'+index).val(),10);
- // console.log(loadedAmount)
if(loadedAmount > 0 && recyclingAmount > loadedAmount){
isAllTousseInTheBasket = false;
return false;
Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/speediness_hover.png
===================================================================
diff -u
Binary files differ
Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/customIntoBasketStyle.css
===================================================================
diff -u -r19704 -r25392
--- ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/customIntoBasketStyle.css (.../customIntoBasketStyle.css) (revision 19704)
+++ ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/customIntoBasketStyle.css (.../customIntoBasketStyle.css) (revision 25392)
@@ -28,6 +28,7 @@
.blank40 {clear:both; height:40px; display:block; font-size:1px;overflow:hidden;}
.mbody{ background:url(customIntoBasket.png) no-repeat; width:1980px; height:1080px; margin:0 auto; position:relative}
+#mbody{ background:url(express_into_basket.jpg) no-repeat; width:1980px; height:1080px; margin:0 auto; position:relative}
.mbody .btn-h{ margin-left: 220px;margin-top: 140px; background:url(allIntoBasket.png) no-repeat; background-position:0 0; width:150px; height:64px; border:none; line-height:200px; overflow:hidden;}
.mbody .btn-h:hover{ margin-left: 220px;margin-top: 140px; background:url(allIntoBaskehovert.png) no-repeat; background-position:0 0; width:150px; height:64px; border:none; line-height:200px; overflow:hidden;}
@@ -45,6 +46,7 @@
.add-form .add a:hover{ background-position:0 -63px;}
.data-table{position:absolute; width:1160px; height:670px; bottom:90px; left:20px}
+#boxContent{position:absolute; width:1160px; height:670px; bottom:52px; left:33px}
.data-table .box{ height:580px; overflow-y:scroll; overflow-x:hidden;}
.data-table .box table{ margin:0 auto; width:1083px}
.data-table .input-a{ background:url(pic_bg.jpg) no-repeat 0 -206px; border:none; width:349px; height:62px; font-size:26px; padding:0 10px; line-height:40px;}
Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/express_into_basket.jpg
===================================================================
diff -u
Binary files differ
Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/btn-box.png
===================================================================
diff -u
Binary files differ
Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/disinfectionInthaBox.js
===================================================================
diff -u -r25349 -r25392
--- ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/disinfectionInthaBox.js (.../disinfectionInthaBox.js) (revision 25349)
+++ ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/disinfectionInthaBox.js (.../disinfectionInthaBox.js) (revision 25392)
@@ -1,95 +1,44 @@
-var tousseArray = new Array();
-var deleteTousseItemArray = new Array();
-/**
- * 不回收的器械包的集合。这个是由绑定带出来的器械包,并且不回收,在回收这里本来是不做处理的。现在要能修改原来的申请数量,相关的还有装配任务
- */
-var unrecycleTousseItemArray = new Array();
-//添加或删除器械包
-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 ab;
+var lock = false;
+var progressbar = null;
+var progressLabel= null;
- 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;
+$(function() {
+ progressbar = $("#progressbar");
+ progressLabel = $(".progress-label");
+ progressbar.progressbar({
+ value: false,
+ change: function() {
+ progressLabel.text( parseInt(progressbar.progressbar("value")) + "%");
+ },
+ complete: function() {
+ progressLabel.text( "完成!" );
}
- }
- for(var i = 0; i < deleteIndex.length;++i){
- tousseArray.splice(deleteIndex[i],1);
- }
- if(sigle){
- if(basketBarcode && item.tousseDefinitionID && amount && tousseName && itemType){
- //需要保证基本信息是有效的
- 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 progress(i) {
+ progressbar.progressbar( "option", {value: i });
}
+//是否有外来器械包。如果有外来器械包,就显示拆包信息,否则隐藏
+var hasForeignTousse = false;
-
-var ab;
-var lock = false;
//锁定键盘
function lockup(e){ e.preventDefault(); }
//高亮层不锁定
function lockout(e){ e.stopPropagation(); }
-function alertDiv(alertWord,hideCloseButton,showOtherButton){
+function alertDiv(alertWord, hideCloseButton){
lock = true;
document.getElementById ("showWord").innerHTML = alertWord;
if(typeof(hideCloseButton) != 'undefined' && hideCloseButton){
$('#idBoxClose').hide();
- }else{
+ $("#progressbar").show();
+ }
+ else{
$('#idBoxClose').show();
+ $("#progressbar").hide();
}
- if(showOtherButton){
- $('#idBoxCenterUserType').show();
- }else{
- $('#idBoxCenterUserType').hide();
- }
+
ab = new AlertBox("idBox");
ab.onShow = function(){
if ( lock ) {
@@ -107,19 +56,9 @@
ab.center = true;
ab.show();
}
-
function closeDiv(){
ab.close();
}
-/**
- * 刷新当前页面
- * @returns
- */
-function refresh(){
- location.reload();
-}
-var applicationType = null;
-var userNameByBarcode = "";//条形码对应的用户名
function showMessage(message){
if(document.getElementById('messageDiv') == null || !$('#messageDiv').dialog('isOpen')){
@@ -143,349 +82,10 @@
});
}
}
-var isSecondSupplyRoom = false;
-var supplyRoomType_val = params_type;
-if(supplyRoomType_val==2){
- isSecondSupplyRoom = true;
-}
+var barcodeTemp = '';
-function addZero(str){
- if(str<10){
- return "0"+str;
- }else{
- return str;
- }
-}
-
-function dateObjFormat(v){
- if(v == null){
- return "";
- } else {
- return (parseInt(v.year,10)+1900)+"-"+addZero(parseInt(v.month,10)+1)+"-"+addZero(v.date)+" "+addZero(v.hours)+":"+addZero(v.minutes);
- }
-}
-
-var msgObj;
-
-function validateNumber(thiz){
- if(thiz.value.length==1){
- thiz.value=thiz.value.replace(/[^1-9]/g,'');
- }else{
- thiz.value=thiz.value.replace(/\D/g,'');
- }
-}
-
-/**
- * 增加物品(即点击左边的“+”图标).
- * @param row
- */
-function add(row){
- var recycleAmount = $('#recycleAmount'+row).val() == ''?0:parseInt($('#recycleAmount'+row).val(),10);
- //是否整包申请
- var isApplyEntireTousse = $('#isApplyEntireTousse'+row).val();
- var tousseType = $('#tousseType'+row).val();
- if(recycleAmount >= 1){
- if(tousseType == '外来器械包'){
- alertDiv("外来器械包回收数量不能大于1,请点击器械包名修改材料数量!");
- return;
- }
- if(tousseType == '消毒物品' && '是' != isApplyEntireTousse){
- alertDiv("拆包申请的消毒物品回收数量不能大于1,请点击器械包名修改材料数量!");
- return;
- }
- }
- increaseAmount(row);
- setTousseItemLoadedAmountCss(row);
- updateBindGoods(row);
-}
-/**
- * 验证加急数量是否大于回收数量。如果加急数量大于回收数量,返回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;
-}
-/**
- * 减少物品(即点击左边的“-”图标).
- * @param row
- */
-function reduce(row){
- var recycleAmount = $('#recycleAmount'+row).val() == ''?0:parseInt($('#recycleAmount'+row).val(),10)-1;
- if(recycleAmount >= 0){
- if(validateUrgentAmount(row,recycleAmount)){
- return;
- }
- $('#recycleAmount'+row).val(recycleAmount);
- updateBindGoods(row);
- }
- changeRecycleAmount(row);
- setTousseItemLoadedAmountCss(row);
-}
-
-/**
- * 清除掉已经删除掉的器械包.
- * @param tousseDefinitionID
- */
-function cleanDeleteTousseItem(tousseDefinitionID){
- var length = deleteTousseItemArray.length;
- for(var i = 0;i < length ; i++){
- var oldTousseDefinitionID = deleteTousseItemArray[i].tousseDefinitionID;
- if(oldTousseDefinitionID == tousseDefinitionID){
- //删除
- deleteTousseItemArray.splice(i,1);
- break;
- }
- }
-}
-//扫描器械包条码和标识牌,添加丢失报损备注到已经存在的回收项
-function addErrorDamageRemark(ti,row){
- if(ti.status == used){
- //必须是已使用。因为使用记录才会有包实例上的丢失报损
- var er = $('#hiddenErrorRemark' + row).val();
- var dr = $('#hiddenDamageRemark' + row).val();
- var erArr = [];
- var drArr = [];
- if(!isUndefinedOrNullOrEmpty(er)){
- erArr.push(er);
- }
- if(!isUndefinedOrNullOrEmpty(ti.errorRemark)){
- erArr.push(ti.errorRemark);
- }
-
- if(!isUndefinedOrNullOrEmpty(dr)){
- drArr.push(dr);
- }
- if(!isUndefinedOrNullOrEmpty(ti.damageRemark)){
- drArr.push(ti.damageRemark);
- }
- $('#hiddenErrorRemark' + row).val(erArr.join(';'));
- $('#hiddenDamageRemark' + row).val(drArr.join(';'));
- }
-}
-function loadUnSupplementMaterial(msg,tmpRow,tousseBarcode){
- if(msg.unSupplementMaterials != null){
-
- var errorStr = $('#recyclingError' + tmpRow).val();
- var damageStr = $('#recyclingDamage' + tmpRow).val();
-
- var recyclingErrorJsonArray = new Array();
- if(!isUndefinedOrNullOrEmpty(errorStr)){
- recyclingErrorJsonArray = JSON.parse(errorStr);
- for(var i = 0 ; i < recyclingErrorJsonArray.length ; i++){
- if(recyclingErrorJsonArray[i].tousseBarcode == tousseBarcode){
- return false;
- }
- }
- }
- var recyclingDamageJsonArray = new Array();
- if(!isUndefinedOrNullOrEmpty(damageStr)){
- recyclingDamageJsonArray = JSON.parse(damageStr);
- for(var i = 0 ; i < recyclingDamageJsonArray.length ; i++){
- if(recyclingDamageJsonArray[i].tousseBarcode == tousseBarcode){
- return false;
- }
- }
- }
-
- for(var m = 0 ; m < msg.unSupplementMaterials.length ; m++){
- var detail = msg.unSupplementMaterials[m];
- if(detail.amount <= 0){
- continue;
- }
- if(detail.type == '回收误差'){
- var errorObj = {
- detailId: detail.id,
- tousseDefinitionID: detail.tousseDefinitionId,
- materialDefinitionId: detail.materialDefinitionId,
- materialName: detail.materialName,
- amount: detail.amount,
- errorType: detail.errorType,
- tousseBarcode:detail.tousseBarcode,
- intoBasketAmount:detail.amount,
- errorDamageQmKey : detail.errorDamageQmKey
- };
- recyclingErrorJsonArray.push(errorObj);
- }else if(detail.type == '器械报损'){
- var item = {
- detailId: detail.id,
- tousseDefinitionID: detail.tousseDefinitionId,
- materialDefinitionId: detail.materialDefinitionId,
- materialName: detail.materialName,
- tousseBarcode:detail.tousseBarcode,
- amount: detail.amount,
- errorDamageQmKey : detail.errorDamageQmKey
- };
- recyclingDamageJsonArray.push(item);
- }
- }
- if(recyclingErrorJsonArray.length > 0){
- setTousseItemRecyclingError(tmpRow,JSON.stringify(recyclingErrorJsonArray));
- document.getElementById('recyclingErrorButton'+tmpRow).className = 'btn-b-edit';
- }
- if(recyclingDamageJsonArray.length > 0){
- setTousseItemRecyclingDamage(tmpRow,JSON.stringify(recyclingDamageJsonArray));
- document.getElementById('recyclingDamageButton'+tmpRow).className = 'btn-c-edit';
- }
- if(recyclingErrorJsonArray.length > 0 || recyclingDamageJsonArray.length > 0){
- document.getElementById('showTousseName'+tmpRow).className = 'input-a-yellow';
- }
- }
-}
-
-/**
- * 删除物品.
- * @param confirmMsg
- * @param actionFunction
- * @param row
- * @param deleteButton
- * @param basketBarcode
- * @param basketId
- */
-function deleteConfirm(confirmMsg,actionFunction,row,deleteButton,basketBarcode,basketId){
- $("#dialogConfirm").dialog({
- resizable: false,
- height:310,
- width:600,
- modal: true,
- open: function() {
- $("#confirmMsg").text(confirmMsg);
- },
- close: function() {
- $("#confirmMsg").text("");
- },
- buttons: {
- "是": function() {
- if(actionFunction == 'deleteTousse'){//删器械包
- deleteTousseItem(row);
- }else if(actionFunction == 'deleteBasketItem'){//删篮筐内物品
- deleteBasketItem(deleteButton);
- }else if(actionFunction == 'deleteBasket'){//删篮筐
- deleteBasket(deleteButton,basketBarcode,basketId);
- }
- refreshSplitBasketView();
- refreshAllBasketTotalNum();
- $(this).dialog("close");
- },"否": function() {
- $(this).dialog("close");
- }
- }
- });
-}
-/**
- * 检查是否有丢失报损信息,如果有,返回提示信息。否则返回空字符
- */
-function checkHaveErrorDamage(row){
- var returnMsg = "";
- var recyclingErrorJsonArrayStr = $('#recyclingError'+row).val();
- if(!isUndefinedOrNullOrEmpty(recyclingErrorJsonArrayStr)){
- var recyclingErrorJsonArray = JSON.parse(recyclingErrorJsonArrayStr);
- for(var j = 0;j < recyclingErrorJsonArray.length;j++) {
- var errorAmount = recyclingErrorJsonArray[j].amount;
- if(errorAmount > 0){
- returnMsg = "该器械包有登记丢失信息,请先删除丢失信息后再删除!";
- break;
- }
- }
- }
- if(returnMsg == ""){
- var recyclingItemDamageJsonStr = $('#recyclingDamage'+row).val();
- if(!isUndefinedOrNullOrEmpty(recyclingItemDamageJsonStr)){
- var jsonArray = JSON.parse(recyclingItemDamageJsonStr);
- for(var j = 0;j < jsonArray.length ; j++){
- var errorAmount = jsonArray[j].amount;
- if(errorAmount > 0){
- returnMsg = "该器械包有登记报损信息,请先删除报损信息后再删除!";
- break;
- }
- }
- }
- }
- return returnMsg;
-}
-function deleteTousseItem(row){
- var returnMsg = checkHaveErrorDamage(row);
-
- if(!isUndefinedOrNullOrEmpty(returnMsg)){
- alertDiv(returnMsg);
- return false;
- }
-
- $('#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 unloadStaff(tousseDefinitionID,amount,idCardBarcode){
- $('#tousseItemTable').children().first().children().each(function(i,element){
- if($('#tousseDefinitionID'+i).val() == tousseDefinitionID){
- $('#loadedAmount'+i).val(parseInt($('#loadedAmount'+i).val(),10)-parseInt(amount,10));
- var idCard = $('#isThereIdentificationCard'+i).val();
- if(idCard == '是' && idCardBarcode == ''){
- var recyclingErrorJsonArrayStr = $('#recyclingError'+i).val();
- if(!isUndefinedOrNullOrEmpty(recyclingErrorJsonArrayStr)){
- var recyclingErrorJsonArray = JSON.parse(recyclingErrorJsonArrayStr);
- for(var j = 0;j < recyclingErrorJsonArray.length;j++) {
- if(recyclingErrorJsonArray[j].materialName == '器械包标识牌'){
- var intoBasketAmount = parseInt(recyclingErrorJsonArray[j].intoBasketAmount);
- recyclingErrorJsonArray[j].intoBasketAmount = intoBasketAmount - parseInt(amount);
- $('#recyclingError'+i).val(JSON.stringify(recyclingErrorJsonArray));
- break;
- }
- }
- }
- }
- return false;
- }
- });
-}
-
//删除整个篮筐
-function deleteBasket(deleteButton,basketBarcode,basketId){
+function deleteBasket(deleteButton){
var liElement = $(deleteButton).parent().parent();
var delBasktJsonStr = liElement.find('input').val();
var basketJson = JSON.parse(delBasktJsonStr);
@@ -494,180 +94,66 @@
var hiddenjson = JSON.parse(hideStr);
var actionBasketBarcode = basketJson.barcode;
if(hiddenjson.barcode == actionBasketBarcode){
- deleteAction(this);
+ $(this).find('dl').children().each(function(i,element){
+ if($(this).attr('class') == 'delBtn'){
+ var deleteButton = $(this).find('a');
+ deleteBasketItem(deleteButton);
+ }
+ });
$(this).remove();
+ removeLiElement($(this));
}
});
-
- //如果篮筐全被删除完时,则提示信息放开
- if($("#basketsUl > li").length == 0){
- $("#scanContainerBarcodeTipUl").show();
- }
+ refreshBasketStatus();
+ refreshAllBasketTotalNum();
}
-
-/**
- * 由于删除篮筐中的一个物品后,数组长度发生变化,继续循环删除其他物品就会报错,所以每次只循环一次就跳出循环,重新获取数组长度继续循环
- */
-function deleteAction(thiz){
- $(thiz).find('dl').children().each(function(i,element){
- if($(this).attr('class') == 'del'){
- var deleteButton = $(this).find('a');
- deleteBasketItem(deleteButton);
- return false;//跳出each循环
+function removeImplants(removeBtn){
+ var liElement = $(removeBtn).parent().parent();
+ liElement.find('dl > input').each(function(i,element){
+ var materialJsonStr = $(this).val();
+ if(materialJsonStr && materialJsonStr.length > 0){
+ var materialJson = JSON.parse(materialJsonStr);
+ if(materialJson.isImplant == "是"){
+ deleteBasketItem($(this).nextAll(".delBtn").children("a.btn").first());
+ }
}
});
- if($(thiz).find('dl').children().length > 0){
- deleteAction(thiz);
- }
+ refreshBasketStatus();
+ refreshAllBasketTotalNum();
}
-
-function deleteMaterialItem(deleteButton,containerBarcode,basketId){
+//删除篮筐中的物品
+function deleteBasketItem(deleteButton){
var hideElement = $(deleteButton).parent().prev().prev().prev().prev();
- var nameElement = $(deleteButton).parent().prev().prev().prev();
- var barcodeElement = $(deleteButton).parent().prev().prev();
+ var tousseNameElement = $(deleteButton).parent().prev().prev().prev();
+ var materialNameElement = $(deleteButton).parent().prev().prev();
var amountElement = $(deleteButton).parent().prev();
var delElement = $(deleteButton).parent();
+ var basketHideJson = $(deleteButton).parent().parent().prev().prev().prev().prev().prev().val();
var item = JSON.parse(hideElement.val());
- var tousse = {
- basketBarcode: containerBarcode,
- basketId: basketId,
- classifiedItemId: '',
- tousseName: item.materialName,
- tousseDefinitionID: item.tousseDefinitionID,
- amount: -parseInt(item.amount),
- tousseAmountForMaterial: -parseInt(item.tousseAmount),
- itemType: item.type,
- tousseNameForMaterial: item.tousseName,
- idCardBarcode: item.idCardBarcode,
- basketGroupBarcodes:item.basketGroupBarcodes
- }
- addOrDelTousse(tousse);
-
- refreshSequence(delElement.parent().parent(),0);
+ var basketItem = basketHideJson?JSON.parse(basketHideJson):{};
hideElement.remove();
- nameElement.remove();
- barcodeElement.remove();
+ tousseNameElement.remove();
+ materialNameElement.remove();
amountElement.remove();
delElement.remove();
-}
-function refreshSequence(liElement,sequence){
- if(liElement){
- if(!sequence || sequence <= 0){
- sequence = 0;
- }
- var basketHidenValue = liElement.find('input:first').val();
- if(basketHidenValue){
- var basketInfo = JSON.parse(basketHidenValue);
- basketInfo.sequence = sequence;
- liElement.find('input:first').val(JSON.stringify(basketInfo))
- var showName = sequence > 0?(sequence + '.' + basketInfo.basketName):basketInfo.basketName;
- liElement.find('font:first').html(showName);
- }
- }
-}
-/**
- * 刷新对应篮筐的包与材料总数量
- * @param liElement
- */
-function refreshBasketTotalNum(liElement){
- if(liElement){
- var total = 0;
- liElement.find('dd.num').each(function(){
- var num = parseInt($(this).html());
- if(num){
- total += num;
- }
- });
- liElement.find('font.totalnum').html(total);
- }
-}
-/**
- * 刷新所有篮筐的包与材料总数量
- */
-function refreshAllBasketTotalNum(){
- $("#basketsUl li").each(function(){
- refreshBasketTotalNum($(this));
- });
-}
-
-//删除篮筐中的物品
-function deleteBasketItem(deleteButton){
- var hideElement = $(deleteButton).parent().prev().prev().prev().prev();
- var nameElement = $(deleteButton).parent().prev().prev().prev();
- var barcodeElement = $(deleteButton).parent().prev().prev();
- var amountElement = $(deleteButton).parent().prev();
- var delElement = $(deleteButton).parent();
-
- var basketElement = $(deleteButton).parent().parent();
- var basketJSON = basketElement.prev().prev().prev().prev().prev();
- var basket = basketJSON.val()?JSON.parse(basketJSON.val()):{};
- var item = hideElement.val()?JSON.parse(hideElement.val()):{};
- var name = "";
- var tousseNameForMaterial = "";
- var type = item.type;
+ var intoBasketAmount = item.amount;
var idCardBarcode = item.idCardBarcode;
- var basketGroupBarcodes = item.basketGroupBarcodes;
- //删除材料所在包 内的 全部删除
- if(type == "材料"){
- name = item.materialName;
- tousseNameForMaterial = item.tousseName;
- $('dl[class="sed clearfix"]').each(function(){
- var basketEle = $(this).prev().prev().prev().prev().prev().val();
- var basketJSON = JSON.parse(basketEle);
- $(this).children().each(function(){
- if($(this).attr('type') == 'hidden'){
- var hideValue = $(this).val();
- if(!isUndefinedOrNullOrEmpty(hideValue)){
- var obj = JSON.parse(hideValue);
- if(obj.type == '材料' && obj.tousseDefinitionID == item.tousseDefinitionID &&
- obj.basketGroupBarcodes == basketGroupBarcodes &&
- obj.idCardBarcode == idCardBarcode){
- var delButton = $(this).next().next().next().next().find('a');
- deleteMaterialItem(delButton,basketJSON.barcode,basketJSON.classifyBasketId);
- }
- }
- }
- });
- });
- }
- var tousseAmountForMaterial = item.tousseAmount;
- //alert(name+"--"+type+"--"+amount+"--"+tousseNameForMaterial+"--"+usebasketAmount+"--"+basketGroupNum);
- if(type == '材料'){
- unloadStaff(item.tousseDefinitionID,tousseAmountForMaterial,idCardBarcode);
- }else{
- name = item.tousseName;
- var amount = item.amount;
+ $('#tousseItemTable').children().first().children().each(function(i,element){
+ if($('#tousseDefinitionID'+i).val() == item.tousseDefinitionID &&
+ $('#materialName'+i).val() == item.materialName &&
+ $('#idCardBarcode'+i).val() == idCardBarcode){
- unloadStaff(item.tousseDefinitionID,amount,idCardBarcode);
+ $('#tousseItemsTr'+i).show();
+ $('#deleted'+i).val('0');
- var basketId = basket.classifyBasketId;
- var containerBarcode = basket.barcode;
- var tousse = {
- basketBarcode: containerBarcode,
- basketId: basketId,
- classifiedItemId: '',
- tousseName: name,
- tousseDefinitionID: item.tousseDefinitionID,
- amount: -parseInt(amount),
- tousseAmountForMaterial: -parseInt(tousseAmountForMaterial),
- itemType: type,
- tousseNameForMaterial: tousseNameForMaterial,
- idCardBarcode: idCardBarcode,
- basketGroupBarcodes: basketGroupBarcodes
+ var loadedAmount = parseInt($('#loadedAmount'+i).val(),10);
+ $('#loadedAmount'+i).val(loadedAmount - intoBasketAmount );
}
- addOrDelTousse(tousse);
-
- hideElement.remove();
- nameElement.remove();
- barcodeElement.remove();
- amountElement.remove();
- delElement.remove();
- }
- checkLoadedAmount();
- refreshSequence(delElement.parent().parent(),0);
+ });
+ tousseIntoBasketInfo.remove(item.tousseDefinitionID,basketItem.barcode);
}
//清理视图列表
@@ -680,9 +166,6 @@
$("#basketsUl").empty();
}
-/*---------------------------
-功能:停止事件冒泡
----------------------------*/
function stopBubble(e) {
//如果提供了事件对象,则这是一个非IE浏览器
if ( e && e.stopPropagation )
@@ -703,48 +186,35 @@
return false;
}
-/**
- * 在页面无需将光标定位在输入框相应全局的扫描枪事件,并且阻止冒泡事件和阻止浏览器的默认行为.
- */
-var barcodeGloble = '';
+//在页面无需将光标定位在输入框相应全局的扫描枪事件
+var barcodeTemp = '';
+var basketBarcode = null;
+var tempBasketBarcode = "";
function showKeyDown(){
-
- if(event.char){
- var isCRLF = (event.keyCode == 13 || event.char == '\n' || event.char == '\r');
- if(!isCRLF){
- barcodeGloble += event.char;
- }
-
- if(isCRLF){
- loadBarcodeDevice(barcodeGloble);
- }
- }else{
- if(event.keyCode == 48 || event.keyCode == 96){
- barcodeGloble += '0';
- }else if(event.keyCode == 49 || event.keyCode == 97){
- barcodeGloble += '1';
- }else if(event.keyCode == 50 || event.keyCode == 98){
- barcodeGloble += '2';
- }else if(event.keyCode == 51 || event.keyCode == 99){
- barcodeGloble += '3';
- }else if(event.keyCode == 52 || event.keyCode == 100){
- barcodeGloble += '4';
- }else if(event.keyCode == 53 || event.keyCode == 101){
- barcodeGloble += '5';
- }else if(event.keyCode == 54 || event.keyCode == 102){
- barcodeGloble += '6';
- }else if(event.keyCode == 55 || event.keyCode == 103){
- barcodeGloble += '7';
- }else if(event.keyCode == 56 || event.keyCode == 104){
- barcodeGloble += '8';
- }else if(event.keyCode == 57 || event.keyCode == 105){
- barcodeGloble += '9';
- }else if(event.keyCode == 13){
- loadBarcodeDevice(barcodeGloble);
- }
+ if(event.keyCode == 48 || event.keyCode == 96){
+ barcodeTemp += '0';
+ }else if(event.keyCode == 49 || event.keyCode == 97){
+ barcodeTemp += '1';
+ }else if(event.keyCode == 50 || event.keyCode == 98){
+ barcodeTemp += '2';
+ }else if(event.keyCode == 51 || event.keyCode == 99){
+ barcodeTemp += '3';
+ }else if(event.keyCode == 52 || event.keyCode == 100){
+ barcodeTemp += '4';
+ }else if(event.keyCode == 53 || event.keyCode == 101){
+ barcodeTemp += '5';
+ }else if(event.keyCode == 54 || event.keyCode == 102){
+ barcodeTemp += '6';
+ }else if(event.keyCode == 55 || event.keyCode == 103){
+ barcodeTemp += '7';
+ }else if(event.keyCode == 56 || event.keyCode == 104){
+ barcodeTemp += '8';
+ }else if(event.keyCode == 57 || event.keyCode == 105){
+ barcodeTemp += '9';
+ }else if(event.keyCode == 13){
+ loadBarcodeDevice(barcodeTemp);
}
-
stopBubble(event);
stopDefault(event);
}
@@ -753,1706 +223,426 @@
function mergedBasket(){
return false;
}
-
-
-/**
- * 判断此标识牌条码是否已经入筐.
- * @param barcode
- * @returns {Boolean}
- */
-function idCardIsExist(barcode){
- var exist = false;
- $('dl[class="sed clearfix"]').each(function(){
- $(this).children().each(function(){
- if($(this).attr('type') == 'hidden'){
- var hideValue = $(this).val();
- if(!isUndefinedOrNullOrEmpty(hideValue)){
- var hiddenjson = JSON.parse(hideValue);
- if(hiddenjson.idCardBarcode == barcode){
- exist = true;
- return false;
- }
- }
- }
- });
- });
- return exist;
-}
-
-/**
- * 创建物品入筐
- * @param basketItem
- */
-function addBasketItemElement(basketItem){
- var ci_id = basketItem.ci_id;
- var type = basketItem.type;
- var orgUnitName = basketItem.orgUnitName;
- var tousseName = basketItem.tousseName;
- var materialName = basketItem.materialName;
- var showName = basketItem.showName;
- var amount = basketItem.amount;
- var tousseAmount = basketItem.tousseAmount;
- var basketBarcode = basketItem.basketBarcode;
- var idCardBarcode = basketItem.idCardBarcode;
- var tousseDefinitionID = basketItem.tousseDefinitionID;
- var tousseType = basketItem.tousseType;
- var basketGroupBarcodes = basketItem.basketGroupBarcodes;
- var putBasketMaxAmount = basketItem.putBasketMaxAmount;
- var isExist = false;
- var basketElement = $('dl[class="sed clearfix"]:eq(0)');
- var basketHidenValue = $("#basketsUl li:first").find('input').val();
- if(type == '材料'){
- $("#basketsUl li").each(function(){
- var hideStr = $(this).find('input').val();
- var json = JSON.parse(hideStr);
- if(json.barcode == basketBarcode){
- basketElement = $(this).find("dl");
- basketHidenValue = hideStr;
- $(this).find('dl').children().each(function(){
- if($(this).attr('type') == 'hidden'){
- var hideStr = $(this).val();
- var json = JSON.parse(hideStr);
- if(json.materialName == materialName && json.tousseDefinitionID == tousseDefinitionID &&
- json.idCardBarcode == idCardBarcode && json.basketGroupBarcodes == basketGroupBarcodes){
- isExist = true;
- json.amount = (json.amount + amount);
- json.tousseAmount = (json.tousseAmount + tousseAmount);
- $(this).val(JSON.stringify(json));
- $(this).next().next().next().text(json.amount);
- return false;
- }
- }
- });
- return false;
- }
- });
- }else{
- $("#basketsUl li").each(function(){
- var hideStr = $(this).find('input').val();
- var json = JSON.parse(hideStr);
- if(json.barcode == basketBarcode){
- basketElement = $(this).find("dl");
- basketHidenValue = hideStr;
- $(this).find('dl').children().each(function(){
- if($(this).attr('type') == 'hidden'){
- var hideStr = $(this).val();
- var json = JSON.parse(hideStr);
- if(json.tousseDefinitionID == tousseDefinitionID && json.idCardBarcode == idCardBarcode){
- json.amount = (json.amount + amount);
- $(this).val(JSON.stringify(json));
- $(this).next().next().next().text(json.amount);
- isExist = true;
- return false;
- }
- }
- });
- return false;
- }
- });
- }
- if(!isExist){
-
- var showBarcode = idCardBarcode;
- if(type == '材料' && idCardBarcode == ""){
- showBarcode = tousseName;
- }
- var element = '';
- element += '
' + showName + '';
- element += ' ' + showBarcode + '';
- element += '' + amount + '';
- element += '删除';
-
- var json = getBasketItemJSON(ci_id,type,orgUnitName,tousseName,materialName,amount,tousseAmount,idCardBarcode,tousseDefinitionID,basketGroupBarcodes,putBasketMaxAmount,tousseType);
- basketElement.prepend($(element));
- basketElement.find("input:first").val(json);
- }
-
- var basketJson = JSON.parse(basketHidenValue);
- var basketBarcode = basketJson.barcode;
- var basketId = basketJson.classifyBasketId;
-
- var goodsName = tousseName;
- var tousseNameForMaterial = "";
- if(type == "材料"){
- goodsName = materialName;
- tousseNameForMaterial = tousseName;
- }
- var tousse = {
- basketBarcode: basketBarcode,
- basketId: basketId,
- classifiedItemId: ci_id,
- tousseName: goodsName,
- amount: amount,
- tousseAmountForMaterial: tousseAmount,
- itemType: type,
- tousseNameForMaterial: tousseNameForMaterial,
- idCardBarcode: idCardBarcode,
- tousseDefinitionID: tousseDefinitionID,
- basketGroupBarcodes: basketGroupBarcodes,
- basketSequence:basketJson.sequence
- }
- addOrDelTousse(tousse);
-}
-
-function setIdCardErrorIntoBasketAmount(row,amount){
- var recyclingErrorJsonArrayStr = $('#recyclingError'+row).val();
- if(!isUndefinedOrNullOrEmpty(recyclingErrorJsonArrayStr)){
- var recyclingErrorJsonArray = JSON.parse(recyclingErrorJsonArrayStr);
- for(var j = 0;j < recyclingErrorJsonArray.length;j++) {
- if(recyclingErrorJsonArray[j].materialName == '器械包标识牌'){
- var intoBasketAmount = recyclingErrorJsonArray[j].intoBasketAmount;
- recyclingErrorJsonArray[j].intoBasketAmount = parseInt(intoBasketAmount) + parseInt(amount);
- $('#recyclingError'+row).val(JSON.stringify(recyclingErrorJsonArray));
- break;
- }
- }
- }
-}
-function basketLoadGoods(basketName,basketBarcode,classifyBasketId){
- var width = 740;
- var height = 400;
- var designedTousseWidth = 980;
- var designedTousseHeight = 700;
- var designedWidth = 1920;
- var designedHeight = 1080;
- var actualWidth = window.screen.availWidth;
- var actualHeight = window.screen.availHeight;
- var offsetTop = 100;
- var heightExtra = 10;
- if(resolution == '1980'){
- width = 1080;
- height = 800;
- }
- var zoomRatio = calculateZoomRatio(designedWidth,designedHeight,actualWidth,actualHeight);
- var size = calculateSizeAfterZoom(designedTousseWidth,designedTousseHeight,zoomRatio);
- width = size.width;
- height = size.height;
- offsetTop = offsetTop*zoomRatio;
- layerIndex=layer.open({
- type : 2,
- title : ['['+basketName + '] 已装载物品列表',true],
- content : 'basketLoadGoodsView.jsp?resolution=' + resolution + '&width=' + width + '&height=' + height + '&basketBarcode=' + basketBarcode + '&classifyBasketId=' + classifyBasketId,
- area : [ width + 'px' , height +heightExtra + 'px'],
- border : [5, 0.3, '#fff', true],
- closeBtn : [2 , true],
- offset : [offsetTop+'px','']
- });
-}
-
-function createBasketUiElement(basketBarcode,classifyBasketId,basketName,washClassifyType,sequence){
- var basketElement = '';
- basketElement += '';
- basketElement += '';
- basketElement += '删除';
- basketElement += '';
- basketElement += '';
-
- var showBasketLoadMaterialAmount = sstsConfig.showBasketLoadMaterialAmount;
- var imageButton = '';
- if(showBasketLoadMaterialAmount == true){
- imageButton = '
';
- }
-
- basketElement += '' + (sequence&&sequence>0?(sequence+'.' + basketName):basketName) + '      ' + imageButton +'';
- basketElement += '' + 0 + '';
- basketElement += '
';
- basketElement += '';
- var obj = $(basketElement);
- $("#basketsUl").prepend(obj);
- var json = getBasketJSON(classifyBasketId,basketBarcode,washClassifyType,sequence,basketName);
- $("#basketsUl li:first").find('input').val(json);
- toggleItems(obj.find('span')[0]);
-}
-function noticeIdCardUseAmount(useAmount){
- if(sstsConfig && sstsConfig.idCardUseAmountNoticeType){
- var msg = '此标识牌已经使用' + useAmount + '次';
- if(1 == sstsConfig.idCardUseAmountNoticeType){
- jShowResult(msg);
- }else if(2 == sstsConfig.idCardUseAmountNoticeType){
- speaker.speak(msg);
- }else if(3 == sstsConfig.idCardUseAmountNoticeType){
- speaker.speak(msg);
- jShowResult(msg);
- }
- }
-}
-function addBasketElement(basketItem){
- var currentNode;
- var isBasketLoaded = false;
- $("#basketsUl li").each(function(){
- var hide = $(this).find('input');
- var item = JSON.parse(hide.val());
- if(item.barcode == basketItem.containerBarcode){
- isBasketLoaded = true;
- currentNode = $(this);
- return false;
- }
- });
-
- if(isBasketLoaded){
- //将篮筐放置在最前面
- $("#basketsUl").prepend(currentNode);
-// toggleItems(currentNode.find('span')[1]);
- }else{
- createBasketUiElement(basketItem.containerBarcode,basketItem.id,basketItem.containerName,basketItem.washClassifyType);
- }
- $("#scanContainerBarcodeTipUl").hide();
-}
-/**
- * 在添加器械包之前验证是否需要先选择科室。如果配置了要加载模板,并且还没有选择科室,在添加器械包之前需要先选择科室。
- *
因为没有选择科室,就添加器械包,会导致在后面选择科室之后,添加的器械包会被清空.
- * 返回true,表示已经选择了科室,或者没有加载模板的功能,不选科室也没关系。返回false表示必须先选科室了才能添加器械包,并且当前还没有选择科室。
- */
-function checkSelectDepartBeforeAddTousse(){
- if(sstsConfig.isLoadApplyTemplateForAddRecycleRecord == true){
- var departName = document.getElementById('depart').value;
- var departCode = document.getElementById('departCode').value;
- if(isUndefinedOrNullOrEmpty(departCode) || isUndefinedOrNullOrEmpty(departName)){
- alertDiv("请选择科室");
- return false;
- }
- }
- return true;
-}
-
-/**
- * 追加条码到条码集合中.
- * @param originalBarcodes 条码集合
- * @param barcode 需要追加的条码
- */
-function appendBarcodes(originalBarcodes, barcode) {
- if (originalBarcodes) {
- return originalBarcodes + ';' + barcode;
- }
- return barcode;
-}
-/**
- * 是否正在显示装配任务对话框,防止重复显示
- */
-var showingPackingTask = false;
-function showUnfinishedPackingTask(msg){
- var message = null;
- if(!msg.unfinishedPackingTask || msg.unfinishedPackingTask.length == 0){
- message = msg.errorMessage;
- alertDiv(message);
- }else{
- if(!showingPackingTask){
- var tdStyle = 'font-size:28px;text-align:center;';
- var nameWidth = '440px;',taskGroupWidth='200px;',amoutWidth='140px;';
- var table = ''+msg.errorMessage+' |
任务组 | 器械包 | 数量 |
';
- for(var i = 0; i < msg.unfinishedPackingTask.length;++i){
- var task = msg.unfinishedPackingTask[i];
- table += ''+task.taskGroup+' | '+task.name+' | '+task.unPackAmount+' |
';
- }
- table += '
';
- var html = ''+table+'
';
- $(html).dialog({
- maxHeight: 600,
- width: 800,
- modal:true,
- close: function( event, ui ) {
- showingPackingTask = false;
- }
- });
- showingPackingTask = true;
- }
- }
-}
-/**
- * 根据扫描的条码加载对应的对象.
- * @param barcodeTemp
- */
-function loadBarcodeDevice(barcodeTemp){
- if(barcodeTemp.length >= 1){
+function loadBarcodeDevice(barcodeTempParam){
+ if(barcodeTemp.length >= 9){
//var barcode = barcodeTemp.substring(barcodeTemp.length-9,barcodeTemp.length);
- //由于条码可能超过9位,所以取全部
- var barcode = barcodeTemp;
+ //由于条码可能超过9位,所以要取整个条码字符串了
+ var barcode = barcodeTempParam;
+ barcodeTemp = '';
$.ajax({
type:'get',
- url:encodeURI(WWWROOT + '/disinfectSystem/recyclingRecordAction!getBarcodeInfo.do?time='+new Date()+'&barcode='+barcode+''),
- data:'recyclingRecordId=' + encodeURI($('#id').val()) + '&formType=' + encodeURI($('#appType').val()),
+ url:encodeURI(WWWROOT + '/disinfectSystem/recyclingRecordAction!getBarcodeInfo.do?time='+new Date()+'&barcode='+barcode),
dataType:'json',
success:function(msg){
if(msg.errorMessage != null ){
- if(msg.unfinishedPackingTask!=null){
- showUnfinishedPackingTask(msg);
- }else{
- alertDiv(msg.errorMessage);
- }
- }else if(msg.orgUnit!= null){
- //只更新科室名称及编码信息(since2015-12-16 SYF),添加新单时才更新部门
- if(params_appId == null || params_appId == "null" || params_appId == ""){
- selectDepart(msg.orgUnit.name,msg.orgUnit.orgUnitCoding)
- }else{
- alertDiv("已有回收单不可更改科室");
- }
+ alertDiv(msg.errorMessage);
}else if(msg.basket != null){
- //不装配的篮筐不能回收扫描
- var containerStatus = msg.basket.containerStatus;
- if(containerStatus == "清洗完成" || containerStatus == "清洗中"){
- $("#dialogConfirm").dialog({
- resizable: false,
- height:310,
- width:600,
- modal: true,
- open: function() {
- $("#confirmMsg").text("【"+msg.basket.containerName + "】当前状态为【" + containerStatus + "】,还有物品未装配,是否继续使用该篮筐?");
- },
- close: function() {
- $("#confirmMsg").text("");
- },
- buttons: {
- "是": function() {
- addBasketElement(msg.basket);
- $( this ).dialog( "close" );
- },
- "否": function() {
- $( this ).dialog( "close" );
- }
- }
- });
- }else{
- addBasketElement(msg.basket);
- }
- }else if(msg.tousseInstance != null){
- if(!checkSelectDepartBeforeAddTousse()){
- return false;
- }
+ var isBasketLoaded = false;
+ var currentNode;
- if(!msg.isIDCardInstance){ //扫描器械包实例的条码
- var ti = msg.tousseInstance;
- var td = ti.tousseDefinition;
-
- var isExist = false;
- $('#tousseItemTable').children().first().children().each(function(i,element){
- if($('#tousseName'+i).val() == td.name && $('#deleted'+i).val() == '0'){
- $('#recycleAmount'+i).val(parseInt($('#recycleAmount'+i).val()) + 1);
- $('#tousseOrIDCardInstanceBarcodes'+i).val(appendBarcodes($('#tousseOrIDCardInstanceBarcodes'+i).val(), ti.barcode));
- addErrorDamageRemark(ti,i);
- loadUnSupplementMaterial(msg,i,ti.barcode);
- isExist = true;
- }
- });
-
- if(!isExist){
- var isThereIdentificationCard = '否';
- if(td.isDisableIDCard == "否"){
- isThereIdentificationCard = '是';
- }
- var tmpRow = $("#tousseItemTable > tbody > tr").length; //获取子元素,不包含孙子及以下的元素
- var timeStr = new Date().getTime();
- var errorDamageQmKey = td.id + "_" + timeStr;
- var toussItem = {
- row: tmpRow,
- tousseItemId: '',
- tousseName: td.name,
- tousseDefinitionID: td.id,
- applicationAmount: 0,
- recycleAmount: 1,
- loadedAmount: 0,
- isCleanedEntirely: td.isCleanedEntirely,
- tousseType: td.tousseType,
- isThereIdentificationCard: isThereIdentificationCard,
- isApplyEntireTousse: td.isApplyEntireTousse,
- urgentAmount : 0,
- tousseRemark:'',
- errorDamageQmKey : errorDamageQmKey,
- barcode : ti.barcode
- };
- addToussItem(toussItem,sstsConfig.addTousseAtLastForRecycle);
- //清除已删除的包
- cleanDeleteTousseItem(td.id);
- addErrorDamageRemark(ti,tmpRow);
- //未补充的丢失报损
- loadUnSupplementMaterial(msg,tmpRow,ti.barcode);
+ var basketItem = msg.basket;
+ $("#basketsUl li").each(function(){
+ var hide = $(this).find('input');
+ var item = JSON.parse(hide.val());
+ if(item.barcode == basketItem.containerBarcode){
+ isBasketLoaded = true;
+ currentNode = $(this);
+ return false;
}
- }else{ //扫描标识牌实例条码
- barcode = msg.idCardInstance.barcode;
- if($('#depart').attr('value') == ''){
- $('#depart').val(msg.tousseInstance.locationForDisplay)
- $('#departCode').val(msg.tousseInstance.location)
- }
- var tousseDepart = isUndefinedOrNullOrEmpty(msg.tousseInstance.locationForDisplay2)?msg.tousseInstance.locationForDisplay:msg.tousseInstance.locationForDisplay2;
- // 对于已废弃的包,不检查其位置和所属科室的信息
- if(!isUndefinedOrNullOrEmpty(tousseDepart) && $('#depart').attr('value') != tousseDepart && msg.tousseInstance.status != '已废弃'){
- alertDiv('该器械包不属于该科室。');
- }else{
- var ti = msg.tousseInstance;
- var td = ti.tousseDefinition;
-
- var exist = idCardIsExist(barcode);
- if(exist){
- alertDiv(barcode+",已入筐!");
- scanned = true;
- }else{
- var orgUnitName = $('#depart').val();
- var addSuccess = false;
- var idCardClassifyBasket = msg.idCardClassifyBasket;
- if(idCardClassifyBasket){
- if(idCardClassifyBasket.containerStatus == "清洗完成" || idCardClassifyBasket.containerStatus == "清洗中"){
- alertDiv("【"+idCardClassifyBasket.containerName + "】当前状态为【" + idCardClassifyBasket.containerStatus + "】,还有物品未装配");
- return false;
- }else{
- addBasketElement(idCardClassifyBasket);
- }
- }
- var basketHideStr = $("#basketsUl li:first").find('input').val();
- if(basketHideStr == null || basketHideStr == ""){
- alertDiv("请扫描篮筐条码!");
- return false;
- }
-
- var loadedAmount = tousseIntoBasketFunction(td.id,td.name,1,td.isCleanedEntirely,orgUnitName,barcode,td.tousseType);
-
- if(loadedAmount > 0){
- var tousseIsExist = false;
- $('#tousseItemTable').children().first().children().each(function(i,element){
- if($('#tousseName'+i).val() == td.name && $('#deleted'+i).val() == '0'){
- tousseIsExist = true;
- $('#loadedAmount'+i).val(1 + parseInt($('#loadedAmount'+i).val(),10));
- $('#tousseOrIDCardInstanceBarcodes'+i).val(appendBarcodes($('#tousseOrIDCardInstanceBarcodes'+i).val(), ti.barcode));
- if(parseInt($('#loadedAmount'+i).val()) > parseInt($('#recycleAmount'+i).val())){
- $('#recycleAmount'+i).val(parseInt($('#loadedAmount'+i).val()));
- }
- addErrorDamageRemark(ti,i);
- loadUnSupplementMaterial(msg,i,ti.barcode);
- }
- });
- if(!tousseIsExist){
- var tmpRow = $("#tousseItemTable > tbody > tr").length;
- var timeStr = new Date().getTime();
- var errorDamageQmKey = td.id + "_" + timeStr;
- var toussItem = {
- row: tmpRow,
- tousseItemId: '',
- tousseName: td.name,
- tousseDefinitionID: td.id,
- applicationAmount: 0,
- recycleAmount: 1,
- loadedAmount: 1,
- isCleanedEntirely: td.isCleanedEntirely,
- tousseType: td.type,
- isThereIdentificationCard: '是',
- isApplyEntireTousse: td.isApplyEntireTousse,
- urgentAmount : 0,
- tousseRemark:'',
- errorDamageQmKey : errorDamageQmKey,
- barcode : ti.barcode
- };
- addToussItem(toussItem,sstsConfig.addTousseAtLastForRecycle);
- //清除已删除的包
- cleanDeleteTousseItem(td.id);
- addErrorDamageRemark(ti,tmpRow);
- //未补充的丢失报损
- loadUnSupplementMaterial(msg,tmpRow,ti.barcode);
- }
- noticeIdCardUseAmount(msg.idCardUseAmount);
- if(msg.isTousseNeedMaintain != null && msg.isTousseNeedMaintain == true){
- alertDiv('\'' + msg.tousseInstance.tousseDefinition.name + '\'' + '需要保养了.');
- }
- refreshAllBasketTotalNum();
- }
-
- //记住扫描的标志牌
- $('#tousseItemTable').children().first().children().each(function(i,element){
- if($('#tousseName'+i).val() == td.name && $('#deleted'+i).val() == '0'){
- var barcodesStr = $('#barcodes'+i).val();
- if(barcodesStr == ""){
- var idCardBarcodeArray = new Array();
- idCardBarcodeArray[0] = {};
- idCardBarcodeArray[0].barcode = barcode;
- idCardBarcodeArray[0].addSuccess = addSuccess;
- $('#barcodes'+i).val(JSON.stringify(idCardBarcodeArray));
- }else{
- var idCardBarcodeArray = JSON.parse(barcodesStr);
- var idCardIsExist = false;
- var idCardLen = idCardBarcodeArray.length;
- for(var n = 0;n < idCardLen;n++){
- if(idCardBarcodeArray[n].barcode == barcode){
- idCardIsExist = true;
- break;
- }
- }
- if(!idCardIsExist){
- idCardBarcodeArray[idCardLen] = {};
- idCardBarcodeArray[idCardLen].barcode = barcode;
- idCardBarcodeArray[idCardLen].addSuccess = addSuccess;
- $('#barcodes'+i).val(JSON.stringify(idCardBarcodeArray));
- }
- }
- }
- });
- }
- }
+ });
+ $("#seleniumResult").val("1");
+ if(isBasketLoaded){
+ //将篮筐放置在最前面
+ $("#basketsUl").prepend(currentNode);
+ toggleItems(currentNode.find('span')[0]);
+ }else{
+ var basketElement = '';
+ basketElement += '';
+ basketElement += '';
+ basketElement += '删除';
+ basketElement += '删除';
+ basketElement += '';
+ basketElement += '';
+ basketElement += ''+basketItem.containerName+'
'
+ basketElement += '' + 0 + '';
+ basketElement += '
';
+ basketElement += '';
+ var obj = $(basketElement);
+ $("#basketsUl").prepend(obj);
+ var json = getBasketJSON(basketItem.id,basketItem.containerBarcode,basketItem.containerName,basketItem.washClassifyType);
+ $("#basketsUl li:first").find('input').val(json);
+ updateRemoveImplantBtn($("#basketsUl li:first"),false);
+ toggleItems(obj.find('span')[0]);
}
- checkLoadedAmount();
- }else if(msg.user != null){
- userNameByBarcode = msg.user.fullName;
- //点击选中回收人员或是清点人员
- if(currentUserType == userType_recycling){
- $('#recyclingUser').val(userNameByBarcode);
- currentUserType = userType_operator;
- }else if(currentUserType == userType_operator){
- $('#operator').val(userNameByBarcode);
- currentUserType = userType_recycling;
- }
- selectUserType(currentUserType);
+ refreshBasketStatus();
+ refreshAllBasketTotalNum();
}else{
alertDiv('没有找到该条码所对应的信息。');
}
$("#codeScan").val("");
- barcodeGloble = "";
},
- error:function(msg){
- barcodeGloble = "";
- //提示信息输出...
- }
+ error:function(){}
});
}else{
alertDiv('条码长度不符合规范。');
}
}
-//选择回收人员
-function selectRecyclingUser(){
- $('#recyclingUser').val(userNameByBarcode);
+function getBasketJSON(itemId,barcode,containerName,washClassifyType){
+ var json = {};
+ json.classifyBasketId = itemId;
+ json.barcode = barcode;
+ json.containerName = containerName;
+ json.washClassifyType = washClassifyType;
+ return JSON.stringify(json);
}
-//选择清点人员
-function selectOperator(){
- $('#operator').val(userNameByBarcode);
-}
-
-function openselectRecyclingApplication(){
- var width = 740;
- var height = 400;
- if(resolution == '1980'){
- width = 980;
- height = 420;
- }
-
- layerIndex=layer.open({
- type : 2,
- title : ['选择申请单',true],
- content : 'recyclingApplications.jsp?resolution='+resolution,
- area : [ width + 'px' , height + 'px'],
- border : [5, 0.3, '#fff', true],
- closeBtn : [2 , true],
- offset : ['100px','']
- });
+function getBasketItemJSON(tousseName,materialName,materialAmount,tousseAmount,tousseDefinitionID,
+ idCardBarcode,putBasketMaxAmount,materialInstanceId,isImplant,tousseType){
+ var json = {};
+ json.tousseName = tousseName;
+ json.materialName = materialName;
+ json.amount = materialAmount;//td显示的数量
+ json.tousseAmount = tousseAmount;//材料相对的包数量
+ json.tousseDefinitionID = tousseDefinitionID;
+ json.idCardBarcode = idCardBarcode;
+ json.putBasketMaxAmount = putBasketMaxAmount;
+ json.materialInstanceId = materialInstanceId;
+ json.isImplant = isImplant;
+ json.tousseType = tousseType;
+ return JSON.stringify(json);
}
-
-function openRecyclingErrorPage(row,errorDamageQmKey){
-
- var tousseType = $('#tousseType' + row).val();
- if(tousseType == '外来器械包'){
- alertDiv("外来器械包不能添加丢失项!");
- return false;
- }
-
- var isEditIDCardError = false;
- if($('#id').val() == ""){
- isEditIDCardError = true;
- }
- var tousseName = $('#tousseName'+row).val();
- var width = 740;
- var height = 400;
- var designedTousseWidth = 980;
- var designedTousseHeight = 700;
- var designedWidth = 1920;
- var designedHeight = 1080;
- var actualWidth = window.screen.availWidth;
- var actualHeight = window.screen.availHeight;
- var offsetTop = 100;
- var heightExtra = 10;
- if(resolution == '1980'){
- width = 980;
- height = 700;
- }
- var zoomRatio = calculateZoomRatio(designedWidth,designedHeight,actualWidth,actualHeight);
- var size = calculateSizeAfterZoom(designedTousseWidth,designedTousseHeight,zoomRatio);
- var errorRemark = $('#hiddenErrorRemark'+row).val();
-
- width = size.width;
- height = size.height;
-
- offsetTop = offsetTop*zoomRatio;
- layerIndex=layer.open({
- type : 2,
- title : ['材料丢失',true],
- content : 'recyclingErrors.jsp?resolution='+resolution+'&isEditIDCardError='+isEditIDCardError+'&width='+width+'&height='+height
- +'&row='+row+'&tousseDefinitionID='+$('#tousseDefinitionID'+row).val()+'&tousseName='+encodeAll(tousseName)
- +'&recordType=' + params_recordType
- +'&tousseCount='+($('#recycleAmount'+row).val()==''?0:$('#recycleAmount'+row).val()) + '&errorRemark=' + errorRemark
- +'&errorDamageQmKey=' + errorDamageQmKey,
- area : [ width + 'px' , height +heightExtra + 'px'],
- border : [5, 0.3, '#fff', true],
- closeBtn : [2 , true],
- offset : [offsetTop+'px','']
- });
+function getFirstBasketScanedGoods(){
+ var basketJsonArray = new Array();
+ basketJsonArray.push(getBasketScanedGoods($("#basketsUl li:first")));
+ return basketJsonArray;
}
-
-function openSetUrgentAmountPage(row){
-
- var tousseItemId = $('#tousseItemId'+row).val();
- if(tousseItemId != ''){
- return false;
- }
-
- var isEditIDCardError = false;
- if($('#id').val() == ""){
- isEditIDCardError = true;
- }
- var tousseName = $('#tousseName'+row).val();
- var applyAmount = $('#applicationAmount'+row).val();
- var recycleAmount = $('#recycleAmount'+row).val();
- var urgentAmount = $('#urgentAmount'+row).val();
- var urgentLevel = $('#urgentLevel' + row).val();
-
- var width = 740;
- var height = 400;
- var designedTousseWidth = 980;
- var designedTousseHeight = 700;
- var designedWidth = 1920;
- var designedHeight = 1080;
- var actualWidth = window.screen.availWidth;
- var actualHeight = window.screen.availHeight;
- var offsetTop = 100;
- var heightExtra = 10;
- if(resolution == '1980'){
- width = 980;
- height = 700;
- }
- var zoomRatio = calculateZoomRatio(designedWidth,designedHeight,actualWidth,actualHeight);
- var size = calculateSizeAfterZoom(designedTousseWidth,designedTousseHeight,zoomRatio);
-
- width = size.width;
- height = size.height;
-
- offsetTop = offsetTop*zoomRatio;
- layerIndex=layer.open({
- type : 2,
- title : ['器械包加急',true],
- //iframe : {src : 'setTousseUrgentAmount.jsp?resolution='+resolution+'&width='+width+'&height='+height+'&row='+row+'&tousseDefinitionID='+$('#tousseDefinitionID'+row).val()+'&tousseName='+encodeAll(tousseName)+'&applyAmount='+applyAmount+'&recycleAmount='+recycleAmount+'&urgentAmount='+urgentAmount},
- content : 'setTousseUrgentAmount.jsp?resolution='+resolution+'&width='+width
- +'&height='+height+'&row='+row+'&tousseDefinitionID='+$('#tousseDefinitionID'+row).val()
- +'&tousseName='+encodeAll(tousseName)+'&applyAmount='+applyAmount+'&recycleAmount='
- +recycleAmount+'&urgentAmount='+urgentAmount + '&urgentName=' + encodeAll(urgentLevel),
- area : [ width + 'px' , height +heightExtra + 'px'],
- border : [5, 0.3, '#fff', true],
- closeBtn : [2 , true],
- offset : [offsetTop+'px','']
+function getScanedGoods(){
+ var basketJsonArray = new Array();
+ $("#basketsUl li").each(function(){
+ basketJsonArray.push(getBasketScanedGoods($(this)));
});
+ return basketJsonArray;
}
+function getBasketScanedGoods(basketElement){
+ var hideStr = basketElement.find('input').val();
+ var hiddenjson = JSON.parse(hideStr);
-function getTousseItemRecyclingError(row){
- return $('#recyclingError' + row).val();
-}
+ var scanedGoodsArray = new Array();
-function setTousseItemRecyclingError(row,jsonstr,errorRemark){
- $('#recyclingError' + row).val(jsonstr);
- if(!isUndefinedOrNull(errorRemark)){
- $('#hiddenErrorRemark' + row).val(errorRemark);
- }
- refreshErrorRemarkView(row);
- refreshErrorMaterialsView(row);
-}
-/**
- * 将丢失报损的材料json字符串格式化为 名称*数量;名称*数量 的形式.如果数量为0,则排除
- * @param materialArrayStr
- * @returns
- */
-function formatErrorOrDamageMaterials(materialArrayStr){
- if(!isUndefinedOrNullOrEmpty(materialArrayStr)){
- var materialArray = JSON.parse(materialArrayStr);
- var materials = "";
- for(var i = 0; i < materialArray.length;++i){
- var amount = parseInt(materialArray[i].amount);
- if(amount > 0){
- materials += materialArray[i].materialName + "*" + materialArray[i].amount + ";";
+ basketElement.find('dl').children().each(function(i,element){
+ if($(this).attr('type') == 'hidden'){
+ var itemJson = $(this).val();
+ var json = JSON.parse(itemJson);
+ var type = json.type;
+ var name = json.tousseName;
+ if(type == '材料'){
+ name = json.materialName;
}
+ scanedGoodsArray.push({
+ name:name,
+ tousseDefinitionID:json.tousseDefinitionID,
+ tousseName:json.tousseName,
+ tousseType:json.tousseType,
+ type:json.type,
+ amount:json.amount,
+ idCardBarcode : json.idCardBarcode,
+ putBasketMaxAmount:json.putBasketMaxAmount
+ });
}
- return materials.length > 0?materials.substring(0,materials.length - 1):"";
- }
- return "";
+ });
+ return {
+ barcode : hiddenjson.barcode,
+ name:hiddenjson.containerName,
+ washClassifyType : hiddenjson.washClassifyType,
+ scanedGoods : scanedGoodsArray
+ };
}
-/**
- * 刷新丢失材料的显示,如果没有启用回收的丢失报损备注功能,或者没有丢失材料,那么隐藏整行
- * @param row 行号
- */
-function refreshErrorMaterialsView(row){
- var hide = true;
- if(sstsConfig.enableRecycleMaterialErrorDamageRemark){
- var recyclingErrorJsonArrayStr = $('#recyclingError' + row).val();
- var materials = formatErrorOrDamageMaterials(recyclingErrorJsonArrayStr);
- if(!isUndefinedOrNullOrEmpty(materials)){
- $('#errorMaterials' + row).text('丢失材料:' + materials);
- hide = false;
+function getBasketElement(basketBarcode){
+ var findEl = null;
+ $("#basketsUl li").each(function(index,element){
+ var basketStr = $(this).find('input').val();
+ var basket = JSON.parse(basketStr);
+ if(basket){
+ if(basket.barcode == basketBarcode){
+ findEl = $(this);
+ return false;
+ }
}
- }
- if(hide){
- $('#errorMaterialsTr' + row).hide();
- }else{
- $('#errorMaterialsTr' + row).show();
- }
+ });
+ return findEl;
}
-/**
- * 刷新丢失备注的显示,如果没有启用回收的丢失报损备注功能,或者没有丢失备注,那么隐藏整行
- * @param row 行号
- */
-function refreshErrorRemarkView(row){
- var hide = true;
- if(sstsConfig.enableRecycleMaterialErrorDamageRemark){
- var errorRemark = $('#hiddenErrorRemark' + row).val();
- if(!isUndefinedOrNullOrEmpty(errorRemark)){
- $('#errorRemark' + row).text('丢失备注:' + errorRemark);
- hide = false;
- }
- }
- if(hide){
- $('#errorRemarkTr' + row).hide();
- }else{
- $('#errorRemarkTr' + row).show();
- }
-}
-/**
- * 刷新报损备注的显示,如果没有启用回收的丢失报损备注功能,或者没有报损备注,那么隐藏整行
- * @param row 行号
- */
-function refreshDamageRemarkView(row){
- var hide = true;
- if(sstsConfig.enableRecycleMaterialErrorDamageRemark){
- var errorRemark = $('#hiddenDamageRemark' + row).val();
- if(!isUndefinedOrNullOrEmpty(errorRemark)){
- $('#damageRemark' + row).text('报损备注:' + errorRemark);
- hide = false;
- }
- }
- if(hide){
- $('#damageRemarkTr' + row).hide();
- }else{
- $('#damageRemarkTr' + row).show();
- }
-}
-/**
- * 刷新拆包器械拆分篮筐数量的显示界面。如果没有启用拆分篮筐显示功能,或者没有报损备注,那么隐藏整行
- * @param row 行号
- */
-function refreshSplitBasketView(){
- if(sstsConfig.enableSplitBasketCount){
- //包定义id与包拆分的篮筐的映射
- var tousseDefIdBasketGroupMap = {};
- $('dl[class="sed clearfix"]').each(function(){
- $(this).children().each(function(){
- if($(this).attr('type') == 'hidden'){
- var hideValue = $(this).val();
- if(!isUndefinedOrNullOrEmpty(hideValue)){
- var obj = JSON.parse(hideValue);
- if(obj.type == '材料'){
- tousseDefIdBasketGroupMap[obj.tousseDefinitionID] = obj.basketGroupBarcodes;
+/*** 创建物品入筐*/
+
+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,
+ }];
+
+ RecyclingRecordTableManager.putMaterialIntoBasket(materialInstanceId,materialAmount,JSON.stringify(params),JSON.stringify(tousseIntoBasketInfo.getResult()),recyclingApplicationId,function(result){
+ var jsonObj = JSON.parse(result);
+
+ if(!jsonObj.success){
+ alertDiv(jsonObj.message);
+ success = false;
+ }else{
+ var materials = jsonObj.materials;
+ if(materials == null){
+ alertDiv("异常数据,请联系管理员!");
+ success = false;
+ }else{
+ for(var i = 0;i < materials.length;i++){
+ var item = materials[i];
+ var basketElement = getBasketElement(item.basketBarcode);
+
+ success = addItemToThisBasket(basketElement,tousseName,item.materialName,item.materialAmount,tousseAmount,
+ tousseDefinitionID,idCardBarcode,item.putBasketMaxAmount,materialInstanceId,isImplant,tousseType);
+ if(!success){
+ break;
}
}
}
- });
+ }
});
- $("#tousseItemTable > tbody > tr").each(function(row,element) {
- var tousseDefinitionId = $("#tousseDefinitionID" + row).val();
- var tousseType = $("#tousseType" + row).val();//省医现在希望最好是只有外来器械才显示
- var basketGroupBarcodes = tousseDefIdBasketGroupMap[tousseDefinitionId];
- if((tousseType == '外来器械包'|| tousseType == '外来器械拆分小包' ) && !isUndefinedOrNull(basketGroupBarcodes)){
- $('#splitBasket' + row).text('拆分篮筐数:' + basketGroupBarcodes.split(";").length);
- $('#splitBasketTr' + row).show();
+ DWREngine.setAsync(true);
+ }else{
+ var params = getFirstBasketScanedGoods();
+ DWREngine.setAsync(false);
+ //Annie 组合数组
+ var materialInstanceGoood =[{
+ 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{
- $('#splitBasket' + row).text('');
- $('#splitBasketTr' + row).hide();
+ success = addItemToThisBasket($("#basketsUl li:first"),tousseName,materialName,materialAmount,tousseAmount,
+ tousseDefinitionID,idCardBarcode,putBasketMaxAmount,materialInstanceId,isImplant,tousseType);
}
});
+ DWREngine.setAsync(true);
}
+ return success;
}
/**
- * 刷新报损材料明细的显示,如果没有启用回收的丢失报损备注功能,或者没有报损材料,那么隐藏整行
- * @param row 行号
+ * 将物品添加到篮筐
+ * trElement basketsUl中的li元素,通过jquery封装的对象
*/
-function refreshDamageMaterialsView(row){
- var hide = true;
- if(sstsConfig.enableRecycleMaterialErrorDamageRemark){
- var recyclingDamageArrayStr = $('#recyclingDamage' + row).val();
- var materials = formatErrorOrDamageMaterials(recyclingDamageArrayStr);
- if(!isUndefinedOrNullOrEmpty(materials)){
- $('#damageMaterials' + row).text('报损材料:' + materials);
- hide = false;
- }
+function addItemToThisBasket(trElement,tousseName,materialName,materialAmount,tousseAmount,tousseDefinitionID, idCardBarcode,putBasketMaxAmount,materialInstanceId,isImplant,tousseType){
+ if(trElement == null){
+ //目前不可能会有这种情况
+ return false;
}
- if(hide){
- $('#damageMaterialsTr' + row).hide();
- }else{
- $('#damageMaterialsTr' + row).show();
+ var basketElement = trElement.find('dl[class="sed clearfix"]:eq(0)');
+ var basketHidenValue = trElement.find('input').val();
+ var basketBarcode = null;
+ var basketName = null;
+ if(basketHidenValue){
+ var basketItem = JSON.parse(basketHidenValue);
+ basketBarcode = basketItem.barcode;
+ basketName = basketItem.containerName;
}
-}
-
-function getTousseItemRecyclingDamage(row){
- return $('#recyclingDamage' + row).val();
-}
-
-function setTousseItemRecyclingDamage(row,jsonstr,damageRemark){
- $('#recyclingDamage' + row).val(jsonstr);
- if(!isUndefinedOrNull(damageRemark)){
- $('#hiddenDamageRemark' + row).val(damageRemark);
+ //var basketElement = $('dl[class="sed clearfix"]:eq(0)');
+ //var basketHidenValue = $("#basketsUl li:first").find('input').val();
+ var showName = tousseName;
+ if(idCardBarcode != ""){
+ showName += "["+idCardBarcode+"]";
}
- refreshDamageRemarkView(row);
- refreshDamageMaterialsView(row);
-}
-function updateUrgentAmount(row,urgentAmount,urgentLevel){
- $('#urgentAmount'+row).val(urgentAmount);
- $('#urgentAmountDiv'+row).html(urgentAmount);
- $('#urgentLevel' + row).val(urgentLevel);
- if(urgentAmount > 0){
- $('#urgentAmountDiv'+row).css("background-image","url(urgentBg.png)");
- if(sstsConfig.showUrgentLevel){
- $('#urgentAmountDiv'+row).html(urgentLevel);
- }else{
- $('#urgentAmountDiv'+row).html(urgentAmount);
+ var isExist = false;
+
+ trElement.find('dl > input').each(function(){
+ var hideStr = $(this).val();
+ var json = hideStr?JSON.parse(hideStr):{};
+ if(json.tousseDefinitionID == tousseDefinitionID && json.materialName == materialName && json.idCardBarcode == idCardBarcode){
+ isExist = true;
+ json.amount = (json.amount + materialAmount);
+ $(this).val(JSON.stringify(json));
+ $(this).next().next().next().text(json.amount);
+ if(json.amount == 0){
+ //
+ tousseIntoBasketInfo.remove(tousseDefinitionID,basketBarcode);
+ }
+ return false;
}
- }else{
- $('#urgentAmountDiv'+row).css("background-image","url(unUrgentBg.png)");
- $('#urgentAmountDiv'+row).html("+");
+ });
+
+ if(!isExist){
+ var element = '';
+ element += '' + showName + '';
+ element += '' + materialName + '';
+ element += '' + materialAmount + '';
+ element += '删除';
+ var json = getBasketItemJSON(tousseName,materialName,materialAmount,tousseAmount,tousseDefinitionID,idCardBarcode,
+ putBasketMaxAmount,materialInstanceId,isImplant,tousseType);
+ basketElement.prepend($(element));
+ basketElement.find("input:first").val(json);
+ sortBasketSequence(trElement,tousseDefinitionID,tousseType);
+ tousseIntoBasketInfo.addTousseBasket({tousseDefinitionID:tousseDefinitionID,tousseName:tousseName,
+ tousseType:tousseType},{barcode:basketBarcode,basketName:basketName})
}
+ return true;
}
+/**
+ * 记录篮筐的序号,以包定义的id为key,值为一组篮筐的li元素,顺序排列
+ */
+var basketSequences = {};
-function openRecyclingDamagePage(row,tousseName,tousseItemId,errorDamageQmKey){
-
- var tousseType = $('#tousseType' + row).val();
- if(tousseType == '外来器械包'){
- alertDiv("外来器械包不能添加报损项!");
- return false;
+/**
+ * 添加篮筐序号。如果已经有序号了,那就不要再添加了.也不改变
+ * @param trElement
+ * @returns
+ */
+function sortBasketSequence(trElement,tousseDefinitionID,tousseType){
+ if(!trElement){
+ return;
}
-
- var width = 740;
- var height = 400;
- var designedTousseWidth = 980;
- var designedTousseHeight = 700;
- var designedWidth = 1920;
- var designedHeight = 1080;
- var actualWidth = window.screen.availWidth;
- var actualHeight = window.screen.availHeight;
- var offsetTop = 100;
- var heightExtra = 10;
- var depart = $('#depart').val();
- var departCode = $('#departCode').val();
- var damageRemark = $('#hiddenDamageRemark' + row).val();
- if(resolution == '1980'){
- width = 980;
- height = 700;
+ if(!tousseDefinitionID){
+ return;
}
- var zoomRatio = calculateZoomRatio(designedWidth,designedHeight,actualWidth,actualHeight);
- var size = calculateSizeAfterZoom(designedTousseWidth,designedTousseHeight,zoomRatio);
-
- width = size.width;
- height = size.height;
-
- offsetTop = offsetTop*zoomRatio;
- layerIndex=layer.open({
- type : 2,
- title : ['材料报损',true],
- content : 'recyclingDamage.jsp?resolution='+resolution+'&width='+width+'&height='+height
- +'&row='+row+'&tousseDefinitionID='+$('#tousseDefinitionID'+row).val()+'&tousseName='+tousseName
- +'&tousseItemId='+tousseItemId+'&tousseCount='+$('#recycleAmount'+row).attr('value')
- +'&recordType=' + params_recordType
- +'&depart='+depart+'&departCode='+departCode+ '&damageRemark=' + damageRemark
- +'&errorDamageQmKey=' + errorDamageQmKey,
- area : [ width + 'px' , height +heightExtra + 'px'],
- border : [5, 0.3, '#fff', true],
- closeBtn : [2 , true],
- offset : [offsetTop+'px','']
- });
-}
-
-function submitForeignTousseDefinition(applicationId,foreignTousseInfo){
- $.ajax({
- type : 'post',
- url : WWWROOT + '/disinfectSystem/foreigntousseapplication/foreignTousseApplicationAction!updateForeignTousseDefiniton.do',
- data : {id : applicationId,foreignTousseInfo : foreignTousseInfo},
- dataType : 'json',
- success : function(msg) {
- alert(msg.message);
- },
- error: function(XMLHttpRequest, textStatus, errorThrown) {
- alert(textStatus);
+ if(tousseType==PACKAGE_TYPE_SPLIT|| tousseType==PACKAGE_TYPE_FOREIGN){
+ var sequences = basketSequences[tousseDefinitionID];
+ if(!sequences){
+ sequences = [];
+ basketSequences[tousseDefinitionID] = sequences;
}
- });
-}
-
-function amendDisinfectionTousse(row){
- var tousseName = $('#tousseName'+row).val();
- var tousseDefinitionID = $('#tousseDefinitionID'+row).val();
- var tousseType = $('#tousseType'+row).val();
- if(tousseType == '消毒物品' || tousseType == '灭菌物品'){
- var width = 740;
- var height = 400;
- if(resolution == '1980'){
- width = 980;
- height = 700;
+ var find = false;
+ for(var i = 0; i < sequences.length;++i){
+ if(isSameBasket(sequences[i],trElement)){
+ find = true;
+ }
}
-
- layerIndex=layer.open({
- type : 2,
- title : ['消毒物品明细',true],
- content : 'disinfectionTousseItems.jsp?resolution='+resolution+'&row='+row+'&tousseDefinitionID='+tousseDefinitionID,
- area : [ width + 'px' , height + 'px'],
- border : [5, 0.3, '#fff', true],
- closeBtn : [2 , true],
- offset : ['100px','']
- });
- }else if(tousseType == '器械包'){
-// $.ajax({
-// type:'post',
-// url:WWWROOT + '/disinfectSystem/baseData/tousseDefinitionAction!getToussePictureAmount.do',
-// data:'id=' + tousseDefinitionID,
-// dataType:'text',
-// success:function(msg){
-// var amount = parseInt(msg,10);
-// var items = new Array();
-// if(amount == 0){
-// amount = 1;
-// }
-// for(var i = 0;i < amount;i++){
-// items.push();
-// }
- $.magnificPopup.open({
- items: [{
- src:'tousseImage.jsp?resolution='+resolution+'&tousseDefinitionID='+tousseDefinitionID+'&tousseName='+encodeURIComponent(tousseName)+'&number='+1,
- type :'iframe'
- },{
- //只是为了让箭头出现,如果可以有其他办法,这里可以去掉。因为在tousseImage.jsp内部,修改了下一页和上一页的处理
- src: '永远看不到我
',
- type: 'inline'
- }],
- tClose: '关闭(Esc)',
- gallery: {
- enabled: true,
- tPrev: '上一页 (左箭头)', // Alt text on left arrow
- tNext: '下一页 (右箭头)'
- },
- image: {
- verticalFit: true
- },
- type: 'image' // this is default type
- });
-// },
-// error:function(XMLHttpRequest, textStatus, errorThrown){
-// }
-// });
- }else if(tousseType == '自定义器械包'){
- var width = 740;
- var height = 400;
- var designedTousseWidth = 980;
- var designedTousseHeight = 700;
- var designedWidth = 1920;
- var designedHeight = 1080;
- var actualWidth = window.screen.availWidth;
- var actualHeight = window.screen.availHeight;
- var offsetTop = 100;
- var heightExtra = 10;
- if(resolution == '1980'){
- width = 980;
- height = 700;
+ if(!find){
+ sequences[sequences.length] = trElement;
}
- var zoomRatio = calculateZoomRatio(designedWidth,designedHeight,actualWidth,actualHeight);
- var size = calculateSizeAfterZoom(designedTousseWidth,designedTousseHeight,zoomRatio);
-
- width = size.width;
- height = size.height;
-
- offsetTop = offsetTop*zoomRatio;
- layerIndex=layer.open({
- type : 2,
- title : [tousseName + ' 材料信息',true],
- content : 'setMaterialRecycleAmount.jsp?resolution='+resolution+'&width='+width+'&height='+height+'&row='+row+'&tousseDefinitionID=' + tousseDefinitionID,
- area : [ width + 'px' , height +heightExtra + 'px'],
- border : [5, 0.3, '#fff', true],
- closeBtn : [2 , true],
- offset : [offsetTop+'px','']
- });
- }else if(tousseType == '外来器械包'){
- var width = 740;
- var height = 400;
- var designedTousseWidth = 980;
- var designedTousseHeight = 700;
- var designedWidth = 1920;
- var designedHeight = 1080;
- var actualWidth = window.screen.availWidth;
- var actualHeight = window.screen.availHeight;
- var offsetTop = 100;
- var heightExtra = 10;
- if(resolution == '1980'){
- width = 1080;
- height = 800;
- }
- var zoomRatio = calculateZoomRatio(designedWidth,designedHeight,actualWidth,actualHeight);
- var size = calculateSizeAfterZoom(designedTousseWidth,designedTousseHeight,zoomRatio);
-
- width = size.width;
- height = size.height;
-
- offsetTop = offsetTop*zoomRatio;
-
- layerIndex=layer.open({
- type : 2,
- title : [tousseName + ' 信息',true],
- content : 'setForeignTousseDefinition.jsp?resolution='+resolution+'&width='+width+'&height='+height+'&row='+row+'&tousseDefinitionID=' + tousseDefinitionID + '&applicationId=' + params_appId + '&recyclingrecordId=' + params_id,
- area : [ width + 'px' , height +heightExtra + 'px'],
- border : [5, 0.3, '#fff', true],
- closeBtn : [2 , true],
- offset : [offsetTop+'px','']
- });
}
}
-
-function getBasketJSON(itemId,barcode,washClassifyType,sequence,basketName){
- var json = {};
- json.classifyBasketId = itemId;
- json.barcode = barcode;
- json.washClassifyType = washClassifyType;
- json.sequence = sequence;
- json.basketName = basketName;
- return JSON.stringify(json);
-}
-
-function getBasketItemJSON(ci_id,type,orgUnitName,tousseName,materialName,amount,tousseAmount,idCardBarcode,
- tousseDefinitionID,basketGroupBarcodes,putBasketMaxAmount,tousseType){
- var json = {};
- json.classifiedItemId = ci_id;
- json.type = type;
- json.orgUnitName = orgUnitName;
- json.tousseName = tousseName;
- json.materialName = materialName;
- json.amount = amount;//td显示的数量
- json.tousseAmount = tousseAmount;//材料相对的包数量
- json.idCardBarcode = idCardBarcode;
- json.tousseDefinitionID = tousseDefinitionID;
- json.tousseType = tousseType;
- json.putBasketMaxAmount = putBasketMaxAmount;
- json.useBasketBarcodes = new Array();
- json.basketGroupBarcodes = basketGroupBarcodes;
- return JSON.stringify(json);
-}
-
-/**
- * 获取已入篮筐的数据.
- * @param isCleanedEntirely
- * @returns {Array}
- */
-function getScanedGoods(isCleanedEntirely){
- var basketJsonArray = new Array();
- $("#basketsUl li").each(function(){
- var hideStr = $(this).find('input').val();
- var hiddenjson = JSON.parse(hideStr);
-
- var scanedGoodsArray = new Array();
-
- $(this).find('dl').children().each(function(i,element){
- if($(this).attr('type') == 'hidden'){
- var itemJson = $(this).val();
- var json = JSON.parse(itemJson);
- if(json.classifiedItemId == ""){
- var type = json.type;
- var name = json.tousseName;
- if(type == '材料'){
- name = json.materialName;
- }
- scanedGoodsArray.push({
- name:name,
- tousseDefinitionID:json.tousseDefinitionID,
- tousseName:json.tousseName,
- tousseType:json.tousseType,
- type:json.type,
- amount:json.amount,
- idCardBarcode : json.idCardBarcode,
- putBasketMaxAmount:json.putBasketMaxAmount
- });
+function removeLiElement(li){
+ if(li){
+ for(var tdId in basketSequences){
+ var sequences = basketSequences[tdId];
+ for(var i = 0; i < sequences.length;++i){
+ if(isSameBasket(sequences[i],li)){
+ find = true;
+ sequences.splice(i,1);
}
}
- });
-
- if(isCleanedEntirely == "是"){
- if(sstsConfig.cleanedEntirelyTousseIntoWashClassifyEmptyBasket){
- if(isUndefinedOrNullOrEmpty(hiddenjson.washClassifyType)){
- basketJsonArray.push({
- barcode : hiddenjson.barcode,
- name:hiddenjson.basketName,
- washClassifyType : hiddenjson.washClassifyType,
- scanedGoods : scanedGoodsArray
- });
- return false;
- }
- }else{
- basketJsonArray.push({
- barcode : hiddenjson.barcode,
- name:hiddenjson.basketName,
- washClassifyType : hiddenjson.washClassifyType,
- scanedGoods : scanedGoodsArray
- });
- return false;
- }
- }else{
- basketJsonArray.push({
- barcode : hiddenjson.barcode,
- name:hiddenjson.basketName,
- washClassifyType : hiddenjson.washClassifyType,
- scanedGoods : scanedGoodsArray
- });
}
- });
- return basketJsonArray;
+ }
}
-
-/**
- * 判断此次能入筐的数量.
- * @param tousseDefinitionID
- * @param tousseName
- * @param recycleAmount
- * @param isCleanedEntirely
- * @param orgUnitName
- * @param idCardBarcode
- * @returns {Number}
- */
-function tousseIntoBasketFunction(tousseDefinitionID,tousseName,recycleAmount,isCleanedEntirely,orgUnitName,idCardBarcode,tousseType){
- var params = getScanedGoods(isCleanedEntirely);
- if(params.length <=0){
- if(isCleanedEntirely == "是" && sstsConfig.cleanedEntirelyTousseIntoWashClassifyEmptyBasket){
- //因为篮筐列表不会为空(之前已经验证过了),但是整包申请的包,如果配置为必须入清洗分类类型为空的篮筐,那可能就会执行到这里
- alertDiv("缺少清洗分类类型为空的篮筐,请扫描");
- return 0;
+//判断两个li中是否是同一个篮筐。如果篮筐条码一样,那就是同一个篮筐,否则 不是
+function isSameBasket(li1,li2){
+ if(!li1){
+ return false;
+ }
+ if(!li2){
+ return false;
+ }
+ var barcode1 = '';
+ var barcode2 = '';
+ if(li1){
+ var basketHidenValue = li1.find('input:first').val();
+ if(basketHidenValue){
+ var basketInfo = JSON.parse(basketHidenValue);
+ barcode1 = basketInfo.barcode;
}
}
- var loadedAmount = 0;
- var recyclingApplicationId = $('#recyclingApplicationId').val();
- DWREngine.setAsync(false);
- RecyclingRecordTableManager.getTousseIntoBasketAmount(tousseDefinitionID,recycleAmount,idCardBarcode,JSON.stringify(params),JSON.stringify(getTousseIntoBasketInfo()),recyclingApplicationId,function(result){
- var jsonObj = JSON.parse(result);
-
- if(!jsonObj.success){
- alertDiv(jsonObj.message);
- }else{
- var data = jsonObj.data;
- loadedAmount = data.amount;
- if(isCleanedEntirely == "否"){
- var materials = data.materials;
- if(materials == null){
- alertDiv("异常数据,请联系管理员!");
- return;
- }
- for(var i = 0;i < materials.length;i++){
- var item = materials[i];
- var basketItem = {
- ci_id: "",
- type: '材料',
- orgUnitName: orgUnitName,
- tousseName: tousseName,
- tousseDefinitionID: tousseDefinitionID,
- tousseType:tousseType,
- materialName: item.materialName,
- showName: item.materialName,
- amount: item.materialAmount,
- tousseAmount: loadedAmount,
- basketBarcode: item.basketBarcode,
- idCardBarcode: idCardBarcode,
- basketGroupBarcodes:item.basketGroupBarcodes,
- putBasketMaxAmount : item.putBasketMaxAmount
- };
- addBasketItemElement(basketItem);
- }
- }else{
- var basketItem = {
- ci_id: "",
- type: '器械包',
- orgUnitName: orgUnitName,
- tousseName: tousseName,
- tousseDefinitionID: tousseDefinitionID,
- tousseType:tousseType,
- materialName: "",
- showName: tousseName,
- amount: loadedAmount,
- tousseAmount: loadedAmount,
- basketBarcode: data.basketBarcode,
- idCardBarcode: idCardBarcode,
- basketGroupBarcodes: data.basketBarcode,
- putBasketMaxAmount : data.putBasketMaxAmount
- };
- addBasketItemElement(basketItem);
- }
+ if(li2){
+ var basketHidenValue = li2.find('input:first').val();
+ if(basketHidenValue){
+ var basketInfo = JSON.parse(basketHidenValue);
+ barcode2 = basketInfo.barcode;
}
- });
- DWREngine.setAsync(true);
- return loadedAmount;
+ }
+ return barcode1 == barcode2;
}
//将器械包放入篮筐中
-function putTousseInTheBasket(row){
+function putMaterialInBasket(row,batchToBasket,thisAmount){
var inputSuccess = false;
if($('#basketsUl').children().length > 0){
var tousseName = $('#tousseName'+row).val();
+ var isCleanedEntirely = $('#isCleanedEntirely'+row).val();
+ var materialName = $('#materialName'+row).val();
+ 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 tousseDefinitionID = $('#tousseDefinitionID'+row).val();
- var showTousseName = $('#showTousseName'+row).val();
+ var idCardBarcode = $('#idCardBarcode'+row).val();
+ var putBasketMaxAmount = $('#putBasketMaxAmount'+row).val();
+ var washClassifyType = $('#washClassifyType'+row).val();
+ var materialInstanceId = $('#materialInstanceId'+row).val();
+ var isImplant = $('#isImplant'+row).val();
var tousseType = $('#tousseType'+row).val();
- var isCleanedEntirely = $('#isCleanedEntirely'+row).val();
- var amount = parseInt($('#recycleAmount'+row).val(),10) - parseInt($('#loadedAmount'+row).val(),10);
-
- //回收数量扣减入筐操作 如果已经入筐就不能入筐,只能是手动从篮筐里面删除,因为程序不晓得从哪个篮筐里面扣减
- var msg = "";
- if(amount < 0){
- $("#basketsUl li").each(function(){
- $(this).find('dl').children().each(function(i,element){
- if($(this).attr('type') == 'hidden'){
- var hideStr = $(this).val();
- var json = JSON.parse(hideStr);
- if(json.tousseName == tousseName){
- msg = tousseName+"已入筐,请从篮筐内删除后再入筐!";
- return false;
- }
- }
- });
- });
- }
- if(amount > 9999){
- msg = "入筐数量不能大于9999!";
- }
-
- if(!isUndefinedOrNullOrEmpty(msg)){
- alertDiv(msg);
+ var insertBasketAmount = thisAmount?thisAmount:(recycleAmount - loadedAmount);
+ if(insertBasketAmount <= 0){
+ alertDiv('放入篮筐的数量必须大于0!');
return false;
}
- var isIDCard = $('#isThereIdentificationCard'+row).val();
- if(isIDCard == '是'){
- var showMsg = null;
- var recyclingErrorJsonArrayStr = $('#recyclingError'+row).val();
- if(!isUndefinedOrNullOrEmpty(recyclingErrorJsonArrayStr)){
- var recyclingErrorJsonArray = JSON.parse(recyclingErrorJsonArrayStr);
- var isIdCardLost = false;
- for(var j = 0;j < recyclingErrorJsonArray.length;j++) {
- if(recyclingErrorJsonArray[j].materialName == '器械包标识牌'){
- isIdCardLost = true;
- var errorAmount = parseInt(recyclingErrorJsonArray[j].amount);
- var intoBasketAmount = parseInt(recyclingErrorJsonArray[j].intoBasketAmount);
- if(errorAmount == 0 || errorAmount == intoBasketAmount){
- showMsg = $('#tousseName'+row).val()+"扫描的标识牌数量不等于回收数量,如果标识牌丢失,请在回收误差中登记丢失记录!";
- }else{
- if(errorAmount - intoBasketAmount >0){
- amount = errorAmount - intoBasketAmount;
- }
- }
- break;
- }
- }
- if(!isIdCardLost && amount > 0){
- showMsg = $('#tousseName'+row).val()+"扫描的标识牌数量不等于回收数量,如果标识牌丢失,请在回收误差中登记丢失记录!";
- }
- }else{
- var tousseAmount = parseInt($('#recycleAmount'+row).val(),10);
- var scannedAmount = parseInt($('#loadedAmount'+row).val(),10);
- if(tousseAmount != scannedAmount){
- showMsg = $('#tousseName'+row).val()+"扫描的标识牌数量不等于回收数量,如果标识牌丢失,请在回收误差中登记丢失记录!";
- }
- }
+ var success = addBasketItemElement(tousseName,materialName,insertBasketAmount,tousseAmount,tousseDefinitionID,idCardBarcode,
+ putBasketMaxAmount,batchToBasket,materialInstanceId,isImplant,tousseType);
- if(showMsg != null){
- alertDiv(showMsg);
- return false;
- }
- }
+ if(success){
+ $('#loadedAmount'+row).val(loadedAmount + insertBasketAmount)
- var orgUnitName = $('#depart').val();
- if(amount == 0){
- alertDiv('没有可以放入篮筐的器械包。');
- }else{
- var loadedAmount = tousseIntoBasketFunction(tousseDefinitionID,tousseName,amount,isCleanedEntirely,orgUnitName,"",tousseType);
-
- if(loadedAmount > 0){
- $('#loadedAmount'+row).val(parseInt(loadedAmount,10)+parseInt($('#loadedAmount'+row).val(),10));
- //丢失报损器械
- if(isIDCard == '是'){
- setIdCardErrorIntoBasketAmount(row,loadedAmount);
- }
-
- setTousseItemLoadedAmountCss(row);
-
- inputSuccess = true;
+ if(applicationAmount == parseInt($('#loadedAmount'+row).val(),10)){
+ deleteTousseItem(row);
}
+ inputSuccess = true;
}
}else{
alertDiv('请先扫描篮筐条码。');
}
- $('#depart').focus();
-
return inputSuccess;
}
+function putMaterialInBasketWithAmount(row,amount){
+ putMaterialInBasket(row,false,amount);
+ refreshBasketStatus();
+ refreshAllBasketTotalNum();
+}
-function setTousseItemLoadedAmountCss(row){
+function deleteTousseItem(row){
+ $('#tousseItemsTr'+row).hide();
+ $('#deleted'+row).val('1');
+}
+
+function add(row){
var recycleAmount = parseInt($('#recycleAmount'+row).val(),10);
- var loadedAmount = parseInt($('#loadedAmount'+row).val(),10);
- if(loadedAmount > 0 && recycleAmount > loadedAmount){
- $("#loadedAmount" + row).css("background","#FFE66F");//黄色
- }else if(recycleAmount == loadedAmount){
- $("#loadedAmount" + row).css("background","#b7d9a5");//绿色
+ var applicationAmount = parseInt($('#applicationAmount'+row).val(),10);
+ if(recycleAmount >= applicationAmount){
+ return;
}
+ $('#recycleAmount'+row).val(recycleAmount+1);
}
-/**
- * 修改数量的时候,更新绑定物品.调用此方法的时候,回收数量已经更新
- * @param row
- */
-function updateBindGoods(row){
- var toussItem = {
- tousseDefinitionID: $('#tousseDefinitionID' + row).val(),
- tousseName:$('#tousseName' + row).val(),
- recycleAmount:$('#recycleAmount' + row).val(),
- tousseType:$('#tousseType' + row).val()
- };
- addBindGoods(toussItem,sstsConfig.addTousseAtLastForRecycle);
-}
-/**
- * 查找绑定的不回收的器械包。绑定中的包定义id都是祖先id
- * @param ancestorTdId
- */
-function findBindGoodsItem(ancestorTdId){
- for(var i = 0; i < unrecycleTousseItemArray.length;++i){
- if(unrecycleTousseItemArray[i].id == ancestorTdId){
- return unrecycleTousseItemArray[i];
- }
- }
- return null;
-}
-/**
- * 添加绑定物品
- * @param toussItem
- * @param appendLast
- */
-function addBindGoods(toussItem,appendLast){
- var params = {
-// settleAccountsDepartCoding: top.Ext4.getCmp('settleAccountsDepartCoding').getValue(),//只有一次性物品才用
-// handleDepartCode: top.Ext4.getCmp('handleDepartCoding').getValue(),//只有一次性物品才用
- goodName: toussItem.tousseName,
- bindCount: toussItem.recycleAmount,
- goodId: toussItem.tousseDefinitionID,
- time: new Date().getTime(),//添加时间参数,避免缓存问题。现场反馈物品绑定偶尔带不出绑定的敷料包
- goodType: toussItem.tousseType
- };
- $.ajax({
- type:'POST',
- url:WWWROOT + '/disinfectSystem/baseData/tousseDefinitionAction!getBindGoods.do',
- data:params,
- dataType:'json',
- success:function(result){
- if(result && result.success && result.data.length > 0){
- for(var i = 0; i < result.data.length;++i){
- var record = result.data[i];
- if(record.isRecycling != '是' || (record.tousseType != PACKAGE_TYPE_INSIDE && record.tousseType != PACKAGE_TYPE_DISINFECTION)){
- //不回收的器械包、消毒物品、敷料包,放到不回收器械包集合中,传到后台再添加申请(或者修改申请数量)
- var existItem = findBindGoodsItem(record.id);
- if(existItem){
- existItem.count = record.count;
- }else{
- unrecycleTousseItemArray.push(record);
- }
- }else{
- var row = tousseItemExists(record.id,record.name,record.tousseType);
- if(row == -1){
- row = document.getElementById("tousseItemTable").rows.length;
- var timeStr = new Date().getTime();
- var errorDamageQmKey = record.id + "_" + timeStr;
- var toussItem = {
- row: row,
- tousseItemId: '',
- tousseName: record.name,
- tousseDefinitionID: record.id,
- applicationAmount: 0,
- recycleAmount: 0,
- loadedAmount: 0,
- isCleanedEntirely: record.isCleanedEntirely,
- tousseType: record.tousseType,
- isThereIdentificationCard: record.isThereIdentificationCard,
- isApplyEntireTousse: record.isApplyEntireTousse,
- urgentAmount:0,
- errorDamageQmKey:errorDamageQmKey
- };
- addToussItem(toussItem,appendLast);
- //已删除又添加该物品jsonArray处理
- cleanDeleteTousseItem(record.id);
- }
- $('#recycleAmount'+row).val(record.count);
- setTousseItemLoadedAmountCss(row);
- changeRecycleAmount(row);
- }
- }
- }
- },
- error:function(XMLHttpRequest, textStatus, errorThrown){
- alertDiv('获取绑定物品失败');
- }
- });
-}
-/**
- * 判断是否存在对应的物品,如果存在,返回对应的行号,否则返回-1;
- * @param tousseDefinitionID 包定义id
- * @param tousseName 器械包名称,如果是消毒物品,就用名称匹配,因为消毒物品的id可能跟界面上的不一样
- * @param tousseType 器械包类型
- * @returns {Number}
- */
-function tousseItemExists(tousseDefinitionID,tousseName,tousseType){
- var row = -1;
- $('#tousseItemTable').children().first().children().each(function(i,element){
- if(($('#tousseDefinitionID'+i).val() == tousseDefinitionID)||(tousseType == '消毒物品' && $('#tousseName'+i).val() == tousseName)){
- //显示的列表中是否有该器械包
- if($('#deleted'+i).val() == '0'){
- row = i;
- return false;
- }
- }
- });
- return row;
-}
-function highlightExistTousseItem(row){
- //先滑动到对应的行
- var scrollTop = $("#tousseItemsTr" + row).offset().top-$('#tousseItemTable').offset().top;
- $('#tousseItemBox').stop(true, false).animate({
- scrollTop: scrollTop
- }, 500);
- //闪烁一定的次数
- for(var i = 0; i < 5;++i){
- $("#tousseItemsTr" + row).animate({
- backgroundColor: "#7ABD32"
- }, 300 ).animate({
- backgroundColor: "transparent"
- }, 300 )
- }
-}
-/**
- * 添加回收记录明细,tousseName为器械包名称,applicationAmount为申请数量,recycleAmount为回收数量,loadedAmount为装载数量
- * @param toussItem 物品明细
- * @param appendLast 是否追加到最后一行
- * @returns {Boolean}
- */
-function addToussItem(toussItem,appendLast){
- var row = toussItem.row;
- var tousseItemId = toussItem.tousseItemId;
- var tousseName = toussItem.tousseName;
- var applicationAmount = toussItem.applicationAmount;
- var recycleAmount = toussItem.recycleAmount;
- var loadedAmount = toussItem.loadedAmount;
- var isCleanedEntirely = toussItem.isCleanedEntirely;
- var isApplyEntireTousse = toussItem.isApplyEntireTousse;
- var tousseType = toussItem.tousseType;
- var isThereIdentificationCard = toussItem.isThereIdentificationCard;
- var tousseDefinitionID = toussItem.tousseDefinitionID;
- var urgentAmount = toussItem.urgentAmount;
- var tousseRemark = isUndefinedOrNullOrEmpty(toussItem.tousseRemark)?'':toussItem.tousseRemark;
- var urgentLevel = toussItem.urgentLevel?toussItem.urgentLevel:"";
- var errorDamageQmKey = toussItem.errorDamageQmKey?toussItem.errorDamageQmKey:"";
- //器械包实例或者标识牌实例条码
- var barcode = toussItem.barcode?toussItem.barcode:"";
- var b = true;
- $('#tousseItemTable').children().first().children().each(function(i,element){
- if(($('#tousseDefinitionID'+i).val() == tousseDefinitionID)||(tousseType == '消毒物品' && $('#tousseName'+i).val() == tousseName)){
- //显示的列表中是否有该器械包
- if($('#deleted'+i).val() == '0'){
- alertDiv(tousseName + ",回收列表已存在!");
- b = false;
- highlightExistTousseItem(i);
- //删除后再添加该消毒物品,删除的项还原,原因是添加的消毒物品包定义和申请项的包定义不一样
- }else if(tousseType == '消毒物品'){
- $('#deleted'+i).val('0');
- $('#tousseItemsTr'+i).show();
- cleanDeleteTousseItem($('#tousseDefinitionID'+i).val());
- b = false;
- }
- }
- });
- if(b){
- var showTousseName = tousseName;
- var addButton = '+ | ';
- var reduceButton = '- | ';
- var onclickFun = 'onclick="openUpdateAmount(this,'+ row +');"';
- var urgentAmountElement = "";
- if(!isUndefinedOrNull(urgentAmount) && urgentAmount > 0){
- var msg = urgentAmount;
- var fontSize="30px";
- if(sstsConfig.showUrgentLevel){
- msg = urgentLevel;
- fontSize = "16px";
- }
- urgentAmountElement = ''+msg+'
';
- }else{
- var bgMsg = "background-image:url(unUrgentBg.png);";
- var msg = "+";
- if(!isUndefinedOrNullOrEmpty(tousseItemId)){
- bgMsg = "";
- msg = "";
- }
- var fontSize="30px";//如果要显示加急等级,字体就要小
- if(sstsConfig.showUrgentLevel){
- fontSize = "16px";
- }
- urgentAmountElement = ''+msg+'
';
- }
- var errorRemark =toussItem.errorRemark; //"注备注备注";
- var damageRemark = toussItem.damageRemark;//"备注备注";
- errorRemark = isUndefinedOrNullOrEmpty(errorRemark)?'':errorRemark;
- damageRemark = isUndefinedOrNullOrEmpty(damageRemark)?'':damageRemark;
- var trStr = ''+
- ''+
- ''+
- ''+
- ''+
- ''+
- ''+
- ''+
- ''+
- ''+
- ''+
- ''+
- ''+
- ''+
- ''+
- ''+
- ''+
- ''+
- ''+
- ''+
- ''+
- ' |
';
- var trElement = $(trStr)
- if(appendLast){
- trElement.appendTo("#tousseItemTable");//在表格最后一行追加
- }else{
- trElement.prependTo("#tousseItemTable");//在表格第一行追加行
- }
- refreshErrorRemarkView(row);
- refreshDamageRemarkView(row);
+function reduce(row){
+ var recycleAmount = parseInt($('#recycleAmount'+row).val(),10);
+ if(recycleAmount > 0){
+ $('#recycleAmount'+row).val(recycleAmount-1);
}
- return b;
}
-
-//待装载篮筐视图中的树形菜单伸缩的处理
-function toggleItems(spanElement){
- $(spanElement).toggleClass("minus");
- $(spanElement).nextAll('.sed').toggle();
-}
-
-function changeRecycleAmount(row){
- var originalValue = $('#originalValue'+row).val() == ''?0:parseInt($('#originalValue'+row).val(),10);
- var recycleAmount = $('#recycleAmount'+row).val() == ''?0:parseInt($('#recycleAmount'+row).val(),10);
- var originalValue = $('#originalValue'+row).val();
-}
-
-function setRemarkToRecycleItem(row,remark){
- remark = isUndefinedOrNullOrEmpty(remark)?"":remark;
- $('#tousseRemark'+row).val(remark);
- $("#dialogConfirm").dialog("close");
-}
-
-function setTousseRemark(row){
- $.ajax({
- type:'get',
- url:encodeURI(WWWROOT + '/disinfectSystem/core/httpOptionAction!getHttpOptionsById.do?time='+new Date()),
- data:'optionId=recycleItem_remark',
- dataType:'json',
- success:function(result){
- if(result.success){
- var htmlCode = "";
- var oldRemark = $('#tousseRemark'+row).val();
- for(var i = 0 ; i < result.data.length ; i++){
- var tmpRemark = result.data[i].value;
- var redColor = "";
- if(oldRemark == tmpRemark){
- redColor = "color:red;";
- }
- htmlCode += "" + result.data[i].value + "
"
- }
- if(htmlCode == ""){
- alertDiv("未设置回收物品备注信息!");
- }else{
- $("#dialogConfirm").dialog({
- resizable: false,
- height:530,
- width:800,
- title:'选择器械包备注信息',
- modal: true,
- open: function() {
- $("#confirmMsg").html(htmlCode);
- },
- close: function() {
- $("#confirmMsg").html("");
- },
- buttons: {
- "取消": function() {
- $( this ).dialog( "close" );
- }
- }
- });
- }
- }
- },
- error:function(XMLHttpRequest, textStatus, errorThrown){
- alertDiv("未知错误,请联系管理员!");
- }
- });
-}
-var layerIndex;
-function closeLayer(){
- layer.close(layerIndex);
- layerIndex = null;
-}
-var qmLayerIndex = null;
-function setQmLayerIndex(layerIndex){
- qmLayerIndex = layerIndex;
-}
-function closeQmLayer(){
- layer.close(qmLayerIndex);
- qmLayerIndex = null;
-}
-
-var materialMsg;
-function setMaterialMsg(mMsg){
- materialMsg = mMsg;
-}
-function getMaterialMsg(){
- return materialMsg;
-}
-
//打开编辑数量页面
var openElement;
function openUpdateAmount(obj,row){
- var isApplyEntireTousse = $('#isApplyEntireTousse'+row).val();
- var tousseType = $('#tousseType'+row).val();
-
- if(tousseType == '外来器械包'){
- alertDiv("外来器械包回收数量修改请使用旁边的按钮操作");
- return;
- }
- if(tousseType == '消毒物品' && '是' != isApplyEntireTousse){
- alertDiv("拆包的消毒物品回收数量修改请使用旁边的按钮操作");
- return;
- }
obj.blur();
var width = 550;
var height = 300;
@@ -2471,1705 +661,431 @@
offset : ['250px','']
});
}
-
-function openUpdateStuffInTheBasketAmount(obj,tousseName,name,type){
+//打开输入装载数量页面
+function openUpdateLoadAmount(obj,row){
+ if(!sstsConfig.enableCustomIntoBasketWithCustomAmount){
+ //没有启用此功能,不处理
+ return;
+ }
+ var recycleAmount = parseInt($('#recycleAmount'+row).val(),10);
+ var loadedAmount = parseInt($('#loadedAmount'+row).val(),10);
+ if(loadedAmount >= recycleAmount){
+ alertDiv("已经都装载入筐了");
+ return;
+ }
+ if($('#basketsUl').children().length <= 0){
+ alertDiv('请先扫描篮筐条码。');
+ return;
+ }
obj.blur();
var width = 550;
var height = 300;
if(resolution == '1980'){
width = 750;
height = 400;
}
- openElement = obj;
- layerIndex=layer.open({
+ layerIndex = layer.open({
type : 2,
- title : ['修改数量',true],
- content : 'updateAmount.jsp?resolution='+resolution+'&tousseName='+tousseName+'&name='+name+'&type='+type,
+ title : ['装载入筐',true],
+ content : 'updateAmount.jsp?resolution='+resolution+'&row='+row + '&recycleAmount='
+ + recycleAmount + '&loadedAmount=' + loadedAmount + '&from=customLoadedAmount',
area : [width + 'px' , height + 'px'],
border : [5, 0.3, '#fff', true],
closeBtn : [2 , true],
offset : ['250px','']
});
-
}
-
-/**
- * 获取回收误差信息,拼成字符串传到后台
- */
-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 changeRecycleAmount(){
+ //空实现。主要是updateAmount.jsp中有调用这个方法
}
-
-/**
- * 加急物品
- */
-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
- });
- }
- }
- });
- return urgentItemJsonArray;
+var layerIndex;
+function closeLayer(){
+ layer.close(layerIndex);
+ layerIndex = null;
}
-
/**
- * 获取左边的回收的信息.
- * @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 tousseOrIDCardInstanceBarcodes = $('#tousseOrIDCardInstanceBarcodes'+index).val();
- recyclingItemJsonArray.push({
- tousseName:tousseName,
- recycleAmount:recycleAmount,
- tousseDefinitionID:tousseDefinitionID,
- tousseRemark:tousseRemark,
- errorRemark:errorRemark,
- damageRemark:damageRemark,
- urgentLevel:urgentLevel,
- errorDamageQmKey:errorDamageQmKey,
- tousseOrIDCardInstanceBarcodes:tousseOrIDCardInstanceBarcodes
- });
- }
- });
- console.log(recyclingItemJsonArray)
- return recyclingItemJsonArray;
+function addWaitRecycleMaterialItem(row,materialItem){
+ var tousseName = materialItem.tousseName;
+ var materialName = materialItem.materialName;
+ var recycleAmount = materialItem.amount;
+ var tousseDefinitionID = materialItem.tousseDefinitionID;
+ var tousseAmount = materialItem.tousseAmountForMaterial;
+ var idCardBarcode = materialItem.idCardBarcode;
+ var putBasketMaxAmount = materialItem.putBasketMaxAmount;
+ var washClassifyType = materialItem.washClassifyType;
+ var materialInstanceId = materialItem.materialInstanceId;
+ var isImplant = materialItem.isImplant;
+ var tousseType = materialItem.tousseType;
+ if(tousseType==PACKAGE_TYPE_SPLIT|| tousseType==PACKAGE_TYPE_FOREIGN){
+ hasForeignTousse = true;
+ }
+ // var trElement = $(''+
+ // ''+
+ // ''+
+ // '' +
+ // ''+
+ // '' +
+ // ''+
+ // ''+
+ // ''+
+ // ''+
+ // ''+
+ // '' + idCardBarcode + ' | ' +
+ // '' + tousseName + ' | ' +
+ // ' | '+
+ // ' | '+
+ // '+ | '+
+ // ' | '+
+ // '- | '+
+ // ' | '+
+ // '入筐 | '+
+ // '
');
+
+//Annie 改
+ var trElement = $(''+
+ ''+
+ ''+
+ '' +
+ ''+
+ '' +
+ ''+
+ ''+
+ ''+
+ ''+
+ ''+
+ // '' + idCardBarcode + ' | ' +
+ // '' + tousseName + ' | ' +
+ ' | '+
+ ' | '+
+ '+ | '+
+ ' | '+
+ '- | '+
+ ' | '+
+ '入筐 | '+
+ '
');
+ $("#tousseItemTable").append(trElement);
+ return true;
}
-/**
- * 判断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;
+
+//待装载篮筐视图中的树形菜单伸缩的处理
+function toggleItems(spanElement){
+ $(spanElement).toggleClass("minus");
+ $(spanElement).nextAll('.sed').toggle();
}
+
function submitCheck(){
- var isThereTousseItems = false;
- var isAllTousseInTheBasket = true;
- var urgentAmountError = false;
- if($('#depart').val()== ''){
- alertDiv('请先扫描科室条码。');
- return false;
- }
- var recyclingRecordId = $('#recyclingApplicationId').val();
- if (isTousseItemTableEmpty() && recyclingRecordId == ''){
- alert("空白的回收单不能保存!");
- return false;
- }
- var isEmptyFormSubmit = true;
+ var isThereRecycleAmountEmpty = false;
$('#tousseItemTable').children().first().children().each(function(index,element){
if($('#deleted'+index).val() == '0'){
- 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;
- }
- }
- }
- }
+ isThereRecycleAmountEmpty = true;
+ return false;
}
});
-
- if(!isAllTousseInTheBasket){
- alertDiv('部分器械包回收数量大于装载数量,不能保存。');
+ if(isThereRecycleAmountEmpty){
+ 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;
}
-/**
- * 获取此次回收的数据.
- * @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.recyclingItemArray = getRecyclingItemInfo();
- return JSON.stringify(paramJson);
-}
-
-/**
- * 弹出确认提示筐
- * @param text 提示内容
- * @param yesCallback 选择“是”的回调函数
- * @param nocallback 选择“是”的回调函数
- * @param dialogWidth 对话框宽度
- * @param dialogHeight 对话筐高度
- */
-function dialogConfirm(text,yesCallback,nocallback , dialogWidth , dialogHeight){
- $("#dialogConfirm").dialog({
- resizable: false,
- height:dialogHeight ? dialogHeight : 310,
- width:dialogWidth ? dialogWidth : 600,
- modal: true,
- open: function() {
- $("#confirmMsg").html(text);
- },
- close: function() {
- $("#confirmMsg").html("");
- },
- buttons: {
- "是": function() {
- $( this ).dialog( "close" );
- if(yesCallback){
- yesCallback();
- }
-
- },
- "否": function() {
- $( this ).dialog( "close" );
- if(nocallback){
- nocallback();
- }
- }
- }
- });
-}
-
-/**
- * 检查是否有未归还的器械包,如果有,那就提示.
- * @param confirmation 确认回收记录操作
- * @param saveAndNew 保存并新建回收记录操作
- * @param print 保存并打印回收记录操作
- */
-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 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);
- }
-}
-/**
- * 显示回收物品清单
- */
-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" );
- }
- }
- });
- }
-}
-/**
- * 提交回收记录.
- * @param confirmation 确认回收记录操作
- * @param saveAndNew 保存并新建回收记录操作
- * @param print 保存并打印回收记录操作
- * @param recyclingAmountConfirm 是否确认回收数量
- */
-function submitFunction(confirmation,saveAndNew,print,recyclingAmountConfirm){
+var btSave=false;
+function doSaveAction(){
if(submitCheck()){
- //回收物品清单
- var recyclingTousses = [];
- var isPartIntheBasket = false;
- $('#tousseItemTable').children().first().children().each(function(index,element){
- if($('#deleted'+index).val() == '0'){
- var tousseName = $('#tousseName'+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;
- }
- }
- });
- //部分入筐提示
- 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 autoReturnTheBorrowingTousse 自动归还借物单
- * @param print 保存并打印回收记录操作
- */
-function submitFormFunction(confirmation,saveAndNew,autoReturnTheBorrowingTousse,print,recyclingAmountConfirm){
-
- alertDiv("保存中,请稍候......", true);
- var jsonStr = getJsonParams(confirmation);
- 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 : "" + jsonStr + "",
- 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 = "recycleForTouchScreen.jsp?resolution=" + resolution + "&rememberRecycleUser=" + rememberRecycleUser;
- }else{
- location.href = "awaitForRecycleList.jsp?resolution=" + resolution + "&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();
+ 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;
+ }
}
});
- }else{
- alertDiv(result.message);
}
-
- }
- },
- error: function(x, t, m) {
- closeDiv();
- if(t == "timeout") {
- alert("提交超时,请重试");
- } else {
- alert(t);
- }
- }
- });
-}
-
-/**
- * 保存回收记录
- */
-function doSaveAction(){
- submitFunction(false,false,false,false);
-}
-
-/**
- * 保存并新建回收记录
- */
-function doSaveAndNewAction(){
- submitFunction(false,true,false,false);
-}
-
-/**
- * 保存并打印回收记录
- */
-function doSaveAndPrintAction(){
- submitFunction(false,false,true,false);
-}
-
-/**
- * 保存并打印并新建回收记录
- */
-function doSaveAndPrintAndNewAction(){
- submitFunction(false,true,true,false);
-}
-
-/**
- * 确认回收记录
- */
-function doConfirmAction(){
- submitFunction(true,false,false,false);
-}
-/**
- * 确认回收数量(确认沟通)
- */
-function recyclingAmountConfirm(){
- submitFunction(false,false,false,true);
-}
-
-function end(){
- if($("#recyclingApplicationId").val() == ''){
- alertDiv("没有待回收记录,不能终止.");
- return;
- }
- var endCase = openModalWindow(WWWROOT+"/disinfectsystem/recyclingApplication/selectEndCause.jsp?time="+new Date(), "选择终止原因", "760", "400");
- if(endCase != null && endCase != undefined && endCase.length > 0){
- var paramStr = JSON.stringify(canTerminateTousseItemIds);
- $.ajax({
- type:'get',
- url:WWWROOT + '/disinfectSystem/invoicePlanAction!terminateTousseItems.do',
- data:'tousseItemIds=' + encodeURI(paramStr)+'&endCase='+encodeURI(endCase),
- dataType:'text',
- success:function(resultStr){
- var result = JSON.parse(resultStr);
- alertDiv(result.message);
- if(result.success){
- location.href = 'awaitForRecycleList.jsp?resolution=' + resolution;
- }
- },
- error:function(XMLHttpRequest, textStatus, errorThrown){
- }
+ });
});
+ window.opener.customIntoBasketFun(array);
+ window.close();
}
}
+
+function cancel() {
+ window.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){
- var success = putTousseInTheBasket(row);
- if(!success){
- return false;
- }
+ putMaterialInBasket(row,true);
+ //var success = putMaterialInBasket(row);
+ //if(!success){
+ //return false;
+ //}
}
}
});
+ refreshBasketStatus();
refreshAllBasketTotalNum();
+ sortBasket();
}
-
-function cancel(){
- if (confirm("确认取消吗?")) {
- location.href = 'awaitForRecycleList.jsp?resolution=' + resolution;
+/**
+ * 根据配置初始化控件
+ */
+function initConfigControl(){
+ var divElement = document.getElementById('divElement');
+ if(sstsConfig.recycleAllMaterialIntoBasket){
+ $('#allIntoBasket').css('visibility','visible');
+ }else{
+ $("#allIntoBasket").css('visibility','hidden');//元素隐藏,需要显示,否则拆分信息显示的位置会不对
}
}
-
-function getUnCleanedEntirelyTousseInfo(){
- var result = new Array();
- $('#tousseItemTable').children().first().children().each(function(i,element){
- var recycleAmount = parseInt($('#recycleAmount'+i).val(),10);
- var loadedAmount = parseInt($('#loadedAmount'+i).val(),10);
- var unLoadedAmount = recycleAmount - loadedAmount;
- if($('#isCleanedEntirely'+i).val() == '否' && unLoadedAmount > 0){
- var isThereIdentificationCard = $('#isThereIdentificationCard'+i).val();
- var tousseId = $('#tousseDefinitionID'+i).val();
- var idCardBarcodes = $('#barcodes'+i).val();
- if(isThereIdentificationCard == '是'){
- var idCardUnLoadedAmount = 0;
- if(!isUndefinedOrNullOrEmpty(idCardBarcodes)){
- var jsonArray = JSON.parse(idCardBarcodes);
- for(var j = 0;j < jsonArray.length;j++){
- if(jsonArray[j].addSuccess == false){
- addJsonItem(result,tousseId,1,'是',jsonArray[j].barcode);
- idCardUnLoadedAmount++;
- }
+/*
+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]);
}
- var recyclingErrorJsonArrayStr = $('#recyclingError' + i).val();
- if(!isUndefinedOrNullOrEmpty(recyclingErrorJsonArrayStr)){
- var recyclingErrorJsonArray = JSON.parse(recyclingErrorJsonArrayStr);
- for(var j = 0;j < recyclingErrorJsonArray.length;j++) {
- if(recyclingErrorJsonArray[j].materialName == '器械包标识牌'){
- var errorAmount = parseInt(recyclingErrorJsonArray[j].amount);
- var intoBasketAmount = parseInt(recyclingErrorJsonArray[j].intoBasketAmount);
- if(errorAmount - intoBasketAmount > 0){
- addJsonItem(result,tousseId,errorAmount - intoBasketAmount,'是','');
- }
- break;
- }
- }
- }
- }else{
- addJsonItem(result,tousseId,unLoadedAmount,'否','');
}
+ updateSplitInfo();
+ },
+ error : function() {
}
});
- return JSON.stringify(result);
}
+*/
-function addJsonItem(result,tousseId,unLoadedAmount,isIdCard,idCardBarcode){
- var obj = {};
- obj.tousseId = tousseId;
- obj.recycleAmount = unLoadedAmount;
- obj.isThereIdentificationCard = isIdCard;
- obj.idCardBarcode = idCardBarcode;
- var len = result.length;
- result[len] = obj;
+function encodeAll(text) {
+ var encoded = encodeURI(text);
+ encoded = encoded.replace('#', '%23');// 对#号进行转码
+ return encoded;
}
-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 openCustomIntoBasketPage(){
- var data = getUnCleanedEntirelyTousseInfo();
- var tousseIntoBasketInfo = JSON.stringify(getTousseIntoBasketInfo());
- if(data != "[]"){
- var url = encodeURI(WWWROOT+'/disinfectsystem/touchScreen/recycle/customIntoBasket.jsp?data='+data+'&resolution=1980'
- + '&tousseIntoBasketInfo=' + tousseIntoBasketInfo + '&recyclingApplicationId=' + $('#recyclingApplicationId').val());
- var style='menubar=no,location=no,directories=no,toolbar=no,statusbar=no,resizable=yes,top=100,left=100,width=1400,height=800,scrollbars=null';
- var popwin=window.open(url,"customIntoBasket",style);
+/**
+ * 根据篮筐的当前状态,更新拆分篮筐数
+ */
+function updateSplitInfo(){
+ if(sstsConfig.showSplitInfoInCustomIntoBasket&&hasForeignTousse){
+ $('.splitInfo').show();
+ $('#spanToolsInfo').html("工具拆分篮筐数:" + toolsSplitBasketAmount);
+ $('#spanImplantInfo').html("植入物拆分篮筐数:" + implantSplitBasketAmount);
}else{
- alertDiv("没有符合条件待装载的物品!");
+ $('.splitInfo').hide();
}
-
}
-//选择器械包
-function openSelectTousse(tousseName){
-
- var tousseType = $('#appType').val();
- if(tousseType == TYPE_FOREIGNTOUSSEAPPLIACTION){
- alertDiv("外来器械回收单不能添加器械包!");
- return false;
- }
- if(!checkSelectDepartBeforeAddTousse()){
- return false;
- }
- if(!tousseName){
- tousseName = '';
- }
-
- var width = 780;
- var height = 650;
- var designedTousseWidth = 1080;
- var designedTousseHeight = 770;
- var designedWidth = 1920;
- var designedHeight = 1080;
- var actualWidth = window.screen.availWidth;
- var actualHeight = window.screen.availHeight;
- var offsetTop = 100;
- var heightExtra = 10;
- if(resolution == '1980'){
- width = 1380;
- height = 830;
- }
- var zoomRatio = calculateZoomRatio(designedWidth,designedHeight,actualWidth,actualHeight);
- var size = calculateSizeAfterZoom(designedTousseWidth,designedTousseHeight,zoomRatio);
-
- width = size.width;
- height = size.height;
-
- offsetTop = offsetTop*zoomRatio;
- layerIndex=layer.open({
- type : 2,
- title : ['添加器械包',true],
- content : 'addTousse.jsp?resolution='+resolution+'&width='+width+'&height='+height+'&tousseName='+tousseName,
- area : [ width + 'px' , height +heightExtra+ 'px'],
- border : [5, 0.3, '#fff', true],
- closeBtn : [2 , true],
- offset : [offsetTop+'px','']
- });
+function sortBasket(){
+// $("#basketsUl").prepend($("#basketsUl li.otherBasket"));//其实不需要,因为把植入物跟空篮筐都排前后,剩下的自然就在最后面了
+ $("#basketsUl").prepend($("#basketsUl li.containImplantBasket"));
+ $("#basketsUl").prepend($("#basketsUl li.emptyBasket"));
}
-//输入备注
-function openInputRemark(){
- if(!sstsConfig.modifyRemarkInRecycling){
- return;
- }
- var width = 780;
- var height = 100;
- var designedTousseWidth = 1080;
- var designedTousseHeight = 100;
- var designedWidth = 1920;
- var designedHeight = 1080;
- var actualWidth = window.screen.availWidth;
- var actualHeight = window.screen.availHeight;
- var offsetTop = 400;
-
- if(resolution == '1980'){
- width = 1380;
- height = 100;
- }
- var zoomRatio = calculateZoomRatio(designedWidth,designedHeight,actualWidth,actualHeight);
- var size = calculateSizeAfterZoom(designedTousseWidth,designedTousseHeight,zoomRatio);
-
- var width = 980;
- var height = 330;
- var heightExtra = 10;
-
- offsetTop = offsetTop*zoomRatio;
- layerIndex=layer.open({
- type : 2,
- title : ['输入备注',true],
- content : 'inputRemark.jsp?resolution='+resolution+'&width='+width+'&height='+height+'&remark=' + encodeURIComponent($('#remarkText').text()),
- area : [ width + 'px' , height +heightExtra+ 'px'],
- border : [5, 0.3, '#fff', true],
- closeBtn : [2 , true],
- offset : [offsetTop+'px','']
- });
-}
+//工具拆分篮筐数
+var toolsSplitBasketAmount = 0;
+//植入物拆分篮筐数
+var implantSplitBasketAmount = 0;
/**
- * 设置申请单备注
- * @param remark
+ * 刷新篮筐的状态。如果是外来器械,并且配置的显示拆分信息的,需要显示拆分篮筐数及是否包含植入物。
+ * 如果有篮筐序号,就在篮筐名称前面显示篮筐序号
+ * @returns
*/
-function setRemark(remark){
- if(isUndefinedOrNullOrEmpty(remark)){
- remark = "";
- }
- $('#remarkText').text(remark);
-}
-// 添加质量监测记录
-function addQM(){
-
- var width = 780;
- var height = 650;
- var designedTousseWidth = 1080;
- var designedTousseHeight = 770;
- var designedWidth = 1920;
- var designedHeight = 1080;
- var actualWidth = window.screen.availWidth;
- var actualHeight = window.screen.availHeight;
- var offsetTop = 100;
- var heightExtra = 10;
- if(resolution == '1980'){
- width = 1380;
- height = 830;
- }
- var zoomRatio = calculateZoomRatio(designedWidth,designedHeight,actualWidth,actualHeight);
- var size = calculateSizeAfterZoom(designedTousseWidth,designedTousseHeight,zoomRatio);
-
- width = size.width;
- height = size.height;
-
- offsetTop = offsetTop*zoomRatio;
- qmLayerIndex=layer.open({
- type : 2,
- title : ['添加质量监测记录',true],
- content : 'addQualityMonitoring.jsp?resolution='+resolution+'&width='+width+'&height='+height,
- area : [ width + 'px' , height +heightExtra+ 'px'],
- border : [5, 0.3, '#fff', true],
- closeBtn : [2 , true],
- offset : [offsetTop+'px','']
- });
-}
-function customIntoBasketFun(data){
- if(data != null){
- for(var j = 0;j < data.length;j++){
- var materials = data[j].materials;
- var tousseName = data[j].tousseName;
- var recycleAmount = data[j].recycleAmount;
- var tousseDefinitionID = data[j].tousseDefinitionID;
- var tousseType = data[j].tousseType;
- var tousseIdCardBarcode = data[j].idCardBarcode;
- var basketGroupBarcodeArray = new Array();
- for(var i = 0;i < materials.length;i++){
- var item = materials[i];
- var sigle = true;
- var b_len = basketGroupBarcodeArray.length;
- for(var n = 0;n < b_len;n++){
- if(basketGroupBarcodeArray[n] == item.basketBarcode){
- sigle = false;
+function refreshBasketStatus(){
+ toolsSplitBasketAmount = 0;
+ implantSplitBasketAmount = 0;
+ $("#basketsUl > li").each(function(){
+ $(this).removeClass('emptyBasket containImplantBasket');//用于排序篮筐的css类
+ var count = $(this).find('dl[class="sed clearfix"]').children().length;
+ if(count == 0){
+ $(this).addClass('emptyBasket');
+ $(this).find('div').addClass('status-empty-yellow');
+ }else{
+ $(this).find('div').removeClass('status-empty-yellow');
+ }
+ refreshSequence($(this),0);
+ if(sstsConfig.showSplitInfoInCustomIntoBasket){
+ var containImplant = '否';
+ var containTools = '否';
+ var haveForeignTousse = false;//是否有外来器械
+ //遍历是否有植入物,然后存到 li 的hidden里(存了篮筐信息的)
+ $(this).find('dl[class="sed clearfix"] > input').each(function(){
+ var jsonStr = $(this).val();
+ var materialInfo = JSON.parse(jsonStr);
+ if(materialInfo.tousseType == PACKAGE_TYPE_SPLIT || materialInfo.tousseType==PACKAGE_TYPE_FOREIGN){
+ if(materialInfo.isImplant == '是'){
+ containImplant = "是";
+ $(this).next().next().addClass('status-implant-green');
+ }else{
+ containTools = '是';
+ $(this).next().next().removeClass('status-implant-green');
}
}
- if(sigle){
- basketGroupBarcodeArray[b_len] = item.basketBarcode;
- //添加篮筐
- var isBasketLoaded = false;
- $("#basketsUl li").each(function(){
- var hide = $(this).find('input');
- var oldItem = JSON.parse(hide.val());
- if(oldItem.barcode == item.basketBarcode){
- refreshSequence($(this),item.sequence);
- isBasketLoaded = true;
- return false;
- }
- });
- if(!isBasketLoaded){
- createBasketUiElement(item.basketBarcode,item.basketId,item.containerName,item.washClassifyType,item.sequence);
- $("#scanContainerBarcodeTipUl").hide();
- }
- }
+ });
+
+ var el = $(this).find('.containImplant');
+ if(containImplant == '是'){
+ $(this).addClass('containImplantBasket');
+ implantSplitBasketAmount++;
+ el.html("含有植入物");
+ updateRemoveImplantBtn($(this),true);
+ }else{
+ el.html("");
+ updateRemoveImplantBtn($(this),false);
}
- basketGroupBarcodeArray.sort();
- var orgUnitName = $('#depart').val();
- for(var i = 0;i < materials.length;i++){
- var item = materials[i];
- var basketItem = {
- ci_id: "",
- type: '材料',
- orgUnitName: orgUnitName,
- tousseName: tousseName,
- tousseDefinitionID: tousseDefinitionID,
- tousseType: tousseType,
- materialName: item.materialName,
- showName: item.materialName,
- amount: item.materialAmount,
- tousseAmount: item.tousseAmountForMaterial,
- basketBarcode: item.basketBarcode,
- idCardBarcode: item.idCardBarcode,
- putBasketMaxAmount:item.putBasketMaxAmount,
- basketGroupBarcodes:basketGroupBarcodeArray.join(";")
- };
- addBasketItemElement(basketItem);
+ if(containTools == '是'){
+ toolsSplitBasketAmount++;
}
-
- $('#tousseItemTable').children().first().children().each(function(i,element){
- if($('#tousseDefinitionID'+i).val() == tousseDefinitionID){
- $('#loadedAmount'+i).val(parseInt(recycleAmount,10)+parseInt($('#loadedAmount'+i).val(),10));
- var idCard = $('#isThereIdentificationCard'+i).val();
- if(idCard == '是' && tousseIdCardBarcode == ''){
- setIdCardErrorIntoBasketAmount(i,recycleAmount);
- }
- setTousseItemLoadedAmountCss(i);
- return false;
- }
- });
}
- refreshAllBasketTotalNum();
- refreshSplitBasketView();
- }
+ });
+ updateSplitInfo();
+ updateClassifyBasketSequence();
}
/**
- * 点击选中回收人员或是清点人员
- * @param currentElementId 当前被点中的元素的id
+ * 刷新篮筐材料总数量
+ * @param liElement
+ * @returns
*/
-function selectUserType(currentElementId){
- currentUserType = currentElementId;
- $("#" + currentElementId).css("background","#DDDDDD");
- if(currentElementId == userType_recycling){
- $("#operator").css("background","white");
- }else if(currentElementId == userType_operator){
- $("#recyclingUser").css("background","white");
+function refreshBasketTotalNum(liElement){
+ if(liElement){
+ var total = 0;
+ liElement.find('dd.materialNum').each(function(){
+ var num = parseInt($(this).html());
+ if(num){
+ total += num;
+ }
+ });
+ liElement.find('font.totalnum').html(total);
}
}
-//选择科室
-function selectCommunicationUser(currentElementId){
- //只有历史回收记录才能修改沟通确认人
-// if('history' != params_recordType){
-// return;
-// }
- var width = 780;
- var height = 650;
- var designedTousseWidth = 1080;
- var designedTousseHeight = 830;
- var designedWidth = 1920;
- var designedHeight = 1080;
- var actualWidth = window.screen.availWidth;
- var actualHeight = window.screen.availHeight;
- var offsetTop = 100;
- var heightExtra = 10;
- if(resolution == '1980'){
- width = 1100;
- height = 860;
- }
- var zoomRatio = calculateZoomRatio(designedWidth,designedHeight,actualWidth,actualHeight);
- var size = calculateSizeAfterZoom(designedTousseWidth,designedTousseHeight,zoomRatio);
-
- width = size.width;
- height = size.height;
-
- offsetTop = offsetTop*zoomRatio;
- layerIndex=layer.open({
- type : 2,
- title : ['选择沟通人',true],
- content : 'selectUser.jsp?p=p&searchLoginUserDepart=false&resolution='+resolution+'&width='+width+'&height='+height,
- area : [ width + 'px' , height +heightExtra+ 'px'],
- border : [5, 0.3, '#fff', true],
- closeBtn : [2 , true],
- offset : [offsetTop+'px','']
- });
-}
-function selectUser(userName,userFullName){
- if(isUndefinedOrNullOrEmpty(userName)){
- alertDiv('请选择沟通人');
- return;
- }
- if(isUndefinedOrNullOrEmpty(userFullName)){
- alertDiv('所选用户名不能为空');
- return;
- }
- $('#communicationUserName').val(userFullName);
- $('#communicationUserCode').val(userName);
-}
-//选择科室
-/*
-function openSelectDepart(){
- var canChangeDepart = false;
- if(isUndefinedOrNullOrEmpty(params_appId)){
- //添加的回收申请单,可以修改科室
- canChangeDepart = true;
- }else if(sstsConfig.canChangeDepartInRecyclingForwaitRecycleInvoicePlan){
- canChangeDepart = true;
- }
- //如果是历史回收记录,不能修改科室
- if('history' == params_recordType){
- canChangeDepart = false;
- }
- if(!canChangeDepart){
- //不可以修改科室,那就返回喽
- return;
- }
- var width = 780;
- var height = 650;
- var designedTousseWidth = 1080;
- var designedTousseHeight = 830;
- var designedWidth = 1920;
- var designedHeight = 1080;
- var actualWidth = window.screen.availWidth;
- var actualHeight = window.screen.availHeight;
- var offsetTop = 100;
- var heightExtra = 10;
- if(resolution == '1980'){
- width = 1100;
- height = 860;
- }
- var zoomRatio = calculateZoomRatio(designedWidth,designedHeight,actualWidth,actualHeight);
- var size = calculateSizeAfterZoom(designedTousseWidth,designedTousseHeight,zoomRatio);
-
- width = size.width;
- height = size.height;
-
- offsetTop = offsetTop*zoomRatio;
- layerIndex=layer.open({
- type : 2,
- title : ['选择科室',true],
- content : 'addDepart.jsp?resolution='+resolution+'&width='+width+'&height='+height,
- area : [ width + 'px' , height +heightExtra+ 'px'],
- border : [5, 0.3, '#fff', true],
- closeBtn : [2 , true],
- offset : [offsetTop+'px','']
- });
-}
-*/
/**
- *
-
- * 在清空器械包之前,要选删除篮筐
+ * 刷新所有篮筐的器械总数
+ * @returns
*/
-function emptyTousseItemTable(){
- $("#tousseItemTable").empty();
- $("#basketsUl").empty();
- tousseArray = [];
+function refreshAllBasketTotalNum(){
+ $("#basketsUl li").each(function(){
+ refreshBasketTotalNum($(this));
+ });
}
/**
- * 判断是否可以清空器械包列表。如果有丢失报损,需要先删除才能清空。需要先提醒用户做删除操作
+ * 更新移除植入物按钮。如果有配置,则显示移除植入物按钮,否则隐藏起来并调整样式
+ * @param liElement
+ * @param hasImplant
+ * @returns
*/
-function canEmptyTousseItemTable(){
- var canEmpty = true;
- $("#tousseItemTable > tbody > tr").each(function(row) {
- var style = $(this).attr("style");
- if (style != 'display: none;'){
- var message = checkHaveErrorDamage(row);
- if(!isUndefinedOrNullOrEmpty(message)){
- canEmpty = false;
- return false;
- }
- }
- });
- return canEmpty;
-}
-function selectDepart(departName,departCode){
- var oldValue = document.getElementById('departCode').value;
- //加载科室申领模板
- if(params_id == '' && params_appId == '' && sstsConfig.isLoadApplyTemplateForAddRecycleRecord == true){
- if(oldValue != departCode){
- if(!canEmptyTousseItemTable()){
- alertDiv('器械包有登记丢失报损信息,请先删除后再操作!');
- return false;
- }
- var processFun = function(){
- $.ajax({
- type:'get',
- url:WWWROOT + '/disinfectSystem/recyclingRecordAction!loadDepartmentAppTemplateForRecycle.do',
- data:'orgUnitCoding=' + encodeURI(departCode),
- dataType:'json',
- success:function(dataArray){
- document.getElementById('depart').value = departName;
- document.getElementById('departCode').value = departCode;
- 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
- };
- addToussItem(toussItem,false);
- }
- }
- }
- });
- }
- if(isTousseItemTableEmpty()){
- processFun();
- }else{
- dialogConfirm('切换科室将删除所有器械包,是否继续',processFun);
- }
- }
+function updateRemoveImplantBtn(liElement,hasImplant){
+ if(sstsConfig.showSplitInfoInCustomIntoBasket){
+ liElement.find('.btn-removeImplant').show();
+ liElement.find('.totalnum').hide();
+ liElement.find('i').css("text-align","right");
+ liElement.find('i').css("width","223px");
}else{
- document.getElementById('depart').value = departName;
- document.getElementById('departCode').value = departCode;
+ liElement.find('.btn-removeImplant').hide();
+ liElement.find('.totalnum').show();
+ liElement.find('i').css("text-align","center");
+ liElement.find('i').css("width","129px");
}
}
/**
- * 可以终止的TousseItem的id.已经回收但是还没有发货的话,也是可以终止的。
- * 目前部分发货不能终止
+ * 更新篮筐序号
+ * @returns
*/
-var canTerminateTousseItemIds = [];
-
-function loadItem(){
- //是否开启“一键入筐”的功能
- if(sstsConfig.recycleAllTousseIntoBasket){
- var divElement = document.getElementById('divElement');
- divElement.innerHTML = '';
- }
-
- selectUserType(currentUserType);
-
- document.onkeydown = showKeyDown;
- var recyclingApplicationId = params_appId;
- var barcode = params_barcode;
- var recyclingStatus = null;
- if(!isUndefinedOrNullOrEmpty(recyclingApplicationId)){
- DWREngine.setAsync(false);
- RecyclingApplicationTableManager.getRecyclingApplicationForRecycle(recyclingApplicationId,function(application){
- if(application == null)
- return;
- recyclingStatus = application.recyclingStatus;
- if(application.recyclingRecordId != null && application.type != TYPE_FOREIGNTOUSSEAPPLIACTION){//外来器械申请单二次回收,会有历史回收记录
- loadRecyclingRecordById(application.recyclingRecordId);
- }else{
- if (sstsConfig.showSettleAccountsDepartInRecycling){
- $("#depart").val(application.settleAccountsDepart);
- $("#departCode").val(application.settleAccountsDepartCoding);
- }else{
- $("#depart").val(application.depart);
- $("#departCode").val(application.departCoding);
- }
- $("#invoicePlanVersion").val(application.version);
- $("#appType").val(application.type);
- $("#applyTime").val(application.submitTime);
- $("#remarkText").text($("#remarkText").html() + (application.remark == null ? "" : application.remark));
- //备注添加申请人
- addApplicantToRemark(application);
-
- $("#recyclingApplicationId").val(application.id);
- $("#tousseItemTable").empty();
- $("#basketsUl").empty();
- if(application.type == '自定义器械包申请单'){
- $('#add-bao').hide();
- applicationType = application.type;
- }
- if(application.applicationItems != null){
- var row = 0;
- canTerminateTousseItemIds = [];
- for(var i = 0 ; i< application.applicationItems.length ; ++i){
- //申请项
- var item = application.applicationItems[i];
- if(item.diposable == '否' && item.isRecycling != '否' && item.tousseType != '敷料包' && item.tousseType != '自制物品'){
- var recycleAmount = item.prepareRecycleAmount;
- if(recycleAmount == null){
- recycleAmount = item.amount;
- }
- var errorDamageQmKey = item.errorDamageQmKey;
- if(isUndefinedOrNullOrEmpty(errorDamageQmKey)){
- var timeStr = new Date().getTime();
- errorDamageQmKey = item.tousseDefinitionId + "_" + timeStr;
- }
- var toussItem = {
- row: row,
- tousseItemId: '',
- tousseName: item.tousseName,
- tousseDefinitionID: item.tousseDefinitionId,
- applicationAmount: item.amount,
- recycleAmount: recycleAmount,
- loadedAmount: 0,
- isCleanedEntirely: item.isCleanedEntirely,
- tousseType: item.tousseType,
- isThereIdentificationCard: item.isThereIdentificationCard,
- isApplyEntireTousse: item.isApplyEntireTousse,
- urgentAmount : item.urgentAmount,
- errorRemark : item.errorRemark,
- damageRemark : item.damageRemark,
- urgentLevel : item.urgentLevel,
- tousseRemark : '',
- errorDamageQmKey : errorDamageQmKey
- };
- addToussItem(toussItem,false);
- canTerminateTousseItemIds.push(item.id);
- ++row;
- }
- }
- //是否有丢失报损
- var tousseBarcodes = application.tousseBarcodes;
- if(!isUndefinedOrNullOrEmpty(tousseBarcodes)){
- $.ajax({
- type:'get',
- url:WWWROOT + '/disinfectSystem/recyclingRecordAction!findMaterialErrorDamageByTousseBarcode.do',
- data:'tousseBarcodes=' + encodeURI(tousseBarcodes),
- dataType:'json',
- success:function(result){
- //result的格式为:[{tousseBarcode:"包条码1",tousseDefinitionId:"包定义1",unSupplementMaterials:[{MaterialErrorDamageDetail对象1},{MaterialErrorDamageDetail对象2}]}
- //,{tousseBarcode:"包条码2",tousseDefinitionId:"包定义2",unSupplementMaterials:[{MaterialErrorDamageDetail对象1},{MaterialErrorDamageDetail对象2}]}...{}]
- for(var i = 0 ; i < result.length ; i++){
- var item = result[i];
- $('#tousseItemTable').children().first().children().each(function(j,element){
- if($('#tousseDefinitionID' + j).val() == item.tousseDefinitionId){
- loadUnSupplementMaterial(item,j,item.tousseBarcode);
- }
- });
- }
- },
- error:function(msg){
-
- }
- });
- }
- //如果回收数量为0不显示
- if(sstsConfig.hideZeroPrerecycleAmountTousseItem && application.isPrepareRecycled === 1){
- //配置为预回收为0的物品不显示,相当于删除,但是需要是没有丢失报损的
- var rows = $("#tousseItemTable > tbody > tr").length;
- for(var index = 0; index < rows;++index){
- var message = checkHaveErrorDamage(index);
- if(isUndefinedOrNullOrEmpty(message)){
- var recycleAmountStr = $("#recycleAmount" + index).val();
- var recycleAmount = parseInt(recycleAmountStr);
- if(recycleAmount==0){
- deleteTousseItem(index);
- }
- }
- }
- }
- }
+function updateClassifyBasketSequence(){
+ if(sstsConfig.enableClassifyBasketSequence){
+ for(var tdid in basketSequences){
+ var sequences = basketSequences[tdid];
+ for(var i = 0; i < sequences.length;++i){
+ var liElement = sequences[i];
+ refreshSequence(liElement,i+1);
}
- });
- DWREngine.setAsync(true);
- }
- var id = params_id;
- if(!isUndefinedOrNullOrEmpty(id)){
- loadRecyclingRecordById(id);
- }else{
- $("#recyclingTime").val(today);
-
- var recyclePageCheckUserDefaultCurrentUser = true;
- if(sstsConfig.recyclePageCheckUserDefaultCurrentUser == false){
- recyclePageCheckUserDefaultCurrentUser = false;
}
- //如果配置为默认当前登录人为清点人,则赋值
- if(recyclePageCheckUserDefaultCurrentUser != false){
- $("#operator").val(userName);
- }
- //触摸屏回收回收人设置默认值 (默认值取当前登录用户)
- if(sstsConfig.isRecycleUserSetDefaultValue == true){
- $("#recyclingUser").val(userName);
- }
-
- if(rememberRecycleUser == 'true'){
- $("#recyclingUser").val(sessionRecyclingUser);
- $("#operator").val(sessionOperator);
- }else{
- //回收人使用上一次回收时选的回收人
- if(sstsConfig.recyclePageRecyclingUserDefaultLastRecyclingUser == true){
- $("#recyclingUser").val(sessionRecyclingUser);
- }
- //清点人使用上一次回收时选的清点人
- if(sstsConfig.recyclePageOperatorDefaultLastOperator == true){
- $("#operator").val(sessionOperator);
- }
- }
- //如果有传递科室参数,那设置回收科室,并加载模板
- if(!isUndefinedOrNullOrEmpty(params_departCoding)){
- selectDepart(params_departName,params_departCoding);
- }
}
-
- if(isSecondSupplyRoom && id == "" && params_appId == ""){
- //二级供应室回收时科室名称与编码改为也不赋值
- //$("#depart").val(secondOrgUnitName);
- //$("#departCode").val(secondOrgUnitCoding);
- }
-
- //如果篮筐为空,隐藏扫描篮筐提示
- if($("#basketsUl > li").length == 0){
- $("#scanContainerBarcodeTipUl").show();
- }else{
- $("#scanContainerBarcodeTipUl").hide();
- }
-
- checkLoadedAmount();
-
- //如果是历史回收记录界面进入,则不显示终止按钮
- if(canTerminateTousseItemIds.length == 0){
- //没有可以终止的申请项,那就把终止按钮隐藏
- $('#btn-terminate').hide();
- }
- //是否显示保存并打印按钮
- if(sstsConfig.showRecyclingPrintDetail && $("#appType").val() == TYPE_FOREIGNTOUSSEAPPLIACTION){
- $('#saveAndPrintBtnTd').show();
- }else{
- $('#saveAndPrintBtnTd').hide();
- }
- //是否显示保存打印并新建按钮
- if(sstsConfig.showRecyclingSaveAndPrintAndNewActionButton){
- $('#saveAndPrintAndNewBtnTd').show();
- }else{
- $('#saveAndPrintAndNewBtnTd').hide();
- }
- if(recyclingStatus == '部分回收'){
- $('#saveBtnTd').show();
- }
- refreshSplitBasketView();
- refreshAllBasketTotalNum();
- if('history' != params_recordType || !getSystemSetConfig('confirmRecyclingAmount',true)){
- $('div.communicationUserName').hide();
- $('#recyclingAmountConfirm').hide();
- }else{
- $("#remark").css('max-width','582px');
- }
- if(ENABLE_SPEECH_RECOGNITION){
- setTousseGrammer();
- }
}
-
-//装载数量根据其值更新背景色
-function checkLoadedAmount(){
- $('#tousseItemTable').children().first().children().each(function(i,element){
- var recycleAmount = parseInt($('#recycleAmount' + i).val(),10);
- var loadedAmount = parseInt($('#loadedAmount' + i).val(),10);
- if(loadedAmount > 0 && recycleAmount > loadedAmount){
- $("#loadedAmount" + i).css("background","#FFE66F");//黄色
- }else if(recycleAmount == loadedAmount){
- $("#loadedAmount" + i).css("background","#b7d9a5");//绿色
- }else{
- $("#loadedAmount" + i).css("background","#FFFFFF");//默认白色
+function refreshSequence(liElement,sequence){
+ if(liElement){
+ if(!sequence || sequence <= 0){
+ sequence = 0;
}
- });
-}
-//备注添加申请人
-function addApplicantToRemark(application){
- var confirmRecyclingAmount = getSystemSetConfig('confirmRecyclingAmount',true);
- if(confirmRecyclingAmount){
- var rmk = $("#remarkText").text();
- if(!isUndefinedOrNullOrEmpty(rmk)){
- rmk += ";";
+ var basketHidenValue = liElement.find('input:first').val();
+ if(basketHidenValue){
+ var basketInfo = JSON.parse(basketHidenValue);
+ basketInfo.sequence = sequence;
+ liElement.find('input:first').val(JSON.stringify(basketInfo))
+ var showName = sequence > 0?(sequence + '.' + basketInfo.containerName):basketInfo.containerName;
+ liElement.find('div.basketName div:last').html(showName);
}
- if(!isUndefinedOrNullOrEmpty(application.applicant)){
- rmk += '申请人:' + application.applicant;
- }
- $("#remarkText").text(rmk);
}
}
-/**
- * 根据回收记录id加载回收记录的数据.
- * @param id
- */
-function loadRecyclingRecordById(id){
- DWREngine.setAsync(false);
- RecyclingRecordTableManager.getRecyclingRecordById(id,function(record){
- record = eval("("+record+")");
- if(record != null){
- $("#id").val(record.id);
- $("#depart").val(record.depart);
- $("#recyclingUser").val(record.recyclingUser);
- $("#operator").val(record.operator);
- $("#departCode").val(record.departCode);
- $("#recyclingTime").val(dateObjFormat(record.recyclingTime));
- $("#communicationUserName").val(record.communicationUserName);
- $("#communicationUserCode").val(record.communicationUserCode);
- var application = record.recyclingApplication;
- if(application != null){
- $("#recyclingApplicationId").val(application.id);
- $("#invoicePlanVersion").val(application.version);
- var recordType = application.type;
- if(recordType == '自定义器械包申请单'){
- $('#add-bao').hide();
- applicationType = application.type;
- }
-
- $("#appType").val(application.type);
- $("#applyTime").val(dateObjFormat(application.submitTime));
- $("#remarkText").text($("#remarkText").text() + (application.remark == null ? "" : application.remark));
- addApplicantToRemark(application);
- }
- userName = record.operator;
- $("#tousseItemTable").empty();
- $("#basketsUl").empty();
-
- if(record.status == '未确认'){
- $('#confirmBtnTd').show();
- }else if(record.status == '已确认'){
- $('#saveBtnTd').hide();
- $('#saveAndNewBtnTd').hide();
- $('#recyclingAmountConfirm').hide();
- }
- if(application != null){
- //部分回收需要能够再次保存
- if(application.recyclingStatus == '部分回收'){
- $('#saveBtnTd').show();
- }
- }
- var row = 0;
- //快速回收后未回收的包
- var recyclingApplication = record.recyclingApplication;
- if(record.items != null){
- canTerminateTousseItemIds = [];
- for(var i = 0 ; i< record.items.length ; i++){
- var tousseItem = record.items[i];
-
- var applyAmount = tousseItem.amount;
- if(recyclingApplication != null && recyclingApplication.applicationItems != null){
- var applyItems = recyclingApplication.applicationItems;
- for(var n = 0;n < applyItems.length;n++){
- if(applyItems[n].tousseDefinitionId == tousseItem.tousseDefinitionId){
- applyAmount = applyItems[n].amount;
- break;
- }
- }
- }
- var errorDamageQmKey = tousseItem.errorDamageQmKey;
- if(isUndefinedOrNullOrEmpty(errorDamageQmKey)){
- var timeStr = new Date().getTime();
- errorDamageQmKey = tousseItem.tousseDefinitionId + "_" + timeStr;
- }
- var toussItem = {
- row: row,
- tousseItemId: tousseItem.id,
- tousseName: tousseItem.tousseName,
- tousseDefinitionID: tousseItem.tousseDefinitionId,
- applicationAmount: applyAmount,
- recycleAmount: tousseItem.amount,
- loadedAmount: tousseItem.amount,
- isCleanedEntirely: tousseItem.isCleanedEntirely,
- tousseType: tousseItem.tousseType,
- isThereIdentificationCard: tousseItem.isThereIdentificationCard,
- isApplyEntireTousse: tousseItem.isApplyEntireTousse,
- urgentAmount : tousseItem.urgentAmount,
- errorRemark : tousseItem.errorRemark,
- damageRemark : tousseItem.damageRemark,
- urgentLevel : tousseItem.urgentLevel,
- tousseRemark : tousseItem.remark,
- errorDamageQmKey : errorDamageQmKey
- };
- var successAdd = addToussItem(toussItem,false);
- if(!successAdd){
- continue;
- }
- var errorLen = tousseItem.recyclingErrors.length;
- if(errorLen > 0){
- var recyclingErrorJsonArray = new Array();
- for(var j = 0;j < errorLen;j++){
- var error = tousseItem.recyclingErrors[j];
- if(error.amount <= 0){
- continue;
- }
- var errorObj = {
- detailId: error.id,
- tousseDefinitionID: error.tousseDefinitionId,
- materialDefinitionId: error.materialDefinitionId,
- materialName: error.materialName,
- amount: error.amount,
- errorType: error.errorType,
- tousseBarcode:error.tousseBarcode,
- intoBasketAmount:error.amount,
- errorDamageQmKey : error.errorDamageQmKey
- };
- recyclingErrorJsonArray.push(errorObj);
- }
- setTousseItemRecyclingError(row,JSON.stringify(recyclingErrorJsonArray));
- if(recyclingErrorJsonArray.length > 0){
- document.getElementById('showTousseName'+row).className = 'input-a-yellow';
- document.getElementById('recyclingErrorButton'+row).className = 'btn-b-edit';
- }
- }
- var damageLen = tousseItem.recyclingDamages.length;
- if(damageLen > 0){
- var recyclingDamageJsonArray = new Array();
- for(var j = 0;j < damageLen ; j++){
- var damage = tousseItem.recyclingDamages[j];
- if(damage.amount <= 0){
- continue;
- }
- var item = {
- detailId: damage.id,
- tousseDefinitionID: damage.tousseDefinitionId,
- materialDefinitionId: damage.materialDefinitionId,
- materialName: damage.materialName,
- tousseBarcode:damage.tousseBarcode,
- amount: damage.amount,
- errorDamageQmKey : damage.errorDamageQmKey
- };
- recyclingDamageJsonArray.push(item);
- }
- setTousseItemRecyclingDamage(row,JSON.stringify(recyclingDamageJsonArray));
- if(recyclingDamageJsonArray.length > 0){
- document.getElementById('showTousseName'+row).className = 'input-a-yellow';
- document.getElementById('recyclingDamageButton'+row).className = 'btn-c-edit';
- }
- }
- row++;
- }
- }
-
- var applicationitems = null;
- var recyclingStatus = null;
- var deliverStatus = null;
- var endStatus = null;
-
- if (recyclingApplication != null) {
- recyclingStatus = recyclingApplication.recyclingStatus;
- applicationitems = recyclingApplication.applicationItems;
- deliverStatus = recyclingApplication.deliverStatus;
- endStatus = recyclingApplication.endStatus;
- }
-
- if(applicationitems != null){
- for(var i = 0; i < applicationitems.length;i++){
- var tousseDefinitionId = applicationitems[i].tousseDefinitionId;
- var recycled = false;
- if(record.items != null){
- for(var j = 0 ; j< record.items.length ; j++){
- var tousseDefinitionId2 = record.items[j].tousseDefinitionId;
- if(tousseDefinitionId == tousseDefinitionId2){
- recycled = true;
- }
- }
- }
- if(!recycled && recyclingStatus != "已回收" && recyclingStatus != '已接收'){
- if(applicationitems[i].diposable == '否' && applicationitems[i].isRecycling == '是' && applicationitems[i].tousseType != '敷料包' && applicationitems[i].tousseType != '自制物品'){
- var errorDamageQmKey = applicationitems[i].errorDamageQmKey;
- if(isUndefinedOrNullOrEmpty(errorDamageQmKey)){
- var timeStr = new Date().getTime();
- errorDamageQmKey = applicationitems[i].tousseDefinitionId + "_" + timeStr;
- }
- var recyclingAmount = applicationitems[i].recyclingTempAmout;
- if(!recyclingAmount){
- recyclingAmount = applicationitems[i].amount;
- }
- var toussItem = {
- row: row,
- tousseItemId: '',
- tousseName: applicationitems[i].tousseName,
- tousseDefinitionID: applicationitems[i].tousseDefinitionId,
- applicationAmount: applicationitems[i].amount,
- recycleAmount: recyclingAmount,
- loadedAmount: 0,
- isCleanedEntirely: applicationitems[i].isCleanedEntirely,
- tousseType: applicationitems[i].tousseType,
- isThereIdentificationCard: applicationitems[i].isThereIdentificationCard,
- isApplyEntireTousse: applicationitems[i].isApplyEntireTousse,
- urgentAmount : applicationitems[i].urgentAmount,
- urgentLevel : applicationitems[i].urgentLevel,
- tousseRemark : '',
- errorDamageQmKey : errorDamageQmKey
- };
- addToussItem(toussItem,false);
- canTerminateTousseItemIds.push(applicationitems[i].id);
- row++;
- }
- }else if(deliverStatus != '已发货' && deliverStatus != '部分发货' && endStatus != '已终止'){
- //单没有发货,也没有终止那已经回收的物品也是可以终止的
- //如果recycled为true,说明回收项中包含对应的申请项,也就是在界面上是可以看到的
- if(recycled && applicationitems[i].diposable == '否' && applicationitems[i].tousseType != '敷料包' && applicationitems[i].tousseType != '自制物品'){
- if('是' == applicationitems[i].isInvoice){
- canTerminateTousseItemIds.push(applicationitems[i].id);
- }
- }
- }
- }
- }
- if(record.classifyBaskets != null){
- for(var i = 0 ; i< record.classifyBaskets.length ; i++){
- var basket = record.classifyBaskets[i];
-
- createBasketUiElement(basket.containerBarcode,basket.id,record.classifyBaskets[i].containerName,basket.washClassifyType,basket.sequence)
-
- for(var j = 0 ; j < record.classifyBaskets[i].classfiedItems.length ; j++){
- var ci = record.classifyBaskets[i].classfiedItems[j];
- var containerBarcode = record.classifyBaskets[i].containerBarcode;
- if(record.id != ci.recyclingRecordId){
- continue;
- }
- var tousseType = ci.tousseDefinition?ci.tousseDefinition.tousseType:'';
- if(ci.itemType == '材料'){
- var materialName = ci.materialDefinition.name;
- var putBasketMaxAmount = ci.materialDefinition.intoBasketMaxAmount;
- if(putBasketMaxAmount == null){
- putBasketMaxAmount = 0;
- }
- if(!isUndefinedOrNullOrEmpty(ci.materialDefinition.specification)){
- materialName += '['+ci.materialDefinition.specification+']';
- }
- var tousseNameForMaterial = ci.tousseNameForMaterial;
-
- var showBarcode = ci.idCardBarcode;
- if(ci.idCardBarcode == ""){
- showBarcode = tousseNameForMaterial;
- }
-
- var element = '';
- element += ''+materialName+'';
- element += ' '+showBarcode+'';
- element += ''+ci.amount+'';
- element += '删除';
-
- $('dl[class="sed clearfix"]:eq(0)').prepend(element);
- var json = getBasketItemJSON(ci.id,'材料',ci.orgUnitName,tousseNameForMaterial,materialName,ci.amount,ci.tousseAmountForMaterial,ci.idCardBarcode,ci.tousseDefinitionID,ci.basketGroupBarcodes,putBasketMaxAmount,tousseType);
- $('dl[class="sed clearfix"]:eq(0)').find("input:first").val(json);
-
- $('td[axis="materialName"]').each(function(){
- if($(this).text() == materialName){
- $(this).parent().remove();
- return false;
- }
- });
- }else{
- var putBasketMaxAmount = ci.tousseDefinition.intoBasketMaxAmount;
- if(putBasketMaxAmount == null){
- putBasketMaxAmount = 0;
- }
- var element = '';
- element += ''+ci.tousseDefinition.name+'';
- element += ' '+ci.idCardBarcode+'';
- element += ''+ci.amount+'';
- element += '删除';
- $('dl[class="sed clearfix"]:eq(0)').prepend(element);
-
- var json = getBasketItemJSON(ci.id,"器械包",ci.orgUnitName,ci.tousseDefinition.name,"",ci.amount,ci.tousseAmountForMaterial,ci.idCardBarcode,ci.tousseDefinitionID,ci.basketGroupBarcodes,putBasketMaxAmount,tousseType);
- $('dl[class="sed clearfix"]:eq(0)').find("input:first").val(json);
- }
- }
- }
- }
- }
- });
- DWREngine.setAsync(true);
-}
-
-function encodeAll(text) {
- var encoded = encodeURI(text);
- encoded = encoded.replace('#','%23');// 对#号进行转码
- encoded = encoded.replace('+','%2B');// 对+号进行转码
- return encoded;
-}
-
-// 语音识别的处理
-function setTousseGrammer(){
-// var tousses = [];
-// $('#tousseItemTable').children().first().children().each(
-// function(i, element) {
-// var tousseName = $('#tousseName' + i).val();
-// var row = i+'';
-// var tousseDefinitionId = $('#tousseDefinitionID' + i).val();
-// var tousse = {
-// tousseName : tousseName,
-// row : row,
-// tousseDefinitionId : tousseDefinitionId
-// }
-// tousses.push(tousse);
-// });
-// if(tousses.length > 0){
-// var g = {
-// type: 'tousses_recycle',
-// typeInfo: JSON.stringify({
-// tousses: tousses
-// })
-// }
-// updateGrammer(g);
-// startRecognize();
-// }
-// var tousseType = $('#appType').val();
-// if(tousseType == TYPE_FOREIGNTOUSSEAPPLIACTION){
-// return false;
-// }
- ///
- DWREngine.setAsync(false);
- TousseDefinitionTableManager.getInsideTousseAndDiposableGoods('',1,0,function(result){
- if(result != null && result.length > 0){
- var tousseArray = JSON.parse(result);
- if(tousseArray.length > 0){
- var tousses = [];
- for(var i=0;i
- <%@page import="com.forgon.disinfectsystem.entity.basedatamanager.supplyroomconfig.SupplyRoomConfig"%>
- <%@ page contentType="text/html; charset=UTF-8"%>
- <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
- <%@page import="java.util.Date"%>
- <%@page import="java.text.SimpleDateFormat"%>
- <%@page import="com.forgon.tools.SpringBeanManger"%>
- <%@page import="com.forgon.disinfectsystem.common.*"%>
- <%@page import="com.forgon.directory.acegi.tools.AcegiHelper"%>
- <%@page import="com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseDefinition"%>
-
- <%@page import="com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseInstance,com.forgon.disinfectsystem.entity.recyclingerror.RecyclingError,com.forgon.disinfectsystem.basedatamanager.supplyroomconfig.service.SupplyRoomConfigManager"%>
-
+ <%@page import="com.forgon.disinfectsystem.basedatamanager.supplyroomconfig.service.SupplyRoomConfigManager"%>
+ <%@page import="com.forgon.disinfectsystem.entity.recyclingerror.RecyclingError"%>
+ <%@page import="com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseInstance"%>
+ <%@page import="com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseDefinition"%>
+ <%@ page contentType="text/html; charset=UTF-8"%>
+ <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
+ <%@page import="java.util.Date"%>
+ <%@page import="java.text.SimpleDateFormat"%>
+ <%@page import="com.forgon.tools.SpringBeanManger"%>
+ <%@page import="com.forgon.directory.acegi.tools.AcegiHelper"%>
+
+
消毒供应中心质量追溯管理系统
+
-
-
-
@@ -33,300 +30,122 @@
-
-
-
-
-
-
-
-
-
-
-
+
+ <%----%>
+
-
-
+ layer.config({
+ extend: 'myskin/style.css', //加载您的扩展样式
+ skin: 'layer-ext-myskin'
+ });
+
+
+
+<%----%>
+
-
-<%
-String orgUnitCoding = AcegiHelper.getLoginUser().getOrgUnitCodingFromSupplyRoomConfig();
-String orgUnitName = AcegiHelper.getLoginUser().getCurrentOrgUnitName();
-SupplyRoomConfigManager supplyRoomConfigManager = (SupplyRoomConfigManager)SpringBeanManger.getBean("supplyRoomConfigManager");
-int supplyRoomType = supplyRoomConfigManager.getSupplyRoomTypeByOrgUnitCoding(orgUnitCoding);
-request.setAttribute("supplyRoomType", supplyRoomType);
-request.setAttribute("userName",AcegiHelper.getLoginUser().getUserFullName());
-SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
-request.setAttribute("today", dateFormat.format(new Date()));
-request.setAttribute("orgUnitCoding",orgUnitCoding);
-request.setAttribute("orgUnitName",orgUnitName);
-
-boolean havePosition = CssdUtils.getSystemSetConfigByNameBool("recycleAddQualityMonitoring");
-if(havePosition == true){
-session.setAttribute("recycleAddQualityMonitoring", "display: block");
-}else{
-session.setAttribute("recycleAddQualityMonitoring", "display: none");
-}
-
-String v_ENABLE_SPEECH_RECOGNITION = (String)session.getAttribute(WebConstants.KEY_ENABLE_SPEECH_RECOGNITION);
-boolean ENABLE_SPEECH_RECOGNITION = WebConstants.VALUE_ENABLE.equals(v_ENABLE_SPEECH_RECOGNITION);
-
-request.setAttribute("ENABLE_SPEECH_RECOGNITION",ENABLE_SPEECH_RECOGNITION);
-%>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ .totalnum{
+ display:inline-block;
+ text-align:center;
+ float:right;
+ width:86px;
+ height:58px;
+ overflow:hidden;
+ margin: 0px;
+ }
+
- 提示信息
-
+
条码长度不符合规范!
-
+
-
-
-
-
-
-
-
+
-
+
-
-
+
+
@@ -335,15 +154,41 @@
-
-
©2016 广州孚峻信息技术有限公司 版权所有
-
+
Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/expressStyle.css
===================================================================
diff -u -r20067 -r25392
--- ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/expressStyle.css (.../expressStyle.css) (revision 20067)
+++ ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/expressStyle.css (.../expressStyle.css) (revision 25392)
@@ -28,6 +28,7 @@
.blank40 {clear:both; height:40px; display:block; font-size:1px;overflow:hidden;}
.mbody{ background:url(express_recycle.jpg) no-repeat; width:1980px; height:1080px; margin:0 auto; position:relative}
+#mbody{ background:url(express_into_basket.jpg) no-repeat; width:1980px; height:1080px; margin:0 auto; position:relative}
.mbody .btn-h{ margin-left: 95px;margin-top: 113px; background:url(allIntoBasket.png) no-repeat; background-position:0 0; width:150px; height:64px; border:none; line-height:200px; overflow:hidden;}
.mbody .btn-h:hover{ margin-left: 95px;margin-top: 113px; background:url(allIntoBaskehovert.png) no-repeat; background-position:0 0; width:150px; height:64px; border:none; line-height:200px; overflow:hidden;}
@@ -42,6 +43,7 @@
.add-form .add a:hover{ background-position:0 -63px;}
.data-table{position:absolute; width:1160px; height:670px; bottom:90px; left:33px}
+#boxContent{position:absolute; width:1160px; height:670px; bottom:52px; left:33px}
.data-table .box{ height:580px; overflow-y:scroll; overflow-x:hidden;}
.data-table .box table{ margin:0 auto; width:1083px}
.data-table .input-a{ background:url(pic_bg.jpg) no-repeat 0 -206px; border:none; width:349px; height:62px; font-size:26px; padding:0 10px; line-height:40px;}
Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.jsp
===================================================================
diff -u -r25357 -r25392
--- ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.jsp (.../recycleForTouchScreen.jsp) (revision 25357)
+++ ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/recycleForTouchScreen.jsp (.../recycleForTouchScreen.jsp) (revision 25392)
@@ -270,9 +270,9 @@
科 室
类 型
申请时间
-
-
-
+ <%--
--%>
+ <%--<%––%>--%>
+ <%----%>
Index: ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/style.css
===================================================================
diff -u -r25349 -r25392
--- ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/style.css (.../style.css) (revision 25349)
+++ ssts-web/src/main/webapp/disinfectsystem/touchScreen/recycle/1980/images/style.css (.../style.css) (revision 25392)
@@ -68,7 +68,8 @@
padding: 4px 10px;
}
.data-table .btn-box input{ background:url(btn-box.jpg) no-repeat; border:none; line-height:200px; overflow:hidden; text-indent:-9999px}
-.data-table .btn-box input.btn-inventory{ width: 202px;height: 64px;border: none; background:url(btn-box_02.png) no-repeat; line-height: 0; border:none; overflow:hidden; text-indent:-9999px}
+.data-table .btn-box input.btn-inventory{ width: 140px;height: 64px;border: none; background:url(btn-box.png) no-repeat; background-position:-1210px 0; no-repeat; line-height: 0; border:none; overflow:hidden; text-indent:-9999px}
+.data-table .btn-box input.btn-inventory:hover{ width: 140px;height: 64px;border: none; background:url(btn-box.png) no-repeat; background-position:-1210px -64px; no-repeat; line-height: 0; border:none; overflow:hidden; text-indent:-9999px}
.data-table .btn-box .btn-e{ background:url(btn_save.png) no-repeat; background-position:0 0; width:137px; height:64px; border:none; line-height:200px; overflow:hidden; text-indent:-9999px; display:block;}
.data-table .btn-box .btn-e:hover{ background:url(btn_save1.png) no-repeat; background-position:0 0; border:none; line-height:200px; overflow:hidden; text-indent:-9999px; display:block;}
.data-table .btn-box .btn-b{ background-position:-142px 0; width:203px; height:64px;}