Przeglądaj źródła

旧数据处理

anderx 2 lat temu
rodzic
commit
b463f3e6d7

+ 37 - 0
src/main/java/com/goafanti/admin/bo/OutFinanceCount.java

@@ -0,0 +1,37 @@
+package com.goafanti.admin.bo;
+
+import com.goafanti.common.model.FinanceCount;
+
+import java.math.BigDecimal;
+
+public class OutFinanceCount extends FinanceCount {
+
+    private Integer rangePublicCount;
+
+    private BigDecimal receivables;
+    private BigDecimal rangeReceivables;
+
+    public BigDecimal getReceivables() {
+        return receivables;
+    }
+
+    public void setReceivables(BigDecimal receivables) {
+        this.receivables = receivables;
+    }
+
+    public Integer getRangePublicCount() {
+        return rangePublicCount;
+    }
+
+    public void setRangePublicCount(Integer rangePublicCount) {
+        this.rangePublicCount = rangePublicCount;
+    }
+
+    public BigDecimal getRangeReceivables() {
+        return rangeReceivables;
+    }
+
+    public void setRangeReceivables(BigDecimal rangeReceivables) {
+        this.rangeReceivables = rangeReceivables;
+    }
+}

+ 15 - 0
src/main/java/com/goafanti/admin/controller/AdminStatisticsController.java

@@ -68,4 +68,19 @@ public class AdminStatisticsController extends CertifyApiController {
         return res;
     }
 
+
+    /**
+     * 咨询师首页信息
+     * @param startTime  开始时间
+     * @param endTime  结束时间
+     * @return
+     */
+    @RequestMapping(value = "/finance/info", method = RequestMethod.GET)
+    public Result financeInfo(String startTime,String endTime) {
+        Result res =new Result();
+        res.data(adminStatisticsService.financeInfo(startTime, endTime));
+        return res;
+
+    }
+
 }

+ 2 - 0
src/main/java/com/goafanti/admin/service/AdminStatisticsService.java

@@ -8,4 +8,6 @@ public interface AdminStatisticsService {
     Object consultantInfo(String startTime, String endTime);
 
     Object consultantLists(String adminId);
+
+    Object financeInfo(String startTime, String endTime);
 }

+ 15 - 0
src/main/java/com/goafanti/admin/service/impl/AdminStatisticsServiceImpl.java

@@ -3,9 +3,11 @@ package com.goafanti.admin.service.impl;
 import com.goafanti.admin.bo.AdminStatisticsBo;
 import com.goafanti.admin.bo.ConsultantStatisticsBo;
 import com.goafanti.admin.bo.ConsultantUserCount;
+import com.goafanti.admin.bo.OutFinanceCount;
 import com.goafanti.admin.service.AdminStatisticsService;
 import com.goafanti.common.constant.AFTConstants;
 import com.goafanti.common.dao.AdminMapper;
+import com.goafanti.common.dao.PublicReleaseMapper;
 import com.goafanti.common.model.AdminUserCount;
 import com.goafanti.common.utils.DateUtils;
 import com.goafanti.core.shiro.token.TokenManager;
@@ -22,6 +24,8 @@ public class AdminStatisticsServiceImpl implements AdminStatisticsService {
 
     @Autowired
     private AdminMapper adminMapper;
+    @Autowired
+    private PublicReleaseMapper publicReleaseMapper;
 
 
     @Override
@@ -190,6 +194,17 @@ public class AdminStatisticsServiceImpl implements AdminStatisticsService {
         return map;
     }
 
+    @Override
+    public Object financeInfo(String startTime, String endTime) {
+        String aid = TokenManager.getAdminId();
+        OutFinanceCount financeCount=adminMapper.financeInfo(aid, startTime, endTime);
+        Integer rangePublicCount = publicReleaseMapper.selectByaidAndDate(aid, startTime, endTime);
+        financeCount.setRangePublicCount(rangePublicCount);
+        BigDecimal rangeReceivables=adminMapper.addAdminContactsRangeReceivables(aid,startTime,endTime);
+        financeCount.setRangeReceivables(rangeReceivables);
+        return financeCount;
+    }
+
 
     public  List<String> getThisMonth(Days days) {
         //获取三十天前的日期

+ 3 - 4
src/main/java/com/goafanti/common/dao/AdminMapper.java

@@ -2,10 +2,7 @@ package com.goafanti.common.dao;
 
 import com.goafanti.admin.bo.*;
 import com.goafanti.common.bo.AdminNoticeBo;
-import com.goafanti.common.model.Admin;
-import com.goafanti.common.model.AdminUserCount;
-import com.goafanti.common.model.Department;
-import com.goafanti.common.model.Role;
+import com.goafanti.common.model.*;
 import org.apache.ibatis.annotations.Param;
 
 import java.math.BigDecimal;
@@ -201,4 +198,6 @@ public interface AdminMapper {
     Admin selectOrderByFinanace(String orderNo);
 
     List<Admin> selectAdminByRoleTypes(List<String> roles);
+
+    OutFinanceCount financeInfo(@Param("aid") String aid, @Param("startTime") String startTime, @Param("endTime") String endTime);
 }

+ 28 - 0
src/main/java/com/goafanti/common/mapper/AdminMapper.xml

@@ -1401,4 +1401,32 @@
       #{e}
     </foreach>
   </select>
+    <select id="financeInfo" resultType="com.goafanti.admin.bo.OutFinanceCount">
+      select x.aid,x.orderCount,x.expenseCount,x.invoiceCount,x.memberCount,x.paymentCount,x.publicCount,y.orderUnauditedCount,
+             y.expenseUnauditedCount,y.invoiceUnauditedCount,y.memberUnauditedCount,y.paymentUnauditedCount
+      from ( select a.aid,sum(a.order_count)orderCount ,sum(a.expense_count)expenseCount ,SUM(a.invoice_count) invoiceCount,
+                sum(a.member_count) memberCount ,sum(a.payment_count)paymentCount,sum(ifnull(counts,0))publicCount,
+                sum(ifnull(c.counts))
+             from finance_count a left join (select aid,sum(if(a.`type` in (0,1,2),1,0)) counts
+               from public_release a left join public_release_details b on a.id=b.prid
+               where aid= #{aid})b on a.aid=b.aid left join (SELECT c.finance_id aid,sum(a.money) counts
+                   from new_order_dun a left join t_order_new b on a.order_no =b.order_no
+                                        left join department c on b.order_dep =c.id
+                   where a.status =1   and b.delete_sign in (0,2,3)
+                     and c.finance_id = #{aid})c on a.aid=c.aid
+      where a.aid= #{aid} group by a.aid)x,
+           (select a.aid,sum(a.order_unaudited_count)orderUnauditedCount ,sum(a.expense_unaudited_count)expenseUnauditedCount ,
+                SUM(a.invoice_unaudited_count) invoiceUnauditedCount,sum(a.member_unaudited_count) memberUnauditedCount ,
+                sum(a.payment_unaudited_count)paymentUnauditedCount
+             from finance_count a where a.aid= #{aid} and a.date_time BETWEEN #{startTime}  and #{endTime}
+             group by a.aid)y
+    </select>
+  <select id="financeCountRangeReceivables" resultType="java.math.BigDecimal">
+    SELECT  ifnull(sum(a.money),0)  receivables
+    from new_order_dun a left join t_order_new b on a.order_no =b.order_no
+        left join department c on b.order_dep =c.id
+    where a.status =1   and b.delete_sign in (0,2,3)
+      and c.finance_id = #{aid}
+      and a.start_time  between #{startTime} and #{endTime}
+  </select>
 </mapper>