Browse Source

修改若干bug

luobo 4 years ago
parent
commit
96dc8b2459

+ 1 - 1
WebContent/WEB-INF/view/bus/invoice-edit.jsp

@@ -61,7 +61,7 @@
 
 
             <tr>
             <tr>
                 <td>开票时间:</td>
                 <td>开票时间:</td>
-                <td><input type="text" class="date" dateFmt="yyyy-MM-dd" id="billingTimeStr" autocomplete="off" name="billingTimeStr" value='${bwp.billingTime?string("yyyy-MM-dd")}' /></td>
+                <td><input type="text" class="date" dateFmt="yyyy-MM-dd" id="billingTimeStr" autocomplete="off" name="billingTimeStr" value='${(bwp.billingTime?string("yyyy-MM-dd"))!}' /></td>
                 <td>开票人:</td>
                 <td>开票人:</td>
                 <td><input type="text" name="billingUser" value='${bwp.billingUser!""}' autocomplete="off"/></td>
                 <td><input type="text" name="billingUser" value='${bwp.billingUser!""}' autocomplete="off"/></td>
             </tr>
             </tr>

+ 64 - 32
WebContent/WEB-INF/view/bus/month-assessment-list.jsp

@@ -31,7 +31,7 @@
 
 
     <script type="text/javascript">
     <script type="text/javascript">
         var g_pageNo = 1;
         var g_pageNo = 1;
-        var g_pageSize = 10;
+        var g_pageSize = 20;
         var total_rows=0;
         var total_rows=0;
         //刷新记忆
         //刷新记忆
         var checkedArray = [];
         var checkedArray = [];
@@ -44,7 +44,7 @@
                 columns: [
                 columns: [
                     { display: '单位编号', name: 'org',     align: 'center', width: "6%",
                     { display: '单位编号', name: 'org',     align: 'center', width: "6%",
                         render:function(rowdata, rowindex, value, column){
                         render:function(rowdata, rowindex, value, column){
-                            return "<span  class='textSlice' style='width:100%;cursor: pointer;' title='"+value.orgId+"'>"+value.orgId+"</span >";
+                            return "<span  class='textSlice' style='width:100%;cursor: pointer;' title='"+value.orgNumber+"'>"+value.orgNumber+"</span >";
                         }
                         }
                     },
                     },
                     { display: '单位名称', name: 'org',     align: 'center', width: "10%",
                     { display: '单位名称', name: 'org',     align: 'center', width: "10%",
@@ -63,17 +63,7 @@
                         }
                         }
                     },
                     },
 
 
-                    { display: '用户类型', name: 'org.baseUserType',     align: 'center', width: "6%",
-                        render:function(rowdata, rowindex, value, column){
-                            if(value == "1"){
-                                return "自来水户";
-                            }else if(value == "2"){
-                                return "取水户";
-                            }else{
-                                return "";
-                            }
-                        }
-                    },
+                    { display: '单位类别', name: 'baseOrgTypeName',     align: 'center', width: "6%"},
                     { display: '月份', name: 'assessmentMonth',     align: 'center', width: "5%"},
                     { display: '月份', name: 'assessmentMonth',     align: 'center', width: "5%"},
                     { display: '用水计划指标', name: 'waterPlanningIndex',     align: 'center', width: "5%"},
                     { display: '用水计划指标', name: 'waterPlanningIndex',     align: 'center', width: "5%"},
                     { display: '实际用水量', name: 'actualUseWater',     align: 'center', width: "5%"},
                     { display: '实际用水量', name: 'actualUseWater',     align: 'center', width: "5%"},
@@ -94,20 +84,20 @@
                     },
                     },
                     { display: '应收金额', name: 'amountReceivable',     align: 'center', width: "5%",
                     { display: '应收金额', name: 'amountReceivable',     align: 'center', width: "5%",
                         render: function (rowdata, rowindex, value, column){
                         render: function (rowdata, rowindex, value, column){
-                            return Number(value).toFixed(1);
+                            return Number(value).toFixed(2);
                         }
                         }
                     },
                     },
                     { display: '额定用水金额', name: 'baseWaterAmount',     align: 'center', width: "5%",
                     { display: '额定用水金额', name: 'baseWaterAmount',     align: 'center', width: "5%",
                         render: function (rowdata, rowindex, value, column){
                         render: function (rowdata, rowindex, value, column){
-                            return Number(value).toFixed(1);
+                            return Number(value).toFixed(2);
                         }
                         }
                     },
                     },
                     { display: '超标金额', name: 'paidInAmount',     align: 'center', width: "5%",
                     { display: '超标金额', name: 'paidInAmount',     align: 'center', width: "5%",
                         render: function (rowdata, rowindex, value, column){
                         render: function (rowdata, rowindex, value, column){
                         if (value > 0 ){
                         if (value > 0 ){
-                            return "<span  class='textSlice' style='width:100%;cursor: pointer;color: red;' >"+Number(value).toFixed(1)+"</span >";
+                            return "<span  class='textSlice' style='width:100%;cursor: pointer;color: red;' >"+Number(value).toFixed(2)+"</span >";
                         }
                         }
-                            return Number(value).toFixed(1);
+                            return Number(value).toFixed(2);
                         }
                         }
                     },
                     },
                     { display: '是否销账', name: 'isWriteOff',     align: 'center', width: "5%",
                     { display: '是否销账', name: 'isWriteOff',     align: 'center', width: "5%",
@@ -179,8 +169,12 @@
         </@pop_perm>
         </@pop_perm>
             <@pop_perm url="/monthAssessment/recalculation.do">
             <@pop_perm url="/monthAssessment/recalculation.do">
                 {line:true},
                 {line:true},
-                {text:'重算',click:recalculation, iconClass:'icon_export'}
+                {text:'重算',click:recalculation, iconClass:'icon_export'},
         </@pop_perm>
         </@pop_perm>
+                <@pop_perm url="/monthAssessment/monthAssessmentWriteOff.do">
+                {line:true},
+            {text:'销账',click:monthAssessmentWriteOff, iconClass:'icon_export'}
+            </@pop_perm>
         //     <@pop_perm url="/monthAssessment/print.do">
         //     <@pop_perm url="/monthAssessment/print.do">
         //         {line:true},
         //         {line:true},
         //         {text:'开发票',click:invoice, iconClass:'icon_export'},
         //         {text:'开发票',click:invoice, iconClass:'icon_export'},
@@ -229,7 +223,11 @@
                                 }},
                                 }},
                             { display: '累进水量(m³)', name: 'water', 	align: 'center',width: "20%"},
                             { display: '累进水量(m³)', name: 'water', 	align: 'center',width: "20%"},
                             { display: '累进加价(元/m³)', name: 'price', align: 'center',width: "20%"},
                             { display: '累进加价(元/m³)', name: 'price', align: 'center',width: "20%"},
-                            { display: '水费(元)', name: 'amount', 	align: 'center',width: "20%"}
+                            { display: '水费(元)', name: 'amount', 	align: 'center',width: "20%",
+                                render: function (rowdata, rowindex, value, column){
+                                    return Number(value).toFixed(2);
+                                }
+                            }
 
 
                         ],
                         ],
                         isScroll: false,width: '600px', columnWidth: 120,usePager:false,
                         isScroll: false,width: '600px', columnWidth: 120,usePager:false,
@@ -318,8 +316,10 @@
                     $("#letfContent").html(content);
                     $("#letfContent").html(content);
                     //取得分页组件
                     //取得分页组件
                     var pager=$("#pager");
                     var pager=$("#pager");
+                    console.log(pager);
                     //设置总页页数
                     //设置总页页数
                     pager.attr("total",gridData["pager.totalRows"]);
                     pager.attr("total",gridData["pager.totalRows"]);
+                    pager.attr("pagesize",g_pageSize);
                     pager.render();
                     pager.render();
                     //绑定翻页事件
                     //绑定翻页事件
                     pager.unbind("pageChange");
                     pager.unbind("pageChange");
@@ -559,12 +559,17 @@
         }
         }
 
 
         function checkAllRowHandler(checked){
         function checkAllRowHandler(checked){
+
             for (var rowid in this.records){
             for (var rowid in this.records){
-                if(checked)
-                    addCheckedArray(this.records[rowid][0]);
-                else
-                    removeCheckedArray(this.records[rowid][0]);
+                if(checked) {
+
+                    addCheckedArray(this.records[rowid].assessmentMonId);
+                }else{
+                    removeCheckedArray(this.records[rowid].assessmentMonId);
+                }
+
             }
             }
+            console.log(checkedArray);
         }
         }
 
 
         //清空数组
         //清空数组
@@ -587,6 +592,33 @@
                 },"json");
                 },"json");
 
 
         }
         }
+
+        //销账
+        function monthAssessmentWriteOff(){
+
+            var rows = g.getSelectedRows();
+            var rowsLength = rows.length;
+            if(rowsLength == 0) {
+                top.Dialog.alert("请选中要销账的记录!");
+                return;
+            }
+            if(rowsLength > 1) {
+                top.Dialog.alert("请只选中一条要销账的记录!");
+                return;
+            }
+
+            var selectedRows = g.getSelectedRows();
+            var _assessmentMonId = selectedRows[0].assessmentMonId;
+
+            top.Dialog.open({
+                ID:'a1',
+                URL:"${ctx}/monthAssessment/monthAssessmentWriteOff.do?entity_id="+_assessmentMonId,
+                Title:"月考核销账",
+                Width:800,
+                Height:400
+            });
+
+        }
     </script>
     </script>
 
 
 </head>
 </head>
@@ -609,19 +641,19 @@
                 <td><input class="date" dateFmt="yyyy" type="text" id="year"
                 <td><input class="date" dateFmt="yyyy" type="text" id="year"
                            name="year" value="${year!''}" /></td>
                            name="year" value="${year!''}" /></td>
             </tr>
             </tr>
-          <!--- <tr>
-                <td>超用水量(≥)::</td>
+            <tr>
+                <td>超用水量(≥):</td>
                 <td><input type="text" id="overWaterBegin"
                 <td><input type="text" id="overWaterBegin"
                            name="overWaterBegin" /></td>
                            name="overWaterBegin" /></td>
                 <td>并且(≤):</td>
                 <td>并且(≤):</td>
                 <td><input type="text" id="overWaterEnd" name="overWaterEnd" /></td>
                 <td><input type="text" id="overWaterEnd" name="overWaterEnd" /></td>
-                <td>应收金额(≥)::</td>
-                <td><input type="text" id="amountReceivableBegin"
-                           name="amountReceivableBegin" /></td>
-                <td>并且(≤):</td>
-                <td><input type="text" id="amountReceivableEnd"
-                           name="amountReceivableEnd" /></td>
-            </tr>--->
+                <td>超用率(≥%):</td>
+                <td><input type="text" id="exceedRatio"
+                           name="exceedRatio" /></td>
+                <td>超标金额:</td>
+                <td><input type="checkbox" id="isPaidInAmount"
+                           name="isPaidInAmount" checked="checked" /></td>
+            </tr>
             <tr>
             <tr>
                 <td>客户号:</td>
                 <td>客户号:</td>
                 <td><input type="text" id="customerNumber"
                 <td><input type="text" id="customerNumber"

+ 5 - 1
WebContent/WEB-INF/view/bus/month-assessment-write-off.jsp

@@ -55,7 +55,7 @@
                 <td><input type="text" id="amountReceivable"
                 <td><input type="text" id="amountReceivable"
                            name="amountReceivable" value="${amountReceivable!''}"
                            name="amountReceivable" value="${amountReceivable!''}"
                            readonly="readonly" /></td>
                            readonly="readonly" /></td>
