SysDeptAccountWithdrawServiceImpl.java 4.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. package com.ydtech.modules.admin.service.impl;
  2. import com.baomidou.mybatisplus.core.metadata.IPage;
  3. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  4. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  5. import com.ydtech.constants.sys.SysDeptAccountStatus;
  6. import com.ydtech.core.page.HttpResult;
  7. import com.ydtech.core.page.PageRequest;
  8. import com.ydtech.modules.admin.dao.SysDeptAccountWithdrawMapper;
  9. import com.ydtech.modules.admin.model.SysDeptAccount;
  10. import com.ydtech.modules.admin.model.SysDeptAccountHistory;
  11. import com.ydtech.modules.admin.model.SysDeptAccountWithdraw;
  12. import com.ydtech.modules.admin.model.vo.SysDeptAccountWithdrawVo;
  13. import com.ydtech.modules.admin.service.SysDeptAccountHistoryService;
  14. import com.ydtech.modules.admin.service.SysDeptAccountService;
  15. import com.ydtech.modules.admin.service.SysDeptAccountWithdrawService;
  16. import com.ydtech.modules.base.controller.BaseController;
  17. import com.ydtech.utils.idgen.IdGenerate;
  18. import org.springframework.beans.factory.annotation.Autowired;
  19. import org.springframework.stereotype.Service;
  20. import java.util.Date;
  21. @Service
  22. public class SysDeptAccountWithdrawServiceImpl extends ServiceImpl<SysDeptAccountWithdrawMapper, SysDeptAccountWithdraw> implements SysDeptAccountWithdrawService {
  23. @Autowired
  24. private SysDeptAccountWithdrawMapper sysDeptAccountWithdrawMapper;
  25. @Autowired
  26. private SysDeptAccountWithdrawService sysDeptAccountWithdrawService;
  27. @Autowired
  28. private SysDeptAccountService sysDeptAccountService;
  29. @Autowired
  30. private SysDeptAccountHistoryService sysDeptAccountHistoryService;
  31. @Override
  32. public IPage<SysDeptAccountWithdraw> getList(SysDeptAccountWithdrawVo sysDeptAccountWithdrawVo) {
  33. PageRequest pageRequest = new PageRequest();
  34. pageRequest.setPageNum(sysDeptAccountWithdrawVo.getPageNo());
  35. pageRequest.setPageSize(sysDeptAccountWithdrawVo.getPageSize());
  36. Page page = PageRequest.buildPageRequest(pageRequest);
  37. Page<SysDeptAccountWithdraw> iPage = sysDeptAccountWithdrawMapper.selectSysDeptAccountWithdraw(page,sysDeptAccountWithdrawVo);
  38. return iPage;
  39. }
  40. @Override
  41. public HttpResult updateByStatus(SysDeptAccountWithdraw sysDeptAccountWithdraw) {
  42. if (sysDeptAccountWithdraw.getStatus().equals(SysDeptAccountStatus.PASS.getCode())) {
  43. SysDeptAccount sysDeptAccount = sysDeptAccountService.getById(sysDeptAccountWithdraw.getDeptId());
  44. sysDeptAccount.setManagementFee(sysDeptAccount.getManagementFee());
  45. sysDeptAccountService.updateById(sysDeptAccount);
  46. // 机构历史明细生成提现明细
  47. SysDeptAccountHistory sysDeptAccountHistory = new SysDeptAccountHistory();
  48. sysDeptAccountHistory.setId(IdGenerate.nextId());
  49. sysDeptAccountHistory.setDeptId(sysDeptAccount.getDeptId());
  50. sysDeptAccountHistory.setAmount(sysDeptAccountWithdraw.getAmount());
  51. sysDeptAccountHistory.setSurplusAmount(sysDeptAccount.getManagementFee());
  52. sysDeptAccountHistory.setSuborder(sysDeptAccountWithdraw.getId());
  53. sysDeptAccountHistory.setDocumentary("1"); //提现
  54. sysDeptAccountHistory.setFromBankCard(null);
  55. sysDeptAccountHistory.setToBankCard(null);
  56. sysDeptAccountHistory.setUserId(BaseController.getUser().getId());
  57. sysDeptAccountHistory.setCreateTime(new Date());
  58. sysDeptAccountHistory.setRemark("从" + sysDeptAccountWithdraw.getName() + "机构账户中提现" + sysDeptAccountWithdraw.getAmount() + "元");
  59. sysDeptAccountHistoryService.save(sysDeptAccountHistory);
  60. }
  61. if (sysDeptAccountWithdraw.getStatus().equals(SysDeptAccountStatus.REJECT.getCode())) {
  62. SysDeptAccount sysDeptAccount = sysDeptAccountService.getById(sysDeptAccountWithdraw.getDeptId());
  63. sysDeptAccount.setManagementFee(sysDeptAccount.getManagementFee().add(sysDeptAccountWithdraw.getAmount()));
  64. sysDeptAccountService.updateById(sysDeptAccount);
  65. }
  66. sysDeptAccountWithdraw.setAuditUserid(BaseController.getUser().getName());
  67. sysDeptAccountWithdraw.setAuditName(BaseController.getUser().getId());
  68. sysDeptAccountWithdrawService.updateById(sysDeptAccountWithdraw);
  69. return HttpResult.ok("审核完成",sysDeptAccountWithdraw);
  70. }
  71. }