yzc il y a 1 an
Parent
commit
8494a56e52

+ 10 - 4
hx-account/src/main/java/com/fjhx/account/controller/account/AccountRunningWaterController.java

@@ -10,13 +10,11 @@ import com.fjhx.account.service.account.AccountRunningWaterService;
 import com.fjhx.common.constant.SourceConstant;
 import com.ruoyi.common.core.domain.BaseSelectDto;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
 import java.util.List;
+import java.util.Map;
 
 
 /**
@@ -115,4 +113,12 @@ public class AccountRunningWaterController {
         accountRunningWaterService.internalTransfer(dto);
     }
 
+    /**
+     * 流水统计
+     */
+    @GetMapping("/getTotal")
+    public Map<String, List<AccountRunningWaterVo>> internalTransfer() {
+        return accountRunningWaterService.getTotal();
+    }
+
 }

+ 6 - 0
hx-account/src/main/java/com/fjhx/account/mapper/account/AccountRunningWaterMapper.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.account.entity.account.po.AccountRunningWater;
 import com.fjhx.account.entity.account.vo.AccountRunningWaterVo;
+import com.ruoyi.common.utils.wrapper.IWrapper;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -39,4 +40,9 @@ public interface AccountRunningWaterMapper extends BaseMapper<AccountRunningWate
      * 账户资金流水表分页
      */
     List<AccountRunningWaterVo> getList(@Param("ew") QueryWrapper<Object> wrapper);
+
+    /**
+     * 获取统计
+     */
+    List<AccountRunningWaterVo> getTotal(@Param("ew") IWrapper<AccountRunningWater> wrapper);
 }

+ 6 - 0
hx-account/src/main/java/com/fjhx/account/service/account/AccountRunningWaterService.java

@@ -11,6 +11,7 @@ import com.ruoyi.common.core.service.BaseService;
 
 import javax.servlet.http.HttpServletResponse;
 import java.util.List;
+import java.util.Map;
 
 
 /**
@@ -72,4 +73,9 @@ public interface AccountRunningWaterService extends BaseService<AccountRunningWa
      * 内部转账
      */
     void internalTransfer(AccountRunningWaterDto dto);
+
+    /**
+     * 流水统计
+     */
+    Map<String, List<AccountRunningWaterVo>> getTotal();
 }

+ 24 - 2
hx-account/src/main/java/com/fjhx/account/service/account/impl/AccountRunningWaterServiceImpl.java

@@ -33,13 +33,13 @@ import com.fjhx.tenant.service.dict.DictTenantDataService;
 import com.ruoyi.common.core.domain.BaseSelectDto;
 import com.ruoyi.common.exception.ServiceException;
 import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.wrapper.IWrapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.servlet.http.HttpServletResponse;
 import java.math.BigDecimal;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.stream.Collectors;
 
 
@@ -476,4 +476,26 @@ public class AccountRunningWaterServiceImpl extends ServiceImpl<AccountRunningWa
         Assert.eqTrue(update, "余额操作失败,请重试!!!");
     }
 
+    @Override
+    public Map<String, List<AccountRunningWaterVo>> getTotal() {
+        Map<String, List<AccountRunningWaterVo>> map = new HashMap<>();
+        map.put("income", new ArrayList<>());
+        map.put("expenditure", new ArrayList<>());
+
+        List<AccountRunningWaterVo> totalList = baseMapper.getTotal(IWrapper.<AccountRunningWater>getWrapper()
+                .groupBy("arw.currency")
+                .groupBy("arw.`status`")
+        );
+        if (ObjectUtil.isEmpty(totalList)) {
+            return map;
+        }
+        List<AccountRunningWaterVo> income = totalList.stream().filter(item -> Objects.equals(item.getStatus(), "10")).collect(Collectors.toList());
+        List<AccountRunningWaterVo> expenditure = totalList.stream().filter(item -> Objects.equals(item.getStatus(), "20")).collect(Collectors.toList());
+
+        map.put("income", income);
+        map.put("expenditure", expenditure);
+
+        return map;
+    }
+
 }

+ 9 - 0
hx-account/src/main/resources/mapper/account/AccountRunningWaterMapper.xml

@@ -102,5 +102,14 @@
         FROM account_running_water arw ${ew.customSqlSegment}
             LIMIT #{size}
     </select>
+    <select id="getTotal" resultType="com.fjhx.account.entity.account.vo.AccountRunningWaterVo">
+        SELECT
+            arw.`status`,
+            arw.currency,
+            sum( ifnull(arw.amount,0) ) as amount
+        FROM
+            account_running_water arw
+            ${ew.customSqlSegment}
+    </select>
 
 </mapper>

+ 1 - 1
hx-admin/src/main/resources/application.yml

@@ -18,7 +18,7 @@ ruoyi:
 # 开发环境配置
 server:
   # 服务器的HTTP端口,默认为8080
-  port: 9901
+  port: 9900
   tomcat:
     # tomcat的URI编码
     uri-encoding: UTF-8