-                <td><span class="star"></span>${assessmentMonth!''月付款方式:</td>
+                <td><span class="star"></span>${assessmentMonth!''}月付款方式:</td>
                 <td><select selectedValue="${modeOfPayment!''}"
                 <td><select selectedValue="${modeOfPayment!''}"
                             id="modeOfPayment" name="modeOfPayment"
                             id="modeOfPayment" name="modeOfPayment"
                             data='{"list":[{"value":"1","key":"现金"},{"value":"2","key":"转账"}]}'></select>
                             data='{"list":[{"value":"1","key":"现金"},{"value":"2","key":"转账"}]}'></select>
@@ -93,6 +93,10 @@
                                           name="remark" style="width: 300px;">${remark!''}</textarea></td>
                                           name="remark" style="width: 300px;">${remark!''}</textarea></td>
             </tr>
             </tr>
             <tr>
             <tr>
+                <td>是否开发票</td>
+                <td colspan="3"><input type="checkbox" name="isCheckFp"/></td>
+            </tr>
+            <tr>
                 <td colspan="4"><input type="submit" value="保存" /> <input
                 <td colspan="4"><input type="submit" value="保存" /> <input
                         type="button" value="取消" onclick="top.Dialog.close()" /></td>
                         type="button" value="取消" onclick="top.Dialog.close()" /></td>
             </tr>
             </tr>

+ 135 - 87
WebContent/WEB-INF/view/bus/org-plan-edit.jsp

@@ -83,6 +83,8 @@
 		$(function(){
 		$(function(){
 			//alert(0);
 			//alert(0);
 			getData(g_pageNo,g_pageSize);
 			getData(g_pageNo,g_pageSize);
+
+
 		})
 		})
 				/**初始时通过向后台传递排序id、排序顺序、初始页码、每页条数**/
 				/**初始时通过向后台传递排序id、排序顺序、初始页码、每页条数**/
 		function getData(pageNo,pageSize){	
 		function getData(pageNo,pageSize){	
@@ -124,6 +126,52 @@
 			$("#pageSize").val(pageSize);
 			$("#pageSize").val(pageSize);
 			return $("#searchForm").formToArray(); 
 			return $("#searchForm").formToArray(); 
 		}
 		}
+		function replyOfWaterInput(e) {
+			var newVal = e.target.value;
+			newVal = parseInt(newVal);
+			var reply = Math.round(newVal / 12);
+			$("#janReply").val(reply);
+			$("#febReply").val(reply);
+			$("#marReply").val(reply);
+			$("#aprReply").val(reply);
+			$("#mayReply").val(reply);
+			$("#junReply").val(reply);
+			$("#julReply").val(reply);
+			$("#augReply").val(reply);
+			$("#septReply").val(reply);
+			$("#octReply").val(reply);
+			$("#novReply").val(reply);
+			$("#decReply").val(reply);
+		}
+		function replyMonth() {
+			var janReply=$("#janReply").val();
+			var febReply=$("#febReply").val();
+			var marReply=$("#marReply").val();
+			var aprReply=$("#aprReply").val();
+			var mayReply=$("#mayReply").val();
+			var junReply=$("#junReply").val();
+			var julReply=$("#julReply").val();
+			var augReply=$("#augReply").val();
+			var septReply=$("#septReply").val();
+			var octReply=$("#octReply").val();
+			var novReply=$("#novReply").val();
+			var decReply=$("#decReply").val();
+			var newVal =
+					parseInt(janReply)+
+					parseInt(febReply)+
+					parseInt(marReply)+
+					parseInt(aprReply)+
+					parseInt(mayReply)+
+					parseInt(junReply)+
+					parseInt(julReply)+
+					parseInt(augReply)+
+					parseInt(septReply)+
+					parseInt(octReply)+
+					parseInt(novReply)+
+					parseInt(decReply);
+			$("#replyOfWater").val(newVal);
+
+		}
 
 
 </script>
 </script>
 <body onload="load()">
 <body onload="load()">
@@ -204,10 +252,10 @@
 									<td>全年计划用水指标:</td>
 									<td>全年计划用水指标:</td>
 									<td><input type="text" id="planOfWater" name="planOfWater"
 									<td><input type="text" id="planOfWater" name="planOfWater"
 										value="${plan.planOfWater?string(" 0")}" datatype="n"
 										value="${plan.planOfWater?string(" 0")}" datatype="n"
-										readonly="readonly" /></td>
+											   /></td>
 									<td>全年实际批复指标:</td>
 									<td>全年实际批复指标:</td>
-									<td><input type="text" id="replyOfWater"
-										name="replyOfWater" value='${plan.replyOfWater?string("0")}' datatype="n" readonly="readonly" /></td>
+									<td><input type="number" id="replyOfWater" oninput="replyOfWaterInput(event)" onpropertychange="replyOfWaterInput(event)"
+										name="replyOfWater" class="textinput" value='${plan.replyOfWater?string("0")}' datatype="n" /></td>
 								</tr>
 								</tr>
 								<!---<tr>
 								<!---<tr>
 									<td>一季度计划用水指标:</td>
 									<td>一季度计划用水指标:</td>
@@ -261,10 +309,10 @@
 											   value="${plan.janPlan?string(" 0")}" datatype="n" </#if>
 											   value="${plan.janPlan?string(" 0")}" datatype="n" </#if>
 											   readonly="readonly" /></td>
 											   readonly="readonly" /></td>
 									<td>一月份实际批复用水指标:</td>
 									<td>一月份实际批复用水指标:</td>
-									<td><input type="text" id="janReply"
-											   name="janReply"
+									<td><input type="number" id="janReply" oninput="replyMonth()" onpropertychange="replyMonth()"
+											   name="janReply" class="textinput"
 										<#if plan.janReply??>
 										<#if plan.janReply??>
-											   value="${plan.janReply?string(" 0")}"  datatype="n" </#if> /></td>
+											   value="${plan.janReply!"0"}"  datatype="n" </#if> /></td>
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>二月份计划用水指标:</td>
 									<td>二月份计划用水指标:</td>
@@ -274,10 +322,10 @@
 											   value="${plan.febPlan?string(" 0")}" datatype="n"</#if>
 											   value="${plan.febPlan?string(" 0")}" datatype="n"</#if>
 											   readonly="readonly" /></td>
 											   readonly="readonly" /></td>
 									<td>二月份实际批复用水指标:</td>
 									<td>二月份实际批复用水指标:</td>
-									<td><input type="text" id="febReply"
-											   name="febReply"
+									<td><input type="number" id="febReply" oninput="replyMonth()" onpropertychange="replyMonth()"
+											   name="febReply" class="textinput"
 										<#if plan.febReply??>
 										<#if plan.febReply??>
-											   value="${plan.febReply?string(" 0")}" datatype="n"</#if> /></td>
+											   value="${plan.febReply!"0"}" datatype="n"</#if> /></td>
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>三月份计划用水指标:</td>
 									<td>三月份计划用水指标:</td>
@@ -287,10 +335,10 @@
 											   value="${plan.marPlan?string(" 0")}" datatype="n"</#if>
 											   value="${plan.marPlan?string(" 0")}" datatype="n"</#if>
 											   readonly="readonly" /></td>
 											   readonly="readonly" /></td>
 									<td>三月份实际批复用水指标:</td>
 									<td>三月份实际批复用水指标:</td>
-									<td><input type="text" id="marReply"
-											   name="marReply"
+									<td><input type="number" id="marReply" oninput="replyMonth()" onpropertychange="replyMonth()"
+											   name="marReply" class="textinput"
 										<#if plan.marReply??>
 										<#if plan.marReply??>
-											   value="${plan.marReply?string(" 0")}" datatype="n" </#if> /></td>
+											   value="${plan.marReply!"0"}" datatype="n" </#if> /></td>
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>四月份计划用水指标:</td>
 									<td>四月份计划用水指标:</td>
@@ -300,10 +348,10 @@
 											   value="${plan.aprPlan?string(" 0")}" datatype="n" </#if>
 											   value="${plan.aprPlan?string(" 0")}" datatype="n" </#if>
 											   readonly="readonly" /></td>
 											   readonly="readonly" /></td>
 									<td>四月份实际批复用水指标:</td>
 									<td>四月份实际批复用水指标:</td>
-									<td><input type="text" id="aprReply"
-											   name="aprReply"
+									<td><input type="number" id="aprReply" oninput="replyMonth()" onpropertychange="replyMonth()"
+											   name="aprReply" class="textinput"
 										<#if plan.aprReply??>
 										<#if plan.aprReply??>
-											   value="${plan.aprReply?string(" 0")}" datatype="n" </#if>/></td>
+											   value="${plan.aprReply!"0"}" datatype="n" </#if>/></td>
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>五月份计划用水指标:</td>
 									<td>五月份计划用水指标:</td>
@@ -313,10 +361,10 @@
 											   value="${plan.mayPlan?string(" 0")}" datatype="n" </#if>
 											   value="${plan.mayPlan?string(" 0")}" datatype="n" </#if>
 											   readonly="readonly" /></td>
 											   readonly="readonly" /></td>
 									<td>五月份实际批复用水指标:</td>
 									<td>五月份实际批复用水指标:</td>
-									<td><input type="text" id="mayReply"
-											   name="mayReply"
+									<td><input type="number" id="mayReply" oninput="replyMonth()" onpropertychange="replyMonth()"
+											   name="mayReply" class="textinput"
 										<#if plan.mayReply??>
 										<#if plan.mayReply??>
-											   value="${plan.mayReply?string(" 0")}" datatype="n" </#if>/></td>
+											   value="${plan.mayReply!"0"}" datatype="n" </#if>/></td>
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>六月份计划用水指标:</td>
 									<td>六月份计划用水指标:</td>
@@ -326,10 +374,10 @@
 											   value="${plan.junPlan?string(" 0")}" datatype="n" </#if>
 											   value="${plan.junPlan?string(" 0")}" datatype="n" </#if>
 											   readonly="readonly" /></td>
 											   readonly="readonly" /></td>
 									<td>六月份实际批复用水指标:</td>
 									<td>六月份实际批复用水指标:</td>
-									<td><input type="text" id="junReply"
-											   name="junReply"
+									<td><input type="number" id="junReply" oninput="replyMonth()" onpropertychange="replyMonth()"
+											   name="junReply" class="textinput"
 										<#if plan.junReply??>
 										<#if plan.junReply??>
-											   value="${plan.junReply?string(" 0")}" datatype="n" </#if>/></td>
+											   value="${plan.junReply!"0"}" datatype="n" </#if>/></td>
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>七月份计划用水指标:</td>
 									<td>七月份计划用水指标:</td>
@@ -339,10 +387,10 @@
 											   value="${plan.julPlan?string(" 0")}" datatype="n" </#if>
 											   value="${plan.julPlan?string(" 0")}" datatype="n" </#if>
 											   readonly="readonly" /></td>
 											   readonly="readonly" /></td>
 									<td>七月份实际批复用水指标:</td>
 									<td>七月份实际批复用水指标:</td>
-									<td><input type="text" id="julReply"
-											   name="julReply"
+									<td><input type="number" id="julReply" oninput="replyMonth()" onpropertychange="replyMonth()"
+											   name="julReply" class="textinput"
 										<#if plan.julReply??>
 										<#if plan.julReply??>
-											   value="${plan.julReply?string(" 0")}" datatype="n" </#if>/></td>
+											   value="${plan.julReply!"0"}" datatype="n" </#if>/></td>
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>八月份计划用水指标:</td>
 									<td>八月份计划用水指标:</td>
@@ -352,10 +400,10 @@
 											   value="${plan.augPlan?string(" 0")}" datatype="n" </#if>
 											   value="${plan.augPlan?string(" 0")}" datatype="n" </#if>
 											   readonly="readonly" /></td>
 											   readonly="readonly" /></td>
 									<td>八月份实际批复用水指标:</td>
 									<td>八月份实际批复用水指标:</td>
-									<td><input type="text" id="augReply"
-											   name="augReply"
+									<td><input type="number" id="augReply" oninput="replyMonth()" onpropertychange="replyMonth()"
+											   name="augReply" class="textinput"
 										<#if plan.augReply??>
 										<#if plan.augReply??>
-											   value="${plan.augReply?string(" 0")}" datatype="n" </#if>/></td>
+											   value="${plan.augReply!"0"}" datatype="n" </#if>/></td>
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>九月份计划用水指标:</td>
 									<td>九月份计划用水指标:</td>
@@ -365,10 +413,10 @@
 											   value="${plan.septPlan?string(" 0")}" datatype="n" </#if>
 											   value="${plan.septPlan?string(" 0")}" datatype="n" </#if>
 											   readonly="readonly" /></td>
 											   readonly="readonly" /></td>
 									<td>九月份实际批复用水指标:</td>
 									<td>九月份实际批复用水指标:</td>
-									<td><input type="text" id="septReply"
-											   name="septReply"
+									<td><input type="number" id="septReply" oninput="replyMonth()" onpropertychange="replyMonth()"
+											   name="septReply" class="textinput"
 										<#if plan.septReply??>
 										<#if plan.septReply??>
-											   value="${plan.septReply?string(" 0")}" datatype="n" </#if>/></td>
+											   value="${plan.septReply!"0"}" datatype="n" </#if>/></td>
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>十月份计划用水指标:</td>
 									<td>十月份计划用水指标:</td>
@@ -378,10 +426,10 @@
 											   value="${plan.janPlan?string(" 0")}" datatype="n" </#if>
 											   value="${plan.janPlan?string(" 0")}" datatype="n" </#if>
 											   readonly="readonly" /></td>
 											   readonly="readonly" /></td>
 									<td>十月份实际批复用水指标:</td>
 									<td>十月份实际批复用水指标:</td>
-									<td><input type="text" id="octReply"
-											   name="octReply"
+									<td><input type="number" id="octReply" oninput="replyMonth()" onpropertychange="replyMonth()"
+											   name="octReply" class="textinput"
 										<#if plan.octReply??>
 										<#if plan.octReply??>
-											   value="${plan.octReply?string(" 0")}" datatype="n" </#if>/></td>
+											   value="${plan.octReply!"0"}" datatype="n" </#if>/></td>
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>十一月份计划用水指标:</td>
 									<td>十一月份计划用水指标:</td>
@@ -391,10 +439,10 @@
 											   value="${plan.novPlan?string(" 0")}" datatype="n" </#if>
 											   value="${plan.novPlan?string(" 0")}" datatype="n" </#if>
 											   readonly="readonly" /></td>
 											   readonly="readonly" /></td>
 									<td>十一月份实际批复用水指标:</td>
 									<td>十一月份实际批复用水指标:</td>
-									<td><input type="text" id="novReply"
-											   name="novReply"
+									<td><input type="number" id="novReply" oninput="replyMonth()" onpropertychange="replyMonth()"
+											   name="novReply" class="textinput"
 										<#if plan.novReply??>
 										<#if plan.novReply??>
-											   value="${plan.novReply?string(" 0")}" datatype="n" </#if>/></td>
+											   value="${plan.novReply!"0"}" datatype="n" </#if>/></td>
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>十二月份计划用水指标:</td>
 									<td>十二月份计划用水指标:</td>
@@ -404,10 +452,10 @@
 											   value="${plan.decPlan?string(" 0")}" datatype="n" </#if>
 											   value="${plan.decPlan?string(" 0")}" datatype="n" </#if>
 											   readonly="readonly" /></td>
 											   readonly="readonly" /></td>
 									<td>十二月份实际批复用水指标:</td>
 									<td>十二月份实际批复用水指标:</td>
-									<td><input type="text" id="decReply"
-											   name="decReply"
+									<td><input type="number" id="decReply" oninput="replyMonth()" onpropertychange="replyMonth()"
+											   name="decReply" class="textinput"
 										<#if plan.decReply??>
 										<#if plan.decReply??>
-											   value="${plan.decReply?string(" 0")}" datatype="n" </#if>/></td>
+											   value="${plan.decReply!"0"}" datatype="n" </#if>/></td>
 								</tr>
 								</tr>
                                 <tr>
                                 <tr>
                                     <td><span class="star"></span>状态:</td>
                                     <td><span class="star"></span>状态:</td>
@@ -456,121 +504,121 @@
 								</tr>--->
 								</tr>--->
 								<tr>
 								<tr>
 									<td>一月份临时用水指标:</td>
 									<td>一月份临时用水指标:</td>
-									<td><input type="text" id="janAdjust"
-											   name="janAdjust"<#if
+									<td><input type="number" id="janAdjust"
+											   class="textinput"   name="janAdjust"<#if
 										plan.janAdjust??>
 										plan.janAdjust??>
-										value="${plan.janAdjust?string("0")}" </#if> /></td>
+										value="${plan.janAdjust!"0"}" </#if> /></td>
 									<input type="hidden" id="janAdjust1"
 									<input type="hidden" id="janAdjust1"
 										   name="janAdjust1"<#if
 										   name="janAdjust1"<#if
 									plan.janAdjust??>
 									plan.janAdjust??>
-									value="${plan.janAdjust?string("0")}" </#if> />
+									value="${plan.janAdjust!"0"}" </#if> />
 									<td>二月份临时用水指标:</td>
 									<td>二月份临时用水指标:</td>
-									<td><input type="text" id="febAdjust"
-											   name="febAdjust"<#if
+									<td><input type="number" id="febAdjust"
+											   class="textinput"   name="febAdjust"<#if
 										plan.febAdjust??>
 										plan.febAdjust??>
-										value="${plan.febAdjust?string("0")}" </#if> /></td>
+										value="${plan.febAdjust!"0"}" </#if> /></td>
 									<input type="hidden" id="febAdjust1"
 									<input type="hidden" id="febAdjust1"
 										   name="febAdjust1"<#if
 										   name="febAdjust1"<#if
 									plan.febAdjust??>
 									plan.febAdjust??>
-									value="${plan.febAdjust?string("0")}" </#if> />
+									value="${plan.febAdjust!"0"}" </#if> />
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>三月份临时用水指标:</td>
 									<td>三月份临时用水指标:</td>
-									<td><input type="text" id="marAdjust"
-											   name="marAdjust"<#if
+									<td><input type="number" id="marAdjust"
+											   class="textinput"   name="marAdjust"<#if
 										plan.marAdjust??>
 										plan.marAdjust??>
-										value="${plan.marAdjust?string("0")}" </#if> /></td>
+										value="${plan.marAdjust!"0"}" </#if> /></td>
 									<input type="hidden" id="marAdjust1"
 									<input type="hidden" id="marAdjust1"
 										   name="marAdjust1"<#if
 										   name="marAdjust1"<#if
 									plan.marAdjust??>
 									plan.marAdjust??>
-									value="${plan.marAdjust?string("0")}" </#if> />
+									value="${plan.marAdjust!"0"}" </#if> />
 								<td>四月份临时用水指标:</td>
 								<td>四月份临时用水指标:</td>
-								<td><input type="text" id="aprAdjust"
-										   name="aprAdjust"<#if
+								<td><input type="number" id="aprAdjust"
+										   class="textinput"  name="aprAdjust"<#if
 									plan.aprAdjust??>
 									plan.aprAdjust??>
-									value="${plan.aprAdjust?string("0")}" </#if> /></td>
+									value="${plan.aprAdjust!"0"}" </#if> /></td>
 								<input type="hidden" id="aprAdjust1"
 								<input type="hidden" id="aprAdjust1"
 									   name="aprAdjust1"<#if
 									   name="aprAdjust1"<#if
 								plan.aprAdjust??>
 								plan.aprAdjust??>
-								value="${plan.aprAdjust?string("0")}" </#if> />
+								value="${plan.aprAdjust!"0"}" </#if> />
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>五月份临时用水指标:</td>
 									<td>五月份临时用水指标:</td>
-									<td><input type="text" id="mayAdjust"
-											   name="mayAdjust"<#if
+									<td><input type="number" id="mayAdjust"
+											   class="textinput"   name="mayAdjust"<#if
 										plan.mayAdjust??>
 										plan.mayAdjust??>
-										value="${plan.mayAdjust?string("0")}" </#if> /></td>
+										value="${plan.mayAdjust!"0"}" </#if> /></td>
 									<input type="hidden" id="mayAdjust1"
 									<input type="hidden" id="mayAdjust1"
 										   name="mayAdjust1"<#if
 										   name="mayAdjust1"<#if
 									plan.mayAdjust??>
 									plan.mayAdjust??>
-									value="${plan.mayAdjust?string("0")}" </#if> />
+									value="${plan.mayAdjust!"0"}" </#if> />
 								<td>六月份临时用水指标:</td>
 								<td>六月份临时用水指标:</td>
-								<td><input type="text" id="junAdjust"
-										   name="junAdjust"<#if plan.junAdjust??>
-									value="${plan.junAdjust?string("0")}" </#if> /></td>
+								<td><input type="number" id="junAdjust"
+										   class="textinput"   name="junAdjust"<#if plan.junAdjust??>
+									value="${plan.junAdjust!"0"}" </#if> /></td>
 								<input type="hidden" id="junAdjust1"
 								<input type="hidden" id="junAdjust1"
 									   name="junAdjust1"<#if
 									   name="junAdjust1"<#if
 								plan.junAdjust??>
 								plan.junAdjust??>
-								value="${plan.junAdjust?string("0")}" </#if> />
+								value="${plan.junAdjust!"0"}" </#if> />
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>七月份临时用水指标:</td>
 									<td>七月份临时用水指标:</td>
-									<td><input type="text" id="julAdjust"
-											   name="julAdjust"<#if plan.julAdjust??>
-										value="${plan.julAdjust?string("0")}" </#if> /></td>
+									<td><input type="number" id="julAdjust"
+											   class="textinput"   name="julAdjust"<#if plan.julAdjust??>
+										value="${plan.julAdjust!"0"}" </#if> /></td>
 									<input type="hidden" id="julAdjust1"
 									<input type="hidden" id="julAdjust1"
 										   name="julAdjust1"<#if
 										   name="julAdjust1"<#if
 									plan.julAdjust??>
 									plan.julAdjust??>
-									value="${plan.julAdjust?string("0")}" </#if> />
+									value="${plan.julAdjust!"0"}" </#if> />
 								<td>八月份临时用水指标:</td>
 								<td>八月份临时用水指标:</td>
-								<td><input type="text" id="augAdjust"
-										   name="augAdjust"<#if
+								<td><input type="number" id="augAdjust"
+										   class="textinput"   name="augAdjust"<#if
 									plan.augAdjust??>
 									plan.augAdjust??>
-									value="${plan.augAdjust?string("0")}" </#if> /></td>
+									value="${plan.augAdjust!"0"}" </#if> /></td>
 								<input type="hidden" id="augAdjust1"
 								<input type="hidden" id="augAdjust1"
 									   name="augAdjust1"<#if
 									   name="augAdjust1"<#if
 								plan.augAdjust??>
 								plan.augAdjust??>
-								value="${plan.augAdjust?string("0")}" </#if> />
+								value="${plan.augAdjust!"0"}" </#if> />
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>九月份临时用水指标:</td>
 									<td>九月份临时用水指标:</td>
-									<td><input type="text" id="septAdjust"
-											   name="septAdjust"<#if
+									<td><input type="number" id="septAdjust"
+											   class="textinput"	   name="septAdjust"<#if
 										plan.septAdjust??>
 										plan.septAdjust??>
-										value="${plan.septAdjust?string("0")}" </#if> /></td>
+										value="${plan.septAdjust!"0"}" </#if> /></td>
 									<input type="hidden" id="septAdjust1"
 									<input type="hidden" id="septAdjust1"
 										   name="septAdjust1"<#if
 										   name="septAdjust1"<#if
 									plan.septAdjust??>
 									plan.septAdjust??>
-									value="${plan.septAdjust?string("0")}" </#if> />
+									value="${plan.septAdjust!"0"}" </#if> />
 								<td>十月份临时用水指标:</td>
 								<td>十月份临时用水指标:</td>
-								<td><input type="text" id="octAdjust"
-										   name="octAdjust"<#if
+								<td><input type="number" id="octAdjust"
+										   class="textinput"   name="octAdjust"<#if
 									plan.octAdjust??>
 									plan.octAdjust??>
-									value="${plan.octAdjust?string("0")}" </#if> /></td>
+									value="${plan.octAdjust!"0"}" </#if> /></td>
 								<input type="hidden" id="octAdjust1"
 								<input type="hidden" id="octAdjust1"
 									   name="octAdjust1"<#if
 									   name="octAdjust1"<#if
 								plan.octAdjust??>
 								plan.octAdjust??>
-								value="${plan.octAdjust?string("0")}" </#if> />
+								value="${plan.octAdjust!"0"}" </#if> />
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>十一月份临时用水指标:</td>
 									<td>十一月份临时用水指标:</td>
-									<td><input type="text" id="novAdjust"
-											   name="novAdjust"<#if
+									<td><input type="number" id="novAdjust"
+											   class="textinput"	   name="novAdjust"<#if
 										plan.novAdjust??>
 										plan.novAdjust??>
-										value="${plan.novAdjust?string("0")}" </#if> /></td>
+										value="${plan.novAdjust!"0"}" </#if> /></td>
 									<input type="hidden" id="novAdjust1"
 									<input type="hidden" id="novAdjust1"
 										   name="novAdjust1"<#if
 										   name="novAdjust1"<#if
 									plan.novAdjust??>
 									plan.novAdjust??>
-									value="${plan.novAdjust?string("0")}" </#if> />
+									value="${plan.novAdjust!"0"}" </#if> />
 								<td>十二月份临时用水指标:</td>
 								<td>十二月份临时用水指标:</td>
-								<td><input type="text" id="decAdjust"
-										   name="decAdjust"<#if
+								<td><input type="number" id="decAdjust"
+										   class="textinput"   name="decAdjust"<#if
 									plan.decAdjust??>
 									plan.decAdjust??>
-									value="${plan.decAdjust?string("0")}" </#if> /></td>
+									value="${plan.decAdjust!"0"}" </#if> /></td>
 								<input type="hidden" id="decAdjust1"
 								<input type="hidden" id="decAdjust1"
 									   name="decAdjust1"<#if
 									   name="decAdjust1"<#if
 								plan.decAdjust??>
 								plan.decAdjust??>
-								value="${plan.decAdjust?string("0")}" </#if> />
+								value="${plan.decAdjust!"0"}" </#if> />
 								</tr>
 								</tr>
 								<tr>
 								<tr>
 									<td>备注</td>
 									<td>备注</td>

+ 13 - 13
WebContent/WEB-INF/view/bus/year-actual-water-summary-list.jsp

@@ -52,19 +52,14 @@
 		                  }	
 		                  }	
                 	},
                 	},
                     { display: '年度', name: 'year', align: 'center', width: "5%"},
                     { display: '年度', name: 'year', align: 'center', width: "5%"},
