Index: ssts-web/src/main/webapp/disinfectsystem/thirdPartyTousse/thirdPartyTousseView.js =================================================================== diff -u -r39013 -r39270 --- ssts-web/src/main/webapp/disinfectsystem/thirdPartyTousse/thirdPartyTousseView.js (.../thirdPartyTousseView.js) (revision 39013) +++ ssts-web/src/main/webapp/disinfectsystem/thirdPartyTousse/thirdPartyTousseView.js (.../thirdPartyTousseView.js) (revision 39270) @@ -29,6 +29,10 @@ top.Ext4.getCmp('receiverId').setValue(data.receiverId); top.Ext4.getCmp('receiver').setValue(data.receiver); top.Ext4.getCmp('receiveTime').setValue(data.receiveTime); + top.Ext4.getCmp('shipperId').setValue(data.shipperId); + top.Ext4.getCmp('shipper').setValue(data.shipper); + top.Ext4.getCmp('verifierId').setValue(data.verifierId); + top.Ext4.getCmp('verifier').setValue(data.verifier); top.Ext4.getCmp('wareHouseId').setValue(data.wareHouseId); top.Ext4.getCmp('wareHouseName').setValue(data.wareHouseName); top.Ext4.getCmp('remark').setValue(data.remark); @@ -82,6 +86,7 @@ var columns = [ { header: "流水号", dataIndex: 'serialNumber', width: 150, renderer: modifyRecord }, { header: "接收时间", dataIndex: 'receiveTime', width: 150 }, + { header: "申请科室", dataIndex: 'orgUnitNames', width: 150 }, { header: "接收员", dataIndex: 'receiver', width: 150 }, { header: "送货员", dataIndex: 'sender', width: 150 }, { header: "数量(包)", dataIndex: 'tousseAmount', width: 150 }, @@ -107,7 +112,7 @@ }]; listStore = new Ext4.data.JsonStore({ - pageSize:20, + pageSize: 20, proxy: { type: 'ajax', url: WWWROOT + '/disinfectSystem/baseData/thirdPartyTousseReceiveRecordController/loadThirdPartyTousseReceiveRecord.mhtml', @@ -123,6 +128,7 @@ { name: 'receiveTime' }, { name: 'receiver' }, { name: 'receiverId' }, + { name: 'orgUnitNames' }, { name: 'sender' }, { name: 'tousseAmount' }, { name: 'remark' }, Index: ssts-web/src/main/webapp/disinfectsystem/thirdPartyTousse/thirdPartyTousseView.jsp =================================================================== diff -u -r39003 -r39270 --- ssts-web/src/main/webapp/disinfectsystem/thirdPartyTousse/thirdPartyTousseView.jsp (.../thirdPartyTousseView.jsp) (revision 39003) +++ ssts-web/src/main/webapp/disinfectsystem/thirdPartyTousse/thirdPartyTousseView.jsp (.../thirdPartyTousseView.jsp) (revision 39270) @@ -14,6 +14,8 @@ request.setAttribute("newDate", dateFormat.format(new Date())); request.setAttribute("isFirstSupplyRoomOrgUnit", configManager.isFirstSupplyRoomOrgUnit(currentOrgUnitCode)); + request.setAttribute("userName", userData.getUserFullName()); + request.setAttribute("userId", userData.getUserId()); %> @@ -48,6 +50,8 @@ var isFirstSupplyRoomOrgUnit = '${isFirstSupplyRoomOrgUnit}'; var newDate = '${newDate}'; + var userName = '${userName}'; + var userId = '${userId}'; Index: ssts-web/src/main/webapp/disinfectsystem/thirdPartyTousse/thirdPartyTousseForm.js =================================================================== diff -u -r39056 -r39270 --- ssts-web/src/main/webapp/disinfectsystem/thirdPartyTousse/thirdPartyTousseForm.js (.../thirdPartyTousseForm.js) (revision 39056) +++ ssts-web/src/main/webapp/disinfectsystem/thirdPartyTousse/thirdPartyTousseForm.js (.../thirdPartyTousseForm.js) (revision 39270) @@ -64,26 +64,33 @@ updateTousseSumAmount(sumAmount, tousseName); } else { showResult(result.message); + top.Ext4.getCmp('scanBarcode').setValue(''); } } }); } //保存器械包接收信息 -function saveConfig(id) { +function saveConfig(id, barcodeArr) { var mask = new Ext4.LoadMask({ msg: '正在保存,请稍候...', target: formPanel }); mask.show(); var receiverId = top.Ext4.getCmp('receiverId').getValue(); + var shipperId = top.Ext4.getCmp('shipperId').getValue(); + var verifierId = top.Ext4.getCmp('verifierId').getValue(); var sender = top.Ext4.getCmp('sender').getValue(); var remark = top.Ext4.getCmp('remark').getValue(); var wareHouseId = top.Ext4.getCmp('wareHouseId').getValue() || 0; var thirdPartyTousseInstances = []; var leftGrid = top.Ext4.getCmp('leftGrid').getStore(); for (var i = 0; i < leftGrid.getCount(); i++) { var item = leftGrid.getAt(i); + var invoiceAfterReceive = '否'; + if(barcodeArr.indexOf(item.data.barcode) >= 0){ + invoiceAfterReceive = '是'; + } thirdPartyTousseInstances.push({ barcode: item.data.barcode, tousseName: item.data.tousseName, @@ -92,19 +99,26 @@ operator: item.data.operator, reviewer: item.data.reviewer, sterileTime: item.data.sterileTime, + invoiceAfterReceive:invoiceAfterReceive, validUntil: item.data.validUntil }) } var params = { receiverId: receiverId, + shipperId: shipperId, + verifierId: verifierId, sender: sender, remark: remark, wareHouseId: parseInt(wareHouseId), id: id, thirdPartyTousseInstances: thirdPartyTousseInstances } + var url = WWWROOT + '/disinfectSystem/baseData/thirdPartyTousseReceiveRecordController/receiveThirdPartyTousse.mhtml'; + if(barcodeArr){ + url = WWWROOT + '/disinfectSystem/invoice/invoiceController/receiveAndInvoiceThirdPartyTousse.mhtml'; + } Ext4.Ajax.request({ - url: WWWROOT + '/disinfectSystem/baseData/thirdPartyTousseReceiveRecordController/receiveThirdPartyTousse.mhtml', + url: url, headers: { 'Content-Type': 'application/json' }, @@ -114,7 +128,7 @@ if (result.success) { configWin.close(); listStore.load(); - showResult('保存成功'); + showResult('保存并发货成功'); } else { showResult(result.message); } @@ -211,6 +225,10 @@ id: 'leftGrid', store: leftData, height: 420, + viewConfig: { + forceFit: true + }, + selModel: new Ext4.selection.CheckboxModel(), tbar: [{ text: '扫描条码:' }, { @@ -242,7 +260,7 @@ var orgUnitName = res.split('@@')[6]; - if(orgUnitName !== '' && orgUnitName.indexOf('市二医') >= 0){ + if (orgUnitName !== '' && orgUnitName.indexOf('市二医') >= 0) { orgUnitName = orgUnitName.substring(3); } @@ -294,13 +312,13 @@ dataIndex: 'orgUnitName' }, { text: '配包员', - width: 80, + width: 70, menuDisabled: true, sortable: false, dataIndex: 'operator' }, { text: '审核员', - width: 80, + width: 70, menuDisabled: true, sortable: false, dataIndex: 'reviewer' @@ -395,6 +413,7 @@ top.Ext4.getCmp('receiverId').setValue(result.id); top.Ext4.getCmp('receiver').setValue(result.fullName); top.Ext4.getCmp('receiverBarcode').setValue(''); + top.Ext4.getCmp('shipperBarcode').focus(); } else { showResult('找不到该条码所对应的员员信息'); } @@ -409,7 +428,8 @@ items: [{ xtype: 'hidden', id: 'receiverId', - name: 'receiverId' + name: 'receiverId', + value: userId }, { xtype: 'textfield', fieldLabel: '接收员', @@ -418,7 +438,8 @@ anchor: '100%', allowBlank: false, cls: 'fieldReadOnlyNoRemove', - readOnly: true + readOnly: true, + value: userName }] }, { layout: 'form', @@ -437,7 +458,100 @@ layout: 'form', columnWidth: .33, items: [{ + xtype: 'textfield', + fieldLabel: '发货员条码', + id: 'shipperBarcode', + name: 'shipperBarcode', + anchor: '100%', + allowBlank: true, + listeners: { + specialkey: function (thiz, e) { + if (e.getKey() == 13) { + var text = thiz.getValue(); + UserTableManager.getUserByBarcode(text, function (responseText) { + var result = Ext4.decode(responseText); + if (result.success) { + var result = Ext4.decode(responseText); + top.Ext4.getCmp('shipperId').setValue(result.id); + top.Ext4.getCmp('shipper').setValue(result.fullName); + top.Ext4.getCmp('shipperBarcode').setValue(''); + top.Ext4.getCmp('verifierBarcode').focus(); + } else { + showResult('找不到该条码所对应的员员信息'); + } + }); + } + } + } + }] + }, { + layout: 'form', + columnWidth: .33, + items: [{ xtype: 'hidden', + id: 'shipperId', + name: 'shipperId' + }, { + xtype: 'textfield', + fieldLabel: '发货员', + id: 'shipper', + name: 'shipper', + anchor: '100%', + allowBlank: false, + cls: 'fieldReadOnlyNoRemove', + readOnly: true + }] + }, { + layout: 'form', + columnWidth: .33, + items: [{ + xtype: 'textfield', + fieldLabel: '核对员条码', + id: 'verifierBarcode', + name: 'verifierBarcode', + anchor: '100%', + allowBlank: true, + listeners: { + specialkey: function (thiz, e) { + if (e.getKey() == 13) { + var text = thiz.getValue(); + UserTableManager.getUserByBarcode(text, function (responseText) { + var result = Ext4.decode(responseText); + if (result.success) { + var result = Ext4.decode(responseText); + top.Ext4.getCmp('verifierId').setValue(result.id); + top.Ext4.getCmp('verifier').setValue(result.fullName); + top.Ext4.getCmp('verifierBarcode').setValue(''); + } else { + showResult('找不到该条码所对应的员员信息'); + } + }); + } + } + } + }] + }, { + layout: 'form', + columnWidth: .33, + items: [{ + xtype: 'hidden', + id: 'verifierId', + name: 'verifierId' + }, { + xtype: 'textfield', + fieldLabel: '核对员', + id: 'verifier', + name: 'verifier', + anchor: '100%', + allowBlank: false, + cls: 'fieldReadOnlyNoRemove', + readOnly: true + }] + }, { + layout: 'form', + columnWidth: .33, + items: [{ + xtype: 'hidden', id: 'wareHouseId', name: 'wareHouseId' }, { @@ -499,7 +613,26 @@ }], buttonAlign: 'center', buttons: [{ - id: 'saveBtn', + text: '保存并一键发货', + hidden: (id || '') !== '', + handler: function () { + var selectedRecords = leftGrid.getSelectionModel().getSelection(); + if (formPanel.getForm().isValid()) { + if (selectedRecords.length == 0) { + showResult('请选择要发货的器械包!'); + return false; + } + var barcodeArr = []; + for (var i = 0; i < selectedRecords.length; i++) { + barcodeArr.push(selectedRecords[i].data.barcode); + } + saveConfig(id, barcodeArr); + } else { + showResult('请填写表单!'); + return false; + } + } + }, { text: '保存', hidden: (id || '') !== '', handler: function () {