AccountMaintenanceService.java 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226
  1. package com.fuzamei.service;
  2. import java.text.SimpleDateFormat;
  3. import java.util.Date;
  4. import java.util.LinkedHashMap;
  5. import java.util.List;
  6. import java.util.Map;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.stereotype.Service;
  9. import org.springframework.transaction.annotation.Transactional;
  10. import com.fuzamei.dao.AccountMaintenanceDao;
  11. import com.fuzamei.entity.AccountOpeningRecord;
  12. import com.fuzamei.utils.PageDTO;
  13. @Service
  14. public class AccountMaintenanceService {
  15. @Autowired
  16. private AccountMaintenanceDao accountMaintenanceDao;
  17. private static final int ROW_NUM = 10; // 分页每页显示数据的数量
  18. @Transactional
  19. public void insertIntoAccountINfo(Map<String, Object> map) {
  20. String customer_id=""; //ID 暂时注释
  21. String customer_name="";//客户名称
  22. String bank_account="";//银行账号
  23. String hash="";//上传三个文件 应该产生几个hash值??????
  24. //省略几个直接put进去
  25. String basicAttachment_id=""; //基本资料附件id
  26. String basicAttachment_name=""; //基本资料附件名称
  27. String basicUrl=""; //基本资料附件url
  28. String basicUpload_person_id=""; //基本资料附件上传人的id
  29. long basicCreate_time=0; //基本资料附件添加的时间
  30. String letterAttachment_id=""; //承诺书附件id
  31. String letterAttachment_name=""; //承诺书附件名称
  32. String letterUrl=""; //承诺书附件url
  33. String letterUpload_person_id=""; //承诺书附件上传人的id
  34. long letterCreate_time=0; //承诺书附件添加的时间
  35. String applicationAttachment_id=""; //开户申请书附件id
  36. String applicationAttachment_name=""; //开户申请书附件名称
  37. String applicationUrl=""; //开户申请书附件url
  38. String applicationUpload_person_id=""; //开户申请书附件上传人的id
  39. long applicationCreate_time=0; //开户申请书附件添加的时间
  40. if (!"".equals(map.get("customer_id")) && map.get("customer_id") != null) {
  41. customer_id = String.valueOf(map.get("customer_id"));
  42. }
  43. if (!"".equals(map.get("customer_name")) && map.get("customer_name") != null) {
  44. customer_name = (String) map.get("customer_name");
  45. }
  46. if (!"".equals(map.get("bank_account")) && map.get("bank_account") != null) {
  47. bank_account = (String) map.get("bank_account");
  48. }
  49. if (!"".equals(map.get("basicAttachment_id")) && map.get("basicAttachment_id") != null) {
  50. basicAttachment_id = String.valueOf(map.get("basicAttachment_id"));
  51. }
  52. if (!"".equals(map.get("basicAttachment_name")) && map.get("basicAttachment_name") != null) {
  53. basicAttachment_name = (String) map.get("basicAttachment_name");
  54. }
  55. if (!"".equals(map.get("basicUrl")) && map.get("basicUrl") != null) {
  56. basicUrl = (String) map.get("basicUrl");
  57. }
  58. if (!"".equals(map.get("basicUpload_person_id")) && map.get("basicUpload_person_id") != null) {
  59. basicUpload_person_id = (String) map.get("basicUpload_person_id");
  60. }
  61. if (!"".equals(map.get("basicCreate_time")) && map.get("basicCreate_time") != null) {
  62. basicCreate_time = (Long) map.get("basicCreate_time");
  63. }
  64. if (!"".equals(map.get("letterAttachment_id")) && map.get("letterAttachment_id") != null) {
  65. letterAttachment_id = String.valueOf(map.get("letterAttachment_id"));
  66. }
  67. if (!"".equals(map.get("letterAttachment_name")) && map.get("letterAttachment_name") != null) {
  68. letterAttachment_name = (String) map.get("letterAttachment_name");
  69. }
  70. if (!"".equals(map.get("letterUrl")) && map.get("letterUrl") != null) {
  71. letterUrl = (String) map.get("letterUrl");
  72. }
  73. if (!"".equals(map.get("letterUpload_person_id")) && map.get("letterUpload_person_id") != null) {
  74. letterUpload_person_id = (String) map.get("letterUpload_person_id");
  75. }
  76. if (!"".equals(map.get("letterCreate_time")) && map.get("letterCreate_time") != null) {
  77. letterCreate_time = (Long) map.get("letterCreate_time");
  78. }
  79. if (!"".equals(map.get("applicationAttachment_id")) && map.get("applicationAttachment_id") != null) {
  80. applicationAttachment_id = String.valueOf(map.get("applicationAttachment_id"));
  81. }
  82. if (!"".equals(map.get("applicationAttachment_name")) && map.get("applicationAttachment_name") != null) {
  83. applicationAttachment_name = (String) map.get("applicationAttachment_name");
  84. }
  85. if (!"".equals(map.get("applicationUrl")) && map.get("applicationUrl") != null) {
  86. applicationUrl = (String) map.get("applicationUrl");
  87. }
  88. if (!"".equals(map.get("applicationUpload_person_id")) && map.get("applicationUpload_person_id") != null) {
  89. applicationUpload_person_id = (String) map.get("applicationUpload_person_id");
  90. }
  91. if (!"".equals(map.get("applicationCreate_time")) && map.get("applicationCreate_time") != null) {
  92. applicationCreate_time = (Long) map.get("applicationCreate_time");
  93. }
  94. SimpleDateFormat df = new SimpleDateFormat("yyyyMMHHmmss");
  95. String ss= df.format(new Date());
  96. Map<String, Object> mapToDao = new LinkedHashMap<String, Object>();
  97. mapToDao.put("customer_id", "201712"+Math.round(Math.random()*8999+100));//ID先写成随机数 到时候不行在改
  98. mapToDao.put("customer_name",customer_name );
  99. mapToDao.put("bank_account","622707"+ss);//银行帐号 产生不能一样 这里是用Date时间做账号 18位数 //直接put进来 Action 可以不要
  100. mapToDao.put("basicAttachment_id", basicAttachment_id);//基本资料id
  101. mapToDao.put("letterAttachment_id", letterAttachment_id);//承诺书id
  102. mapToDao.put("applicationAttachment_id", applicationAttachment_id);//申请书id
  103. mapToDao.put("update_time", System.currentTimeMillis());//更新时间
  104. mapToDao.put("status_id", 9);//状态写的是死值 9状态代表已完成 刚注册的用户账号就能使用
  105. mapToDao.put("hash","ccccccc");//哈希值暂时写的是个字符串死值
  106. accountMaintenanceDao.insertIntoAccountMaintenanceInfo(mapToDao);
  107. Map<String, Object> mapToDaoBasic = new LinkedHashMap<String, Object>();
  108. mapToDaoBasic.put("attachment_id", basicAttachment_id);
  109. mapToDaoBasic.put("attachment_name", basicAttachment_name);
  110. mapToDaoBasic.put("url", basicUrl);
  111. mapToDaoBasic.put("upload_person_id", 10085);//写的是死值 到时候在改 先将上传人的id号写死,到时候需要动态获取这个信息
  112. mapToDaoBasic.put("create_time", mapToDao.get("update_time"));
  113. accountMaintenanceDao.insertAccountMaintenanceInfoFuJianBiao(mapToDaoBasic);//上传其他凭证 到附件表
  114. Map<String, Object> mapToDaoLetter = new LinkedHashMap<String, Object>();
  115. mapToDaoLetter.put("attachment_id", letterAttachment_id);
  116. mapToDaoLetter.put("attachment_name", letterAttachment_name);
  117. mapToDaoLetter.put("url", letterUrl);
  118. mapToDaoLetter.put("upload_person_id", 10085);//写的是死值 到时候在改 待改动 先将上传人的id号写死,到时候需要动态获取这个信息
  119. mapToDaoLetter.put("create_time", mapToDao.get("update_time"));
  120. accountMaintenanceDao.insertAccountMaintenanceInfoFuJianBiao(mapToDaoLetter);//上传承诺书的 到附件表
  121. Map<String, Object> mapToDaoApplication = new LinkedHashMap<String, Object>();
  122. mapToDaoApplication.put("attachment_id", applicationAttachment_id);
  123. mapToDaoApplication.put("attachment_name", applicationAttachment_name);
  124. mapToDaoApplication.put("url", applicationUrl);
  125. mapToDaoApplication.put("upload_person_id", 10085);//写的是死值 到时候在改 ?? 待改动 先将上传人的id号写死,到时候需要动态获取这个信息
  126. mapToDaoApplication.put("create_time", mapToDao.get("update_time"));
  127. accountMaintenanceDao.insertAccountMaintenanceInfoFuJianBiao(mapToDaoApplication);//上传开户申请书的 到附件表
  128. //还要将账户开立添加上传的这个操作信息插入到操作记录表中
  129. Map<String, Object> mapToOperationHistory = new LinkedHashMap<String,Object>();
  130. mapToOperationHistory.put("operatorTypeId", 1001); //
  131. mapToOperationHistory.put("operatorAccount", 500000255); //操作账号先定死
  132. mapToOperationHistory.put("operatorRole", "经办支行"); //创建这个操作的角色只能是经办支行
  133. mapToOperationHistory.put("operatorPerson", "张五"); //操作人先写死
  134. mapToOperationHistory.put("operatorTime", mapToDao.get("update_time")); //操作时间为当前操作时间
  135. mapToOperationHistory.put("hash", "操作hash值"); //写的时死值
  136. accountMaintenanceDao.insertAccountMaintenanceInfoOperationHistory(mapToOperationHistory); //将账户开立添加上传的操作记录信息插入到操作记录表中
  137. }
  138. public PageDTO selectAccountMaintenanceInfo(Map<String,Object> map) {
  139. int page = 1; // 默认页是第一页
  140. String customer_name = ""; //
  141. String bank_account = ""; //
  142. long startTime = 0; // 开始时间默认0
  143. long endTime = Long.MAX_VALUE; // 结束时间默认Long最大值
  144. if (!"".equals(map.get("page")) && map.get("page") != null) { // 等于空就直接取第一页
  145. try {
  146. page = Integer.parseInt((String) map.get("page"));
  147. if (page < 1) {
  148. page = 1;
  149. }
  150. } catch (NumberFormatException e) {
  151. page = 1; // 数据解析异常page还是1
  152. }
  153. }
  154. if (!"".equals(map.get("customer_name")) && map.get("customer_name") != null) { // 等于空就直接取空值
  155. customer_name = (String) map.get("customer_name");
  156. }
  157. if (!"".equals(map.get("bank_account")) && map.get("bank_account") != null) { // 等于空就直接取空值
  158. bank_account = (String) map.get("bank_account");
  159. }
  160. if (!"".equals(map.get("startTime")) && map.get("startTime") != null) { // 等于空就直接取空值
  161. try {
  162. startTime = Long.parseLong((String) map.get("startTime"));
  163. } catch (NumberFormatException e) {
  164. startTime = 0; // 数据解析异常startTime还是0
  165. }
  166. }
  167. if (!"".equals(map.get("endTime")) && map.get("endTime") != null) { // 等于空就直接取空值
  168. try {
  169. endTime = Long.parseLong((String) map.get("endTime"));
  170. } catch (NumberFormatException e) {
  171. endTime = Long.MAX_VALUE; // 数据解析异常endTime还是9223372036854775807L
  172. }
  173. }
  174. PageDTO pageDto = new PageDTO(); // 创建分页对象
  175. Map<String, Object> mapToDao = new LinkedHashMap<String, Object>();
  176. mapToDao.put("startPage", (page - 1) * ROW_NUM);
  177. mapToDao.put("customer_name", customer_name);
  178. mapToDao.put("bank_account", bank_account);
  179. if (startTime <= endTime) {
  180. mapToDao.put("startTime", startTime);
  181. mapToDao.put("endTime", endTime);
  182. } else {
  183. mapToDao.put("startTime", startTime);
  184. mapToDao.put("endTime", Long.MAX_VALUE);
  185. }
  186. mapToDao.put("rowNum", ROW_NUM); // 默认每页显示数据是10条,可根据需求修改分页数量
  187. int count = accountMaintenanceDao.selectCountAccountMaintenancePage();
  188. List<AccountOpeningRecord> list=accountMaintenanceDao.selectAccountMaintenanceInfo(mapToDao);
  189. pageDto.setTotal(count);
  190. pageDto.setRows(list);
  191. return pageDto;
  192. }
  193. }