Browse Source

Merge branch 'saas' of http://git.dayaedu.com/yonge/mec into zx_index_error

 Conflicts:
	mec-biz/src/main/java/com/ym/mec/biz/dal/page/ClassGroupQueryInfo.java
zouxuan 2 năm trước cách đây
mục cha
commit
938268701f

+ 8 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/ClassGroupQueryInfo.java

@@ -81,4 +81,12 @@ public class ClassGroupQueryInfo extends EducationBaseQueryInfo {
 	public void setDelFlag(Integer delFlag) {
 		this.delFlag = delFlag;
 	}
+
+	public Integer getMainTeacherUserId() {
+		return mainTeacherUserId;
+	}
+
+	public void setMainTeacherUserId(Integer mainTeacherUserId) {
+		this.mainTeacherUserId = mainTeacherUserId;
+	}
 }

+ 12 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/FinancialExpenditureServiceImpl.java

@@ -29,6 +29,8 @@ import com.ym.mec.util.ini.IniFileUtil;
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.lang3.StringUtils;
+import org.redisson.api.RBucket;
+import org.redisson.api.RedissonClient;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -44,6 +46,7 @@ import java.math.BigDecimal;
 import java.net.HttpURLConnection;
 import java.net.URL;
 import java.util.*;
+import java.util.concurrent.TimeUnit;
 import java.util.stream.Collectors;
 
 @Service
@@ -63,6 +66,8 @@ public class FinancialExpenditureServiceImpl extends BaseServiceImpl<Long, Finan
     private TeacherDao teacherDao;
     @Autowired
     private FinancialExpenditureService financialExpenditureService;
