Commit 051b0365d04bec1edc0a4d5b32293b56bd2702ab

Authored by lst
1 parent 97a23d68
Exists in master

活期账户明细导出开发、收支明细导出更改

backend/chkpower/src/main/java/com/hotent/chkpower/controller/WCurrentController.java
... ... @@ -3,6 +3,7 @@ package com.hotent.chkpower.controller;
3 3  
4 4 import cn.afterturn.easypoi.excel.ExcelExportUtil;
5 5 import cn.afterturn.easypoi.excel.entity.TemplateExportParams;
  6 +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
6 7 import org.apache.poi.ss.usermodel.Workbook;
7 8 import org.springframework.web.bind.annotation.GetMapping;
8 9 import org.springframework.web.bind.annotation.PostMapping;
... ... @@ -134,4 +135,51 @@ public class WCurrentController extends BaseController<WCurrentManager, WCurrent
134 135 }
135 136 }
136 137  
  138 +
  139 + /**
  140 + * 活期账户余额明细导出
  141 + *
  142 + * @param response
  143 + * @throws Exception
  144 + */
  145 + @GetMapping("curAccBalDetExport")
  146 + @ApiOperation(value = "活期账户余额明细导出", httpMethod = "GET", notes = "活期账户余额明细导出")
  147 + public void currentAccountBalanceDetails(HttpServletResponse response, String date) throws Exception {
  148 + HashMap map = new HashMap();
  149 + map.put("date", ObjectUtils.isNotEmpty(date) ? date : "");
  150 + List<String> gslxList = baseService.getCurrentOrgTypeList();
  151 + List<HashMap<String, Object>> list = new ArrayList<HashMap<String, Object>>();
  152 + BigDecimal hz = new BigDecimal(0.00);
  153 + int index = 1;
  154 + for (String orgType : gslxList) {
  155 + List<HashMap<String, Object>> wCurrents = baseService.listByOrgTypeAndDate(orgType, date);
  156 + if (ObjectUtils.isNotEmpty(wCurrents)) {
  157 + for (HashMap wCurrent : wCurrents) {
  158 + wCurrent.put("index", index);
  159 + index++;
  160 + }
  161 + }
  162 + list.addAll(wCurrents);
  163 + }
  164 + map.put("list", list);
  165 + TemplateExportParams params = new TemplateExportParams("doc/current_account_detail.xls");
  166 + params.setColForEach(true);
  167 + Workbook workbook = ExcelExportUtil.exportExcel(params, map);
  168 + String filedisplay = "活期账户余额明细.xls";
  169 + response.setContentType("APPLICATION/OCTET-STREAM");
  170 + response.setHeader("Access-Control-Expose-Headers", "Content-Disposition");
  171 + response.addHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(filedisplay, "utf-8"));
  172 + OutputStream os = null;
  173 + try {
  174 + os = response.getOutputStream();
  175 + workbook.write(os);
  176 + os.flush();
  177 + os.close();
  178 + } catch (Exception e) {
  179 + e.printStackTrace();
  180 + } finally {
  181 + if (os != null)
  182 + os.close();
  183 + }
  184 + }
137 185 }
... ...
backend/chkpower/src/main/java/com/hotent/chkpower/controller/WFinanceController.java
... ... @@ -8,6 +8,7 @@ import com.hotent.base.query.QueryFilter;
8 8 import com.hotent.base.query.QueryOP;
9 9 import com.hotent.bo.model.BoDef;
10 10 import com.hotent.chkpower.manager.WCurrentManager;
  11 +import com.hotent.chkpower.manager.WFinanceDetailManager;
