Commit e36c7bb2662f2a9e7798a8c2265a09f5182fd8be
1 parent
ad648ea11e
Exists in
master
and in
6 other branches
婚检导出
Showing 2 changed files with 83 additions and 29 deletions
platform-common/src/main/java/com/lyms/platform/common/utils/ExcelUtil.java
View file @
e36c7bb
... | ... | @@ -737,7 +737,7 @@ |
737 | 737 | * @param out |
738 | 738 | * @param data |
739 | 739 | */ |
740 | - public static void WritePremaritalExcel(OutputStream out,Map<String, Object> data){ | |
740 | + public static void WritePremaritalExcel(OutputStream out,Map<String, Object> data,List<List<String>> da){ | |
741 | 741 | WritableWorkbook wwb; |
742 | 742 | try{ |
743 | 743 | wwb = Workbook.createWorkbook(out); |
744 | 744 | |
745 | 745 | |
746 | 746 | |
... | ... | @@ -749,23 +749,23 @@ |
749 | 749 | WritableCellFormat wcf = new WritableCellFormat(wf); |
750 | 750 | wcf.setAlignment(jxl.format.Alignment.CENTRE);//水平居中 |
751 | 751 | wcf.setVerticalAlignment(VerticalAlignment.CENTRE);//垂直居中 |
752 | - ws.setRowView(0, 300); // 设置指定行高 | |
752 | + ws.setRowView(0, 500); // 设置指定行高 | |
753 | 753 | // 设置列宽 |
754 | 754 | for (int j = 0; j < 31; j++) |
755 | 755 | { |
756 | - ws.setColumnView(j, 7); | |
756 | + ws.setColumnView(j, 15); | |
757 | 757 | } |
758 | 758 | //创建Excel标题格式 |
759 | 759 | ws.mergeCells(0,0,30,0); |
760 | 760 | ws.addCell(new Label(0, 0, "婚前保健情况季报表", wcf)); |
761 | 761 | ws.mergeCells(0,1,30,1); |
762 | - ws.addCell(new Label(0, 1, "2018-2019", wcf)); | |
762 | + ws.addCell(new Label(0, 1, data.get("sDate")+" - "+data.get("eDate"), wcf)); | |
763 | 763 | ws.mergeCells(0, 2, 0, 5); |
764 | 764 | ws.addCell(new Label(0, 2, "填报单位", wcf)); |
765 | 765 | ws.mergeCells(1, 2, 2, 2); |
766 | 766 | ws.addCell(new Label(1, 2, "结婚登记人数", wcf)); |
767 | 767 | ws.mergeCells(1, 3, 1, 5); |
768 | - ws.addCell(new Label(1, 2, "男", wcf)); | |
768 | + ws.addCell(new Label(1, 3, "男", wcf)); | |
769 | 769 | ws.mergeCells(2, 3, 2, 5); |
770 | 770 | ws.addCell(new Label(2, 3, "女", wcf)); |
771 | 771 | ws.mergeCells(3, 2, 4, 2); |
772 | 772 | |
773 | 773 | |
774 | 774 | |
... | ... | @@ -855,30 +855,47 @@ |
855 | 855 | ws.mergeCells(30, 4, 30, 5); |
856 | 856 | ws.addCell(new Label(30,4,"女",wcf)); |
857 | 857 | |
858 | - /*int k = 0; | |
858 | + int k = 0; | |
859 | 859 | //填充数据 |
860 | - if(data != null && data.size() > 0) { | |
861 | - for (int i = 0; i < data.size(); i++) { | |
862 | - int l = i + 1; | |
863 | - ws.addCell(new Label(k, i + 2, String.valueOf(l))); | |
864 | - ws.addCell(new Label(k + 1, i + 2, data.get(i).get("name") == null ? "" : data.get(i).get("name").toString())); | |
865 | - ws.addCell(new Label(k + 2, i + 2, data.get(i).get("address") == null ? "" : data.get(i).get("address").toString())); | |
866 | - ws.addCell(new Label(k + 3, i + 2, data.get(i).get("phone") == null ? "" : data.get(i).get("phone").toString())); | |
867 | - ws.addCell(new Label(k + 4, i + 2, data.get(i).get("lastMenses") == null ? "" : data.get(i).get("lastMenses").toString())); | |
868 | - ws.addCell(new Label(k + 5, i + 2, data.get(i).get("yi") == null ? "" : data.get(i).get("yi").toString())); | |
869 | - ws.addCell(new Label(k + 6, i + 2, data.get(i).get("er") == null ? "" : data.get(i).get("er").toString())); | |
870 | - ws.addCell(new Label(k + 7, i + 2, data.get(i).get("san") == null ? "" : data.get(i).get("san").toString())); | |
871 | - ws.addCell(new Label(k + 8, i + 2, data.get(i).get("si") == null ? "" : data.get(i).get("si").toString())); | |
872 | - ws.addCell(new Label(k + 9, i + 2, data.get(i).get("wu") == null ? "" : data.get(i).get("wu").toString())); | |
873 | - ws.addCell(new Label(k + 10, i + 2, data.get(i).get("total") == null ? "" : data.get(i).get("total").toString())); | |
860 | + if(da != null && da.size() > 0) { | |
861 | + for (int i = 0; i < da.size(); i++) { | |
862 | + ws.addCell(new Label(k, i + 6, da.get(i).get(0))); | |
863 | + ws.addCell(new Label(k + 1, i + 6, "0")); | |
864 | + ws.addCell(new Label(k + 2, i + 6, "0")); | |
865 | + ws.addCell(new Label(k + 3, i + 6, da.get(i).get(1))); | |
866 | + ws.addCell(new Label(k + 4, i + 6, da.get(i).get(2))); | |
867 | + ws.addCell(new Label(k + 5, i + 6, da.get(i).get(3))); | |
868 | + ws.addCell(new Label(k + 6, i + 6, da.get(i).get(4))); | |
869 | + ws.addCell(new Label(k + 7, i + 6, "0")); | |
870 | + ws.addCell(new Label(k + 8, i + 6, "0")); | |
871 | + ws.addCell(new Label(k + 9, i + 6, "0")); | |
872 | + ws.addCell(new Label(k + 10, i + 6,"0")); | |
874 | 873 | |
875 | - ws.addCell(new Label(k + 11, i + 2, data.get(i).get("cyxj") == null ? "" : data.get(i).get("cyxj").toString())); | |
876 | - ws.addCell(new Label(k + 12, i + 2, data.get(i).get("chfs") == null ? "" : data.get(i).get("chfs").toString())); | |
877 | - ws.addCell(new Label(k + 13, i + 2, data.get(i).get("chfc") == null ? "" : data.get(i).get("chfc").toString())); | |
878 | - ws.addCell(new Label(k + 14, i + 2, data.get(i).get("remarks") == null ? "" : data.get(i).get("remarks").toString())); | |
874 | + ws.addCell(new Label(k + 11, i + 6, "0")); | |
875 | + ws.addCell(new Label(k + 12, i + 6, "0")); | |
876 | + ws.addCell(new Label(k + 13, i + 6, "0")); | |
877 | + ws.addCell(new Label(k + 14, i + 6, "0")); | |
878 | + ws.addCell(new Label(k + 15, i + 6, "0")); | |
879 | + ws.addCell(new Label(k + 16, i + 6, "0")); | |
880 | + ws.addCell(new Label(k + 17, i + 6, "0")); | |
881 | + ws.addCell(new Label(k + 18, i + 6, "0")); | |
882 | + ws.addCell(new Label(k + 19, i + 6, "0")); | |
883 | + ws.addCell(new Label(k + 20, i + 6, "0")); | |
884 | + ws.addCell(new Label(k + 21, i + 6, "0")); | |
885 | + ws.addCell(new Label(k + 22, i + 6, "0")); | |
886 | + ws.addCell(new Label(k + 23, i + 6, "0")); | |
887 | + ws.addCell(new Label(k + 24, i + 6, "0")); | |
888 | + ws.addCell(new Label(k + 25, i + 6, "0")); | |
889 | + ws.addCell(new Label(k + 26, i + 6, "0")); | |
890 | + ws.addCell(new Label(k + 27, i + 6, "0")); | |
891 | + ws.addCell(new Label(k + 28, i + 6, "0")); | |
892 | + ws.addCell(new Label(k + 29, i + 6, "0")); | |
893 | + ws.addCell(new Label(k + 30, i + 6, "0")); | |
879 | 894 | |
880 | 895 | } |
881 | - }*/ | |
896 | + ws.mergeCells(0,da.size()+7,30,da.size()+7); | |
897 | + ws.addCell(new Label(0,da.size()+7,"实际报出日期:"+DateUtil.getymd()+" 单位负责人签名: 填表人签名:")); | |
898 | + } | |
882 | 899 | |
883 | 900 | wwb.write(); |
884 | 901 | wwb.close(); |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PremaritalCheckupFacade.java
View file @
e36c7bb
... | ... | @@ -2192,6 +2192,11 @@ |
2192 | 2192 | |
2193 | 2193 | //婚检导出 |
2194 | 2194 | public void queryPremaritalExcel(String provinceId,String cityId,String areaId,String streetId,String time,Integer userId,HttpServletResponse response){ |
2195 | + int num = 1; | |
2196 | + int hjMan = 0; | |
2197 | + int hjWoman = 0; | |
2198 | + int healthMan = 0; | |
2199 | + int healthWoman = 0; | |
2195 | 2200 | //获取用户权限医院和筛选条件的交集 |
2196 | 2201 | List<String> currentUserHospPermissions = areaCountFacade.getCurrentUserHospPermissions2(userId, provinceId, |
2197 | 2202 | cityId, areaId); |
... | ... | @@ -2248,7 +2253,8 @@ |
2248 | 2253 | hunqianHealthMan++; |
2249 | 2254 | } |
2250 | 2255 | } |
2251 | - | |
2256 | + hjMan+=dataNan.size(); | |
2257 | + healthMan+=hunqianHealthMan; | |
2252 | 2258 | } else { |
2253 | 2259 | man = 1; |
2254 | 2260 | } |
... | ... | @@ -2261,6 +2267,8 @@ |
2261 | 2267 | hunqianHealthWoman++; |
2262 | 2268 | } |
2263 | 2269 | } |
2270 | + hjWoman+=dataNv.size(); | |
2271 | + healthWoman+=hunqianHealthWoman; | |
2264 | 2272 | } else { |
2265 | 2273 | woman = 1; |
2266 | 2274 | } |
2267 | 2275 | |
... | ... | @@ -2302,7 +2310,17 @@ |
2302 | 2310 | item.add(String.valueOf(hunqianHealthWoman)); |
2303 | 2311 | } |
2304 | 2312 | } |
2313 | + num++; | |
2305 | 2314 | result.add(item); |
2315 | + if(num > currentUserHospPermissions.size()){ | |
2316 | + List<String> items = new ArrayList<String>(); | |
2317 | + items.add("合计"); | |
2318 | + items.add(String.valueOf(hjMan)); | |
2319 | + items.add(String.valueOf(hjWoman)); | |
2320 | + items.add(String.valueOf(healthMan)); | |
2321 | + items.add(String.valueOf(healthWoman)); | |
2322 | + result.add(items); | |
2323 | + } | |
2306 | 2324 | } |
2307 | 2325 | hjMap.put("data",hjList); |
2308 | 2326 | hqwsMap.put("data", hqwsList); |
... | ... | @@ -2412,7 +2430,8 @@ |
2412 | 2430 | hunqianHealthMan++; |
2413 | 2431 | } |
2414 | 2432 | } |
2415 | - | |
2433 | + hjMan+=dataNan.size(); | |
2434 | + healthMan+=hunqianHealthMan; | |
2416 | 2435 | } else { |
2417 | 2436 | man = 1; |
2418 | 2437 | } |
... | ... | @@ -2425,6 +2444,8 @@ |
2425 | 2444 | hunqianHealthWoman++; |
2426 | 2445 | } |
2427 | 2446 | } |
2447 | + hjWoman+=dataNv.size(); | |
2448 | + healthWoman+=hunqianHealthWoman; | |
2428 | 2449 | } else { |
2429 | 2450 | woman = 1; |
2430 | 2451 | } |
2431 | 2452 | |
... | ... | @@ -2466,7 +2487,17 @@ |
2466 | 2487 | } |
2467 | 2488 | } |
2468 | 2489 | } |
2490 | + num++; | |
2469 | 2491 | result.add(item); |
2492 | + if(num > configList.size()){ | |
2493 | + List<String> items = new ArrayList<String>(); | |
2494 | + items.add("合计"); | |
2495 | + items.add(String.valueOf(hjMan)); | |
2496 | + items.add(String.valueOf(hjWoman)); | |
2497 | + items.add(String.valueOf(healthMan)); | |
2498 | + items.add(String.valueOf(healthWoman)); | |
2499 | + result.add(items); | |
2500 | + } | |
2470 | 2501 | } |
2471 | 2502 | hjMap.put("data",hjList); |
2472 | 2503 | hqwsMap.put("data", hqwsList); |
... | ... | @@ -2476,6 +2507,12 @@ |
2476 | 2507 | } |
2477 | 2508 | |
2478 | 2509 | Map<String, Object> datas = new HashMap<>(); |
2510 | + if (dates != null) { | |
2511 | + datas.put("sDate", dates[0]); | |
2512 | + if (dates.length == 2) { | |
2513 | + datas.put("eDate",dates[1]); | |
2514 | + } | |
2515 | + } | |
2479 | 2516 | datas.put("legend",titleItems); |
2480 | 2517 | datas.put("series", series); |
2481 | 2518 | datas.put("tableDatas",result); |
... | ... | @@ -2487,7 +2524,7 @@ |
2487 | 2524 | }catch (Exception e){ |
2488 | 2525 | e.printStackTrace(); |
2489 | 2526 | } |
2490 | - ExcelUtil.WritePremaritalExcel(out,datas); | |
2527 | + ExcelUtil.WritePremaritalExcel(out,datas,result); | |
2491 | 2528 | |
2492 | 2529 | } |
2493 | 2530 |