+    @Autowired
+    private RedissonClient redissonClient;
 
     @Override
     public BaseDAO<Long, FinancialExpenditure> getDAO() {
@@ -225,6 +230,12 @@ public class FinancialExpenditureServiceImpl extends BaseServiceImpl<Long, Finan
     @Override
     @Transactional(rollbackFor = Exception.class)
     public void syncOaPayLog(Integer workOrderId,String fileUrl) throws Exception {
+        //防止幂等
+        String key = "syncOaPayLog:" + workOrderId;
+        RBucket<Object> bucket = redissonClient.getBucket(key);
+        if (!bucket.trySet(workOrderId, 2L, TimeUnit.SECONDS)) {
+            throw new BizException("正在同步oa审批记录,请勿重复操作");
+        }
         PWorkOrderInfo pWorkOrderInfo = financialExpenditureDao.getWorkOrderInfo(workOrderId);
         if (pWorkOrderInfo != null){
             Integer hasFinancial = financialExpenditureDao.findByBatchNoAndProcessNo(workOrderId);
@@ -320,7 +331,7 @@ public class FinancialExpenditureServiceImpl extends BaseServiceImpl<Long, Finan
                                                 financialExpenditure.setAmount(financialExpenditure.getAmount().add(new BigDecimal(Double.parseDouble(o.toString()))));
                                                 continue;
                                             }
-                                        }else if(name.contains("情况说明")){
+                                        }else if(name.contains("情况说明") || name.contains("事由") ){
                                             Object o = hashMap.get(inputDto.getModel());
                                             if(Objects.nonNull(o) && StringUtils.isNotEmpty(o.toString())){
                                                 financialExpenditure.setCause(o.toString());

+ 2 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/OperatingReportNewServiceImpl.java

@@ -155,8 +155,8 @@ public class OperatingReportNewServiceImpl extends BaseServiceImpl<Integer, Oper
 			operatingReportNew.setTotalIncome(operatingReportNew.getSaleAmount().add(operatingReportNew.getServiceAmount()).subtract(operatingReportNew.getBusinessRefund()));
 
 			operatingReportNew.setInternalSettlement(getAmount(collect18.get(organId)));
-			operatingReportNew.setFixedCosts(getAmount(collect7.get(organId)));
-			operatingReportNew.setVariableCosts(getAmount(collect8.get(organId)));
+			operatingReportNew.setVariableCosts(getAmount(collect7.get(organId)));
+			operatingReportNew.setFixedCosts(getAmount(collect8.get(organId)));
 			operatingReportNew.setTotalCost(operatingReportNew.getInternalSettlement().
 					add(operatingReportNew.getFixedCosts()).add(operatingReportNew.getVariableCosts()));
 

+ 2 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/PayServiceImpl.java

@@ -146,7 +146,8 @@ public class PayServiceImpl implements PayService {
 			List<Integer> ignoreOrganList = Arrays.asList(4);
 			
 			// 是否由平台收款
-			String isPlatformCollection = sysConfigDao.findConfigValue(SysConfigService.IS_OPEN_SMALL_CLASS_INCOME_TO_PLATFORM);
+			//String isPlatformCollection = sysConfigDao.findConfigValue(SysConfigService.IS_OPEN_SMALL_CLASS_INCOME_TO_PLATFORM);
+			String isPlatformCollection = "0";
 			
 			if (StringUtils.equals("1", isPlatformCollection) && !ignoreOrganList.contains(organId)) {
 	        	

+ 4 - 8
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupActivityServiceImpl.java

@@ -682,22 +682,18 @@ public class VipGroupActivityServiceImpl extends BaseServiceImpl<Integer, VipGro
 				doubleElevenUserLog.setUserId(studentPaymentOrder.getUserId());
 				doubleElevenUserLog.setCreateTime(now);
 				doubleElevenUserLog.setOrganId(studentPaymentOrder.getOrganId());
-				//杭州不送保养套装
-				if(studentPaymentOrder.getOrganId().equals(4)){
-					if(DateUtil.contents(giveStartTime,giveEndTime,now)){
+				if(DateUtil.contents(giveStartTime,giveEndTime,now)){
+					if(studentPaymentOrder.getOrganId().equals(4)){
 						//赠送抽奖机会
 						luckDrawCountService.freeGive(studentPaymentOrder.getUserId().longValue(),Integer.parseInt(jsonDto.getValue()),4);
-					}
-				}else {
-					if(DateUtil.contents(giveStartTime,giveEndTime,now)){
+					}else {
+						luckDrawCountService.freeGive(studentPaymentOrder.getUserId().longValue(),Integer.parseInt(jsonDto.getValue()),3);
 						Integer giveNum = tempBuyDoubleElevenUserLogDao.countGiveNum(studentPaymentOrder.getUserId());
 						if(giveNum == null || giveNum == 0){
 							//符合赠送条件,赠送乐保套装
 							doubleElevenUserLog.setGiveFlag(true);
 						}
 					}
-					//赠送抽奖机会
-					luckDrawCountService.freeGive(studentPaymentOrder.getUserId().longValue(),Integer.parseInt(jsonDto.getValue()),3);
 				}
 				tempBuyDoubleElevenUserLogDao.insert(doubleElevenUserLog);
 

+ 5 - 0
mec-biz/src/main/resources/config/mybatis/ClassGroupMapper.xml

@@ -1555,6 +1555,9 @@
     <sql id="queryClassGroupPageSql">
         <where>
             cg.group_type_ = #{groupType} AND cg.del_flag_ = 0 AND cg.tenant_id_ = #{tenantId}
+            <if test="mainTeacherUserId != null">
+                AND cgtm.user_id_ = #{mainTeacherUserId}
+            </if>
             <if test="type != null">
                 AND type_ = #{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
             </if>
@@ -1577,6 +1580,7 @@
     </sql>
     <select id="countClassGroup" resultType="int">
         SELECT COUNT(cg.id_) FROM class_group cg
+        left join class_group_teacher_mapper cgtm on cgtm.class_group_id_ = cg.id_ and cgtm.teacher_role_ = 'BISHOP'
         <if test="groupType == 'MUSIC'">
             LEFT JOIN music_group mg ON mg.id_ = cg.music_group_id_
         </if>
@@ -1590,6 +1594,7 @@
     </select>
     <select id="queryClassGroupPage" resultMap="ClassGroupTeachers">
         SELECT cg.*,mg.name_ music_group_name_,o.name_ organName FROM class_group cg
+        left join class_group_teacher_mapper cgtm on cgtm.class_group_id_ = cg.id_ and cgtm.teacher_role_ = 'BISHOP'
         <if test="groupType == 'MUSIC'">
             LEFT JOIN music_group mg ON mg.id_ = cg.music_group_id_
         </if>

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

@@ -183,7 +183,7 @@
 		left join student_payment_order spo ON spo.order_no_ = so.order_no_
 		left join music_group mg ON mg.id_ = spo.music_group_id_ AND spo.group_type_ = 'MUSIC'
 		where (mg.musical_instruments_provide_status_ = 1 AND mg.musical_instruments_provide_time_ = #{month}) OR
-		      (DATE_FORMAT(so.create_ime_,'%Y-%m') = #{month} AND (mg.musical_instruments_provide_status_ IS NULL OR mg.musical_instruments_provide_status_ = 1))
+		      (DATE_FORMAT(spo.pay_time_,'%Y-%m') = #{month} AND (mg.musical_instruments_provide_status_ IS NULL OR mg.musical_instruments_provide_status_ = 1))
 		group by so.organ_id_
 	</select>
 	<select id="sumCloudCourseAmount" resultType="java.util.Map">
@@ -222,7 +222,7 @@
 	</select>
 	<select id="sumFixedCosts" resultType="java.util.Map">
 		select fe.organ_id_ 'key',SUM(amount_) 'value' from financial_expenditure fe
-		where DATE_FORMAT(fe.create_time_,'%Y-%m') = #{month} AND fee_project_ IN (1,2,4,5) AND process_id_ = 28 group by fe.organ_id_;
+		where DATE_FORMAT(fe.create_time_,'%Y-%m') = #{month} AND fee_project_ IN (1,2,3,4,5) AND process_id_ = 28 group by fe.organ_id_;
 	</select>
 	<select id="sumCloudPreAmount" resultType="java.util.Map">
 		select cto.organ_id_ 'key',TRUNCATE(SUM(operating_amount_ / (TIMESTAMPDIFF(DAY,cto.start_time_,cto.end_time_) + 1) *
@@ -336,7 +336,7 @@
 	<select id="sumMaintenanceAmount" resultType="java.util.Map">
 		select spo.organ_id_ 'key',SUM(spod.price_) 'value' from student_payment_order_detail spod
 		left join student_payment_order spo ON spo.id_ = spod.payment_order_id_
-		where spod.type_ = 'MAINTENANCE' AND DATE_FORMAT(spod.create_time_,'%Y-%m') = #{month} AND spo.status_ = 'SUCCESS'
+		where spod.type_ IN ('MAINTENANCE','REPAIR') AND DATE_FORMAT(spod.create_time_,'%Y-%m') = #{month} AND spo.status_ = 'SUCCESS'
 		group by spo.organ_id_
 	</select>
 	<select id="sumLossCloudAmount" resultType="java.util.Map">

+ 2 - 2
mec-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/service/impl/OmsPortalOrderServiceImpl.java

@@ -393,7 +393,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
         userOrderPayment.setCreateTime(new Date());
 
         if (order.getPayAmount().compareTo(BigDecimal.ZERO) == 0) {
-            paySuccess(order.getId(),order.getPayType());
+            paySuccess(order.getId(),3);
             order.setStatus(1);
             result.put("orderType","success");
             userOrderPayment.setStatus(TradeStatusEnum.succeeded.getCode());
@@ -407,7 +407,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
                                        orderParam.getTeacherId()==null?null:orderParam.getTeacherId().intValue(),
                                        currentMember.getId().intValue(), amount,JSON.toJSONString(detail),orderParam.isUseBalance());
         if ("1".equals(MapUtil.getStr(data, "tradeState"))) {
-            paySuccess(order.getId(),order.getPayType());
+            paySuccess(order.getId(),3);
             order.setStatus(1);
             result.put("orderType","success");
             userOrderPayment.setStatus(TradeStatusEnum.succeeded.getCode());

+ 2 - 2
mec-student/src/main/java/com/ym/mec/student/controller/StudentOrderController.java

@@ -328,11 +328,11 @@ public class StudentOrderController extends BaseController {
                     vipGroupActivity.setVipGroupCategoryNames(categoryMap.get(vipGroupActivity.getVipGroupCategoryIdList()));
                     vipGroupActivity.setGiveCategoryName(categoryMap.get(vipGroupActivity.getGiveCategoryId()));
                     vipGroupActivityService.setActivityType(vipGroupActivity);
-                    if(orderByOrderNo.getOrganId().equals(4)){
+//                    if(orderByOrderNo.getOrganId().equals(4)){
                         if(!DateUtil.contents(giveStartTime,giveEndTime,orderByOrderNo.getPayTime() == null?orderByOrderNo.getCreateTime():orderByOrderNo.getPayTime())){
                             continue;
                         }
-                    }
+//                    }
                     List<SysConfigJsonDto> cloud2022ActivityDtos = JSONArray.parseArray(activeConfig, SysConfigJsonDto.class);
                     List<SysConfigJsonDto> activityDtos = cloud2022ActivityDtos.stream().
                             filter(e -> Arrays.stream(e.getKey().split(",")).collect(Collectors.toList()).