Index: ssts-web/src/main/webapp/disinfectsystem/reportforms/departmentMonthlyView.js =================================================================== diff -u -r35486 -r35631 --- ssts-web/src/main/webapp/disinfectsystem/reportforms/departmentMonthlyView.js (.../departmentMonthlyView.js) (revision 35486) +++ ssts-web/src/main/webapp/disinfectsystem/reportforms/departmentMonthlyView.js (.../departmentMonthlyView.js) (revision 35631) @@ -10,294 +10,294 @@ var departSearchName = "科室"; var limitDepart = true; var departMode; -Ext.onReady(function() { +Ext.onReady(function () { Ext.QuickTips.init(); - if(sstsConfig.hasOwnProperty('enableMultipleBranchesOfHospital') && sstsConfig.enableMultipleBranchesOfHospital){ + if (sstsConfig.hasOwnProperty('enableMultipleBranchesOfHospital') && sstsConfig.enableMultipleBranchesOfHospital) { enableMultipleBranchesOfHospital = true; } - if(supplyRoomType == supplyRoomTypeFirstSupplyRoom || supplyRoomType == supplyRoomTypeSecondSupplyRoom || supplyRoomType == supplyRoomTypeExpensiveGoods){ + if (supplyRoomType == supplyRoomTypeFirstSupplyRoom || supplyRoomType == supplyRoomTypeSecondSupplyRoom || supplyRoomType == supplyRoomTypeExpensiveGoods) { limitDepart = false; departMode = "remote"; - }else{ + } else { departMode = "local"; } //院区数据源 var testRecord = Ext.data.Record.create([ - {name: 'id', type: 'long'}, - {name: 'name', type: 'string'} - ]); - + { name: 'id', type: 'long' }, + { name: 'name', type: 'string' } + ]); + var brancheOfHospitalStore = new Ext.data.Store({ - proxy : new Ext.data.HttpProxy({ - url : WWWROOT + '/disinfectSystem/brancheOfHospitalAction!getBrancheOfHospitalsForMultiSelect.do', - method : 'POST' + proxy: new Ext.data.HttpProxy({ + url: WWWROOT + '/disinfectSystem/brancheOfHospitalAction!getBrancheOfHospitalsForMultiSelect.do', + method: 'POST' }), - reader : new Ext.data.JsonReader({ - totalProperty : 'totalCount', - root : 'data' + reader: new Ext.data.JsonReader({ + totalProperty: 'totalCount', + root: 'data' }, [ - {name : 'id',mapping : 'id'}, - {name : 'name',mapping : 'name'}, + { name: 'id', mapping: 'id' }, + { name: 'name', mapping: 'name' }, ]), - listeners : { - load :function (thiz,records,options ){ - if(brancheOfHospitalStore.getCount() > 1){ - brancheOfHospitalStore.insert(0 , new testRecord({'id':-1,'name':'全部'})); + listeners: { + load: function (thiz, records, options) { + if (brancheOfHospitalStore.getCount() > 1) { + brancheOfHospitalStore.insert(0, new testRecord({ 'id': -1, 'name': '全部' })); } } } }); brancheOfHospitalStore.load(); - var tousseTypes = [ ['全部'],['全部器械包'],['器械包'],['敷料包'],['消毒物品'],['外来器械包'],['自定义器械包'],['外部代理灭菌包'],['一次性物品'],['器械材料'],['收费项目']] - if(!notInWhiteList(sstsConfig, 'expensiveGoodsManage') && sstsConfig.enableExpensiveGoods){ + var tousseTypes = [['全部'], ['全部器械包'], ['器械包'], ['敷料包'], ['消毒物品'], ['外来器械包'], ['自定义器械包'], ['外部代理灭菌包'], ['一次性物品'], ['器械材料'], ['收费项目']] + if (!notInWhiteList(sstsConfig, 'expensiveGoodsManage') && sstsConfig.enableExpensiveGoods) { tousseTypes.push(['高值耗材']); } tousseTypes.push(['自动扣减物品']); //物品类型store - var tousseTypeStore = new Ext.data.SimpleStore( { - fields : ['value'], - data : tousseTypes + var tousseTypeStore = new Ext.data.SimpleStore({ + fields: ['value'], + data: tousseTypes }); - + var diposableGooodsStore = new Ext.data.JsonStore({ - fields : [ 'typeName','typeValue' ], - url : WWWROOT + '/disinfectSystem/diposableGoodsAction!getDisposableGoodsTypeForFilter.do', - listeners : { - load : function(store,records) { - if(records.length > 0){ + fields: ['typeName', 'typeValue'], + url: WWWROOT + '/disinfectSystem/diposableGoodsAction!getDisposableGoodsTypeForFilter.do', + listeners: { + load: function (store, records) { + if (records.length > 0) { var combo = Ext.getCmp("disposableGoodsType"); // 触发选中事件 -// combo.fireEvent('select', combo,records[0],0); + // combo.fireEvent('select', combo,records[0],0); } } } }); var departJsonStore = null; var appDepartJsonStore = null; - if(limitDepart){ - var departProperties = [{name : 'id'}, - {name : 'name'}, - {name : 'orgUnitName'}] + if (limitDepart) { + var departProperties = [{ name: 'id' }, + { name: 'name' }, + { name: 'orgUnitName' }] departJsonStore = new Ext.data.Store({ - reader : new Ext.data.JsonReader({ - fields : departProperties - }) - }); - var DepartRecord = Ext.data.Record.create(departProperties); - var departRecord = new DepartRecord({ - id : orgUnitCoding, - name : orgUnitName, - orgUnitName : orgUnitName - }); - departJsonStore.add(departRecord); - - var appDepartProperties = [{name : 'id'}, - {name : 'name'}] - appDepartJsonStore = new Ext.data.Store({ - reader : new Ext.data.JsonReader({ - fields : appDepartProperties - }) - }); - var appDepartRecord = Ext.data.Record.create(appDepartProperties); - var appDepartRecord = new DepartRecord({ - id : orgUnitCoding, - name : orgUnitName - }); - appDepartJsonStore.add(appDepartRecord); - }else{ + reader: new Ext.data.JsonReader({ + fields: departProperties + }) + }); + var DepartRecord = Ext.data.Record.create(departProperties); + var departRecord = new DepartRecord({ + id: orgUnitCoding, + name: orgUnitName, + orgUnitName: orgUnitName + }); + departJsonStore.add(departRecord); + + var appDepartProperties = [{ name: 'id' }, + { name: 'name' }] + appDepartJsonStore = new Ext.data.Store({ + reader: new Ext.data.JsonReader({ + fields: appDepartProperties + }) + }); + var appDepartRecord = Ext.data.Record.create(appDepartProperties); + var appDepartRecord = new DepartRecord({ + id: orgUnitCoding, + name: orgUnitName + }); + appDepartJsonStore.add(appDepartRecord); + } else { departJsonStore = new Ext.data.Store({ - proxy : new Ext.data.HttpProxy({ - url : WWWROOT + '/disinfectSystem/baseData/supplyRoomConfigAction!getSettleAccountsDepartJson.do', - method : 'POST' + proxy: new Ext.data.HttpProxy({ + url: WWWROOT + '/disinfectSystem/baseData/supplyRoomConfigAction!getSettleAccountsDepartJson.do', + method: 'POST' }), - reader : new Ext.data.JsonReader({ - root : 'data' - },[ - {name : 'id',mapping : 'id'}, - {name : 'name',mapping : 'name'}, - {name : 'orgUnitName',mapping : 'orgUnitName'} - ] + reader: new Ext.data.JsonReader({ + root: 'data' + }, [ + { name: 'id', mapping: 'id' }, + { name: 'name', mapping: 'name' }, + { name: 'orgUnitName', mapping: 'orgUnitName' } + ] ) }); //Ext4 申请科室Store appDepartJsonStore = new Ext.data.Store({ - proxy : new Ext.data.HttpProxy({ - url : WWWROOT + '/systemmanage/orgUnit/searchApplyDepartmentByKeyWord.do?onlyOneself=false&showDisableOrgUnit=false', - method : 'POST' + proxy: new Ext.data.HttpProxy({ + url: WWWROOT + '/systemmanage/orgUnit/searchApplyDepartmentByKeyWord.do?onlyOneself=false&showDisableOrgUnit=false', + method: 'POST' }), - reader : new Ext.data.JsonReader({ - root : 'data' - },[ - {name : 'id',mapping : 'departmentCode'}, - {name : 'name',mapping : 'departmentName'} - ] + reader: new Ext.data.JsonReader({ + root: 'data' + }, [ + { name: 'id', mapping: 'departmentCode' }, + { name: 'name', mapping: 'departmentName' } + ] ) }); } diposableGooodsStore.load(); reportTypeJson = sstsConfig.patternOfAccountingMonthlyReport; - if(!enableMultipleBranchesOfHospital && reportTypeJson != null){ - if(reportTypeJson.length > 1){ + if (!enableMultipleBranchesOfHospital && reportTypeJson != null) { + if (reportTypeJson.length > 1) { for (var i = 0; i < reportTypeJson.length; i++) { var item = reportTypeJson[i]; var optionText = item.optionText; var reportName = item.reportName; var reportType = null; - if(reportName == '东莞横沥医院的核算月报'){ + if (reportName == '东莞横沥医院的核算月报') { reportType = 'dgshlyyMode'; - }else if(reportName == '隐藏数量的核算月报'){ + } else if (reportName == '隐藏数量的核算月报') { reportType = 'hiddenAmountMode'; - }else if(reportName == '显示数量的核算月报'){ + } else if (reportName == '显示数量的核算月报') { reportType = 'showAmountMode'; - }else if(reportName == '按灭菌方式分组统计的核算月报'){ + } else if (reportName == '按灭菌方式分组统计的核算月报') { reportType = 'accountingMonthlyReportGroupBySterilizationMode'; - }else if(reportName == '按一次性物品类型分组统计的核算月报'){ + } else if (reportName == '按一次性物品类型分组统计的核算月报') { reportType = 'accountingMonthlyReportGroupByDisposableGoodsType'; - }else if(reportName == '显示申请科室的核算月报'){ + } else if (reportName == '显示申请科室的核算月报') { reportType = 'isHaveApplicationDepartMode'; isHaveApplicationDepartMode = true; departSearchName = "结算科室"; - }else{ + } else { continue; } - dataForPatternOfReport.push([reportType,optionText]); + dataForPatternOfReport.push([reportType, optionText]); } - }else if(reportTypeJson.length == 1){//只配了显示申请科室的核算月报 - - if(reportTypeJson[0].reportName == '显示申请科室的核算月报'){ + } else if (reportTypeJson.length == 1) {//只配了显示申请科室的核算月报 + + if (reportTypeJson[0].reportName == '显示申请科室的核算月报') { reportType = 'isHaveApplicationDepartMode'; isHaveApplicationDepartMode = true; departSearchName = "结算科室"; - }else if(reportTypeJson[0].reportName == '东莞横沥医院的核算月报'){ + } else if (reportTypeJson[0].reportName == '东莞横沥医院的核算月报') { reportType = 'dgshlyyMode'; } } - + } var patternOfReport = new Ext.data.SimpleStore({ - fields : ['id', 'name'], - data : dataForPatternOfReport - }); - function getHiddenValueByReportName(reportName){ + fields: ['id', 'name'], + data: dataForPatternOfReport + }); + function getHiddenValueByReportName(reportName) { var patternOfReport = null; - if(reportName == '东莞横沥医院的核算月报'){ + if (reportName == '东莞横沥医院的核算月报') { patternOfReport = 'dgshlyyMode'; - }else if(reportName == '隐藏数量的核算月报'){ + } else if (reportName == '隐藏数量的核算月报') { patternOfReport = 'hiddenAmountMode'; - }else if(reportName == '显示数量的核算月报'){ + } else if (reportName == '显示数量的核算月报') { patternOfReport = 'showAmountMode'; - }else if(reportName == '按灭菌方式分组统计的核算月报'){ + } else if (reportName == '按灭菌方式分组统计的核算月报') { patternOfReport = 'accountingMonthlyReportGroupBySterilizationMode'; - }else if(reportName == '按一次性物品类型分组统计的核算月报'){ + } else if (reportName == '按一次性物品类型分组统计的核算月报') { patternOfReport = 'accountingMonthlyReportGroupByDisposableGoodsType'; - }else if(reportName == '显示申请科室的核算月报'){ + } else if (reportName == '显示申请科室的核算月报') { patternOfReport = 'isHaveApplicationDepartMode'; - }else{ + } else { patternOfReport = 'showAmountMode'; } return patternOfReport; } - function getParams(){ + function getParams() { var startTime = $Id('startTime').value; var endTime = $Id('endTime').value; //var departSearch = $Id('departSearch').value; var departSearch = document.getElementById("departSearch").value; var disposableGoodsType = Ext.getCmp("disposableGoodsType").value; var patternOfReport = null; - if(reportTypeJson != null && reportTypeJson.length == 1){//配置了一个报表格式 + if (reportTypeJson != null && reportTypeJson.length == 1) {//配置了一个报表格式 var reportName = reportTypeJson[0].reportName; - if(reportName == '隐藏数量的核算月报'){ + if (reportName == '隐藏数量的核算月报') { patternOfReport = 'hiddenAmountMode'; - }else if(reportName == '显示数量的核算月报'){ + } else if (reportName == '显示数量的核算月报') { patternOfReport = 'showAmountMode'; - }else if(reportName == '按灭菌方式分组统计的核算月报'){ + } else if (reportName == '按灭菌方式分组统计的核算月报') { patternOfReport = 'accountingMonthlyReportGroupBySterilizationMode'; - }else if(reportName == '按一次性物品类型分组统计的核算月报'){ + } else if (reportName == '按一次性物品类型分组统计的核算月报') { patternOfReport = 'accountingMonthlyReportGroupByDisposableGoodsType'; - }else if(reportName == '显示申请科室的核算月报'){ + } else if (reportName == '显示申请科室的核算月报') { patternOfReport = 'isHaveApplicationDepartMode'; departSearchName = "结算科室"; - }else if(reportName == '东莞横沥医院的核算月报'){ + } else if (reportName == '东莞横沥医院的核算月报') { patternOfReport = 'dgshlyyMode'; } - }else if(reportTypeJson == null || reportTypeJson.length == 0){//默认显示数量 + } else if (reportTypeJson == null || reportTypeJson.length == 0) {//默认显示数量 patternOfReport = 'showAmountMode'; - }else{//配置了多个报表格式 + } else {//配置了多个报表格式 patternOfReport = Ext.getCmp("patternOfReport").value; } - if(disposableGoodsType == "全部"){ + if (disposableGoodsType == "全部") { disposableGoodsType = ""; } - if(startTime == null || startTime == "" || endTime == null || endTime == ""){ + if (startTime == null || startTime == "" || endTime == null || endTime == "") { showResult('请选择查询时间。'); return false; } - if(patternOfReport == "" && reportTypeJson.length > 1){ + if (patternOfReport == "" && reportTypeJson.length > 1) { showResult('请选择报表格式。'); return false; } - if(limitDepart){//临床科室登录,申请科室或结算科室必须有值且只能为登录科室,且不能同时为空 - if(invoicePlanDepartCoding == '' && departSearch == ''){ + if (limitDepart) {//临床科室登录,申请科室或结算科室必须有值且只能为登录科室,且不能同时为空 + if (invoicePlanDepartCoding == '' && departSearch == '') { Ext.getCmp('invoicePlanDepartSearch').focus(); showResult('请选择科室。'); return false; } } //物品类型 var tousseType = $Id('tousseType').value; - if(tousseType == "全部"){ + if (tousseType == "全部") { tousseType = ""; } - + var showCustonTousseAmount = false; - if(sstsConfig.hasOwnProperty('isMonthReportShowCustonTousseAmount') && sstsConfig.isMonthReportShowCustonTousseAmount){ + if (sstsConfig.hasOwnProperty('isMonthReportShowCustonTousseAmount') && sstsConfig.isMonthReportShowCustonTousseAmount) { showCustonTousseAmount = true; } var jasperreportName = null; var brancheOfHospitalIds = null; var invoicePlanDepartCoding = null; var showApplicationDepart = true; var showAmountColumn = false; - if("dgshlyyMode" == patternOfReport){ + if ("dgshlyyMode" == patternOfReport) { jasperreportName = "monthReportShowBrevityCode.jasper"; - }else if(enableMultipleBranchesOfHospital){ + } else if (enableMultipleBranchesOfHospital) { var brancheOfHospital = $Id('brancheOfHospital').value; - if(brancheOfHospital == "全部"){ + if (brancheOfHospital == "全部") { brancheOfHospitalIds = ""; - }else{ + } else { brancheOfHospitalIds = Ext.getCmp('brancheOfHospital').value; } jasperreportName = "monthReportBranche.jasper"; - }else if("accountingMonthlyReportGroupByDisposableGoodsType" == patternOfReport){//按一次性物品类型拆分的核算月报 + } else if ("accountingMonthlyReportGroupByDisposableGoodsType" == patternOfReport) {//按一次性物品类型拆分的核算月报 jasperreportName = "monthReportGroupByDisposableGoodsType.jasper"; patternOfReport = "showAmountMode"; - }else if('accountingMonthlyReportGroupBySterilizationMode' == patternOfReport){ + } else if ('accountingMonthlyReportGroupBySterilizationMode' == patternOfReport) { jasperreportName = 'monthReportGroupBySterilizationMode.jasper'; - }else if(sstsConfig.enableToussePointsStatistics){ + } else if (sstsConfig.enableToussePointsStatistics) { jasperreportName = "monthIntegralReport.jasper"; - }else if('isHaveApplicationDepartMode' == patternOfReport){ + } else if ('isHaveApplicationDepartMode' == patternOfReport) { var invoicePlanDepartSearch = Ext.getCmp('invoicePlanDepartSearch').getRawValue(); invoicePlanDepartCoding = Ext.getCmp('invoicePlanDepartSearch').getValue(); - if(invoicePlanDepartSearch == "全部" || invoicePlanDepartSearch == ''){ + if (invoicePlanDepartSearch == "全部" || invoicePlanDepartSearch == '') { invoicePlanDepartCoding = ""; } var showApplicationDepartValue = Ext.getCmp('showApplicationDepart').getRawValue(); - if(showApplicationDepartValue == '否'){ + if (showApplicationDepartValue == '否') { showApplicationDepart = false; jasperreportName = "monthReportHideApplicationDepart.jasper"; - }else{ + } else { jasperreportName = "monthReportShowApplicationDepart.jasper"; } var showAmountValue = Ext.getCmp('showAmountColumn').getRawValue(); showAmountColumn = false; - if(showAmountValue == '是'){ + if (showAmountValue == '是') { showAmountColumn = true; } - }else{ + } else { jasperreportName = "monthReport.jasper"; } - if(limitDepart){//临床科室登录,申请科室或结算科室必须有值且只能为登录科室,且不能同时为空 - if(invoicePlanDepartCoding == '' && departSearch == ''){ + if (limitDepart) {//临床科室登录,申请科室或结算科室必须有值且只能为登录科室,且不能同时为空 + if (invoicePlanDepartCoding == '' && departSearch == '') { Ext.getCmp('invoicePlanDepartSearch').focus(); showResult('请选择科室。'); return false; @@ -309,481 +309,482 @@ }); myMask.show(); var hidePrintBtn = false; - if(sstsConfig.patternOfAccountingMonthlyReport && sstsConfig.patternOfAccountingMonthlyReport.length > 0){ + if (sstsConfig.patternOfAccountingMonthlyReport && sstsConfig.patternOfAccountingMonthlyReport.length > 0) { hidePrintBtn = true; } var params = { - jasperreportName : jasperreportName, - depart : departSearch, - startTime : startTime, - endTime:endTime, - tousseType:tousseType, - disposableGoodsType:disposableGoodsType, - patternOfReport:patternOfReport, - showCustonTousseAmount:showCustonTousseAmount, - brancheOfHospitalIds:brancheOfHospitalIds, - invoicePlanDepartCoding:invoicePlanDepartCoding, - showAmountColumn:showAmountColumn, - showApplicationDepart:showApplicationDepart, - reportName:'monthReport', - hidePrintBtn:hidePrintBtn + jasperreportName: jasperreportName, + depart: departSearch, + startTime: startTime, + endTime: endTime, + tousseType: tousseType, + disposableGoodsType: disposableGoodsType, + patternOfReport: patternOfReport, + showCustonTousseAmount: showCustonTousseAmount, + brancheOfHospitalIds: brancheOfHospitalIds, + invoicePlanDepartCoding: invoicePlanDepartCoding, + showAmountColumn: showAmountColumn, + showApplicationDepart: showApplicationDepart, + reportName: 'monthReport', + hidePrintBtn: hidePrintBtn } return params; } - function reloadReport(){ + function reloadReport() { var url = WWWROOT + '/jasperreports/jasperreportsAction!createReportFromJavaBeanSource.do'; var params = getParams(); - searchReport(url,params); + searchReport(url, params); } - var columns = [ - {id :'depart',header : "科室",width : 180,dataIndex : 'depart'}, - {header : "物品名称",width : 200,dataIndex : 'goodsName'}, - {header : "数量",width : 100,dataIndex : 'amount'}, - {header : "单价(元)",width : 100,dataIndex : 'price'}, - {header : "金额(元)",width : 100,dataIndex : 'totalPrice'}, - {header : "批次",width : 100,dataIndex : 'batchNumber'}, - {id : 'total',header : "总计(元)",width : 120,dataIndex : 'total' + var columns = [ + { id: 'depart', header: "科室", width: 180, dataIndex: 'depart' }, + { header: "物品名称", width: 200, dataIndex: 'goodsName' }, + { header: "数量", width: 100, dataIndex: 'amount' }, + { header: "单价(元)", width: 100, dataIndex: 'price' }, + { header: "金额(元)", width: 100, dataIndex: 'totalPrice' }, + { header: "批次", width: 100, dataIndex: 'batchNumber' }, + { + id: 'total', header: "总计(元)", width: 120, dataIndex: 'total' }]; - var readerDetail = [{ - name : 'id' - },{ - name : 'depart' - }, { - name : 'goodsName' - }, { - name : 'amount' - }, { - name : 'price' - }, { - name : 'totalPrice' - }, { - name : 'batchNumber' - }, { - name : 'total' - }]; + var readerDetail = [{ + name: 'id' + }, { + name: 'depart' + }, { + name: 'goodsName' + }, { + name: 'amount' + }, { + name: 'price' + }, { + name: 'totalPrice' + }, { + name: 'batchNumber' + }, { + name: 'total' + }]; - var sign = true; - var dwrCallParams = null; - - var tbar = [{ - text : '导出Excel', - iconCls : 'btn_ext_refresh', - id : 'editTbar', - handler : function() { - var month = Ext.getCmp('monthSearch').getRawValue(); - var depart = document.getElementById("departSearch").value; - location.href=WWWROOT + "/disinfectsystem/reportforms/departmentMonthlyExport.jsp?depart="+depart+"&month="+month+"&reportType=科室月报明细"; - } - } ]; + var sign = true; + var dwrCallParams = null; - Ext.ux.ForgonPageGrid.prototype.getGridParameterMap = function() { + var tbar = [{ + text: '导出Excel', + iconCls: 'btn_ext_refresh', + id: 'editTbar', + handler: function () { + var month = Ext.getCmp('monthSearch').getRawValue(); + var depart = document.getElementById("departSearch").value; + location.href = WWWROOT + "/disinfectsystem/reportforms/departmentMonthlyExport.jsp?depart=" + depart + "&month=" + month + "&reportType=科室月报明细"; + } + }]; - }; - - var departRecord = Ext.data.Record.create([ { - name : 'id' - }, { - name : 'name' - }, { - name : 'orgUnitName' - } ]); - - var dt = new Date(); - var startDayofMonth = dt.getFullYear() + "/" + (dt.getMonth() + 1) + "/1"; - - var form = new Ext.form.FormPanel({ - title : '核算月报', - region : 'north', - labelAlign : 'right', - buttonAlign : 'center', - collapsible : true, - collapseMode : 'mini', - split : true, - border : 0, - // bodyStyle : 'padding: 10px 10px 0px 10px;', - frame : true, - bodyStyle : 'padding:0px auto;margin:0px',// padding:1px;padding-top:5px; - height : 140, - labelWidth : 80, - items : [{ - layout : 'column', - height : 70, - items : [{ - columnWidth : .2, - layout : 'form', - items : [{ - xtype : 'datefield', - fieldLabel : '开始时间', - id : 'startTime', - name : 'startTime', - editable : false, - format : 'Y-m-d', - altFormats:'Y-m-d|Y-n-j|y-n-j|y-m-j|y-m-d|y-n-d|Y-n-d|Y-m-j|Ymd|Ynj|ynj|ymj|ymd|ynd|Ynd|Ymj|Y/m/d|Y/n/j|y/n/j|y/m/j|y/m/d|y/n/d|Y/n/d|Y/m/j', - allowBlank : false, - anchor : '95%', - value: new Date(startDayofMonth), - listeners : { - specialkey : function(field, e) { - if (e.getKey() == Ext.EventObject.ENTER) { - var isOK = field.validate(); - if(isOK){ - var value = field.getValue(); - field.setValue(value); - var endTime = Ext.getCmp('endTime'); - endTime.focus(); - } + Ext.ux.ForgonPageGrid.prototype.getGridParameterMap = function () { + + }; + + var departRecord = Ext.data.Record.create([{ + name: 'id' + }, { + name: 'name' + }, { + name: 'orgUnitName' + }]); + + var dt = new Date(); + var startDayofMonth = dt.getFullYear() + "/" + (dt.getMonth() + 1) + "/1"; + + var form = new Ext.form.FormPanel({ + title: '核算月报', + region: 'north', + labelAlign: 'right', + buttonAlign: 'center', + collapsible: true, + collapseMode: 'mini', + split: true, + border: 0, + // bodyStyle : 'padding: 10px 10px 0px 10px;', + frame: true, + bodyStyle: 'padding:0px auto;margin:0px',// padding:1px;padding-top:5px; + height: 140, + labelWidth: 80, + items: [{ + layout: 'column', + height: 70, + items: [{ + columnWidth: .2, + layout: 'form', + items: [{ + xtype: 'datefield', + fieldLabel: '开始时间', + id: 'startTime', + name: 'startTime', + editable: false, + format: 'Y-m-d', + altFormats: 'Y-m-d|Y-n-j|y-n-j|y-m-j|y-m-d|y-n-d|Y-n-d|Y-m-j|Ymd|Ynj|ynj|ymj|ymd|ynd|Ynd|Ymj|Y/m/d|Y/n/j|y/n/j|y/m/j|y/m/d|y/n/d|Y/n/d|Y/m/j', + allowBlank: false, + anchor: '95%', + value: new Date(startDayofMonth), + listeners: { + specialkey: function (field, e) { + if (e.getKey() == Ext.EventObject.ENTER) { + var isOK = field.validate(); + if (isOK) { + var value = field.getValue(); + field.setValue(value); + var endTime = Ext.getCmp('endTime'); + endTime.focus(); } } } - }] - },{ - columnWidth : .2, - layout : 'form', - items : [{ - xtype : 'datefield', - fieldLabel : '结束时间', - id : 'endTime', - name : 'endTime', - editable : false, - format : 'Y-m-d', - altFormats:'Y-m-d|Y-n-j|y-n-j|y-m-j|y-m-d|y-n-d|Y-n-d|Y-m-j|Ymd|Ynj|ynj|ymj|ymd|ynd|Ynd|Ymj|Y/m/d|Y/n/j|y/n/j|y/m/j|y/m/d|y/n/d|Y/n/d|Y/m/j', - allowBlank : false, - anchor : '95%', - value: new Date(), - listeners : { - specialkey : function(field, e) { - if (e.getKey() == Ext.EventObject.ENTER) { - var isOK = field.validate(); - if(isOK){ - var value = field.getValue(); - field.setValue(value); - var departSearch = Ext.getCmp('departSearch'); - departSearch.focus(); - } + } + }] + }, { + columnWidth: .2, + layout: 'form', + items: [{ + xtype: 'datefield', + fieldLabel: '结束时间', + id: 'endTime', + name: 'endTime', + editable: false, + format: 'Y-m-d', + altFormats: 'Y-m-d|Y-n-j|y-n-j|y-m-j|y-m-d|y-n-d|Y-n-d|Y-m-j|Ymd|Ynj|ynj|ymj|ymd|ynd|Ynd|Ymj|Y/m/d|Y/n/j|y/n/j|y/m/j|y/m/d|y/n/d|Y/n/d|Y/m/j', + allowBlank: false, + anchor: '95%', + value: new Date(), + listeners: { + specialkey: function (field, e) { + if (e.getKey() == Ext.EventObject.ENTER) { + var isOK = field.validate(); + if (isOK) { + var value = field.getValue(); + field.setValue(value); + var departSearch = Ext.getCmp('departSearch'); + departSearch.focus(); } } } - }] - },{ - columnWidth : .2, - layout : 'form', - hidden:!enableMultipleBranchesOfHospital, - labelSeparator : '院区:', - items : [{ - xtype : 'multiSelect', - id : 'brancheOfHospital', - name : 'brancheOfHospital', - valueField : 'id', - displayField : 'name', - minChars : 0, - allowBlank : true, - editable : false, - store : brancheOfHospitalStore, - forceSelection : false, - mode : 'local', - triggerAction : 'all', - lazyInit : true, - typeAhead : false, - anchor : '95%', - listeners: { - select: function (combo, record, index) { - //1、如果选中“全部”的项,则把所有的项选中,反之全部取消选择 - if (record.get('name') == ALL) { - if (record.get('checked')) { - combo.selectAll(); - } else { - combo.deselectAll(); - } - } - //2、如果已经选中所有的项,则把“全部”项选中,反之把“全部”项取消选择 - var selectAll = true; - combo.store.each(function(record) { - if (record.get('name') != ALL && !record.get(this.checkField)) { - selectAll = false; - return; - } - }, combo); - var all = combo.store.getAt(0); - if (selectAll) { - all.set(combo.checkField, true); + } + }] + }, { + columnWidth: .2, + layout: 'form', + hidden: !enableMultipleBranchesOfHospital, + labelSeparator: '院区:', + items: [{ + xtype: 'multiSelect', + id: 'brancheOfHospital', + name: 'brancheOfHospital', + valueField: 'id', + displayField: 'name', + minChars: 0, + allowBlank: true, + editable: false, + store: brancheOfHospitalStore, + forceSelection: false, + mode: 'local', + triggerAction: 'all', + lazyInit: true, + typeAhead: false, + anchor: '95%', + listeners: { + select: function (combo, record, index) { + //1、如果选中“全部”的项,则把所有的项选中,反之全部取消选择 + if (record.get('name') == ALL) { + if (record.get('checked')) { + combo.selectAll(); } else { - all.set(combo.checkField, false); + combo.deselectAll(); } - combo.setValue(combo.getCheckedValue()); - }, - change :function(field,newVal,oldVal){ - var ids = Ext.getCmp('brancheOfHospital').value; - departJsonStore.baseParams.brancheOfHospitalIds = ids; - departJsonStore.load(); - Ext.getCmp('departSearch').setValue(""); - Ext.getCmp('departSearch').setRawValue(""); - } - } - }] - },{ - columnWidth : .2, - layout : 'form', - hidden:!isHaveApplicationDepartMode, - labelSeparator : '申请科室:', - id:"invoicePlanDepartId", - items : [{ - xtype : 'combo', - id : 'invoicePlanDepartSearch', - name : 'invoicePlanDepartSearch', - valueField : 'id', - displayField : 'name', - minChars : 0, - queryParam : 'spell', - allowBlank : true, - store : appDepartJsonStore, - mode : departMode, - triggerAction : 'all', - anchor : '95%' - }] - },{ - columnWidth : .2, - layout : 'form', - labelSeparator : departSearchName+':', - items : [{ - xtype : 'combo', - id : 'departSearch', - name : 'departSearch', - valueField : 'orgUnitName', - displayField : 'name', - minChars : 0, - queryParam : 'spell', - allowBlank : true, - store : departJsonStore, - mode : departMode, - //listWidth:370, - triggerAction : 'all', - anchor : '95%' - }] - },{ - columnWidth : .2, - layout : 'form', - items : [{ - xtype : 'combo', - fieldLabel : '物品类型', - id : 'tousseType', - name : 'tousseType', - valueField : 'value', - displayField : 'value', - store : tousseTypeStore, - forceSelection : true, - listWidth:200, - value:'全部', - editable : false, - mode : 'local', - triggerAction : 'all', - anchor : '95%', - listeners : { - select : function(store,records){ - if(Ext.getCmp('disposableGoodsType')){ - if(Ext.getCmp('tousseType').getValue() == '全部' - || Ext.getCmp('tousseType').getValue() == '一次性物品'){ - Ext.getCmp('disposableGoodsType').setDisabled(false); - }else{ - Ext.getCmp('disposableGoodsType').setValue('全部'); - Ext.getCmp('disposableGoodsType').setDisabled(true); - } + } + //2、如果已经选中所有的项,则把“全部”项选中,反之把“全部”项取消选择 + var selectAll = true; + combo.store.each(function (record) { + if (record.get('name') != ALL && !record.get(this.checkField)) { + selectAll = false; + return; } + }, combo); + var all = combo.store.getAt(0); + if (selectAll) { + all.set(combo.checkField, true); + } else { + all.set(combo.checkField, false); } + combo.setValue(combo.getCheckedValue()); + }, + change: function (field, newVal, oldVal) { + var ids = Ext.getCmp('brancheOfHospital').value; + departJsonStore.baseParams.brancheOfHospitalIds = ids; + departJsonStore.load(); + Ext.getCmp('departSearch').setValue(""); + Ext.getCmp('departSearch').setRawValue(""); } - }] - },{ - columnWidth : 0.2, - layout : 'form', - labelWidth : 120, - items : [{ - xtype : 'combo', - fieldLabel : "一次性物品类型", - displayField : 'typeName', - valueField : 'typeValue', - store : diposableGooodsStore, - forceSelection : true, - listWidth:150, - editable : false, - triggerAction : 'all', - name : "disposableGoodsType", - id : "disposableGoodsType", - value : '', - anchor : '95%' - }] - },{ - columnWidth : .2, - layout : 'form', - labelWidth : 120, - hidden:!isHaveApplicationDepartMode, - id:'showApplicationDepartId', - items : [{ - xtype : 'combo', - fieldLabel : '显示申请科室列', - id : 'showApplicationDepart', - name : 'showApplicationDepart', - valueField : 'value', - displayField : 'value', - store : new Ext.data.SimpleStore( { - fields : ['value'], - data : [ ['是'],['否'] ] - }), - forceSelection : true, - value:'是', - editable : false, - mode : 'local', - triggerAction : 'all', - anchor : '95%' - }] - },{ - columnWidth : .2, - layout : 'form', - labelWidth : 90, - hidden:!isHaveApplicationDepartMode, - id:'showAmountColumnId', - items : [{ - xtype : 'combo', - fieldLabel : '显示数量列', - id : 'showAmountColumn', - name : 'showAmountColumn', - valueField : 'value', - displayField : 'value', - store : new Ext.data.SimpleStore( { - fields : ['value'], - data : [ ['是'],['否'] ] - }), - forceSelection : true, - value:'否', - editable : false, - mode : 'local', - triggerAction : 'all', - anchor : '95%' - }] - },{ - columnWidth : 0.2, - layout : 'form', - id : 'patternOfReportLable', - items : [{ - xtype : 'combo', - fieldLabel : "报表格式", - displayField : 'name', - valueField : 'id', - store : patternOfReport, - forceSelection : false, - editable : false, - mode : 'local', - triggerAction : 'all', - name : "patternOfReport", - id : "patternOfReport", - anchor : '95%', - listeners : { - select: function (combo, record, index) { - if(record.get('id') == 'isHaveApplicationDepartMode'){ - Ext.getCmp('invoicePlanDepartId').show(); - Ext.getCmp('showAmountColumnId').show(); - Ext.getCmp('showApplicationDepartId').show(); - Ext.getCmp('departSearch').el.dom.parentNode.parentNode.parentNode.firstChild.innerHTML ='结算科室'; - }else{ - Ext.getCmp('invoicePlanDepartId').hide(); - Ext.getCmp('showAmountColumnId').hide(); - Ext.getCmp('showApplicationDepartId').hide(); - Ext.getCmp('departSearch').el.dom.parentNode.parentNode.parentNode.firstChild.innerHTML ='科室'; - } + } + }] + }, { + columnWidth: .2, + layout: 'form', + hidden: !isHaveApplicationDepartMode, + labelSeparator: '申请科室:', + id: "invoicePlanDepartId", + items: [{ + xtype: 'combo', + id: 'invoicePlanDepartSearch', + name: 'invoicePlanDepartSearch', + valueField: 'id', + displayField: 'name', + minChars: 0, + queryParam: 'spell', + allowBlank: true, + store: appDepartJsonStore, + mode: departMode, + triggerAction: 'all', + anchor: '95%' + }] + }, { + columnWidth: .2, + layout: 'form', + labelSeparator: departSearchName + ':', + items: [{ + xtype: 'combo', + id: 'departSearch', + name: 'departSearch', + valueField: 'orgUnitName', + displayField: 'name', + minChars: 0, + queryParam: 'spell', + allowBlank: true, + store: departJsonStore, + mode: departMode, + //listWidth:370, + triggerAction: 'all', + anchor: '95%' + }] + }, { + columnWidth: .2, + layout: 'form', + items: [{ + xtype: 'combo', + fieldLabel: '物品类型', + id: 'tousseType', + name: 'tousseType', + valueField: 'value', + displayField: 'value', + store: tousseTypeStore, + forceSelection: true, + listWidth: 200, + value: '全部', + editable: false, + mode: 'local', + triggerAction: 'all', + anchor: '95%', + listeners: { + select: function (store, records) { + if (Ext.getCmp('disposableGoodsType')) { + if (Ext.getCmp('tousseType').getValue() == '全部' + || Ext.getCmp('tousseType').getValue() == '一次性物品') { + Ext.getCmp('disposableGoodsType').setDisabled(false); + } else { + Ext.getCmp('disposableGoodsType').setValue('全部'); + Ext.getCmp('disposableGoodsType').setDisabled(true); + } } } - - }] + } }] - }], - buttons:[{ - xtype : 'button', - text : '查询', - minWidth : 70, - iconCls : 'icon_search', - handler : function() { - reloadReport(); - } - },{ - xtype : 'button', - text : '重置', - minWidth : 70, - iconCls : 'icon_set', - handler : function() { - $Id('startTime').value = ""; - $Id('endTime').value = ""; - $Id('departSearch').value = ""; - Ext.getCmp('departSearch').setValue(""); - } - },{ - xtype : 'button', - text : '打印', - minWidth : 70, - hidden:!sstsConfig.patternOfAccountingMonthlyReport, - handler : function() { - var url = WWWROOT + '/jasperreports/jasperreportsAction!createReportFromJavaBeanSource.do'; - var params = getParams(); - params.isPrint = true; - if(params.tousseType == ''){ - showResult('打印全部类型物品时请先导出再打印。'); - myMask.hide(); - return; - }; - Ext.Ajax.request({ - url: url, - async: false, - params: params, - success: function (response) { - doGetLodop(); - var html = ''; - if(document.getElementById('thisIframe').contentWindow.document.getElementById('Main')){ - html = document.getElementById('thisIframe').contentWindow.document.getElementById('Main').innerHTML; - }else { - showResult('打印物品时请先查询再打印。'); - myMask.hide(); - return; + }, { + columnWidth: 0.2, + layout: 'form', + labelWidth: 120, + items: [{ + xtype: 'combo', + fieldLabel: "一次性物品类型", + displayField: 'typeName', + valueField: 'typeValue', + store: diposableGooodsStore, + forceSelection: true, + listWidth: 150, + editable: false, + triggerAction: 'all', + name: "disposableGoodsType", + id: "disposableGoodsType", + value: '', + anchor: '95%' + }] + }, { + columnWidth: .2, + layout: 'form', + labelWidth: 120, + hidden: !isHaveApplicationDepartMode, + id: 'showApplicationDepartId', + items: [{ + xtype: 'combo', + fieldLabel: '显示申请科室列', + id: 'showApplicationDepart', + name: 'showApplicationDepart', + valueField: 'value', + displayField: 'value', + store: new Ext.data.SimpleStore({ + fields: ['value'], + data: [['是'], ['否']] + }), + forceSelection: true, + value: '是', + editable: false, + mode: 'local', + triggerAction: 'all', + anchor: '95%' + }] + }, { + columnWidth: .2, + layout: 'form', + labelWidth: 90, + hidden: !isHaveApplicationDepartMode, + id: 'showAmountColumnId', + items: [{ + xtype: 'combo', + fieldLabel: '显示数量列', + id: 'showAmountColumn', + name: 'showAmountColumn', + valueField: 'value', + displayField: 'value', + store: new Ext.data.SimpleStore({ + fields: ['value'], + data: [['是'], ['否']] + }), + forceSelection: true, + value: '否', + editable: false, + mode: 'local', + triggerAction: 'all', + anchor: '95%' + }] + }, { + columnWidth: 0.2, + layout: 'form', + id: 'patternOfReportLable', + items: [{ + xtype: 'combo', + fieldLabel: "报表格式", + displayField: 'name', + valueField: 'id', + store: patternOfReport, + forceSelection: false, + editable: false, + mode: 'local', + triggerAction: 'all', + name: "patternOfReport", + id: "patternOfReport", + anchor: '95%', + listeners: { + select: function (combo, record, index) { + if (record.get('id') == 'isHaveApplicationDepartMode') { + Ext.getCmp('invoicePlanDepartId').show(); + Ext.getCmp('showAmountColumnId').show(); + Ext.getCmp('showApplicationDepartId').show(); + Ext.getCmp('departSearch').el.dom.parentNode.parentNode.parentNode.firstChild.innerHTML = '结算科室'; + } else { + Ext.getCmp('invoicePlanDepartId').hide(); + Ext.getCmp('showAmountColumnId').hide(); + Ext.getCmp('showApplicationDepartId').hide(); + Ext.getCmp('departSearch').el.dom.parentNode.parentNode.parentNode.firstChild.innerHTML = '科室'; } - LODOP.SET_PRINT_PAGESIZE(1, '21.8cm', '14cm', ''); - LODOP.ADD_PRINT_HTM(0, 0, '21.8cm', '14cm', html); - LODOP.SET_PRINT_STYLEA(0, "Vorient", 3); - LODOP.PRINT(); - myMask.hide(); - }, - failure: function (response, options) { - showResult(response.responseText); - myMask.hide(); } - }); - } + } + + }] }] - }); - var reportForm = new Ext.Panel({ - frame:false,//渲染面板 - autoScroll:true,//自动显示滚动条 - collapsible:true,//允许展开和收缩 - bodyPadding:5, - html:'' - }); - - var viewport = new Ext.Viewport({ - layout : 'border', - items : [form, { - region : 'center', - margins : '0 0 0 0', - layout : 'fit', - items : reportForm - }] - }); - if(dataForPatternOfReport.length < 1){ - Ext.getCmp("patternOfReportLable").setVisible(false); - }else if(dataForPatternOfReport.length > 1){ - Ext.getCmp('patternOfReport').setValue(getHiddenValueByReportName(reportTypeJson[0].reportName)); - } - if(supplyRoomType == supplyRoomTypeFirstSupplyRoom || supplyRoomType == supplyRoomTypeSecondSupplyRoom || supplyRoomType == supplyRoomTypeExpensiveGoods){ - departJsonStore.load(); - appDepartJsonStore.load(); - }else{ - Ext.getCmp('invoicePlanDepartSearch').setValue(orgUnitCoding); - } - }); \ No newline at end of file + }], + buttons: [{ + xtype: 'button', + text: '查询', + minWidth: 70, + iconCls: 'icon_search', + handler: function () { + reloadReport(); + } + }, { + xtype: 'button', + text: '重置', + minWidth: 70, + iconCls: 'icon_set', + handler: function () { + $Id('startTime').value = ""; + $Id('endTime').value = ""; + $Id('departSearch').value = ""; + Ext.getCmp('departSearch').setValue(""); + } + }, { + xtype: 'button', + text: '打印', + minWidth: 70, + hidden: !sstsConfig.patternOfAccountingMonthlyReport, + handler: function () { + var url = WWWROOT + '/jasperreports/jasperreportsAction!createReportFromJavaBeanSource.do'; + var params = getParams(); + params.isPrint = true; + if (params.tousseType == '') { + showResult('打印全部类型物品时请先导出再打印。'); + myMask.hide(); + return; + }; + Ext.Ajax.request({ + url: url, + async: false, + params: params, + success: function (response) { + doGetLodop(); + var html = ''; + if (document.getElementById('thisIframe').contentWindow.document.getElementById('Main')) { + html = document.getElementById('thisIframe').contentWindow.document.getElementById('Main').innerHTML; + } else { + showResult('打印物品时请先查询再打印。'); + myMask.hide(); + return; + } + LODOP.SET_PRINT_PAGESIZE(1, '21.8cm', '14cm', ''); + LODOP.ADD_PRINT_HTM(0, 0, '21.8cm', '14cm', html); + LODOP.SET_PRINT_STYLEA(0, "Vorient", 3); + LODOP.PRINT(); + myMask.hide(); + }, + failure: function (response, options) { + showResult(response.responseText); + myMask.hide(); + } + }); + } + }] + }); + var reportForm = new Ext.Panel({ + frame: false,//渲染面板 + autoScroll: true,//自动显示滚动条 + collapsible: true,//允许展开和收缩 + bodyPadding: 5, + html: '' + }); + + var viewport = new Ext.Viewport({ + layout: 'border', + items: [form, { + region: 'center', + margins: '0 0 0 0', + layout: 'fit', + items: reportForm + }] + }); + if (dataForPatternOfReport.length < 1) { + Ext.getCmp("patternOfReportLable").setVisible(false); + } else if (dataForPatternOfReport.length > 1) { + Ext.getCmp('patternOfReport').setValue(getHiddenValueByReportName(reportTypeJson[0].reportName)); + } + if (supplyRoomType == supplyRoomTypeFirstSupplyRoom || supplyRoomType == supplyRoomTypeSecondSupplyRoom || supplyRoomType == supplyRoomTypeExpensiveGoods) { + departJsonStore.load(); + appDepartJsonStore.load(); + } else { + Ext.getCmp('invoicePlanDepartSearch').setValue(orgUnitCoding); + } +}); \ No newline at end of file