Commit e36c7bb2662f2a9e7798a8c2265a09f5182fd8be

Authored by gengxiaokai
1 parent ad648ea11e

婚检导出

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