-                    { display: '全年计划批复水量', name: 'planReply', align: 'center', width: "7%"},
-                    { display: '全年实际批复水量', name: 'actualReply', align: 'center', width: "7%"},
-                    { display: '全年实际用水量', name: 'yearActualWater', align: 'center', width: "7%"},
-                    { display: '全年超计划用水量', name: 'exceedPlan', align: 'center', width: "7%"},
-                    { display: '全年节约用水量', name: 'saveOfWater', align: 'center', width: "7%"},
-                    { display: '一季度计划', name: 'first_quarter_reply', align: 'center', width: "7%"},
-                    { display: '二季度计划', name: 'second_quarter_reply', align: 'center', width: "7%"},
-                    { display: '三季度计划', name: 'third_quarter_reply', align: 'center', width: "7%"},
-                    { display: '四季度计划', name: 'fourth_quarter_reply', align: 'center', width: "7%"},                    
-                    { display: '超计划用水量比率(%)', name: 'exceedOfWaterRate', align: 'center', width: "8%"},
-                    { display: '实际超用水量', name: 'exceedOfWater', align: 'center', width: "7%"},
-                    { display: '罚款金额(元)', name: 'waterFines', align: 'center', width: "6%"},
-                    { display: '备注', name: 'remark', align: 'center', width: "10%"}
+                    { display: '全年计划批复水量', name: 'sumPlanOfWater', align: 'center', width: "7%"},
+                    { display: '全年实际批复水量', name: 'sumReplyOfWater', align: 'center', width: "7%"},
+                    { display: '全年实际用水量', name: 'sumActualUseWater', align: 'center', width: "7%"},
+                    { display: '全年超计划用水量', name: 'actualPlanWater', align: 'center', width: "7%"},
+                    { display: '全年节约用水量', name: 'savingPlanWater', align: 'center', width: "7%"},
+                    { display: '超计划用水量比率(%)', name: 'actualRatioStr', align: 'center', width: "8%"},
+                    { display: '实际超用水量', name: 'sumActualClosingWater', align: 'center', width: "7%"}
+
 	              ], 
 	              ], 
 	              toolbar:{
 	              toolbar:{
 	              	items:[
 	              	items:[
@@ -293,8 +288,12 @@
 					<td><input type="text" id="orgName" name="orgName" /></td>
 					<td><input type="text" id="orgName" name="orgName" /></td>
 					<td>单位地址:</td>
 					<td>单位地址:</td>
 					<td><input type="text" id="address" name="address" /></td>
 					<td><input type="text" id="address" name="address" /></td>
+
 				</tr>
 				</tr>
 				<tr>
 				<tr>
+
+					<td>水表编号:</td>
+					<td><input type="text" id="meterNumber" name="meterNumber" /></td>
 					<td>用户类型:</td>
 					<td>用户类型:</td>
 					<td><select id="userType" name="userType"
 					<td><select id="userType" name="userType"
 						data='{"list":${userTypeData}}' prompt="全部"></select></td>
 						data='{"list":${userTypeData}}' prompt="全部"></select></td>
@@ -312,6 +311,7 @@
 						</button>
 						</button>
 					</td>
 					</td>
 				</tr>
 				</tr>
+
 			</table>
 			</table>
 		</form>
 		</form>
 	</div>
 	</div>

+ 2 - 1
src/java/com/bus/dao/IBusAnnualPlanForWaterDao.java

@@ -5,6 +5,7 @@ import java.util.Date;
 
 
 import com.bus.model.BusAnnualPlanForWater;
 import com.bus.model.BusAnnualPlanForWater;
 import com.bus.model.temp.YearActualWaterSummaryTemp;
 import com.bus.model.temp.YearActualWaterSummaryTemp;
+import com.bus.model.temp.YearActualWaterSummaryTemp2;
 import com.core.dao.IGenericDao;
 import com.core.dao.IGenericDao;
 
 
 
 
@@ -23,7 +24,7 @@ public interface IBusAnnualPlanForWaterDao extends IGenericDao<BusAnnualPlanForW
 	 */
 	 */
 	
 	
 	public YearActualWaterSummaryTemp getYearActualWaterSummaryDetail(Long orgId,String year);
 	public YearActualWaterSummaryTemp getYearActualWaterSummaryDetail(Long orgId,String year);
-	
+	public YearActualWaterSummaryTemp2 getYearActualWaterSummaryDetail2(Long orgId, String year);
 	 /**
 	 /**
 	  * 
 	  * 
 	  * @param orgId
 	  * @param orgId

+ 53 - 0
src/java/com/bus/dao/impl/BusAnnualPlanForWaterDaoImpl.java

@@ -1,8 +1,11 @@
 package com.bus.dao.impl;
 package com.bus.dao.impl;
 
 
 import java.io.File;
 import java.io.File;
+import java.sql.ResultSet;
+import java.sql.SQLException;
 import java.util.List;
 import java.util.List;
 
 
+import com.bus.model.temp.YearActualWaterSummaryTemp2;
 import org.hibernate.SQLQuery;
 import org.hibernate.SQLQuery;
 import org.hibernate.StatelessSession;
 import org.hibernate.StatelessSession;
 import org.hibernate.Transaction;
 import org.hibernate.Transaction;
@@ -18,6 +21,7 @@ import com.data.model.enumType.ImportStatus;
 
 
 import jxl.Sheet;
 import jxl.Sheet;
 import jxl.Workbook;
 import jxl.Workbook;
+import org.springframework.jdbc.core.simple.ParameterizedRowMapper;
 
 
 /**
 /**
  * 数据导入文件持久层接口类
  * 数据导入文件持久层接口类
@@ -48,6 +52,55 @@ public class BusAnnualPlanForWaterDaoImpl extends GenericDaoImpl<BusAnnualPlanFo
 		
 		
 		return jdbcTemplate.queryForObject(sql, new Object[]{orgId,year}, new YearActualWaterSummaryTempRowMap());
 		return jdbcTemplate.queryForObject(sql, new Object[]{orgId,year}, new YearActualWaterSummaryTempRowMap());
 	}
 	}
+
+	@Override
+	public YearActualWaterSummaryTemp2 getYearActualWaterSummaryDetail2(
+			Long orgId, String year) {
+
+		String sql = "select bma.org_id,org.org_name,org.org_number,org.address,org.`year`,\n" +
+				"-- 计划用水指标\n" +
+				"bapfw.plan_of_water as sum_plan_of_water,\n" +
+				"-- 实际批复 replyOfWater\n" +
+				"sum(bma.water_planning_index) as sum_reply_of_water,\n" +
+				"-- 实际用水量 actualUseWater\n" +
+				"sum(bma.actual_use_water) as sum_actual_use_water ,\n" +
+				"-- 超标水量 actualClosingWater\n" +
+				"sum(bma.actual_closing_water) as sum_actual_closing_water,\n" +
+				"-- 全年超计划用水量 (实际-计划)\n" +
+				"(sum(bma.actual_use_water) - bapfw.plan_of_water) as actual_plan_water,\n" +
+				"-- 全年节约用水量(批复-实际)\n" +
+				"sum(bma.water_planning_index) - sum(bma.actual_use_water) as saving_plan_water,\n" +
+				"-- 超计划用水量比率 (超标水量 / 实际批复)\n" +
+				"ROUND((sum(bma.actual_closing_water)/ sum(bma.water_planning_index))*100,2) as actual_ratio\n" +
+				"\n" +
+				"from bus_month_assessment bma \n" +
+				"left join bus_org org on org.org_id = bma.org_id \n" +
+				"left join bus_annual_plan_for_water bapfw on bapfw.org_id = bma.org_id \n" +
+				"where bma.org_id = ? and org.`year`=? \n" +
+				"GROUP BY bma.org_id,org.`year`";
+		ParameterizedRowMapper<YearActualWaterSummaryTemp2> rowMapper=new ParameterizedRowMapper<YearActualWaterSummaryTemp2>() {
+			@Override
+			public YearActualWaterSummaryTemp2 mapRow(ResultSet rs, int i) throws SQLException {
+				YearActualWaterSummaryTemp2 entity =
+						new YearActualWaterSummaryTemp2(
+								rs.getLong("org_id"),
+								rs.getString("org_number"),
+								rs.getString("org_name"),
+								rs.getString("address"),
+								rs.getString("year"),
+								rs.getDouble("sum_plan_of_water"),
+								rs.getDouble("sum_reply_of_water"),
+								rs.getDouble("sum_actual_use_water"),
+								rs.getDouble("sum_actual_closing_water"),
+								rs.getDouble("actual_plan_water"),
+								rs.getDouble("saving_plan_water"),
+								rs.getDouble("actual_ratio")
+						);
+				return entity;
+			}
+		};
+		return jdbcTemplate.queryForObject(sql, new Object[]{orgId,year}, rowMapper);
+	}
 	public void updatePlanOfWater(Long orgId, Float planofwater,Float true1,Float true2,Float true3,Float true4){
 	public void updatePlanOfWater(Long orgId, Float planofwater,Float true1,Float true2,Float true3,Float true4){
 
 
 		jdbcTemplate.execute("update bus_annual_plan_for_water set reply_of_water='"+planofwater+"',first_quarter_reply='"+true1+"',second_quarter_reply='"+true2+"',third_quarter_reply='"+true3+"',fourth_quarter_reply='"+true4+"',`fill_time`=NOW() where org_Id='"+orgId+"'");
 		jdbcTemplate.execute("update bus_annual_plan_for_water set reply_of_water='"+planofwater+"',first_quarter_reply='"+true1+"',second_quarter_reply='"+true2+"',third_quarter_reply='"+true3+"',fourth_quarter_reply='"+true4+"',`fill_time`=NOW() where org_Id='"+orgId+"'");

+ 13 - 6
src/java/com/bus/dao/impl/BusOrgDaoImpl.java

@@ -67,8 +67,9 @@ public class BusOrgDaoImpl extends GenericDaoImpl<BusOrg, Long>
 		//Float v = (float) (1+GR/100);
 		//Float v = (float) (1+GR/100);
 		//通过sql查询增长比例
 		//通过sql查询增长比例
 		String v = " (select 1+(growth_ratio/100) from base_org_type o where o.org_type_id = b.org_type_id) ";
 		String v = " (select 1+(growth_ratio/100) from base_org_type o where o.org_type_id = b.org_type_id) ";
-		String quarterSql = "ROUND(SUM(bm.`water`) * "+v+"/4)";
-		String montherSql = "ROUND(SUM(bm.`water`) * "+v+"/12)";
+		String yearSql = "ROUND((ROUND(SUM(bm.`water`)/count(bm.`water`)) * 12 * "+v+")";
+		String quarterSql = "ROUND("+yearSql+"/4)";
+		String montherSql = "ROUND("+yearSql+"/12)";
 		String sql = " INSERT INTO `bus_annual_plan_for_water`                                                           "
 		String sql = " INSERT INTO `bus_annual_plan_for_water`                                                           "
                    + " (                                                                                                 " 
                    + " (                                                                                                 " 
                    + "    org_id,pri_year_usewater,plan_of_water,reply_of_water,                      					"
                    + "    org_id,pri_year_usewater,plan_of_water,reply_of_water,                      					"
@@ -79,7 +80,7 @@ public class BusOrgDaoImpl extends GenericDaoImpl<BusOrg, Long>
 				   + "    jan_reply,feb_reply,mar_reply,apr_reply,may_reply,jun_reply,jul_reply,aug_reply,sept_reply,oct_reply,nov_reply,dec_reply "
 				   + "    jan_reply,feb_reply,mar_reply,apr_reply,may_reply,jun_reply,jul_reply,aug_reply,sept_reply,oct_reply,nov_reply,dec_reply "
                    + " )                                                                                                 " 
                    + " )                                                                                                 " 
                    + " (                                                                                                 "
                    + " (                                                                                                 "
-				   + " SELECT b.`org_id`,SUM(bm.`water`),ROUND(SUM(bm.`water`)*"+v+"), ROUND(SUM(bm.`water`)* "+v+"),                                  "
+				   + " SELECT b.`org_id`,"+yearSql+","+yearSql+", "+yearSql+",                                  "
 				   + "       "+quarterSql+", "+quarterSql+","+quarterSql+","+quarterSql+",                              "
 				   + "       "+quarterSql+", "+quarterSql+","+quarterSql+","+quarterSql+",                              "
                    + "        "+quarterSql+", "+quarterSql+","+quarterSql+","+quarterSql+",                             "
                    + "        "+quarterSql+", "+quarterSql+","+quarterSql+","+quarterSql+",                             "
                    + "        ?,?,?,'yes',                  "
                    + "        ?,?,?,'yes',                  "
@@ -201,6 +202,10 @@ public class BusOrgDaoImpl extends GenericDaoImpl<BusOrg, Long>
 //		Float v = (float) (1+GR/100);
 //		Float v = (float) (1+GR/100);
 		//通过sql查询增长比例
 		//通过sql查询增长比例
 		String v = " (select 1+(growth_ratio/100) from base_org_type o where o.org_type_id = b.org_type_id) ";
 		String v = " (select 1+(growth_ratio/100) from base_org_type o where o.org_type_id = b.org_type_id) ";
+		String yearSql = "ROUND((ROUND(SUM(bm.`water`)/count(bm.`water`)) * 12 * "+v+")";
+		String quarterSql = "ROUND("+yearSql+"/4)";
+		String montherSql = "ROUND("+yearSql+"/12)";
+
 
 
 		String sql =" INSERT INTO `bus_quarterly_assessment`                                                                   "
 		String sql =" INSERT INTO `bus_quarterly_assessment`                                                                   "
 				   +" (                                                                                                        " 
 				   +" (                                                                                                        " 
@@ -208,7 +213,7 @@ public class BusOrgDaoImpl extends GenericDaoImpl<BusOrg, Long>
 				   +"     is_write_off,bank,bank_account                                                                       " 
 				   +"     is_write_off,bank,bank_account                                                                       " 
 				   +" )                                                                                                        " 
 				   +" )                                                                                                        " 
 				   +" (                                                                                                        " 
 				   +" (                                                                                                        " 
-				   +"     SELECT ?,ROUND(SUM(bm.`water`)*"+v+"/4),b.`org_id`,'no',b.bank,b.bank_account FROM `bus_org` b       " 
+				   +"     SELECT ?,"+quarterSql+",b.`org_id`,'no',b.bank,b.bank_account FROM `bus_org` b       "
 				   +"     JOIN `bus_meter_read_info` bm ON b.`org_number`=bm.`org_number`                                      " 
 				   +"     JOIN `bus_meter_read_info` bm ON b.`org_number`=bm.`org_number`                                      " 
                    +"     WHERE b.`is_plan_user`='yes' AND b.`year`=? AND bm.`price_month`>=? AND bm.`price_month`<?           "
                    +"     WHERE b.`is_plan_user`='yes' AND b.`year`=? AND bm.`price_month`>=? AND bm.`price_month`<?           "
                    +"     AND NOT EXISTS                                                                                       "
                    +"     AND NOT EXISTS                                                                                       "
@@ -240,14 +245,16 @@ public class BusOrgDaoImpl extends GenericDaoImpl<BusOrg, Long>
 			Date eMonthEndTime) {
 			Date eMonthEndTime) {
 		//通过sql查询增长比例
 		//通过sql查询增长比例
 		String v = " (select 1+(growth_ratio/100) from base_org_type o where o.org_type_id = b.org_type_id ) ";
 		String v = " (select 1+(growth_ratio/100) from base_org_type o where o.org_type_id = b.org_type_id ) ";
-
+		String yearSql = "ROUND((ROUND(SUM(bm.`water`)/count(bm.`water`)) * 12 * "+v+")";
+		String quarterSql = "ROUND("+yearSql+"/4)";
+		String montherSql = "ROUND("+yearSql+"/12)";
 		String sql =" INSERT INTO `bus_month_assessment`                                                                   "
 		String sql =" INSERT INTO `bus_month_assessment`                                                                   "
 				+" (                                                                                                        "
 				+" (                                                                                                        "
 				+"     assessment_month,water_planning_index,org_id,                                                      "
 				+"     assessment_month,water_planning_index,org_id,                                                      "
 				+"     is_write_off,bank,bank_account                                                                       "
 				+"     is_write_off,bank,bank_account                                                                       "
 				+" )                                                                                                        "
 				+" )                                                                                                        "
 				+" (                                                                                                        "
 				+" (                                                                                                        "
-				+"     SELECT ?,ROUND(SUM(bm.`water`)*"+v+"/12),b.`org_id`,'no',b.bank,b.bank_account FROM `bus_org` b       "
+				+"     SELECT ?,"+montherSql+",b.`org_id`,'no',b.bank,b.bank_account FROM `bus_org` b       "
 				+"     JOIN `bus_meter_read_info` bm ON b.`org_number`=bm.`org_number`                                      "
 				+"     JOIN `bus_meter_read_info` bm ON b.`org_number`=bm.`org_number`                                      "
 				+"     WHERE b.`is_plan_user`='yes' AND b.`year`=? AND bm.`price_month`>=? AND bm.`price_month`<?           "
 				+"     WHERE b.`is_plan_user`='yes' AND b.`year`=? AND bm.`price_month`>=? AND bm.`price_month`<?           "
 				+"     AND NOT EXISTS                                                                                       "
 				+"     AND NOT EXISTS                                                                                       "

+ 27 - 0
src/java/com/bus/model/temp/BusMonthAssessmentTemp2.java

@@ -86,6 +86,11 @@ public class BusMonthAssessmentTemp2 {
 
 
     private String ruleStr;
     private String ruleStr;
 
 
+    /** 获取计划户 **/
+    private String planUser;
+
+    private String  baseOrgTypeName;
+
 
 
     public Long getAssessmentMonId() {
     public Long getAssessmentMonId() {
         return assessmentMonId;
         return assessmentMonId;
@@ -359,5 +364,27 @@ public class BusMonthAssessmentTemp2 {
         }
         }
         return userTypeName;
         return userTypeName;
     }
     }
+
+    public String getPlanUser() {
+        if (org!=null){
+            planUser = org.getPlanUser();
+        }
+        return planUser;
+    }
+
+    public void setPlanUser(String planUser) {
+        this.planUser = planUser;
+    }
+
+    public String getBaseOrgTypeName() {
+        if (org!=null){
+            baseOrgTypeName = org.getBaseOrgType();
+        }
+        return baseOrgTypeName;
+    }
+
+    public void setBaseOrgTypeName(String baseOrgTypeName) {
+        this.baseOrgTypeName = baseOrgTypeName;
+    }
 }
 }
 
 

+ 160 - 0
src/java/com/bus/model/temp/YearActualWaterSummaryTemp2.java

@@ -0,0 +1,160 @@
+package com.bus.model.temp;
+
+import java.math.BigDecimal;
+import java.math.MathContext;
+import java.text.DecimalFormat;
+
+/**
+ * 年度实际用水汇总临时对象
+ * @author llq
+ *
+ */
+public class YearActualWaterSummaryTemp2 {
+
+	/**单位id**/
+	private Long orgId;
+	/**单位编号**/
+	private String orgNumber;
+	/**单位名称**/
+	private String orgName;
+	/**单位地址**/
+	private String address;
+	/**年度**/
+	private String year;
+	/**计划用水指标 **/
+	private Double sumPlanOfWater=0.00;
+	/**实际批复   **/
+	private Double sumReplyOfWater=0.00;
+	/**实际用水量 **/
+	private Double sumActualUseWater=0.00;
+	/**超标水量 **/
+	private Double sumActualClosingWater=0.00;
+	/**全年超计划用水量 (实际-计划)  **/
+	private Double actualPlanWater=0.00;
+	/**全年节约用水量(批复-实际)**/
+	private Double savingPlanWater=0.00;
+	/**超计划用水量比率 (超标水量 / 实际批复)**/
+	private Double actualRatio=0.00;
+
+	public YearActualWaterSummaryTemp2() {
+	}
+
+	public YearActualWaterSummaryTemp2(Long orgId, String orgNumber, String orgName, String address, String year, Double sumPlanOfWater, Double sumReplyOfWater, Double sumActualUseWater, Double sumActualClosingWater, Double actualPlanWater, Double savingPlanWater, Double actualRatio) {
+		this.orgId = orgId;
+		this.orgNumber = orgNumber;
+		this.orgName = orgName;
+		this.address = address;
+		this.year = year;
+		this.sumPlanOfWater = sumPlanOfWater;
+		this.sumReplyOfWater = sumReplyOfWater;
+		this.sumActualUseWater = sumActualUseWater;
+		this.sumActualClosingWater = sumActualClosingWater;
+		this.actualPlanWater = actualPlanWater;
+		this.savingPlanWater = savingPlanWater;
+		this.actualRatio = actualRatio;
+	}
+
+	public Long getOrgId() {
+		return orgId;
+	}
+
+	public void setOrgId(Long orgId) {
+		this.orgId = orgId;
+	}
+
+	public String getOrgNumber() {
+		return orgNumber;
+	}
+
+	public void setOrgNumber(String orgNumber) {
+		this.orgNumber = orgNumber;
+	}
+
+	public String getOrgName() {
+		return orgName;
+	}
+
+	public void setOrgName(String orgName) {
+		this.orgName = orgName;
+	}
+
+	public String getAddress() {
+		return address;
+	}
+
+	public void setAddress(String address) {
+		this.address = address;
+	}
+
+	public String getYear() {
+		return year;
+	}
+
+	public void setYear(String year) {
+		this.year = year;
+	}
+
+	public Double getSumPlanOfWater() {
+		return sumPlanOfWater;
+	}
+
+	public void setSumPlanOfWater(Double sumPlanOfWater) {
+		this.sumPlanOfWater = sumPlanOfWater;
+	}
+
+	public Double getSumReplyOfWater() {
+		return sumReplyOfWater;
+	}
+
+	public void setSumReplyOfWater(Double sumReplyOfWater) {
+		this.sumReplyOfWater = sumReplyOfWater;
+	}
+
+	public Double getSumActualUseWater() {
+		return sumActualUseWater;
+	}
+
+	public void setSumActualUseWater(Double sumActualUseWater) {
+		this.sumActualUseWater = sumActualUseWater;
+	}
+
+	public Double getSumActualClosingWater() {
+		return sumActualClosingWater;
+	}
+
+	public void setSumActualClosingWater(Double sumActualClosingWater) {
+		this.sumActualClosingWater = sumActualClosingWater;
+	}
+
+	public Double getActualPlanWater() {
+		return actualPlanWater;
+	}
+
+	public void setActualPlanWater(Double actualPlanWater) {
+		this.actualPlanWater = actualPlanWater;
+	}
+
+	public Double getSavingPlanWater() {
+		return savingPlanWater;
+	}
+
+	public void setSavingPlanWater(Double savingPlanWater) {
+		this.savingPlanWater = savingPlanWater;
+	}
+
+	public Double getActualRatio() {
+		return actualRatio;
+	}
+
+	public String getActualRatioStr(){
+		String val = "0%";
+		if (actualRatio!=null){
+			val = actualRatio+"%";
+		}
+		return val;
+	}
+
+	public void setActualRatio(Double actualRatio) {
+		this.actualRatio = actualRatio;
+	}
+}

+ 8 - 3
src/java/com/bus/service/IBusAnnualPlanForWaterService.java

@@ -4,6 +4,7 @@ import java.util.Date;
 
 
 import com.bus.model.BusAnnualPlanForWater;
 import com.bus.model.BusAnnualPlanForWater;
 import com.bus.model.temp.YearActualWaterSummaryTemp;
 import com.bus.model.temp.YearActualWaterSummaryTemp;
+import com.bus.model.temp.YearActualWaterSummaryTemp2;
 import com.core.service.IGenericService;
 import com.core.service.IGenericService;
 import com.core.util.Page;
 import com.core.util.Page;
 
 
@@ -26,9 +27,12 @@ public interface IBusAnnualPlanForWaterService extends IGenericService<BusAnnual
 	 * @return
 	 * @return
 	 */
 	 */
 	public Page getYearActualWaterSummaryList(String orgIds,String orgNumber,String orgName,
 	public Page getYearActualWaterSummaryList(String orgIds,String orgNumber,String orgName,
-			String address,String year,
+			String address,String year,Integer meterNumber,
 			Integer userType,int pageNo, int pageSize);
 			Integer userType,int pageNo, int pageSize);
-	
+
+	public Page getYearActualWaterSummaryList2(String orgIds,String orgNumber,String orgName,
+											  String address,String year,Integer meterNumber,
+											  Integer userType,int pageNo, int pageSize);
 	/**
 	/**
 	 * 查询年度实际汇总详情
 	 * 查询年度实际汇总详情
 	 * @param orgId
 	 * @param orgId
@@ -37,7 +41,8 @@ public interface IBusAnnualPlanForWaterService extends IGenericService<BusAnnual
 	 */
 	 */
 	
 	
 	public YearActualWaterSummaryTemp getYearActualWaterSummaryDetail(Long orgId,String year);
 	public YearActualWaterSummaryTemp getYearActualWaterSummaryDetail(Long orgId,String year);
-	
+	public YearActualWaterSummaryTemp2 getYearActualWaterSummaryDetail2(Long orgId, String year);
+
 	  /**
 	  /**
 	   * 年度计划初值化数据
 	   * 年度计划初值化数据
 	   * @param year
 	   * @param year

+ 3 - 1
src/java/com/bus/service/IBusMonthAssessmentService.java

@@ -34,7 +34,7 @@ public interface IBusMonthAssessmentService extends IGenericService<BusMonthAsse
 
 
     Page getMonthAssessmentListPage2(int pageNo, int pageSize, Integer orgNumber, Integer customerNumber, Integer meterNumber,
     Page getMonthAssessmentListPage2(int pageNo, int pageSize, Integer orgNumber, Integer customerNumber, Integer meterNumber,
                                               String orgName, String year, String address, String isPlanUser,
                                               String orgName, String year, String address, String isPlanUser,
-                                              String userType, String month, Integer overWaterBegin, Integer overWaterEnd, Integer amountReceivableBegin, Integer amountReceivableEnd, Long assessmentId, String isWriteOff, Float waterPrice);
+                                              String userType, String month, Integer overWaterBegin, Integer overWaterEnd, Integer exceedRatio,Boolean isPaidInAmount, Long assessmentId, String isWriteOff, Float waterPrice);
 
 
 //    //超计划加价水费查询
 //    //超计划加价水费查询
 //    List<Object[]> getOutOfPlanMonthList(String orgNumber, String season, Integer year);
 //    List<Object[]> getOutOfPlanMonthList(String orgNumber, String season, Integer year);
@@ -144,4 +144,6 @@ public interface IBusMonthAssessmentService extends IGenericService<BusMonthAsse
      * @return
      * @return
      */
      */
     Boolean recalculation(String year,String month);
     Boolean recalculation(String year,String month);
+
+
 }
 }

