OrderBillsPlansServiceImpl.java 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. package com.ruoyi.system.service.impl;
  2. import com.ruoyi.common.annotation.DataSource;
  3. import com.ruoyi.common.core.domain.AjaxResult;
  4. import com.ruoyi.common.enums.DataSourceType;
  5. import com.ruoyi.common.utils.SecurityUtils;
  6. import com.ruoyi.common.utils.SnowFlakeUtil;
  7. import com.ruoyi.system.domain.*;
  8. import com.ruoyi.system.domain.vo.ItemsVo;
  9. import com.ruoyi.system.domain.vo.LoadFeeItemsVo;
  10. import com.ruoyi.system.domain.vo.OrderBillsPlansVo;
  11. import com.ruoyi.system.mapper.EmplsMapper;
  12. import com.ruoyi.system.mapper.OrderBillsPlansMapper;
  13. import com.ruoyi.system.service.IOrderBillsPlansService;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.stereotype.Service;
  16. import java.beans.Transient;
  17. import java.util.ArrayList;
  18. import java.util.HashMap;
  19. import java.util.List;
  20. import java.util.Map;
  21. /**
  22. * 火烈鸟数据库
  23. */
  24. @Service
  25. @DataSource(value = DataSourceType.SLAVE)
  26. public class OrderBillsPlansServiceImpl implements IOrderBillsPlansService {
  27. /**
  28. * 业务表
  29. */
  30. @Autowired
  31. private OrderBillsPlansMapper orderBillsPlansMapper;
  32. /**
  33. * Empls表
  34. */
  35. @Autowired
  36. private EmplsMapper emplsMapper;
  37. /**
  38. * 查询业务表数据List
  39. *
  40. * @param dataStart 日期起
  41. * @param dataEnd 日期止
  42. * @return
  43. */
  44. @Override
  45. public List<WfTaskList> getOrderBillsPlansList(String dataStart, String dataEnd, String orderNo) {
  46. // 根据登录名去匹配EMPLS 里面的EMPL 找到 EMPLID
  47. String userName = SecurityUtils.getLoginUser().getUsername();
  48. // Long emplId = emplsMapper.getByEmpl(userName);
  49. Long emplId = 0L;
  50. Map<String, Object> map = new HashMap<>();
  51. if (dataEnd != null && !"".equals(dataEnd)) {
  52. dataStart += " 00:00:00";
  53. dataEnd += " 23:59:59";
  54. }
  55. map.put("emplId", emplId);
  56. map.put("dataStart", dataStart);
  57. map.put("dataEnd", dataEnd);
  58. map.put("orderNo", orderNo);
  59. List<WfTaskList> orderBillsPlansList = orderBillsPlansMapper.getOrderBillsPlansLsit(map);
  60. return orderBillsPlansList;
  61. }
  62. /**
  63. * 根据orderNo查询
  64. *
  65. * @param orderNo orderNo
  66. * @return 详情
  67. */
  68. @Override
  69. public OrderBillsPlans getOrderBillsPlansByid(Long orderNo) {
  70. return orderBillsPlansMapper.getOrderBillsPlansByid(orderNo);
  71. }
  72. /**
  73. * 保存保单信息
  74. *
  75. * @param orderBillsPlans
  76. * @return
  77. */
  78. @Override
  79. public AjaxResult putOrderBillsPlansByid(OrderBillsPlans orderBillsPlans) {
  80. Integer i = orderBillsPlansMapper.updateOrderBillsPlansByid(orderBillsPlans);
  81. return null;
  82. }
  83. /**
  84. * 获取报销费用list
  85. *
  86. * @return
  87. */
  88. @Override
  89. public List<ItemsVo> getItemsList(Long entityId) {
  90. List<ItemsVo> itemsList = orderBillsPlansMapper.getItemsList();
  91. Map<String, LoadFeeItems> loadFeeItemsMap = orderBillsPlansMapper.getLoadFeeitemsMapByentityIdKeyItemId(entityId);
  92. for (ItemsVo itemsVo : itemsList) {
  93. itemsVo.setAtm1(loadFeeItemsMap.get(itemsVo.getItemId()).getAtm1());
  94. }
  95. return itemsList;
  96. }
  97. /**
  98. * 报销
  99. *
  100. * @param loadFeeItemsVo
  101. * @return 操作结果
  102. */
  103. @Transient
  104. @Override
  105. public AjaxResult insertLoadFeeItems(LoadFeeItemsVo loadFeeItemsVo) {
  106. Long entityid = loadFeeItemsVo.getEntityid();
  107. Map<String, LoadFeeItems> map = new HashMap<>();
  108. // 查询数据
  109. map = orderBillsPlansMapper.getLoadFeeitemsMapByentityIdKeyItemId(entityid);
  110. // 修改为订单号
  111. OrderBillsPlans orderBillsPlans = orderBillsPlansMapper.getOrderBillsPlansByid(entityid);
  112. // 根据登录名去匹配EMPLS 里面的EMPL 找到 EMPLID
  113. String userName = SecurityUtils.getLoginUser().getUsername();
  114. Empls empls = emplsMapper.getEmplsByEmpl(userName);
  115. // 更新数据
  116. for (ItemsVo itemsVo : loadFeeItemsVo.getItemsVoList()) {
  117. // 获取当前类型
  118. LoadFeeItems loadFeeItems = map.get(itemsVo.getItemId());
  119. if (loadFeeItems != null) {
  120. // 修改值
  121. loadFeeItems.setAtm1(itemsVo.getAtm1());
  122. Integer y = orderBillsPlansMapper.updateLoadFeeItems(loadFeeItems);
  123. } else {
  124. // 雪花id
  125. SnowFlakeUtil snowFlakeUtil = new SnowFlakeUtil(12, 13);
  126. long nextId = snowFlakeUtil.getNextId();
  127. loadFeeItems.setLineNo(nextId);
  128. Integer i = orderBillsPlansMapper.insertLoadFeeItems(loadFeeItems, orderBillsPlans, empls);
  129. }
  130. }
  131. return AjaxResult.success();
  132. }
  133. /**
  134. * 查询报销费用报销金额下拉选
  135. * @return
  136. */
  137. @Override
  138. public AjaxResult getGasStations() {
  139. return AjaxResult.success(orderBillsPlansMapper.getGasStations());
  140. }
  141. }