11 12 import com.hotent.runtime.model.BpmAutoStartConf;
12 13 import org.apache.poi.ss.usermodel.Workbook;
13 14 import org.springframework.web.bind.annotation.GetMapping;
... ... @@ -46,6 +47,8 @@ import java.util.Objects;
46 47 public class WFinanceController extends BaseController<WFinanceManager, WFinance> {
47 48 @Resource
48 49 private WCurrentManager wCurrentManager;
  50 + @Resource
  51 + private WFinanceDetailManager wFinanceDetailManager;
49 52  
50 53 /**
51 54 * 根据id获取运营公司收支数据详情
... ... @@ -121,6 +124,12 @@ public class WFinanceController extends BaseController&lt;WFinanceManager, WFinance
121 124 F_total_income_zh=F_total_income_zh.add(F_total_income);
122 125 F_total_disbursement_zh=F_total_disbursement_zh.add(F_total_disbursement);
123 126 F_total_net_cash_flow_zh=F_total_net_cash_flow_zh.add(F_total_net_cash_flow);
  127 + for (HashMap<String, String> datum : listData) {
  128 + String mattersIncomer = wFinanceDetailManager.mattersIncomerByOrgIdAndDate(datum.get("F_org_id"),date);
  129 + String matterDisbursement = wFinanceDetailManager.matterDisbursementByOrgIdAndDate(datum.get("F_org_id"),date);
  130 + datum.put("F_total_income",mattersIncomer);
  131 + datum.put("F_total_disbursement",matterDisbursement);
  132 + }
124 133 listData.add(hzMap);
125 134 list.addAll(listData);
126 135 }
... ...
backend/chkpower/src/main/java/com/hotent/chkpower/dao/WCurrentDao.java
... ... @@ -26,5 +26,5 @@ public interface WCurrentDao extends BaseMapper&lt;WCurrent&gt; {
26 26 List<String> getCurrentOrgTypeList();
27 27  
28 28  
29   -
  29 + List<HashMap<String,Object>> listByOrgTypeAndDate(@Param("fOrgType")String orgType, @Param("fDate")String date);
30 30 }
... ...
backend/chkpower/src/main/java/com/hotent/chkpower/dao/WFinanceDetailDao.java
... ... @@ -2,6 +2,7 @@ package com.hotent.chkpower.dao;
2 2  
3 3 import com.hotent.chkpower.model.WFinanceDetail;
4 4 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  5 +import org.apache.ibatis.annotations.Param;
5 6  
6 7 /**
7 8 * 运营公司收支明细 Mapper 接口
... ... @@ -12,4 +13,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
12 13 */
13 14 public interface WFinanceDetailDao extends BaseMapper<WFinanceDetail> {
14 15  
  16 + String mattersIncomerByOrgIdAndDate(@Param("orgId") String orgId, @Param("date")String date);
  17 +
  18 + String matterDisbursementByOrgIdAndDate(@Param("orgId") String orgId, @Param("date")String date);
15 19 }
... ...
backend/chkpower/src/main/java/com/hotent/chkpower/manager/WCurrentManager.java
... ... @@ -40,5 +40,5 @@ public interface WCurrentManager extends BaseManager&lt;WCurrent&gt; {
40 40 List<String> getCurrentOrgTypeList();
41 41  
42 42  
43   -
  43 + List<HashMap<String,Object>> listByOrgTypeAndDate(String orgType, String date);
44 44 }
... ...
backend/chkpower/src/main/java/com/hotent/chkpower/manager/WFinanceDetailManager.java
... ... @@ -23,4 +23,8 @@ public interface WFinanceDetailManager extends BaseManager&lt;WFinanceDetail&gt; {
23 23 * @return
24 24 */
25 25 void createOrUpdate(WFinanceDetail wFinanceDetail);
  26 +
  27 + String mattersIncomerByOrgIdAndDate(String f_org_id, String date);
  28 +
  29 + String matterDisbursementByOrgIdAndDate(String f_org_id, String date);
26 30 }
... ...
backend/chkpower/src/main/java/com/hotent/chkpower/manager/impl/WCurrentManagerImpl.java
... ... @@ -58,4 +58,9 @@ public class WCurrentManagerImpl extends BaseManagerImpl&lt;WCurrentDao, WCurrent&gt;
58 58 public List<String> getCurrentOrgTypeList() {
59 59 return baseMapper.getCurrentOrgTypeList();
60 60 }
  61 +
  62 + @Override
  63 + public List<HashMap<String,Object>> listByOrgTypeAndDate(String orgType, String date) {
  64 + return baseMapper.listByOrgTypeAndDate(orgType,date);
  65 + }
61 66 }
... ...
backend/chkpower/src/main/java/com/hotent/chkpower/manager/impl/WFinanceDetailManagerImpl.java
... ... @@ -35,4 +35,14 @@ public class WFinanceDetailManagerImpl extends BaseManagerImpl&lt;WFinanceDetailDao
35 35 //新建或更新
36 36 this.saveOrUpdate(wFinanceDetail);
37 37 }
  38 +
  39 + @Override
  40 + public String mattersIncomerByOrgIdAndDate(String f_org_id, String date) {
  41 + return baseMapper.mattersIncomerByOrgIdAndDate(f_org_id,date);
  42 + }
  43 +
  44 + @Override
  45 + public String matterDisbursementByOrgIdAndDate(String f_org_id, String date) {
  46 + return baseMapper.matterDisbursementByOrgIdAndDate(f_org_id,date);
  47 + }