+ 3 - 2
src/java/com/bus/service/IBusOrgService.java

@@ -170,6 +170,7 @@ public interface IBusOrgService extends IGenericService<BusOrg, Long>{
       
       
       public Long findOrgNumberByYear(Integer orgNumber);
       public Long findOrgNumberByYear(Integer orgNumber);
       
       
-      public void updateAddress(String orgId,String postalAddress);      
-      
+      public void updateAddress(String orgId,String postalAddress);
+
+	BusOrg getEntityById(Long id);
 }
 }

+ 98 - 1
src/java/com/bus/service/impl/BusAnnualPlanForWaterServiceImpl.java

@@ -1,5 +1,6 @@
 package com.bus.service.impl;
 package com.bus.service.impl;
 
 
+import com.bus.model.temp.YearActualWaterSummaryTemp2;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.jdbc.core.JdbcTemplate;
 import org.springframework.jdbc.core.JdbcTemplate;
 
 
@@ -12,6 +13,12 @@ import com.bus.service.IBusAnnualPlanForWaterService;
 import com.core.dao.IGenericDao;
 import com.core.dao.IGenericDao;
 import com.core.service.impl.GenericServiceImpl;
 import com.core.service.impl.GenericServiceImpl;
 import com.core.util.Page;
 import com.core.util.Page;
