Browse Source

Merge remote-tracking branch 'origin/master'

周箭河 4 năm trước cách đây
mục cha
commit
64fa9a8755

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/IndexBaseMonthDataDao.java

@@ -165,4 +165,10 @@ public interface IndexBaseMonthDataDao extends BaseDAO<Long, IndexBaseMonthData>
      * @return
      */
     List<Long> queryStudentVisit(@Param("organIdsStr") String organIdsStr);
+
+    List<IndexBaseMonthData> getFinancePayData();
+
+    List<IndexBaseMonthData> getFinanceBalanceData();
+
+    List<IndexBaseMonthData> getFinanceActualData();
 }

+ 7 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentPaymentOrderDao.java

@@ -398,4 +398,11 @@ public interface StudentPaymentOrderDao extends BaseDAO<Long, StudentPaymentOrde
      * @return
      */
     List<StudentPaymentOrder> getAdaPayOrdersByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+    /**
+     * 获取首页昨日支出、昨日收入(现金)、昨日收入(余额)
+     * @param organId
+     * @return
+     */
+    Map<String, BigDecimal> queryFinanceCurrentDay(@Param("organId") String organId);
 }

+ 5 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/IndexDataType.java

@@ -38,7 +38,11 @@ public enum IndexDataType implements BaseEnum<String, IndexDataType> {
 
     MUSIC_GROUP_COURSE("MUSIC_GROUP_COURSE","乐团课"),
     VIP_GROUP_COURSE("VIP_GROUP_COURSE","VIP课"),
-    PRACTICE_GROUP_COURSE("PRACTICE_GROUP_COURSE","网管课");
+    PRACTICE_GROUP_COURSE("PRACTICE_GROUP_COURSE","网管课"),
+
+    FINANCE_PAY("FINANCE_PAY","财务支出"),
+    FINANCE_BALANCE_AMOUNT("FINANCE_BALANCE_AMOUNT","余额收入"),
+    FINANCE_AMOUNT("FINANCE_AMOUNT","现金收入");
 
     private String code;
 

+ 5 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/IndexBaseMonthDataServiceImpl.java

@@ -195,6 +195,11 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 		saveData(indexBaseMonthDataDao.getGroupCourseData(month, GroupType.VIP), month, IndexDataType.VIP_GROUP_COURSE);
 		saveData(indexBaseMonthDataDao.getGroupCourseData(month, GroupType.PRACTICE), month, IndexDataType.PRACTICE_GROUP_COURSE);
 
+		//财务数据
+//		saveData(indexBaseMonthDataDao.getFinancePayData(),month,IndexDataType.FINANCE_PAY);
+//		saveData(indexBaseMonthDataDao.getFinanceBalanceData(),month,IndexDataType.FINANCE_BALANCE_AMOUNT);
+//		saveData(indexBaseMonthDataDao.getFinanceActualData(),month,IndexDataType.FINANCE_AMOUNT);
+
 		return result;
 	}
 

+ 9 - 0
mec-biz/src/main/resources/config/mybatis/IndexBaseMonthDataMapper.xml

@@ -629,4 +629,13 @@
 			</foreach>
 		</if>
 	</select>
+	<select id="getFinancePayData"  resultMap="IndexBaseMonthData">
+
+	</select>
+	<select id="getFinanceBalanceData" resultMap="IndexBaseMonthData">
+
+	</select>
+	<select id="getFinanceActualData" resultMap="IndexBaseMonthData">
+
+	</select>
 </mapper>

+ 15 - 0
mec-biz/src/main/resources/config/mybatis/StudentPaymentOrderMapper.xml

@@ -871,4 +871,19 @@
     <select id="getAdaPayOrdersByTime" resultMap="StudentPaymentOrder"><![CDATA[
         SELECT * FROM student_payment_order WHERE pay_time_ >= #{startTime} AND pay_time_ <= #{endTime} AND payment_channel_='ADAPAY' AND status_ ='SUCCESS']]>
     </select>
+    <select id="queryFinanceCurrentDay" resultType="java.util.Map">
+        SELECT * FROM (SELECT SUM(fe.amount_) pay FROM financial_expenditure fe
+        WHERE DATE_FORMAT(fe.create_time_,'%Y%m%d') = DATE_FORMAT(NOW(),'%Y%m%d') AND del_flag_ = 0
+            <if test="organId != null and organId != ''">
+                FIND_IN_SET(fe.organ_id_,#{organId})
+            </if>
+            ) a,
+        (SELECT SUM(CASE WHEN spo.payment_channel_ = 'BALANCE' THEN spo.balance_payment_amount_ ELSE 0 END) balance_amount_,
+        SUM(CASE WHEN spo.payment_channel_ = 'BALANCE' THEN 0 ELSE spo.actual_amount_ END) actual_amount_
+        FROM student_payment_order spo
+        WHERE DATE_FORMAT(spo.pay_time_,'%Y%m%d') = DATE_FORMAT(NOW(),'%Y%m%d') AND spo.status_ = 'SUCCESS'
+        <if test="organId != null and organId != ''">
+            FIND_IN_SET(spo.organ_id_,#{organId})
+        </if>) b
+    </select>
 </mapper>

+ 3 - 1
mec-biz/src/main/resources/config/mybatis/StudentRegistrationMapper.xml

@@ -536,7 +536,9 @@
     </update>
 
     <select id="queryStudentNum" resultType="map">
-        SELECT count(distinct sr.user_id_) total_num_,sum(case when sr.create_time_ >= timestamp(date_add(curdate(), interval - day(curdate()) + 1 day)) then 1 else 0 end) new_num_,sum(case when sr.music_group_status_ = 'QUIT' and sr.update_time_ >= timestamp(date_add(curdate(), interval - day(curdate()) + 1 day)) then 1 else 0 end) quit_num_
+        SELECT count(distinct sr.user_id_) total_num_,
+               sum(case when sr.create_time_ >= timestamp(date_add(curdate(), interval - day(curdate()) + 1 day)) then 1 else 0 end) new_num_,
+               sum(case when sr.music_group_status_ = 'QUIT' and sr.update_time_ >= timestamp(date_add(curdate(), interval - day(curdate()) + 1 day)) then 1 else 0 end) quit_num_
         FROM student_registration sr left join music_group mg on sr.music_group_id_ = mg.id_
         where mg.organ_id_ not in (36,38)
    		<if test="organId != null">

+ 4 - 1
mec-web/src/main/java/com/ym/mec/web/controller/IndexController.java

@@ -8,6 +8,7 @@ import com.ym.mec.common.entity.HttpResponseResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 
+import java.math.BigDecimal;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
@@ -99,6 +100,8 @@ public class IndexController extends BaseController {
 		Map<String, Object> incomeExpendMap = sysUserCashAccountDetailDao.queryStatisticsWithCurrentMonth(organId);
 		
 		Map<String, Object> incomeMap = studentPaymentOrderDao.queryIncomeStatisticsWithCurrentMonth(organId);
+
+		Map<String, BigDecimal> financeDatas = studentPaymentOrderDao.queryFinanceCurrentDay(organId);
 		
 		ModelMap model = new ModelMap();
 		model.put("musicDatas", musicDatas);
@@ -111,7 +114,7 @@ public class IndexController extends BaseController {
 		model.put("demoGroupNum", demoGroupNum);
 		model.put("incomeExpendMap", incomeExpendMap);
 		model.put("incomeMap", incomeMap);
-
+		model.put("financeDatas", financeDatas);
 		return succeed(model);
 	}