38 48 }
... ...
backend/chkpower/src/main/java/com/hotent/chkpower/manager/impl/WProjectOperationRecordManagerImpl.java
... ... @@ -71,15 +71,12 @@ public class WProjectOperationRecordManagerImpl extends BaseManagerImpl&lt;WProject
71 71 if (EventTypeEnum.tibao.getCode().equals(eventTypeEnum.getCode())) {
72 72 wProjectOperationRecord.setFProgressStatus(null);
73 73 } else if (EventTypeEnum.zuofei.getCode().equals(eventTypeEnum.getCode())) {
74   - wProjectOperationRecord.setFProgressStatus(null);
75 74 wProjectLibraryInventory.setFProjectState("已作废");
76 75 } else if (EventTypeEnum.ruku.getCode().equals(eventTypeEnum.getCode())) {
77   - wProjectOperationRecord.setFProgressStatus(null);
78 76 wProjectLibraryInventory.setFProjectState("已入库");
79 77 } else if (EventTypeEnum.xiangmujinzhan.getCode().equals(eventTypeEnum.getCode())) {
80 78 wProjectLibraryInventory.setFProjectDebriefing(wProjectLibraryInventory.getFProjectDebriefing() + "\n" + wProjectOperationRecord.getFProgressStatus());
81 79 } else if (EventTypeEnum.chuku.getCode().equals(eventTypeEnum.getCode())) {
82   - wProjectOperationRecord.setFProgressStatus(null);
83 80 wProjectLibraryInventory.setFProjectState("已出库");
84 81 }
85 82 this.saveOrUpdate(wProjectOperationRecord);
... ...
backend/chkpower/src/main/resources/doc/current_account_detail.xls 0 → 100644
No preview for this file type
backend/chkpower/src/main/resources/mapper/WCurrentMapper.xml
... ... @@ -126,4 +126,23 @@
126 126 GROUP BY orgParams.VALUE_
127 127 ORDER BY MAX(org.ORDER_NO_) ASC
128 128 </select>
  129 +
  130 + <select id="listByOrgTypeAndDate" resultType="java.util.HashMap">
  131 + SELECT
  132 + DISTINCT w_current.*
  133 + FROM
  134 + w_current w_current
  135 + INNER JOIN uc_org uc_org ON uc_org.ID_ = w_current.F_org_id
  136 + INNER JOIN uc_org_params uc_org_params ON uc_org_params.ORG_ID_ = uc_org.ID_
  137 + WHERE
  138 + 1 = 1
  139 + <if test="fOrgType != null and fOrgType != ''">
  140 + and uc_org_params.VALUE_ = #{fOrgType}
  141 + </if>
  142 + <if test="fDate != null and fDate != ''">
  143 + and DATE(w_current.F_date) = DATE(#{fDate})
  144 + </if>
  145 + ORDER BY w_current.F_date desc,uc_org_params.VALUE_,uc_org.ORDER_NO_ ASC
  146 +
  147 + </select>
129 148 </mapper>
... ...
backend/chkpower/src/main/resources/mapper/WFinanceDetailMapper.xml
... ... @@ -46,4 +46,34 @@
46 46 where
47 47 ID_ = #{id}
48 48 </select>
  49 +
  50 + <select id="mattersIncomerByOrgIdAndDate" resultType="java.lang.String">
  51 + SELECT
  52 + GROUP_CONCAT( F_matter, F_income )
  53 + FROM
  54 + w_finance_detail w_finance_detail
  55 + WHERE
  56 + LENGTH( F_income ) != 0
  57 + <if test="orgId != null and orgId != ''">
  58 + and w_finance_detail.F_org_id = #{orgId}
  59 + </if>
  60 + <if test="date != null and date != ''">
  61 + and date(w_finance_detail.F_date) = date(#{date})
  62 + </if>
  63 + </select>
  64 +
  65 + <select id="matterDisbursementByOrgIdAndDate" resultType="java.lang.String">
  66 + SELECT
  67 + GROUP_CONCAT( F_matter, F_disbursement )
  68 + FROM
  69 + w_finance_detail w_finance_detail
  70 + WHERE
  71 + LENGTH( F_disbursement ) != 0
  72 + <if test="orgId != null and orgId != ''">
  73 + and w_finance_detail.F_org_id = #{orgId}
  74 + </if>
  75 + <if test="date != null and date != ''">
  76 + and date(w_finance_detail.F_date) = date(#{date})
  77 + </if>
  78 + </select>
49 79 </mapper>
... ...