+import org.springframework.jdbc.core.RowMapper;
+import org.springframework.jdbc.core.simple.ParameterizedRowMapper;
+
+import java.sql.ResultSet;
+import java.sql.SQLException;
+
 /**
 /**
  * 导入数据文件业务层实现类
  * 导入数据文件业务层实现类
  * @author lha
  * @author lha
@@ -44,7 +51,7 @@ public class BusAnnualPlanForWaterServiceImpl extends GenericServiceImpl<BusAnnu
 	 */
 	 */
 	@Override
 	@Override
 	public Page getYearActualWaterSummaryList(String orgIds,String orgNumber, String orgName,
 	public Page getYearActualWaterSummaryList(String orgIds,String orgNumber, String orgName,
-			String address, String year,
+			String address, String year,Integer meterNumber,
 			Integer userType, int pageNo, int pageSize) {
 			Integer userType, int pageNo, int pageSize) {
 		
 		
 		/*if(customerNumber != null&&!customerNumber.trim().equals("")){
 		/*if(customerNumber != null&&!customerNumber.trim().equals("")){
@@ -95,6 +102,90 @@ public class BusAnnualPlanForWaterServiceImpl extends GenericServiceImpl<BusAnnu
 	}
 	}
 
 
 
 
+	/**
+	 * 分页显示年度实际用水汇总
+	 * @param orgIds
+	 * @param orgNumber
+	 * @param orgName
+	 * @param address
+	 * @param year
+	 * @param userType
+	 * @param pageNo
+	 * @param pageSize
+	 * @return
+	 */
+	@Override
+	public Page getYearActualWaterSummaryList2(String orgIds,String orgNumber, String orgName,
+											  String address, String year,Integer meterNumber,
+											  Integer userType, int pageNo, int pageSize) {
+
+		String sql = "select * from (select bma.org_id,org.org_name,org.org_number,org.address,org.`year`,\n" +
+				"-- 计划用水指标\n" +
+				"bapfw.plan_of_water as sum_plan_of_water,\n" +
+				"-- 实际批复 replyOfWater\n" +
+				"sum(bma.water_planning_index) as sum_reply_of_water,\n" +
+				"-- 实际用水量 actualUseWater\n" +
+				"sum(bma.actual_use_water) as sum_actual_use_water ,\n" +
+				"-- 超标水量 actualClosingWater\n" +
+				"sum(bma.actual_closing_water) as sum_actual_closing_water,\n" +
+				"-- 全年超计划用水量 (实际-计划)\n" +
+				"(sum(bma.actual_use_water) - bapfw.plan_of_water) as actual_plan_water,\n" +
+				"-- 全年节约用水量(批复-实际)\n" +
+				"sum(bma.water_planning_index) - sum(bma.actual_use_water) as saving_plan_water,\n" +
+				"-- 超计划用水量比率 (超标水量 / 实际批复)\n" +
+				"ROUND((sum(bma.actual_closing_water)/ sum(bma.water_planning_index))*100,2) as actual_ratio\n" +
+				"\n" +
+				"from bus_month_assessment bma \n" +
+				"left join bus_org org on org.org_id = bma.org_id \n" +
+				"left join bus_annual_plan_for_water bapfw on bapfw.org_id = bma.org_id \n" +
+				"where 1 = 1\n" ;
+
+		if(orgIds!=null&&!orgIds.trim().equals(""))
+			sql += " and bma.org_id IN(" + orgIds + ")";
+		if(orgName!=null&&!orgName.trim().equals(""))
+			sql += " and org.org_name like '%" + orgName + "%'";
+		if (orgNumber != null&&!orgNumber.trim().equals(""))
+			sql += " and org.org_number='" + orgNumber + "'";
+		if (address != null&&!address.trim().equals(""))
+			sql += " and org.address like '%" + address + "%'";
+		if (year != null&&!year.trim().equals(""))
+			sql += " and org.`year`='" + year + "'";
+		if (userType != null && !userType.equals(""))
+			sql += " and org.user_type='" + userType + "'";
+		if (null != meterNumber && !meterNumber.equals(""))
+			sql += " and bma.org_id in(select org_id from bus_customer_meter  where meter_Number='"+meterNumber+"')";
+
+		sql+= " GROUP BY bma.org_id,org.`year`) as t ";
+
+		ParameterizedRowMapper<YearActualWaterSummaryTemp2> rowMapper=new ParameterizedRowMapper<YearActualWaterSummaryTemp2>() {
+			@Override
+			public YearActualWaterSummaryTemp2 mapRow(ResultSet rs, int i) throws SQLException {
+				YearActualWaterSummaryTemp2 entity =
+						new YearActualWaterSummaryTemp2(
+								rs.getLong("org_id"),
+								rs.getString("org_number"),
+								rs.getString("org_name"),
+								rs.getString("address"),
+								rs.getString("year"),
+								rs.getDouble("sum_plan_of_water"),
+								rs.getDouble("sum_reply_of_water"),
+								rs.getDouble("sum_actual_use_water"),
+								rs.getDouble("sum_actual_closing_water"),
+								rs.getDouble("actual_plan_water"),
+								rs.getDouble("saving_plan_water"),
+								rs.getDouble("actual_ratio")
+						);
+				return entity;
+			}
+		};
+
+		return dao.getPageByJdbcTemplate(sql, pageNo,
+				pageSize, rowMapper);
+
+	}
+
+
+
 	@Override
 	@Override
 	public YearActualWaterSummaryTemp getYearActualWaterSummaryDetail(
 	public YearActualWaterSummaryTemp getYearActualWaterSummaryDetail(
 			Long orgId, String year) {
 			Long orgId, String year) {
@@ -102,6 +193,12 @@ public class BusAnnualPlanForWaterServiceImpl extends GenericServiceImpl<BusAnnu
 		return dao.getYearActualWaterSummaryDetail(orgId, year);
 		return dao.getYearActualWaterSummaryDetail(orgId, year);
 	}
 	}
 	@Override
 	@Override
+	public YearActualWaterSummaryTemp2 getYearActualWaterSummaryDetail2(
+			Long orgId, String year) {
+
+		return dao.getYearActualWaterSummaryDetail2(orgId, year);
+	}
+	@Override
 	public void updatePlanOfWater(Long orgId, Float planofwater,Float true1,Float true2,Float true3,Float true4)
 	public void updatePlanOfWater(Long orgId, Float planofwater,Float true1,Float true2,Float true3,Float true4)
 	{		
 	{		
 		this.dao.updatePlanOfWater(orgId, planofwater,true1,true2,true3,true4);
 		this.dao.updatePlanOfWater(orgId, planofwater,true1,true2,true3,true4);

+ 18 - 6
src/java/com/bus/service/impl/BusMonthAssessmentServiceImpl.java

@@ -1,5 +1,6 @@
 package com.bus.service.impl;
 package com.bus.service.impl;
 
 
+import com.base.service.IBaseOrgTypeService;
 import com.bus.dao.IBusMonthAssessmentDao;
 import com.bus.dao.IBusMonthAssessmentDao;
 import com.bus.model.BusMonthAssessment;
 import com.bus.model.BusMonthAssessment;
 import com.bus.model.BusMonthAssessmentRule;
 import com.bus.model.BusMonthAssessmentRule;
@@ -35,6 +36,9 @@ public class BusMonthAssessmentServiceImpl extends GenericServiceImpl<BusMonthAs
     private IBusMonthAssessmentDao dao;
     private IBusMonthAssessmentDao dao;
 
 
     @Autowired
     @Autowired
+    private IBaseOrgTypeService orgTypeService;
+
+    @Autowired
     private org.springframework.jdbc.core.JdbcTemplate jdbcTemplate;
     private org.springframework.jdbc.core.JdbcTemplate jdbcTemplate;
 
 
     @Override
     @Override
@@ -43,6 +47,8 @@ public class BusMonthAssessmentServiceImpl extends GenericServiceImpl<BusMonthAs
     }
     }
 
 
     private IBusOrgService busOrgService = (IBusOrgService) AppUtil.getBean("busOrgService");
     private IBusOrgService busOrgService = (IBusOrgService) AppUtil.getBean("busOrgService");
+
+
     Logger log = LoggerFactory.getLogger(BusMonthAssessmentServiceImpl.class);
     Logger log = LoggerFactory.getLogger(BusMonthAssessmentServiceImpl.class);
 
 
 //    //超计划加价水费查询
 //    //超计划加价水费查询
@@ -307,7 +313,7 @@ public class BusMonthAssessmentServiceImpl extends GenericServiceImpl<BusMonthAs
     public Page getMonthAssessmentListPage2(
     public Page getMonthAssessmentListPage2(
             int pageNo, int pageSize, Integer orgNumber,Integer customerNumber,Integer meterNumber,
             int pageNo, int pageSize, Integer orgNumber,Integer customerNumber,Integer meterNumber,
             String orgName, String year, String address, String isPlanUser,
             String orgName, String year, String address, String isPlanUser,
-            String userType,String month,Integer overWaterBegin,Integer overWaterEnd,Integer amountReceivableBegin,Integer amountReceivableEnd,Long assessmentMonId
+            String userType,String month,Integer overWaterBegin,Integer overWaterEnd,Integer exceedRatio,Boolean isPaidInAmount,Long assessmentMonId
             ,String isWriteOff,Float waterPrice
             ,String isWriteOff,Float waterPrice
     ) {
     ) {
 
 
@@ -343,6 +349,15 @@ public class BusMonthAssessmentServiceImpl extends GenericServiceImpl<BusMonthAs
             sqlWhere += " and t.`water_price`=" + waterPrice +"";
             sqlWhere += " and t.`water_price`=" + waterPrice +"";
         if (null != assessmentMonId && !assessmentMonId.equals(""))
         if (null != assessmentMonId && !assessmentMonId.equals(""))
             sqlWhere += " and t.assessment_mon_id=" + assessmentMonId;
             sqlWhere += " and t.assessment_mon_id=" + assessmentMonId;
+        if (null != overWaterBegin && !overWaterBegin.equals("")&&null != overWaterEnd && !overWaterEnd.equals("")){
+            sqlWhere += " and t.`actual_closing_water`>=" + overWaterBegin +" and t.`actual_closing_water`<= " + overWaterEnd +"";
+        }
+        if (null != exceedRatio && !exceedRatio.equals("")){
+            sqlWhere += " and t.`exceed_ratio`>=" + exceedRatio +" ";
+        }
+        if (null != isPaidInAmount && isPaidInAmount){
+            sqlWhere += " and t.`paid_in_amount`> 0 ";
+        }
         sql += sqlWhere + " ORDER BY t.`org_id`,t.`assessment_month` LIMIT ?,?";
         sql += sqlWhere + " ORDER BY t.`org_id`,t.`assessment_month` LIMIT ?,?";
         RowMapper<BusMonthAssessmentTemp2> rowMapper = new RowMapper<BusMonthAssessmentTemp2>(){
         RowMapper<BusMonthAssessmentTemp2> rowMapper = new RowMapper<BusMonthAssessmentTemp2>(){
 
 
@@ -426,6 +441,7 @@ public class BusMonthAssessmentServiceImpl extends GenericServiceImpl<BusMonthAs
             sqlWhere += " and t.assessment_month in (" + month +")";
             sqlWhere += " and t.assessment_month in (" + month +")";
         if (null != isWriteOff && !isWriteOff.equals(""))
         if (null != isWriteOff && !isWriteOff.equals(""))
             sqlWhere += " and t.`is_write_off`='" + isWriteOff +"'";
             sqlWhere += " and t.`is_write_off`='" + isWriteOff +"'";
+
         String paramIds = "";
         String paramIds = "";
         if (null != assessmentMonId && !assessmentMonId.equals("")) {
         if (null != assessmentMonId && !assessmentMonId.equals("")) {
             for (int i = 0; i < assessmentMonId.length; i++) {
             for (int i = 0; i < assessmentMonId.length; i++) {
@@ -446,7 +462,7 @@ public class BusMonthAssessmentServiceImpl extends GenericServiceImpl<BusMonthAs
                 //获取单位信息
                 //获取单位信息
                 Long org_id = rs.getLong("org_id");
                 Long org_id = rs.getLong("org_id");
                 if (org_id!=null){
                 if (org_id!=null){
-                    BusOrg org = busOrgService.get(org_id);
+                    BusOrg org = busOrgService.getEntityById(org_id);
                     busMonthAssessment.setOrg(org);
                     busMonthAssessment.setOrg(org);
                 }
                 }
                 busMonthAssessment.setAssessmentMonId(rs.getLong("assessment_mon_id"));
                 busMonthAssessment.setAssessmentMonId(rs.getLong("assessment_mon_id"));
@@ -479,10 +495,6 @@ public class BusMonthAssessmentServiceImpl extends GenericServiceImpl<BusMonthAs
         List<BusMonthAssessmentTemp2> list =  jdbcTemplate.query(sql, rowMapper);
         List<BusMonthAssessmentTemp2> list =  jdbcTemplate.query(sql, rowMapper);
         return list;
         return list;
     }
     }
-
-
-
-
     @Override
     @Override
     public List<BusMonthAssessmentTemp> getMonthAssessmentForExcel(Integer pageNo, Integer pageSize, Integer orgNumber, Integer customerNumber, Integer meterNumber,
     public List<BusMonthAssessmentTemp> getMonthAssessmentForExcel(Integer pageNo, Integer pageSize, Integer orgNumber, Integer customerNumber, Integer meterNumber,
                                                                    String orgName, String year, String address, String isPlanUser,
                                                                    String orgName, String year, String address, String isPlanUser,

+ 11 - 1
src/java/com/bus/service/impl/BusOrgServiceImpl.java

@@ -516,7 +516,7 @@ public class BusOrgServiceImpl extends GenericServiceImpl<BusOrg, Long> implemen
             orgName = new String(orgName.getBytes("iso8859-1"), "UTF-8");
             orgName = new String(orgName.getBytes("iso8859-1"), "UTF-8");
             sql += " and b.org_name like '%" + orgName + "%'";
             sql += " and b.org_name like '%" + orgName + "%'";
         }
         }
-        if (!orgTypeId.equals("")) {
+        if (orgTypeId!=null && !orgTypeId.equals("")) {
             orgTypeId = new String(orgTypeId.getBytes("iso8859-1"), "UTF-8");
             orgTypeId = new String(orgTypeId.getBytes("iso8859-1"), "UTF-8");
             sql += " and b.org_type_id = " + orgTypeId + "";
             sql += " and b.org_type_id = " + orgTypeId + "";
         }
         }
@@ -637,4 +637,14 @@ public class BusOrgServiceImpl extends GenericServiceImpl<BusOrg, Long> implemen
         jdbcTemplate.update("UPDATE `bus_org` SET `postal_address`=? WHERE `org_id`=?", postalAddress, orgId);//
         jdbcTemplate.update("UPDATE `bus_org` SET `postal_address`=? WHERE `org_id`=?", postalAddress, orgId);//
 
 
     }
     }
+
+    @Override
+    public BusOrg getEntityById(Long id) {
+        BusOrg busOrg = this.get(id);
+        if (busOrg!=null){
+            BaseOrgType baseOrgType = baseOrgTypeService.get(busOrg.getBaseOrgTypeId());
+            busOrg.setOrgType(baseOrgType);
+        }
+        return busOrg;
+    }
 }
 }

+ 63 - 24
src/java/com/bus/web/BusInitController.java

@@ -20,6 +20,7 @@ import java.util.Map;
 import java.util.Properties;
 import java.util.Properties;
 import java.util.Set;
 import java.util.Set;
 
 
+import javax.persistence.criteria.CriteriaBuilder;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpServletResponse;
 
 
@@ -369,13 +370,23 @@ public class BusInitController extends BaseController {
             w += info.getWater();
             w += info.getWater();
         }
         }
 
 
+        //先算出上年月平均水量
+        Integer averageMonthWater = Math.round(w /listM.size());
+        //年计划 = 上年度月均用水量×12×增长比例
+        Integer  yearPlan= Math.round(averageMonthWater * 12 * GR);
+        //季度用水量
+        Integer quarterPlan = Math.round(yearPlan/4);
+        //月计划用水指标
+        Integer monthPlan = Math.round(yearPlan/12);
+
+
         // 计划水量=去年用水总量 * 增长比例
         // 计划水量=去年用水总量 * 增长比例
-        int planWater = (int) Math.round(GR * w);
+        //int planWater = (int) Math.round(GR * w);
         //季度用水量
         //季度用水量
-        int fs = Math.round(Float.valueOf(planWater) / 4);
+        //int fs = Math.round(Float.valueOf(planWater) / 4);
 
 
         //月计划用水指标
         //月计划用水指标
-        int ms = Math.round(Float.valueOf(planWater) / 12);
+        //int ms = Math.round(Float.valueOf(planWater) / 12);
 
 
 //        //半年计划用水指标
 //        //半年计划用水指标
 //        int hys = Math.round(Float.valueOf(planWater) / 2);
 //        int hys = Math.round(Float.valueOf(planWater) / 2);
@@ -386,16 +397,44 @@ public class BusInitController extends BaseController {
             BusOrg borg = busOrgService.get(orgId);
             BusOrg borg = busOrgService.get(orgId);
             BusAnnualPlanForWater busWater = new BusAnnualPlanForWater();
             BusAnnualPlanForWater busWater = new BusAnnualPlanForWater();
             busWater.setPriYearUseWater(w);
             busWater.setPriYearUseWater(w);
-            busWater.setPlanOfWater((float) planWater);
-            busWater.setReplyOfWater((float) planWater);
-            busWater.setFirstQuarterPlan((float) fs);
-            busWater.setFirstQuarterReply((float) fs);
-            busWater.setSecondQuarterPlan((float) fs);
-            busWater.setSecondQuarterReply((float) fs);
-            busWater.setThirdQuarterPlan((float) fs);
-            busWater.setThirdQuarterReply((float) fs);
-            busWater.setFourthQuarterPlan((float) fs);
-            busWater.setFourthQuarterReply((float) fs);
+            busWater.setPlanOfWater((float) yearPlan);
+            busWater.setReplyOfWater((float) yearPlan);
+            //季度
+            busWater.setFirstQuarterPlan((float) quarterPlan);
+            busWater.setFirstQuarterReply((float) quarterPlan);
+            busWater.setSecondQuarterPlan((float) quarterPlan);
+            busWater.setSecondQuarterReply((float) quarterPlan);
+            busWater.setThirdQuarterPlan((float) quarterPlan);
+            busWater.setThirdQuarterReply((float) quarterPlan);
+            busWater.setFourthQuarterPlan((float) quarterPlan);
+            busWater.setFourthQuarterReply((float) quarterPlan);
+            //月计划
+            busWater.setJanPlan((float) monthPlan);
+            busWater.setFebPlan((float) monthPlan);
+            busWater.setMarPlan((float) monthPlan);
+            busWater.setAprPlan((float) monthPlan);
+            busWater.setMayPlan((float) monthPlan);
+            busWater.setJunPlan((float) monthPlan);
+            busWater.setJulPlan((float) monthPlan);
+            busWater.setAugPlan((float) monthPlan);
+            busWater.setSeptPlan((float) monthPlan);
+            busWater.setOctPlan((float) monthPlan);
+            busWater.setNovPlan((float) monthPlan);
+            busWater.setDecPlan((float) monthPlan);
+
+            busWater.setJanReply((float) monthPlan);
+            busWater.setFebReply((float) monthPlan);
+            busWater.setMarReply((float) monthPlan);
+            busWater.setAprReply((float) monthPlan);
+            busWater.setMayReply((float) monthPlan);
+            busWater.setJunReply((float) monthPlan);
+            busWater.setJulReply((float) monthPlan);
+            busWater.setAugReply((float) monthPlan);
+            busWater.setSeptReply((float) monthPlan);
+            busWater.setOctReply((float) monthPlan);
+            busWater.setNovReply((float) monthPlan);
+            busWater.setDecReply((float) monthPlan);
+
             busWater.setOperatorId(ContextUtil.getCurrentUserId());
             busWater.setOperatorId(ContextUtil.getCurrentUserId());
             busWater.setUserName(ContextUtil.getCurrentUser().getFullName());
             busWater.setUserName(ContextUtil.getCurrentUser().getFullName());
             busWater.setFillTime(new Date());
             busWater.setFillTime(new Date());
@@ -407,7 +446,8 @@ public class BusInitController extends BaseController {
             for (int i = 1; i < 5; i++) {
             for (int i = 1; i < 5; i++) {
                 BusQuarterlyAssessment bqa = new BusQuarterlyAssessment();
                 BusQuarterlyAssessment bqa = new BusQuarterlyAssessment();
                 bqa.setAssessmentQuarter(i);
                 bqa.setAssessmentQuarter(i);
-                bqa.setWaterPlanningIndex((float) fs);
+                bqa.setWaterPlanningIndex((float) quarterPlan);
+                bqa.setReplyOfWater((float) quarterPlan);
                 bqa.setOrg(borg);
                 bqa.setOrg(borg);
                 bqa.setBank(borg.getBank());
                 bqa.setBank(borg.getBank());
                 bqa.setBankAccount(borg.getBankAccount());
                 bqa.setBankAccount(borg.getBankAccount());
@@ -418,7 +458,8 @@ public class BusInitController extends BaseController {
             for (int i = 1; i < 13; i++) {
             for (int i = 1; i < 13; i++) {
                 BusMonthAssessment bma = new BusMonthAssessment();
                 BusMonthAssessment bma = new BusMonthAssessment();
                 bma.setAssessmentMonth(i);
                 bma.setAssessmentMonth(i);
-                bma.setWaterPlanningIndex((float) ms);
+                bma.setWaterPlanningIndex((float) monthPlan);
+                bma.setReplyOfWater((float) monthPlan);
                 bma.setOrg(borg);
                 bma.setOrg(borg);
                 bma.setBank(borg.getBank());
                 bma.setBank(borg.getBank());
                 bma.setBankAccount(borg.getBankAccount());
                 bma.setBankAccount(borg.getBankAccount());
@@ -922,10 +963,7 @@ public class BusInitController extends BaseController {
             Long orgId = plan.getId();
             Long orgId = plan.getId();
             //取出原计划的数据,跟提交上来的数据做对比,只要修改过一个季度的 临时用水量,则更新到water_adj_rec表
             //取出原计划的数据,跟提交上来的数据做对比,只要修改过一个季度的 临时用水量,则更新到water_adj_rec表
             BusAnnualPlanForWater planwater = busAnnualPlanForWaterService.get(orgId);
             BusAnnualPlanForWater planwater = busAnnualPlanForWaterService.get(orgId);
-            if (planwater.getFirstQuarterAdjust() != plan.getFirstQuarterAdjust() ||
-                    planwater.getSecondQuarterAdjust() != plan.getSecondQuarterAdjust() ||
-                    planwater.getThirdQuarterAdjust() != plan.getThirdQuarterAdjust() ||
-                    planwater.getFourthQuarterAdjust() != plan.getFourthQuarterAdjust() ||
+            if (
                     planwater.getJanAdjust() != plan.getJanAdjust() ||
                     planwater.getJanAdjust() != plan.getJanAdjust() ||
                     planwater.getFebAdjust() != plan.getFebAdjust() ||
                     planwater.getFebAdjust() != plan.getFebAdjust() ||
                     planwater.getMarAdjust() != plan.getMarAdjust() ||
                     planwater.getMarAdjust() != plan.getMarAdjust() ||
@@ -941,10 +979,10 @@ public class BusInitController extends BaseController {
             ) {
             ) {
                 BusWaterAdjRec adjWater = new BusWaterAdjRec();
                 BusWaterAdjRec adjWater = new BusWaterAdjRec();
                 adjWater.setOrgId(orgId);
                 adjWater.setOrgId(orgId);
-                adjWater.setFirstQuarterAdjust(plan.getFirstQuarterAdjust());
-                adjWater.setSecondQuarterAdjust(plan.getSecondQuarterAdjust());
-                adjWater.setThirdQuarterAdjust(plan.getThirdQuarterAdjust());
-                adjWater.setFourthQuarterAdjust(plan.getFourthQuarterAdjust());
+//                adjWater.setFirstQuarterAdjust(plan.getFirstQuarterAdjust());
+//                adjWater.setSecondQuarterAdjust(plan.getSecondQuarterAdjust());
+//                adjWater.setThirdQuarterAdjust(plan.getThirdQuarterAdjust());
+//                adjWater.setFourthQuarterAdjust(plan.getFourthQuarterAdjust());
                 adjWater.setFillUser(ContextUtil.getCurrentUser().getFullName());
                 adjWater.setFillUser(ContextUtil.getCurrentUser().getFullName());
                 //月份
                 //月份
                 adjWater.setJanAdjust(plan.getJanAdjust());
                 adjWater.setJanAdjust(plan.getJanAdjust());
@@ -1202,7 +1240,8 @@ public class BusInitController extends BaseController {
                 //qa4.setWaterPlanningIndex(plan.getFourthQuarterAdjust());
                 //qa4.setWaterPlanningIndex(plan.getFourthQuarterAdjust());
                 plan.setDecReply(plan.getDecAdjust());
                 plan.setDecReply(plan.getDecAdjust());
             }
             }
-            float flt = plan.getFirstQuarterReply() + plan.getSecondQuarterReply() + plan.getThirdQuarterReply() + plan.getFourthQuarterReply();
+            float flt = plan.getJanReply() + plan.getFebReply() + plan.getMarReply() + plan.getAprReply()+plan.getMayReply()+plan.getJunReply()
+                       +plan.getJulReply()+plan.getAugReply()+plan.getSeptReply()+plan.getOctReply()+plan.getNovReply()+plan.getDecReply();
             plan.setReplyOfWater(flt);
             plan.setReplyOfWater(flt);
             Updater<BusAnnualPlanForWater> updater = new Updater<BusAnnualPlanForWater>(plan);
             Updater<BusAnnualPlanForWater> updater = new Updater<BusAnnualPlanForWater>(plan);
             busAnnualPlanForWaterService.updateByUpdater(updater);
             busAnnualPlanForWaterService.updateByUpdater(updater);

+ 8 - 4
src/java/com/bus/web/BusMonthAssessmentController.java

@@ -97,10 +97,10 @@ public class BusMonthAssessmentController extends BaseController {
     @ResponseBody
     @ResponseBody
     public String listPage2(int pageNo, int pageSize, Integer orgNumber,Integer customerNumber,Integer meterNumber,
     public String listPage2(int pageNo, int pageSize, Integer orgNumber,Integer customerNumber,Integer meterNumber,
                            String orgName, String year, String address, String isPlanUser,
                            String orgName, String year, String address, String isPlanUser,
-                           String userType,String month,Integer overWaterBegin,Integer overWaterEnd,Integer amountReceivableBegin,Integer amountReceivableEnd,
+                           String userType,String month,Integer overWaterBegin,Integer overWaterEnd,Integer exceedRatio,Boolean isPaidInAmount,
                            String isWriteOff,Float waterPrice,HttpServletRequest request) {
                            String isWriteOff,Float waterPrice,HttpServletRequest request) {
         this.page = busMonthAssessmentService.getMonthAssessmentListPage2(pageNo, pageSize, orgNumber, customerNumber, meterNumber, orgName.trim(), year, address, isPlanUser,
         this.page = busMonthAssessmentService.getMonthAssessmentListPage2(pageNo, pageSize, orgNumber, customerNumber, meterNumber, orgName.trim(), year, address, isPlanUser,
-                userType, month, overWaterBegin, overWaterEnd, amountReceivableBegin, amountReceivableEnd,null,isWriteOff,waterPrice);
+                userType, month, overWaterBegin, overWaterEnd, exceedRatio, isPaidInAmount,null,isWriteOff,waterPrice);
         Map<String, Object> map = new Hashtable<String,Object>();
         Map<String, Object> map = new Hashtable<String,Object>();
         map.put("pager.pageNo", page.getCurrentPageNo());//设置当前分页
         map.put("pager.pageNo", page.getCurrentPageNo());//设置当前分页
         map.put("pager.totalRows", page.getTotalCount());//总记录数
         map.put("pager.totalRows", page.getTotalCount());//总记录数
@@ -246,6 +246,10 @@ public class BusMonthAssessmentController extends BaseController {
         BusOrg org = entity.getOrg();
         BusOrg org = entity.getOrg();
         List<Object[]> list = busMonthAssessmentService.getMonthAssessmentListPage
         List<Object[]> list = busMonthAssessmentService.getMonthAssessmentListPage
                 (1, 1, null, null, null, null, null, null, null, null, null, null, null, null, null, entity_id,null,null);
                 (1, 1, null, null, null, null, null, null, null, null, null, null, null, null, null, entity_id,null,null);
+
+
+
+
         Object[] obj = list.get(0);
         Object[] obj = list.get(0);
         model.addAttribute("assessmentMonId",entity_id);
         model.addAttribute("assessmentMonId",entity_id);
         model.addAttribute("assessmentMonth", obj[8]);
         model.addAttribute("assessmentMonth", obj[8]);
@@ -323,12 +327,12 @@ public class BusMonthAssessmentController extends BaseController {
         try {
         try {
             if("list".equals(exportType)){
             if("list".equals(exportType)){
                 String[] titles = new String[]{ "单位编号","单位名称","单位地址","水表号","年份",
                 String[] titles = new String[]{ "单位编号","单位名称","单位地址","水表号","年份",
-                        "用户类型","考核月份","计划用水量","实际用水量","超标水量",
+                        "单位类别","考核月份","计划用水量","实际用水量","超标水量",
                         "超用率(%)","额定用水单价","应收金额","额定用水金额",
                         "超用率(%)","额定用水单价","应收金额","额定用水金额",
                         "超标金额","是否销账","销帐日期","邮寄地址","邮编","阶梯收费明细"};
                         "超标金额","是否销账","销帐日期","邮寄地址","邮编","阶梯收费明细"};
                 int columnLength[] = {20,50,10,10,20,50,10,10,15,15,15,15,10,10,10,20,10,10,20,20};
                 int columnLength[] = {20,50,10,10,20,50,10,10,15,15,15,15,10,10,10,20,10,10,20,20};
                 String fileds[]=new String[]{"orgNumber","orgName","Address","meterNumber","year",
                 String fileds[]=new String[]{"orgNumber","orgName","Address","meterNumber","year",
-                        "userTypeName","assessmentMonth","waterPlanningIndex","actualUseWater","actualClosingWater",
+                        "baseOrgTypeName","assessmentMonth","waterPlanningIndex","actualUseWater","actualClosingWater",
                         "exceedRatio","waterPrice","amountReceivable","baseWaterAmount",
                         "exceedRatio","waterPrice","amountReceivable","baseWaterAmount",
                         "paidInAmount","isWriteOff","writeOffDate","postAddress","post","ruleStr"};
                         "paidInAmount","isWriteOff","writeOffDate","postAddress","post","ruleStr"};
                 ExcelUtils.writeExcel(fileName, list, titles, columnLength, fileds);
                 ExcelUtils.writeExcel(fileName, list, titles, columnLength, fileds);

+ 23 - 22
src/java/com/bus/web/YearActualWaterSummaryController.java

@@ -11,6 +11,7 @@ import java.util.List;
 
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequest;
 
 
+import com.bus.model.temp.YearActualWaterSummaryTemp2;
 import jxl.write.WriteException;
 import jxl.write.WriteException;
 import jxl.write.biff.RowsExceededException;
 import jxl.write.biff.RowsExceededException;
 
 
@@ -77,10 +78,10 @@ public class YearActualWaterSummaryController extends BaseController{
 	@RequestMapping("listPage.do")
 	@RequestMapping("listPage.do")
 	@ResponseBody
 	@ResponseBody
 	public String listPage(String orgNumber, String orgName,
 	public String listPage(String orgNumber, String orgName,
-			String address, String year,
+			String address, String year,Integer meterNumber,
 			Integer userType, int pageNo, int pageSize){
 			Integer userType, int pageNo, int pageSize){
 		//modify by llq	2015-01-23	去掉客户号
 		//modify by llq	2015-01-23	去掉客户号
-		this.page =busAnnualPlanForWaterService.getYearActualWaterSummaryList(null,orgNumber, orgName, address, year, userType, pageNo, pageSize);
+		this.page =busAnnualPlanForWaterService.getYearActualWaterSummaryList2(null,orgNumber, orgName, address, year,meterNumber, userType, pageNo, pageSize);
 		return this.getPageJosnResult();
 		return this.getPageJosnResult();
 	}
 	}
 	
 	
@@ -103,24 +104,24 @@ public class YearActualWaterSummaryController extends BaseController{
 	@RequestMapping(value = "exportYearSummaryExcel.do", method = RequestMethod.GET)
 	@RequestMapping(value = "exportYearSummaryExcel.do", method = RequestMethod.GET)
 	@ResponseBody
 	@ResponseBody
 	public Object exportYearSummaryExcel(String orgIds,String orgNumber, String orgName,
 	public Object exportYearSummaryExcel(String orgIds,String orgNumber, String orgName,
-			String address, String year,Integer userType, Integer pageNo, Integer pageSize,
+			String address, String year,Integer meterNumber,Integer userType, Integer pageNo, Integer pageSize,
 			String flag,HttpServletRequest request) throws UnsupportedEncodingException{
 			String flag,HttpServletRequest request) throws UnsupportedEncodingException{
 		
 		
-		List<YearActualWaterSummaryTemp> list=null;
+		List<YearActualWaterSummaryTemp2> list=null;
 		if(flag!=null&&flag.equals("selected")){
 		if(flag!=null&&flag.equals("selected")){
 			String[] ids=orgIds.split(",");
 			String[] ids=orgIds.split(",");
 			String[] y=year.split(",");
 			String[] y=year.split(",");
 			String onlyYear=judgeDifYear(y);
 			String onlyYear=judgeDifYear(y);
 			if(onlyYear!=null){
 			if(onlyYear!=null){
 				//modify by llq	2015-01-23	去掉客户号
 				//modify by llq	2015-01-23	去掉客户号
-				this.page=busAnnualPlanForWaterService.getYearActualWaterSummaryList(orgIds, orgNumber, orgName, address, onlyYear, userType, 1, ids.length);
-				list= (List<YearActualWaterSummaryTemp>) this.page.getResult();
+				this.page=busAnnualPlanForWaterService.getYearActualWaterSummaryList2(orgIds, orgNumber, orgName, address, onlyYear,meterNumber, userType, 1, ids.length);
+				list= (List<YearActualWaterSummaryTemp2>) this.page.getResult();
 			}else{
 			}else{
-				list=new ArrayList<YearActualWaterSummaryTemp>();
+				list=new ArrayList<YearActualWaterSummaryTemp2>();
 				for (int i = 0;ids!=null&&i < ids.length; i++) {
 				for (int i = 0;ids!=null&&i < ids.length; i++) {
 					if(ids[i]!=null){
 					if(ids[i]!=null){
 						Long orgId=Long.valueOf(ids[i]);
 						Long orgId=Long.valueOf(ids[i]);
-						YearActualWaterSummaryTemp yt=busAnnualPlanForWaterService.getYearActualWaterSummaryDetail(orgId, y[i]);
+						YearActualWaterSummaryTemp2 yt=busAnnualPlanForWaterService.getYearActualWaterSummaryDetail2(orgId, y[i]);
 						list.add(yt);
 						list.add(yt);
 					}
 					}
 				}
 				}
@@ -129,8 +130,8 @@ public class YearActualWaterSummaryController extends BaseController{
 			orgName = new String(orgName.getBytes("ISO8859-1"),"UTF-8");
 			orgName = new String(orgName.getBytes("ISO8859-1"),"UTF-8");
 			address = new String(address.getBytes("ISO8859-1"),"UTF-8");
 			address = new String(address.getBytes("ISO8859-1"),"UTF-8");
 			//modify by llq	2015-01-23	去掉客户号
 			//modify by llq	2015-01-23	去掉客户号
-			this.page =busAnnualPlanForWaterService.getYearActualWaterSummaryList(null, orgNumber, orgName, address, year, userType, pageNo, pageSize);
-			list= (List<YearActualWaterSummaryTemp>) this.page.getResult();
+			this.page =busAnnualPlanForWaterService.getYearActualWaterSummaryList2(null, orgNumber, orgName, address, year,meterNumber, userType, pageNo, pageSize);
+			list= (List<YearActualWaterSummaryTemp2>) this.page.getResult();
 		}
 		}
 		
 		
 		
 		
@@ -144,11 +145,11 @@ public class YearActualWaterSummaryController extends BaseController{
 		try {
 		try {
 			String[] titles = new String[]{ "单位编号","单位名称","单位地址","年度", 
 			String[] titles = new String[]{ "单位编号","单位名称","单位地址","年度", 
 					"全年计划批复水量","全年实际批复水量","全年实际用水量  ","全年超计划用水量",
 					"全年计划批复水量","全年实际批复水量","全年实际用水量  ","全年超计划用水量",
-					"全年节约用水量","超计划用水量比率(%)","实际超用水量","罚款金额(元)","一季度计划","二季度计划","三季度计划","四季度计划","备注"};
-	        int columnLength[] = {20,30,30,10,20,20,20,20,20,30,20,20,20,20,20,20,20};
+					"全年节约用水量","超计划用水量比率(%)","实际超用水量"};
+	        int columnLength[] = {20,30,30,10,20,20,20,20,20,30,20};
 	        String fileds[]=new String[]{"orgNumber","orgName","address","year",
 	        String fileds[]=new String[]{"orgNumber","orgName","address","year",
-	        		"planReply","actualReply","actual","exceedPlan",
-	        		"save","exceedOfWaterRate","exceedOfWater","waterFines","first_quarter_reply","second_quarter_reply","third_quarter_reply","fourth_quarter_reply","remark"};
+	        		"sumPlanOfWater","sumReplyOfWater","sumActualUseWater","actualPlanWater",
+	        		"savingPlanWater","actualRatioStr","sumActualClosingWater"};
 			ExcelUtils.writeExcel(fileName, list, titles, columnLength, fileds);
 			ExcelUtils.writeExcel(fileName, list, titles, columnLength, fileds);
 		} catch (RowsExceededException e) {
 		} catch (RowsExceededException e) {
 			e.printStackTrace();
 			e.printStackTrace();
@@ -183,24 +184,24 @@ public class YearActualWaterSummaryController extends BaseController{
 	@SuppressWarnings("unchecked")
 	@SuppressWarnings("unchecked")
 	@RequestMapping(value = "printYearSummary.do", method = RequestMethod.GET)
 	@RequestMapping(value = "printYearSummary.do", method = RequestMethod.GET)
 	public String printYearSummary(String orgIds,String orgNumber, String orgName,
 	public String printYearSummary(String orgIds,String orgNumber, String orgName,
-			String address, String year,Integer userType, Integer pageNo, Integer pageSize,
+			String address, String year,Integer meterNumber,Integer userType, Integer pageNo, Integer pageSize,
 			String flag,HttpServletRequest request,ModelMap model) throws UnsupportedEncodingException{
 			String flag,HttpServletRequest request,ModelMap model) throws UnsupportedEncodingException{
 		
 		
-		List<YearActualWaterSummaryTemp> list=null;
+		List<YearActualWaterSummaryTemp2> list=null;
 		if(flag!=null&&flag.equals("selected")){
 		if(flag!=null&&flag.equals("selected")){
 			String[] ids=orgIds.split(",");
 			String[] ids=orgIds.split(",");
 			String[] y=year.split(",");
 			String[] y=year.split(",");
 			String onlyYear=judgeDifYear(y);
 			String onlyYear=judgeDifYear(y);
 			if(onlyYear!=null){
 			if(onlyYear!=null){
 				//modify by llq	2015-01-23	去掉客户号
 				//modify by llq	2015-01-23	去掉客户号
-				this.page=busAnnualPlanForWaterService.getYearActualWaterSummaryList(orgIds, orgNumber, orgName, address, onlyYear, userType, 1, ids.length);
-				list= (List<YearActualWaterSummaryTemp>) this.page.getResult();
+				this.page=busAnnualPlanForWaterService.getYearActualWaterSummaryList2(orgIds, orgNumber, orgName, address, onlyYear,meterNumber, userType, 1, ids.length);
+				list= (List<YearActualWaterSummaryTemp2>) this.page.getResult();
 			}else{
 			}else{
-				list=new ArrayList<YearActualWaterSummaryTemp>();
+				list=new ArrayList<YearActualWaterSummaryTemp2>();
 				for (int i = 0;ids!=null&&i < ids.length; i++) {
 				for (int i = 0;ids!=null&&i < ids.length; i++) {
 					if(ids[i]!=null){
 					if(ids[i]!=null){
 						Long orgId=Long.valueOf(ids[i]);
 						Long orgId=Long.valueOf(ids[i]);
-						YearActualWaterSummaryTemp yt=busAnnualPlanForWaterService.getYearActualWaterSummaryDetail(orgId, y[i]);
+						YearActualWaterSummaryTemp2 yt=busAnnualPlanForWaterService.getYearActualWaterSummaryDetail2(orgId, y[i]);
 						list.add(yt);
 						list.add(yt);
 					}
 					}
 				}
 				}
@@ -209,8 +210,8 @@ public class YearActualWaterSummaryController extends BaseController{
 			orgName = new String(orgName.getBytes("ISO8859-1"),"UTF-8");
 			orgName = new String(orgName.getBytes("ISO8859-1"),"UTF-8");
 			address = new String(address.getBytes("ISO8859-1"),"UTF-8");
 			address = new String(address.getBytes("ISO8859-1"),"UTF-8");
 			//modify by llq	2015-01-23	去掉客户号
 			//modify by llq	2015-01-23	去掉客户号
-			this.page =busAnnualPlanForWaterService.getYearActualWaterSummaryList(null, orgNumber, orgName, address, year, userType, pageNo, pageSize);
-			list= (List<YearActualWaterSummaryTemp>) this.page.getResult();
+			this.page =busAnnualPlanForWaterService.getYearActualWaterSummaryList2(null, orgNumber, orgName, address, year,meterNumber, userType, pageNo, pageSize);
+			list= (List<YearActualWaterSummaryTemp2>) this.page.getResult();
 		}
 		}
 		
 		
 		model.addAttribute("list", list);
 		model.addAttribute("list", list);