Index: ssts-web/src/main/webapp/disinfectsystem/invoice/batchInvoice.js =================================================================== diff -u -r35217 -r35268 --- ssts-web/src/main/webapp/disinfectsystem/invoice/batchInvoice.js (.../batchInvoice.js) (revision 35217) +++ ssts-web/src/main/webapp/disinfectsystem/invoice/batchInvoice.js (.../batchInvoice.js) (revision 35268) @@ -50,159 +50,164 @@ success: function (response, options) { var result = Ext4.decode(response.responseText); if (result.success) { - var departArr = result.data[0]; - var disposableGoodsArr = result.data[1]; - var listData = getListData(1); - listStore.removeAll(); - if (disposableGoodsArr && disposableGoodsArr.length > 0) { - columns = [{ - header: "待发货科室", - dataIndex: "invoiceDepartName", - menuDisabled: true, - sortable: false, - width: 150 - }]; - var fields = [ - { name: 'invoiceDepartId' }, - { name: 'invoiceDepartName' }, - { name: 'invoiceDepartCode' }, - { name: 'disposableGoodsIds' }, - { name: 'costTotal' }, - { name: 'invoiceRemark' } - ] - for (var j = 0; j < disposableGoodsArr.length; j++) { + var departArr = []; + var disposableGoodsArr = []; + var columns = []; + if (result.data.length > 0) { + departArr = result.data[0]; + disposableGoodsArr = result.data[1]; + var listData = getListData(1); + listStore.removeAll(); + if (disposableGoodsArr && disposableGoodsArr.length > 0) { + columns = [{ + header: "待发货科室", + dataIndex: "invoiceDepartName", + menuDisabled: true, + sortable: false, + width: 150 + }]; + var fields = [ + { name: 'invoiceDepartId' }, + { name: 'invoiceDepartName' }, + { name: 'invoiceDepartCode' }, + { name: 'disposableGoodsIds' }, + { name: 'costTotal' }, + { name: 'invoiceRemark' } + ] + for (var j = 0; j < disposableGoodsArr.length; j++) { + columns.push({ + header: disposableGoodsArr[j].showName, + dataIndex: 'disposableGoods_' + disposableGoodsArr[j].disposableGoodsId, + menuDisabled: true, + sortable: false, + width: (textSize(fontSize + "px", "宋体", disposableGoodsArr[j].showName).width || 0) + 20, + editor: { + xtype: 'numberfield', + allowBlank: true, + allowDecimals: false, + minValue: 0, + maxValue: 9999 + } + }, { + header: '单价/单位', + dataIndex: 'price/unit_' + disposableGoodsArr[j].disposableGoodsId, + menuDisabled: true, + sortable: false, + align: 'center', + width: 100 + }); + fields.push({ + name: 'price/unit_' + disposableGoodsArr[j].disposableGoodsId + }, { + name: 'disposableGoods_' + disposableGoodsArr[j].disposableGoodsId + }) + } + listStore = new Ext4.data.SimpleStore({ + fields: fields + }) columns.push({ - header: disposableGoodsArr[j].showName, - dataIndex: 'disposableGoods_' + disposableGoodsArr[j].disposableGoodsId, + header: "费用小计", + dataIndex: "costTotal", + align: 'right', menuDisabled: true, sortable: false, - width: (textSize(fontSize + "px", "宋体", disposableGoodsArr[j].showName).width || 0) + 20, - editor: { - xtype: 'numberfield', - allowBlank: true, - allowDecimals: false, - minValue: 0, - maxValue: 9999 - } + width: 100 }, { - header: '单价/单位', - dataIndex: 'price/unit_' + disposableGoodsArr[j].disposableGoodsId, + header: "备注", + dataIndex: "invoiceRemark", + width: 200, menuDisabled: true, sortable: false, - align: 'center', - width: 100 + editor: { + xtype: 'textfield' + } }); - fields.push({ - name: 'price/unit_' + disposableGoodsArr[j].disposableGoodsId - }, { - name: 'disposableGoods_' + disposableGoodsArr[j].disposableGoodsId - }) } - listStore = new Ext4.data.SimpleStore({ - fields: fields - }) - columns.push({ - header: "费用小计", - dataIndex: "costTotal", - align: 'right', - menuDisabled: true, - sortable: false, - width: 100 - }, { - header: "备注", - dataIndex: "invoiceRemark", - width: 200, - menuDisabled: true, - sortable: false, - editor: { - xtype: 'textfield' - } - }); - } - var disposableGoodsIdsMap = { - costTotal: 0 - }; - if (departArr.length > 0) { - for (var i = 0; i < departArr.length; i++) { - var record = { - invoiceDepartId: departArr[i].orgUnitId, - invoiceDepartName: departArr[i].orgUnitName, - invoiceDepartCode: departArr[i].orgUnitCode - }; - if (disposableGoodsArr && disposableGoodsArr.length > 0) { - var disposableGoodsIdArr = []; - for (var j = 0; j < disposableGoodsArr.length; j++) { - record['price/unit_' + disposableGoodsArr[j].disposableGoodsId] = disposableGoodsArr[j]['price/unit'] - disposableGoodsIdArr[j] = disposableGoodsArr[j].disposableGoodsId; + var disposableGoodsIdsMap = { + costTotal: 0 + }; + if (departArr.length > 0) { + for (var i = 0; i < departArr.length; i++) { + var record = { + invoiceDepartId: departArr[i].orgUnitId, + invoiceDepartName: departArr[i].orgUnitName, + invoiceDepartCode: departArr[i].orgUnitCode + }; + if (disposableGoodsArr && disposableGoodsArr.length > 0) { + var disposableGoodsIdArr = []; + for (var j = 0; j < disposableGoodsArr.length; j++) { + record['price/unit_' + disposableGoodsArr[j].disposableGoodsId] = disposableGoodsArr[j]['price/unit'] + disposableGoodsIdArr[j] = disposableGoodsArr[j].disposableGoodsId; + } + record['disposableGoodsIds'] = disposableGoodsIdArr.join(',') } - record['disposableGoodsIds'] = disposableGoodsIdArr.join(',') - } - if (listData.length > 0) { - for (var k = 0; k < listData.length; k++) { - var departCode = listData[k].departCode; - var invoiceRemark = listData[k].invoiceRemark; - if (departCode == record.invoiceDepartCode) { - for (var m = 0; m < listData[k].items.length; m++) { - var disposableGoodsId = listData[k].items[m].disposableGoodsId; - var sendAmount = listData[k].items[m].sendAmount; - record['disposableGoods_' + disposableGoodsId] = sendAmount; - record['invoiceRemark'] = invoiceRemark; - if (record.disposableGoodsIds.length > 0) { - var total = 0; - var arr = record.disposableGoodsIds.split(','); - for (var m = 0; m < arr.length; m++) { - var price_unit = record['price/unit_' + arr[m]]; - var amount = record['disposableGoods_' + arr[m]]; - var price = 0; - var newAmount = 0; - if (price_unit) { - price = price_unit.split('/')[0]; + if (listData.length > 0) { + for (var k = 0; k < listData.length; k++) { + var departCode = listData[k].departCode; + var invoiceRemark = listData[k].invoiceRemark; + if (departCode == record.invoiceDepartCode) { + for (var m = 0; m < listData[k].items.length; m++) { + var disposableGoodsId = listData[k].items[m].disposableGoodsId; + var sendAmount = listData[k].items[m].sendAmount; + record['disposableGoods_' + disposableGoodsId] = sendAmount; + record['invoiceRemark'] = invoiceRemark; + if (record.disposableGoodsIds.length > 0) { + var total = 0; + var arr = record.disposableGoodsIds.split(','); + for (var m = 0; m < arr.length; m++) { + var price_unit = record['price/unit_' + arr[m]]; + var amount = record['disposableGoods_' + arr[m]]; + var price = 0; + var newAmount = 0; + if (price_unit) { + price = price_unit.split('/')[0]; + } + if (amount && amount !== '') { + newAmount = amount; + } + console.log(price) + console.log(newAmount) + total += parseFloat(price * newAmount); } - if (amount && amount !== '') { - newAmount = amount; + record['costTotal'] = parseFloat(total).toFixed(1); + } + if (disposableGoodsIdsMap['disposableGoods_' + disposableGoodsId]) { + if (sendAmount !== '') { + disposableGoodsIdsMap['disposableGoods_' + disposableGoodsId] += parseInt(sendAmount); } - console.log(price) - console.log(newAmount) - total += parseFloat(price * newAmount); + } else { + disposableGoodsIdsMap['disposableGoods_' + disposableGoodsId] = sendAmount; } - record['costTotal'] = parseFloat(total).toFixed(1); } - if (disposableGoodsIdsMap['disposableGoods_' + disposableGoodsId]) { - if (sendAmount !== '') { - disposableGoodsIdsMap['disposableGoods_' + disposableGoodsId] += parseInt(sendAmount); - } - } else { - disposableGoodsIdsMap['disposableGoods_' + disposableGoodsId] = sendAmount; - } } } + if (record['costTotal'] && record['costTotal'] !== '') { + disposableGoodsIdsMap['costTotal'] += parseFloat(record['costTotal']); + } } - if (record['costTotal'] && record['costTotal'] !== '') { - disposableGoodsIdsMap['costTotal'] += parseFloat(record['costTotal']); - } + listStore.add(record) } + var costTotal = disposableGoodsIdsMap['costTotal'] || ''; + if (costTotal !== '') { + costTotal = parseFloat(costTotal).toFixed(1) + } + var record = { + invoiceDepartId: '', + invoiceDepartName: '总计', + invoiceDepartCode: '', + costTotal: costTotal + } + for (var i = 0; i < disposableGoodsArr.length; i++) { + var disposableGoodsId = disposableGoodsArr[i].disposableGoodsId; + record['price/unit_' + disposableGoodsId] = disposableGoodsArr[i]['price/unit']; + record['disposableGoods_' + disposableGoodsId] = disposableGoodsIdsMap['disposableGoods_' + disposableGoodsId]; + } listStore.add(record) } - var costTotal = disposableGoodsIdsMap['costTotal'] || ''; - if (costTotal !== '') { - costTotal = parseFloat(costTotal).toFixed(1) + if (grid) { + grid.reconfigure(listStore, columns); } - var record = { - invoiceDepartId: '', - invoiceDepartName: '总计', - invoiceDepartCode: '', - costTotal: costTotal - } - for (var i = 0; i < disposableGoodsArr.length; i++) { - var disposableGoodsId = disposableGoodsArr[i].disposableGoodsId; - record['price/unit_' + disposableGoodsId] = disposableGoodsArr[i]['price/unit']; - record['disposableGoods_' + disposableGoodsId] = disposableGoodsIdsMap['disposableGoods_' + disposableGoodsId]; - } - listStore.add(record) } - if (grid) { - grid.reconfigure(listStore, columns); - } if (departArr.length > 0 && disposableGoodsArr.length > 0) { batchInvoiceDisable = false; wareHouseBtnDisable = false; @@ -657,7 +662,6 @@ } params.assistantSender = assistantSender; } - Ext4.MessageBox.confirm("请确认", '是否确认批量发货?', function (btn) { if (btn == 'yes') { Ext4.Ajax.request({