Sfoglia il codice sorgente

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

yonge 2 anni fa
parent
commit
d324f0ee7b
34 ha cambiato i file con 381 aggiunte e 91 eliminazioni
  1. 7 6
      cms/src/main/java/com/ym/mec/cms/controller/NewsController.java
  2. 11 0
      mec-auth/mec-auth-api/src/main/java/com/ym/mec/auth/api/entity/SysUser.java
  3. 5 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CloudCoachPaymentProgramDao.java
  4. 2 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupPaymentCalenderDao.java
  5. 14 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/MusicGroupPaymentCalenderResultDto.java
  6. 26 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/MusicGroupPaymentCalender.java
  7. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/CloudCoachPaymentProgramQueryInfo.java
  8. 25 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/MusicGroupPaymentCalenderQueryInfo.java
  9. 6 0
      mec-biz/src/main/java/com/ym/mec/biz/service/EmployeeService.java
  10. 2 0
      mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupPaymentCalenderService.java
  11. 2 0
      mec-biz/src/main/java/com/ym/mec/biz/service/OrganizationService.java
  12. 40 8
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/EmployeeServiceImpl.java
  13. 9 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/FinancialExpenditureServiceImpl.java
  14. 3 3
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/IndexBaseMonthDataServiceImpl.java
  15. 18 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderServiceImpl.java
  16. 5 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/OrganizationServiceImpl.java
  17. 15 0
      mec-biz/src/main/resources/config/mybatis/CloudCoachPaymentProgramMapper.xml
  18. 20 26
      mec-biz/src/main/resources/config/mybatis/IndexBaseMonthDataMapper.xml
  19. 26 1
      mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderMapper.xml
  20. 3 3
      mec-biz/src/main/resources/config/mybatis/OperatingReportNewMapper.xml
  21. 26 18
      mec-biz/src/main/resources/config/mybatis/StudentExtracurricularExercisesSituationMapper.xml
  22. 3 1
      mec-common/audit-log/src/main/java/com/yonge/log/interceptor/AuditLogInterceptor.java
  23. 45 3
      mec-gateway/mec-gateway-web/src/main/java/com/ym/mec/gateway/web/filter/AuthFilter.java
  24. 3 3
      mec-im/src/main/resources/logback-spring.xml
  25. 1 1
      mec-student/src/main/resources/application-template.yml
  26. 4 4
      mec-student/src/main/resources/logback-spring.xml
  27. 3 3
      mec-teacher/src/main/resources/logback-spring.xml
  28. 2 0
      mec-util/src/main/java/com/ym/mec/util/web/WebUtil.java
  29. 1 1
      mec-web/src/main/java/com/ym/mec/web/config/ResourceServerConfig.java
  30. 26 1
      mec-web/src/main/java/com/ym/mec/web/controller/EmployeeController.java
  31. 8 0
      mec-web/src/main/java/com/ym/mec/web/controller/MusicGroupPaymentCalenderController.java
  32. 6 0
      mec-web/src/main/java/com/ym/mec/web/controller/education/EduOrganizationController.java
  33. 1 1
      mec-web/src/main/resources/exportColumnMapper.ini
  34. 3 3
      mec-web/src/main/resources/logback-spring.xml

+ 7 - 6
cms/src/main/java/com/ym/mec/cms/controller/NewsController.java

@@ -68,7 +68,7 @@ public class NewsController extends BaseController {
     @ApiOperation("资讯列表分页查询")
     @GetMapping(value = "/list")
     public Object getList(NewsInformationQueryInfo queryInfo) {
-        if (queryInfo.getType() == 6 || queryInfo.getType() == 4) {
+        if (queryInfo.getType() == 6 || queryInfo.getType() == 4 || queryInfo.getType() == 26) {
             queryInfo.setTenantId(-1);
         }
         String clientId = queryInfo.getClientId();
@@ -98,7 +98,8 @@ public class NewsController extends BaseController {
     @GetMapping(value = "/queryPage")
     public Object queryPage(NewsInformationQueryInfo queryInfo) {
 
-        if (queryInfo.getType() != null && (queryInfo.getType() == 6 || queryInfo.getType() == 4)) {
+        if (queryInfo.getType() != null
+                && (queryInfo.getType() == 6 || queryInfo.getType() == 4 || queryInfo.getType() == 26)) {
             queryInfo.setTenantId(-1);
         }
 
@@ -151,12 +152,12 @@ public class NewsController extends BaseController {
     @PreAuthorize("@pcs.hasPermissions('news/add')")
     public Object add(SysNewsInformation newsInfo) {
 
-        if (newsInfo.getType() == 6 || newsInfo.getType() == 4) {
+        if (newsInfo.getType() == 6 || newsInfo.getType() == 4 || newsInfo.getType() == 26) {
             newsInfo.setTenantId(-1);
         }
-        if (newsInfo.getContent().length() > 7999) {
+        /*if (newsInfo.getContent().length() > 7999) {
             return failed("内容过长");
-        }
+        }*/
         return succeed(sysNewsInformationService.insert(newsInfo));
     }
 
@@ -174,7 +175,7 @@ public class NewsController extends BaseController {
         if (newsInfo.getType() == null) {
             newsInfo.setType(originNewsInfo.getType());
         }
-        if (newsInfo.getType() == 6 || newsInfo.getType() == 4) {
+        if (newsInfo.getType() == 6 || newsInfo.getType() == 4 || newsInfo.getType() == 26) {
             newsInfo.setTenantId(-1);
         }
         return succeed(sysNewsInformationService.update(newsInfo));

+ 11 - 0
mec-auth/mec-auth-api/src/main/java/com/ym/mec/auth/api/entity/SysUser.java

@@ -161,6 +161,9 @@ public class SysUser extends BaseEntity implements Serializable{
 
 	private String subjectId;
 
+	@ApiModelProperty(value = "密码重置标识")
+	private Boolean resetFlag;
+
 	public String getSubjectId() {
 		return subjectId;
 	}
@@ -519,4 +522,12 @@ public class SysUser extends BaseEntity implements Serializable{
 	public void setOrganIdList(String organIdList) {
 		this.organIdList = organIdList;
 	}
+
+	public Boolean getResetFlag() {
+		return resetFlag;
+	}
+
+	public void setResetFlag(Boolean resetFlag) {
+		this.resetFlag = resetFlag;
+	}
 }

+ 5 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CloudCoachPaymentProgramDao.java

@@ -3,8 +3,13 @@ package com.ym.mec.biz.dal.dao;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.biz.dal.entity.CloudCoachPaymentProgram;
 
+import java.util.List;
+import java.util.Map;
+
 public interface CloudCoachPaymentProgramDao extends BaseDAO<Long, CloudCoachPaymentProgram> {
 
 
     CloudCoachPaymentProgram getLock(Long id);
+
+    List<Map<String,String>> queryUser(Map<String, Object> params);
 }

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupPaymentCalenderDao.java

@@ -329,4 +329,6 @@ public interface MusicGroupPaymentCalenderDao extends BaseDAO<Long, MusicGroupPa
     List<Map<Long, Integer>> findCooperationByIds(@Param("calenderIds") List<Long> calenderIds);
 
     void updatePaymentNum(@Param("calenderId") Long calenderId, @Param("actualNum") Integer actualNum, @Param("expectNum") Integer expectNum);
+
+    List<Map<String,String>> queryUser(Map<String, Object> params);
 }

+ 14 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/MusicGroupPaymentCalenderResultDto.java

@@ -21,7 +21,20 @@ public class MusicGroupPaymentCalenderResultDto extends MusicGroupPaymentCalende
 
 	private String operatorName;
 
-	@Override
+
+    @ApiModelProperty(value = "审核人", required = false)
+    private String auditName;
+
+
+    public String getAuditName() {
+        return auditName;
+    }
+
+    public void setAuditName(String auditName) {
+        this.auditName = auditName;
+    }
+
+    @Override
 	public Integer getOrganId() {
 		return organId;
 	}

+ 26 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/MusicGroupPaymentCalender.java

@@ -174,6 +174,14 @@ public class MusicGroupPaymentCalender extends BaseEntity {
 	@ApiModelProperty(value = "课程展现形式",required = false)
 	private CourseViewTypeEnum courseViewType;
 
+
+    @ApiModelProperty(value = "审核人", required = false)
+    private Integer audit;
+
+
+    @ApiModelProperty(value = "审核时间", required = false)
+    private Date auditTime;
+
 	//会员有效期(月)
 	//废弃字段
 	private Integer memberValidDate;
@@ -221,7 +229,24 @@ public class MusicGroupPaymentCalender extends BaseEntity {
 	@ApiModelProperty(value = "缴费项目名称", required = false)
 	private String name;
 
-	public String getName() {
+
+    public Integer getAudit() {
+        return audit;
+    }
+
+    public void setAudit(Integer audit) {
+        this.audit = audit;
+    }
+
+    public Date getAuditTime() {
+        return auditTime;
+    }
+
+    public void setAuditTime(Date auditTime) {
+        this.auditTime = auditTime;
+    }
+
+    public String getName() {
 		return name;
 	}
 

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/CloudCoachPaymentProgramQueryInfo.java

@@ -13,6 +13,16 @@ public class CloudCoachPaymentProgramQueryInfo extends QueryInfo {
 
     private String status;
 
+    private Integer audit;
+
+    public Integer getAudit() {
+        return audit;
+    }
+
+    public void setAudit(Integer audit) {
+        this.audit = audit;
+    }
+
     public String getOrganId() {
         return organId;
     }

+ 25 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/page/MusicGroupPaymentCalenderQueryInfo.java

@@ -4,6 +4,7 @@ import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender.PayUserType;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender.PaymentCalenderStatusEnum;
 import com.ym.mec.common.page.QueryInfo;
+import io.swagger.annotations.ApiModelProperty;
 
 public class MusicGroupPaymentCalenderQueryInfo extends QueryInfo {
 	
@@ -19,7 +20,30 @@ public class MusicGroupPaymentCalenderQueryInfo extends QueryInfo {
 	
 	private String batchNo;
 
-	public MusicGroupPaymentCalender.PaymentType getPaymentType() {
+
+    private Integer audit;
+
+
+    @ApiModelProperty(value = "乐团缴费MUSIC, 云教练CLOUD",required = true)
+    private String type;
+
+    public String getType() {
+        return type;
+    }
+
+    public void setType(String type) {
+        this.type = type;
+    }
+
+    public Integer getAudit() {
+        return audit;
+    }
+
+    public void setAudit(Integer audit) {
+        this.audit = audit;
+    }
+
+    public MusicGroupPaymentCalender.PaymentType getPaymentType() {
 		return paymentType;
 	}
 

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/EmployeeService.java

@@ -44,6 +44,12 @@ public interface EmployeeService extends BaseService<Integer, Employee> {
     void updateEmployee(Employee employee);
 
     /**
+     * 修改员工角色
+     * @param employee Employee
+     */
+    void updateEmployeeRole(Employee employee);
+
+    /**
      * 是否有课程组关联的教务老师
      * @param employeeId
      * @return

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupPaymentCalenderService.java

@@ -208,4 +208,6 @@ public interface MusicGroupPaymentCalenderService extends BaseService<Long, Musi
 	* @date 2022/3/17 11:16
 	*/
 	Map<Long, Integer>  findCooperationByIds(List<Long> calenderIds);
+
+    Object queryUser(MusicGroupPaymentCalenderQueryInfo queryInfo);
 }

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/OrganizationService.java

@@ -86,4 +86,6 @@ public interface OrganizationService extends BaseService<Integer, Organization>
     boolean updateBasicInfo(Organization organization);
 
     Long add(Organization organization);
+
+    List<Organization> queryAll();
 }

+ 40 - 8
mec-biz/src/main/java/com/ym/mec/biz/service/impl/EmployeeServiceImpl.java

@@ -145,10 +145,17 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee> impl
                 employee.setUserId(user.getId());
                 employee.setId(user.getId());
                 employeeDao.insert(employee);
-                //新增用户角色
-                employeeDao.batchAddEmployeeRole(user.getId(), employee.getRoleIds(), tenantId);
-                //新增用户职位
-                employeePositionService.batchAddPosition(employee.getId(), employee.getPositionIds(), tenantId);
+
+                if (org.apache.commons.collections.CollectionUtils.isNotEmpty(employee.getRoleIds())) {
+                    //新增用户角色
+                    employeeDao.batchAddEmployeeRole(user.getId(), employee.getRoleIds(), tenantId);
+                }
+
+                if (org.apache.commons.collections.CollectionUtils.isNotEmpty(employee.getPositionIds())) {
+
+                    //新增用户职位
+                    employeePositionService.batchAddPosition(employee.getId(), employee.getPositionIds(), tenantId);
+                }
                 employee.setUserType(user.getUserType() + ",SYSTEM");
                 teacherDao.updateUser(employee);
                 return;
@@ -164,10 +171,16 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee> impl
         teacherDao.addSysUser(employee);
         employee.setUserId(employee.getId());
         employeeDao.insert(employee);
-        //新增用户角色
-        employeeDao.batchAddEmployeeRole(employee.getId(), employee.getRoleIds(), tenantId);
-        //新增用户职位
-        employeePositionService.batchAddPosition(employee.getId(), employee.getPositionIds(), tenantId);
+
+        if (org.apache.commons.collections.CollectionUtils.isNotEmpty(employee.getRoleIds())) {
+            //新增用户角色
+            employeeDao.batchAddEmployeeRole(employee.getId(), employee.getRoleIds(), tenantId);
+        }
+
+        if (org.apache.commons.collections.CollectionUtils.isNotEmpty(employee.getPositionIds())) {
+            //新增用户职位
+            employeePositionService.batchAddPosition(employee.getId(), employee.getPositionIds(), tenantId);
+        }
         //添加用户现金账户
         sysUserCashAccountDao.insert(new SysUserCashAccount(employee.getId(), tenantId, "CNY"));
         ImResult imResult = imFeignService.register(new ImUserModel(employee.getId().toString(), employee.getUsername(), null));
@@ -280,6 +293,25 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee> impl
     }
 
     @Override
+    public void updateEmployeeRole(Employee employee) {
+
+        Employee employee1 = employeeDao.get(employee.getId());
+        if (null == employee1) {
+            throw new BizException("员工信息不存在");
+        }
+
+        //新增用户角色
+        Integer tenantId = TenantContextHolder.getTenantId();
+        if(employee.getRoleIds() != null && employee.getRoleIds().size() > 0){
+
+            //删除当前用户角色
+            employeeDao.delEmployeeRole(employee.getId());
+            // 批量新增角色
+            employeeDao.batchAddEmployeeRole(employee.getId(), employee.getRoleIds(), tenantId);
+        }
+    }
+
+    @Override
     public PageInfo queryEmployByOrganId(EmployeeQueryInfo queryInfo) {
         SysUser user = sysUserFeignService.queryUserInfo();
         if (user == null) {

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

@@ -290,7 +290,7 @@ public class FinancialExpenditureServiceImpl extends BaseServiceImpl<Long, Finan
                         feeProjectEnum = FeeProjectEnum.valueOfDesc(submitValue.toString());
                     }
                 }
-
+                Boolean continueFlag = false;
                 for (OaInputDto oaInputDto : oaInputDtos) {
                     String submitForm = oaInputDto.getModel();
                     Object submitValue = formData.get(submitForm);
@@ -315,8 +315,10 @@ public class FinancialExpenditureServiceImpl extends BaseServiceImpl<Long, Finan
                                             String name = inputDto.getName();
                                             Object o = hashMap.get(inputDto.getModel());
                                             if (Objects.isNull(o) || StringUtils.isEmpty(o.toString())) {
+                                                continueFlag = false;
                                                 continue nullAmount;
                                             }
+                                            continueFlag = true;
                                             if (StringUtils.equals(name,"金额")) {
                                                 financialExpenditure.setCurrentAmount(new BigDecimal(Double.parseDouble(o.toString())));
                                             } else if (StringUtils.equals(name,"日期")) {
@@ -341,6 +343,9 @@ public class FinancialExpenditureServiceImpl extends BaseServiceImpl<Long, Finan
                             }
                         }
                     }else {
+                        if(continueFlag){
+                            continue;
+                        }
                         nullUser:
                         for (HashMap hashMap : hashMaps) {
                             FinancialExpenditure financialExpenditure = new FinancialExpenditure();
@@ -379,7 +384,9 @@ public class FinancialExpenditureServiceImpl extends BaseServiceImpl<Long, Finan
                                                     financialExpenditure.setOrganId(organization.getId());
                                                     financialExpenditure.setOrganName(organization.getName());
                                                 }
-                                            } else if (StringUtils.contains(name,"金额") || StringUtils.equals(name,"住宿费") || StringUtils.equals(name,"出差补助") || StringUtils.equals(name,"交通费")) {
+                                            } else if (StringUtils.equals(name,"学校")) {
+                                                financialExpenditure.setCooperationOrganId(Integer.parseInt(o.toString()));
+                                            } else if (StringUtils.contains(name,"金额")) {
                                                 financialExpenditure.setAmount(financialExpenditure.getAmount().add(new BigDecimal(Double.parseDouble(o.toString()))));
                                                 financialExpenditure.setCurrentAmount(financialExpenditure.getAmount());
                                             } else if (StringUtils.equals(name,"情况说明") || StringUtils.equals(name,"事由")) {

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

@@ -119,8 +119,8 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 			dataTypes = Arrays.stream(queryInfo.getDataTypes().split(",")).collect(Collectors.toSet());
 		}
 
-		String startDate1 = startDate.toString();
-		String endDate1 = endDate.toString();
+		String startDate1 = startDate.toString() + " 00:00:00";
+		String endDate1 = endDate.toString() + " 23:59:59";;
 		List<Integer> arrayList = null;
 		if(!CollectionUtils.isEmpty(organIds)){
 			arrayList = new ArrayList<>(organIds);
@@ -133,7 +133,7 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 
 		Map<Date, Map<IndexDataType, Map<String, Integer>>> vipCategoryCourseListMap = new HashMap<>();
 		if(CollectionUtils.isEmpty(dataTypes)||dataTypes.contains("VIP_GROUP_COURSE")||dataTypes.contains("VIP_GROUP_ONLINE_COURSE")||dataTypes.contains("VIP_GROUP_OFFLINE_COURSE")){
-			Set<String> vipDataTypes = new HashSet<>();
+			Set<String> vipDataTypes = new HashSet<>(3);
 			vipDataTypes.add("VIP_GROUP_COURSE");
 			vipDataTypes.add("VIP_GROUP_ONLINE_COURSE");
 			vipDataTypes.add("VIP_GROUP_OFFLINE_COURSE");

+ 18 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderServiceImpl.java

@@ -129,6 +129,9 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
     @Autowired
     private MemberFeeSettingService memberFeeSettingService;
 
+    @Autowired
+    private CloudCoachPaymentProgramDao cloudCoachPaymentProgramDao;
+
     @Override
     public BaseDAO<Long, MusicGroupPaymentCalender> getDAO() {
         return musicGroupPaymentCalenderDao;
@@ -930,6 +933,8 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
                 }
                 musicGroupPaymentCalender.setAuditMemo(auditMemo);
                 musicGroupPaymentCalender.setUpdateTime(date);
+                musicGroupPaymentCalender.setAudit(sysUserService.getUserId());
+                musicGroupPaymentCalender.setAuditTime(date);
 
                 if (musicGroupPaymentCalender.getPaymentType() == PaymentType.ADD_STUDENT) {
                     musicGroupPaymentCalender.setExpectNum(1);
@@ -1248,6 +1253,19 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
     }
 
     @Override
+    public Object queryUser(MusicGroupPaymentCalenderQueryInfo queryInfo) {
+        Map<String, Object> params = new HashMap<>();
+        MapUtil.populateMap(params, queryInfo);
+        if ("MUSIC".equals(queryInfo.getType())) {
+            return musicGroupPaymentCalenderDao.queryUser(params);
+        } else if ("CLOUD".equals(queryInfo.getType())) {
+            return cloudCoachPaymentProgramDao.queryUser(params);
+        } else {
+            return null;
+        }
+    }
+
+    @Override
     @Transactional(rollbackFor = Exception.class, isolation = Isolation.READ_COMMITTED)
     public boolean autoUpdateMusicGroupPaymentCalenderStatus() {
         Date date = new Date();

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

@@ -215,6 +215,11 @@ public class OrganizationServiceImpl extends BaseServiceImpl<Integer, Organizati
 		return insert;
     }
 
+	@Override
+	public List<Organization> queryAll() {
+		return organizationDao.getOrgans(null,1);
+	}
+
 	@Transactional(rollbackFor = Exception.class)
     public void updateOrganId(Integer userId,Integer organId){
 		Employee employee = employeeDao.get(userId);

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

@@ -124,6 +124,9 @@
 			<if test="tenantId != null">
 				AND ccpp.tenant_id_ = #{tenantId}
 			</if>
+            <if test="audit != null">
+                AND ccpp.audit_ = #{audit}
+            </if>
 			<if test="period != null and period != ''">
 				AND ccpp.period_ = #{period}
 			</if>
@@ -160,4 +163,16 @@
 	<select id="getLock" resultMap="CloudCoachPaymentProgram">
 		SELECT * FROM cloud_coach_payment_program WHERE id_ = #{id} FOR UPDATE
 	</select>
+
+	<select id="queryUser" resultType="java.util.Map">
+        SELECT distinct mgpc.audit_ as audit,su.real_name_ as auditName
+        FROM cloud_coach_payment_program mgpc
+        left join sys_user su on mgpc.audit_ = su.id_
+        <where>
+            mgpc.audit_ is not null
+            <if test="organId != null and organId != ''">
+                AND FIND_IN_SET(mgpc.organ_id_,#{organId})
+            </if>
+        </where>
+    </select>
 </mapper>

+ 20 - 26
mec-biz/src/main/resources/config/mybatis/IndexBaseMonthDataMapper.xml

@@ -145,10 +145,7 @@
 				</foreach>
 			</if>
 			<if test="startMonth!=null and startMonth!=''">
-				AND month_&gt;=#{startMonth}
-			</if>
-			<if test="endMonth!=null and endMonth!=''">
-				AND month_&lt;=#{endMonth}
+				AND month_ BETWEEN #{startMonth} AND #{endMonth}
 			</if>
 		</where>
 		GROUP BY month_,data_type_
@@ -204,10 +201,7 @@
 					</foreach>
 				</if>
 				<if test="startMonth!=null and startMonth!=''">
-					AND month_&gt;=#{startMonth}
-				</if>
-				<if test="endMonth!=null and endMonth!=''">
-					AND month_&lt;=#{endMonth}
+					AND month_ BETWEEN #{startMonth} AND #{endMonth}
 				</if>
 				AND extend_info_ IS NOT NULL
 			</where>
@@ -1405,7 +1399,7 @@
 			   SUM(CASE WHEN spo.balance_payment_amount_ IS NULL THEN 0 ELSE spo.balance_payment_amount_ END) activate_num_,
 			   SUM(CASE WHEN spo.balance_payment_amount_ IS NULL THEN 0 ELSE spo.balance_payment_amount_ END) percent_,DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') month_
 		FROM student_payment_order spo
-		WHERE spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') BETWEEN #{startDate} AND #{endDate} and spo.tenant_id_ = #{tenantId}
+		WHERE spo.status_ = 'SUCCESS' AND spo.pay_time_ BETWEEN #{startDate} AND #{endDate} and spo.tenant_id_ = #{tenantId}
 		<if test="organIds!=null and organIds.size()>0">
 			AND spo.organ_id_ IN
 			<foreach collection="organIds" item="organId" open="(" close=")" separator=",">
@@ -1420,7 +1414,7 @@
 		o.id_ organ_id_,o.name_ organ_name_
 		FROM organization o
 		LEFT JOIN student_payment_order spo ON o.id_ = spo.organ_id_ AND o.tenant_id_ = spo.tenant_id_
-		AND spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') BETWEEN #{startDate} AND #{endDate}
+		AND spo.status_ = 'SUCCESS' AND spo.pay_time_ BETWEEN #{startDate} AND #{endDate}
 		WHERE o.tenant_id_ = #{tenantId}
 		<if test="organIds!=null and organIds.size() > 0">
 			AND o.id_ IN
@@ -1436,7 +1430,7 @@
 			   SUM(spo.actual_amount_) activate_num_,
 			   SUM(spo.actual_amount_) percent_,DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') month_
 		FROM student_payment_order spo
-		WHERE spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') BETWEEN #{startDate} AND #{endDate} and spo.tenant_id_ = #{tenantId}
+		WHERE spo.status_ = 'SUCCESS' AND spo.pay_time_ BETWEEN #{startDate} AND #{endDate} and spo.tenant_id_ = #{tenantId}
 		<if test="organIds!=null and organIds.size()>0">
 			AND spo.organ_id_ IN
 			<foreach collection="organIds" item="organId" open="(" close=")" separator=",">
@@ -1450,7 +1444,7 @@
 		SELECT SUM(spo.actual_amount_) percent_,o.id_ organ_id_,o.name_ organ_name_
 		FROM organization o
 		LEFT JOIN student_payment_order spo ON o.id_ = spo.organ_id_ AND o.tenant_id_ = spo.tenant_id_
-		AND spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') BETWEEN #{startDate} AND #{endDate}
+		AND spo.status_ = 'SUCCESS' AND spo.pay_time_ BETWEEN #{startDate} AND #{endDate}
 		WHERE o.tenant_id_ = #{tenantId}
 		<if test="organIds!=null and organIds.size()>0">
 			AND o.id_ IN
@@ -1469,7 +1463,7 @@
 			   SUM(CASE WHEN spo.actual_amount_ IS NULL THEN 0 ELSE spo.actual_amount_ END +
 		CASE WHEN spo.balance_payment_amount_ IS NULL THEN 0 ELSE spo.balance_payment_amount_ END) percent_,DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') month_
 		FROM student_payment_order spo
-		WHERE spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') BETWEEN #{startDate} AND #{endDate} and spo.tenant_id_ = #{tenantId}
+		WHERE spo.status_ = 'SUCCESS' AND spo.pay_time_ BETWEEN #{startDate} AND #{endDate} and spo.tenant_id_ = #{tenantId}
 		<if test="organIds!=null and organIds.size()>0">
 			AND spo.organ_id_ IN
 			<foreach collection="organIds" item="organId" open="(" close=")" separator=",">
@@ -1485,7 +1479,7 @@
 		    			   o.id_ organ_id_,o.name_ organ_name_
 		FROM organization o
 		LEFT JOIN student_payment_order spo ON o.id_ = spo.organ_id_ AND o.tenant_id_ = spo.tenant_id_
-		AND spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') BETWEEN #{startDate} AND #{endDate}
+		AND spo.status_ = 'SUCCESS' AND spo.pay_time_ BETWEEN #{startDate} AND #{endDate}
 		WHERE o.tenant_id_ = #{tenantId}
 		<if test="organIds!=null and organIds.size()>0">
 			AND o.id_ IN
@@ -1504,7 +1498,7 @@
 			   SUM(CASE WHEN spo.actual_amount_ IS NULL THEN 0 ELSE spo.actual_amount_ END +
 		CASE WHEN spo.balance_payment_amount_ IS NULL THEN 0 ELSE spo.balance_payment_amount_ END) percent_,DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') month_
 		FROM student_payment_order spo
-		WHERE spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') BETWEEN #{startDate} AND #{endDate} and spo.tenant_id_ = #{tenantId}
+		WHERE spo.status_ = 'SUCCESS' AND spo.pay_time_ BETWEEN #{startDate} AND #{endDate} and spo.tenant_id_ = #{tenantId}
 		<if test="orderType != null">
 			AND FIND_IN_SET(spo.type_,#{orderType})
 		</if>
@@ -1529,7 +1523,7 @@
 		    			   o.id_ organ_id_,o.name_ organ_name_
 		FROM organization o
 		LEFT JOIN student_payment_order spo ON o.id_ = spo.organ_id_ AND o.tenant_id_ = spo.tenant_id_
-		AND spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') BETWEEN #{startDate} AND #{endDate}
+		AND spo.status_ = 'SUCCESS' AND spo.pay_time_ BETWEEN #{startDate} AND #{endDate}
 		<if test="orderType != null">
 			AND FIND_IN_SET(spo.type_,#{orderType})
 		</if>
@@ -1560,7 +1554,7 @@
 		SELECT spo.organ_id_,SUM(CASE WHEN spod.price_ IS NULL THEN 0 ELSE spod.price_ END) total_num_,DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') month_
 		FROM student_payment_order spo
 		LEFT JOIN student_payment_order_detail spod ON spo.id_ = spod.payment_order_id_
-		WHERE spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') BETWEEN #{startDate} AND #{endDate} and spo.tenant_id_ = #{tenantId}
+		WHERE spo.status_ = 'SUCCESS' AND spo.pay_time_ BETWEEN #{startDate} AND #{endDate} and spo.tenant_id_ = #{tenantId}
 		AND spo.type_ = 'DEGREE' AND spod.type_ IN ('THEORY_COURSE','VIP')
 		<if test="organIds!=null and organIds.size()>0">
 			AND spo.organ_id_ IN
@@ -1574,7 +1568,7 @@
 		CASE WHEN spo.balance_payment_amount_ IS NULL THEN 0 ELSE spo.balance_payment_amount_ END) total_num_
 		,DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') month_
 		FROM student_payment_order spo
-		WHERE spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') BETWEEN #{startDate} AND #{endDate}
+		WHERE spo.status_ = 'SUCCESS' AND spo.pay_time_ BETWEEN #{startDate} AND #{endDate}
 		AND spo.type_ = 'SMALL_CLASS_TO_BUY'
 		<if test="organIds!=null and organIds.size()>0">
 			AND spo.organ_id_ IN
@@ -1591,7 +1585,7 @@
 		LEFT JOIN (SELECT spo.organ_id_,SUM(CASE WHEN spod.price_ IS NULL THEN 0 ELSE spod.price_ END) total_num_
 		FROM student_payment_order spo
 		LEFT JOIN student_payment_order_detail spod ON spo.id_ = spod.payment_order_id_
-		WHERE spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') BETWEEN #{startDate} AND #{endDate} and spo.tenant_id_ = #{tenantId}
+		WHERE spo.status_ = 'SUCCESS' AND spo.pay_time_ BETWEEN #{startDate} AND #{endDate} and spo.tenant_id_ = #{tenantId}
 		AND spo.type_ = 'DEGREE' AND spod.type_ IN ('THEORY_COURSE','VIP')
 		<if test="organIds!=null and organIds.size()>0">
 			AND spo.organ_id_ IN
@@ -1604,7 +1598,7 @@
 		SELECT spo.organ_id_,SUM(CASE WHEN spo.actual_amount_ IS NULL THEN 0 ELSE spo.actual_amount_ END +
 		CASE WHEN spo.balance_payment_amount_ IS NULL THEN 0 ELSE spo.balance_payment_amount_ END) total_num_
 		FROM student_payment_order spo
-		WHERE spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') BETWEEN #{startDate} AND #{endDate}
+		WHERE spo.status_ = 'SUCCESS' AND spo.pay_time_ BETWEEN #{startDate} AND #{endDate}
 		AND spo.type_ = 'SMALL_CLASS_TO_BUY'
 		<if test="organIds!=null and organIds.size()>0">
 			AND spo.organ_id_ IN
@@ -1630,7 +1624,7 @@
 							   CASE WHEN spo.balance_payment_amount_ IS NULL THEN 0 ELSE spo.balance_payment_amount_ END) total_num_
 		   ,DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') month_,spo.type_
 		FROM student_payment_order spo
-		WHERE spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') BETWEEN #{startDate} AND #{endDate} and spo.tenant_id_ = #{tenantId}
+		WHERE spo.status_ = 'SUCCESS' AND spo.pay_time_ BETWEEN #{startDate} AND #{endDate} and spo.tenant_id_ = #{tenantId}
 		AND spo.type_ NOT IN ('APPLY','RENEW','PRACTICE_GROUP_BUY','PRACTICE_GROUP_RENEW','SMALL_CLASS_TO_BUY','DEGREE')
 		<if test="organIds!=null and organIds.size()>0">
 			AND spo.organ_id_ IN
@@ -1643,7 +1637,7 @@
 		SELECT spo.organ_id_,SUM(CASE WHEN spod.price_ IS NULL THEN 0 ELSE spod.price_ END) total_num_,DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') month_,spo.type_
 		FROM student_payment_order spo
 			   LEFT JOIN student_payment_order_detail spod ON spo.id_ = spod.payment_order_id_
-		WHERE spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') BETWEEN #{startDate} AND #{endDate}
+		WHERE spo.status_ = 'SUCCESS' AND spo.pay_time_ BETWEEN #{startDate} AND #{endDate}
 		AND spo.type_ = 'DEGREE' AND spod.type_ = 'DEGREE_REGISTRATION'
 		<if test="organIds!=null and organIds.size()>0">
 			AND spo.organ_id_ IN
@@ -1659,9 +1653,9 @@
 		SELECT o.id_ organ_id_,o.name_ organ_name_,SUM(c.total_num_) percent_ FROM organization o
 		LEFT JOIN (
 		SELECT spo.organ_id_,SUM(CASE WHEN spo.actual_amount_ IS NULL THEN 0 ELSE spo.actual_amount_ END +
-							   CASE WHEN spo.balance_payment_amount_ IS NULL THEN 0 ELSE spo.balance_payment_amount_ END) total_num_,spo.type_
+		CASE WHEN spo.balance_payment_amount_ IS NULL THEN 0 ELSE spo.balance_payment_amount_ END) total_num_,spo.type_
 		FROM student_payment_order spo
-		WHERE spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') BETWEEN #{startDate} AND #{endDate} and spo.tenant_id_ = #{tenantId}
+		WHERE spo.status_ = 'SUCCESS' AND spo.pay_time_ BETWEEN #{startDate} AND #{endDate} and spo.tenant_id_ = #{tenantId}
 		AND spo.type_ NOT IN ('APPLY','ADD_STUDENT','RENEW','PRACTICE_GROUP_BUY','PRACTICE_GROUP_RENEW','SMALL_CLASS_TO_BUY','DEGREE')
 		<if test="organIds!=null and organIds.size()>0">
 			AND spo.organ_id_ IN
@@ -1673,8 +1667,8 @@
 		UNION ALL
 		SELECT spo.organ_id_,SUM(CASE WHEN spod.price_ IS NULL THEN 0 ELSE spod.price_ END) total_num_,spo.type_
 		FROM student_payment_order spo
-			   LEFT JOIN student_payment_order_detail spod ON spo.id_ = spod.payment_order_id_
-		WHERE spo.status_ = 'SUCCESS' AND DATE_FORMAT(spo.pay_time_,'%Y-%m-%d') BETWEEN #{startDate} AND #{endDate}
+		LEFT JOIN student_payment_order_detail spod ON spo.id_ = spod.payment_order_id_
+		WHERE spo.status_ = 'SUCCESS' AND spo.pay_time_ BETWEEN #{startDate} AND #{endDate}
 		AND spo.type_ = 'DEGREE' AND spod.type_ = 'DEGREE_REGISTRATION'
 		<if test="organIds!=null and organIds.size()>0">
 			AND spo.organ_id_ IN

+ 26 - 1
mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderMapper.xml

@@ -45,6 +45,8 @@
         <result column="calender_fee_type_" property="calenderFeeType"/>
         <result column="calender_fee_json_" property="calenderFeeJson"/>
         <result column="contract_url_" property="contractUrl"/>
+        <result column="auditTime" property="auditTime"/>
+        <result column="audit" property="audit"/>
     </resultMap>
 
     <!-- 根据主键查询一条记录 -->
@@ -265,6 +267,12 @@
 	            <if test="item.isShowSalePrice != null">
 	                is_show_sale_price_ = #{item.isShowSalePrice},
 	            </if>
+                <if test="item.audit != null">
+                    audit = #{item.audit},
+                </if>
+                <if test="item.auditTime != null">
+                    audit_time = #{item.auditTime},
+                </if>
 	        </set>
 	        WHERE id_ = #{item.id} and tenant_id_ = #{item.tenantId}
 		</foreach>
@@ -675,6 +683,9 @@
             <if test="tenantId != null">
                 AND mgpc.tenant_id_ = #{tenantId}
             </if>
+            <if test="audit != null">
+                AND mgpc.audit = #{audit}
+            </if>
         </where>
     </sql>
     <select id="countCalender" resultType="java.lang.Integer">
@@ -687,15 +698,17 @@
                extends="MusicGroupPaymentCalender">
         <result column="music_group_name_" property="musicGroupName"/>
         <result column="operator_name_" property="operatorName"/>
+        <result column="auditName" property="auditName"/>
     </resultMap>
     <select id="queryCalenderPage" resultMap="MusicGroupPaymentCalenderResultDto">
         SELECT mgpc.id_,mgpc.music_group_id_,mgpc.music_group_organization_course_settings_id_,mgpc.pay_user_type_,mgpc.reject_reason_,
         mgpc.start_payment_date_,mgpc.deadline_payment_date_,mgpc.status_,mgpc.expect_num_,
         mgpc.actual_num_,mgpc.memo_,mgpc.create_time_,mgpc.update_time_,
         mgpc.payment_pattern_,mgpc.payment_type_,mgpc.batch_no_,mgpc.audit_memo_,mgpc.operator_,mgpc.attribute1_,
-        mgpc.attribute2_,mgpc.student_ids_,mgpc.current_total_amount_,mgpc.original_total_amount_,mg.name_ music_group_name_,mgpc.organ_id_
+        mgpc.attribute2_,mgpc.student_ids_,mgpc.current_total_amount_,mgpc.original_total_amount_,mg.name_ music_group_name_,mgpc.organ_id_,mgpc.audit,mgpc.audit_time auditTime,su.real_name_  auditName
         FROM music_group_payment_calender mgpc
         LEFT JOIN music_group mg ON mg.id_ = mgpc.music_group_id_
+        left join sys_user su on su.id_ = mgpc.audit
         <include refid="queryCalenderPageSql"/>
         ORDER BY mgpc.id_ DESC
         <include refid="global.limit"/>
@@ -716,4 +729,16 @@
             #{id}
         </foreach>
     </select>
+
+    <select id="queryUser" resultType="java.util.Map">
+        SELECT distinct mgpc.audit as audit,su.real_name_ as auditName
+        FROM music_group_payment_calender mgpc
+        left join sys_user su on mgpc.audit = su.id_
+        <where>
+            mgpc.audit is not null
+            <if test="organId != null and organId != ''">
+                AND FIND_IN_SET(mgpc.organ_id_,#{organId})
+            </if>
+        </where>
+    </select>
 </mapper>

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

@@ -378,7 +378,7 @@
 			SUM(CASE WHEN hc.human_cost_type_ = 'STUDENT_MANAGEMENT_FEE_ADJUSTMENT' THEN hc.amount_ ELSE 0 END) AS studentManagementFeeAdjustment
 		FROM
 			organization o
-				left join financial_expenditure fe ON o.id_ = fe.organ_id_ AND fe.process_id_ = 28 AND DATE_FORMAT(fe.aproval_time_, '%Y-%m') = #{month} AND fe.del_flag_ = 0
+				left join financial_expenditure fe ON o.id_ = fe.organ_id_ AND fe.process_id_ = 28 AND effective_time_= #{month} AND fe.del_flag_ = 0
 				left join human_cost hc ON hc.organ_id_ = o.id_  AND hc.month_ = #{month}
 		WHERE
 			o.tenant_id_ = 1 AND o.del_flag_ = 0
@@ -388,7 +388,7 @@
 	<resultMap type="com.ym.mec.biz.dal.entity.FinancialExpenditure" id="FinancialExpenditure">
 		<result column="name_" property="organName"/>
 		<result column="batch_no_" property="batchNo"/>
-		<result column="cooperation_organ_name_" property="cooperationOrganName"/>
+		<result column="cooperationName" property="cooperationOrganName"/>
 		<result column="apply_user_" property="applyUser"/>
 		<result column="student_id_" property="studentId"/>
 		<result column="type_" property="type" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
@@ -404,7 +404,7 @@
 		from financial_expenditure fe
 				 left join organization o ON o.id_ = fe.organ_id_
 				 left join cooperation_organ co ON co.id_ = fe.cooperation_organ_id_
-		where fe.process_id_ IN (19,22,28,51) AND fee_project_ NOT IN (1,2,13,14) AND fe.del_flag_ = 0 AND DATE_FORMAT(fe.aproval_time_, '%Y-%m') = #{month}
+		where fe.process_id_ IN (19,22,28,51) AND fee_project_ NOT IN (1,2,13,14) AND fe.del_flag_ = 0 AND fe.effective_time_ = #{month}
 		order by fe.id_ DESC
 	</select>
 	<select id="sumHumanCost" resultType="com.ym.mec.biz.dal.dto.HumanTypeDto">

+ 26 - 18
mec-biz/src/main/resources/config/mybatis/StudentExtracurricularExercisesSituationMapper.xml

@@ -855,24 +855,32 @@
     <select id="countWaitCreateHomeworkNum1" resultType="java.lang.Integer">
         SELECT SUM(t.num_)
         FROM (
-                 SELECT COUNT(se.id_) num_
-                 FROM student_extracurricular_exercises_situation_ se
-                          LEFT JOIN course_schedule cs ON FIND_IN_SET(cs.id_, se.course_ids_)
-                 WHERE se.teacher_id_ = #{teacherId}
-                   AND se.expect_exercises_num_ > se.actual_exercises_num_
-                   AND DATE_FORMAT(NOW(), '%Y-%m-%d') BETWEEN se.monday_ AND se.sunday_
-                   AND se.serve_type_ = 'HOMEWORK'
-                   AND cs.group_type_ = 'MUSIC'
-                   AND cs.class_date_ = DATE_FORMAT(NOW(), '%Y-%m-%d')
-                 UNION ALL
-                 SELECT COUNT(se.id_) num_
-                 FROM student_extracurricular_exercises_situation_ se
-                          LEFT JOIN course_schedule cs ON FIND_IN_SET(cs.id_, se.course_ids_)
-                 WHERE se.teacher_id_ = #{teacherId}
-                   AND se.expect_exercises_num_ > se.actual_exercises_num_
-                   AND DATE_FORMAT(NOW(), '%Y-%m-%d') BETWEEN se.monday_ AND se.sunday_
-                   AND se.serve_type_ = 'HOMEWORK'
-                   AND cs.group_type_ != 'MUSIC' AND cs.class_date_ &lt;= DATE_FORMAT(NOW(), '%Y-%m-%d')) t
+        SELECT COUNT(se.id_) num_
+        FROM student_extracurricular_exercises_situation_ se
+        LEFT JOIN (
+        SELECT DISTINCT cs.id_
+        FROM course_schedule cs
+        WHERE cs.group_type_ = 'MUSIC' AND cs.class_date_ = DATE_FORMAT(NOW(), '%Y-%m-%d')
+        ) music_cs ON FIND_IN_SET(music_cs.id_, se.course_ids_)
+        WHERE se.teacher_id_ = #{teacherId}
+        AND se.expect_exercises_num_ > se.actual_exercises_num_
+        AND DATE_FORMAT(NOW(), '%Y-%m-%d') BETWEEN se.monday_ AND se.sunday_
+        AND se.serve_type_ = 'HOMEWORK'
+        AND music_cs.id_ IS NOT NULL
+        UNION ALL
+        SELECT COUNT(se.id_) num_
+        FROM student_extracurricular_exercises_situation_ se
+        LEFT JOIN (
+        SELECT DISTINCT cs.id_
+        FROM course_schedule cs
+        WHERE cs.group_type_ != 'MUSIC' AND cs.class_date_ &lt;= DATE_FORMAT(NOW(), '%Y-%m-%d')
+        ) non_music_cs ON FIND_IN_SET(non_music_cs.id_, se.course_ids_)
+        WHERE se.teacher_id_ = #{teacherId}
+        AND se.expect_exercises_num_ > se.actual_exercises_num_
+        AND DATE_FORMAT(NOW(), '%Y-%m-%d') BETWEEN se.monday_ AND se.sunday_
+        AND se.serve_type_ = 'HOMEWORK'
+        AND non_music_cs.id_ IS NOT NULL
+        ) t
     </select>
 
     <select id="queryTeacherPerformanceIndicator" resultMap="TeacherServeDto">

+ 3 - 1
mec-common/audit-log/src/main/java/com/yonge/log/interceptor/AuditLogInterceptor.java

@@ -16,6 +16,7 @@ import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
+import java.net.InetAddress;
 import java.nio.charset.Charset;
 import java.text.SimpleDateFormat;
 import java.util.*;
@@ -96,7 +97,8 @@ public class AuditLogInterceptor extends HandlerInterceptorAdapter {
         auditLog.setInterfaceUrl(servletPath);
         auditLog.setToken(request.getHeader("Authorization"));
         auditLog.setService(clientName);
-        auditLog.setUserIp(WebUtil.getRemoteIp(request));
+        String remoteAddr = request.getHeader("HTTP_X_FORWARDED_FOR");
+        auditLog.setUserIp(remoteAddr);
 
         Map<String, Object> params = WebUtil.getParameterMap(request);
         if (params == null || params.size() == 0) {

+ 45 - 3
mec-gateway/mec-gateway-web/src/main/java/com/ym/mec/gateway/web/filter/AuthFilter.java

@@ -2,24 +2,66 @@ package com.ym.mec.gateway.web.filter;
 
 import javax.servlet.http.HttpServletRequest;
 
+import org.bouncycastle.util.IPAddress;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Component;
 
 import com.netflix.zuul.ZuulFilter;
 import com.netflix.zuul.context.RequestContext;
 import com.netflix.zuul.exception.ZuulException;
 
+import java.net.InetAddress;
+import java.net.UnknownHostException;
+
 @Component
 public class AuthFilter extends ZuulFilter {
+	private static final Logger logger = LoggerFactory.getLogger(AuthFilter.class);
 
 	@Override
 	public Object run() throws ZuulException {//过滤器核心业务方法
-		RequestContext requestContext = RequestContext.getCurrentContext();
-		HttpServletRequest request = requestContext.getRequest();
-
 
+		RequestContext requestContext = RequestContext.getCurrentContext();
+		requestContext.getZuulRequestHeaders().put("HTTP_X_FORWARDED_FOR", getRealIp(requestContext.getRequest()));
 		return null;
 	}
 
+	public static String getRealIp(HttpServletRequest request) {
+		String ipAddress = request.getHeader("X-Forwarded-For");
+		if (ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress)) {
+			ipAddress = request.getHeader("Proxy-Client-IP");
+		}
+		if (ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress)) {
+			ipAddress = request.getHeader("WL-Proxy-Client-IP");
+		}
+		if (ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress)) {
+			ipAddress = request.getHeader("HTTP_CLIENT_IP");
+		}
+		if (ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress)) {
+			ipAddress = request.getHeader("HTTP_X_FORWARDED_FOR");
+		}
+		if (ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress)) {
+			ipAddress = request.getRemoteAddr();
+			if (ipAddress.equals("127.0.0.1") || ipAddress.equals("0:0:0:0:0:0:0:1")) {
+				// 根据网卡取本机配置的IP
+				InetAddress inet = null;
+				try {
+					inet = InetAddress.getLocalHost();
+				} catch (UnknownHostException e) {
+					e.printStackTrace();
+				}
+				ipAddress = inet.getHostAddress();
+			}
+		}
+		if (ipAddress != null && ipAddress.length() > 15) {
+			if (ipAddress.indexOf(",") > 0) {
+				ipAddress = ipAddress.substring(0, ipAddress.indexOf(","));
+			}
+		}
+		return ipAddress;
+	}
+
+
 	@Override
 	public boolean shouldFilter() {// 返回true,必须执行过滤器;false,不执行过滤器
 		return true;

+ 3 - 3
mec-im/src/main/resources/logback-spring.xml

@@ -31,21 +31,21 @@
 
     <!--本地环境:打印控制台 -->
     <springProfile name="local">
-        <root level="DEBUG">
+        <root level="INFO">
             <appender-ref ref="stdout" />
             <appender-ref ref="file" />
         </root>
     </springProfile>
     <!--开发环境:打印控制台 -->
     <springProfile name="dev">
-        <root level="DEBUG">
+        <root level="INFO">
             <appender-ref ref="stdout" />
             <appender-ref ref="file" />
         </root>
     </springProfile>
 
     <springProfile name="test">
-        <root level="DEBUG">
+        <root level="INFO">
             <appender-ref ref="stdout" />
             <appender-ref ref="file" />
         </root>

+ 1 - 1
mec-student/src/main/resources/application-template.yml

@@ -111,4 +111,4 @@ push:
 
 logging:
   level:
-    com.ym.mec.auth.api.client.SysUserFeignService: DEBUG
+    com.ym.mec.auth.api.client.SysUserFeignService: INFO

+ 4 - 4
mec-student/src/main/resources/logback-spring.xml

@@ -52,7 +52,7 @@
 
 	<!--本地环境:打印控制台 -->
 	<springProfile name="local">
-		<root level="DEBUG">
+		<root level="INFO">
 			<appender-ref ref="stdout" />
 			<appender-ref ref="file" />
 		</root>
@@ -60,21 +60,21 @@
 
 	<!--开发环境:打印控制台 -->
 	<springProfile name="dev">
-		<root level="DEBUG">
+		<root level="INFO">
 			<appender-ref ref="stdout" />
 			<appender-ref ref="file" />
 		</root>
 	</springProfile>
 
 	<springProfile name="test">
-		<root level="DEBUG">
+		<root level="INFO">
 			<appender-ref ref="stdout" />
 			<appender-ref ref="file" />
 		</root>
 	</springProfile>
 
 	<springProfile name="dev_server">
-		<root level="DEBUG">
+		<root level="INFO">
 			<appender-ref ref="stdout" />
 			<appender-ref ref="file" />
 		</root>

+ 3 - 3
mec-teacher/src/main/resources/logback-spring.xml

@@ -60,21 +60,21 @@
 
 	<!--开发环境:打印控制台 -->
 	<springProfile name="dev">
-		<root level="DEBUG">
+		<root level="INFO">
 			<appender-ref ref="stdout" />
 			<appender-ref ref="file" />
 		</root>
 	</springProfile>
 
 	<springProfile name="test">
-		<root level="DEBUG">
+		<root level="INFO">
 			<appender-ref ref="stdout" />
 			<appender-ref ref="file" />
 		</root>
 	</springProfile>
 
 	<springProfile name="dev_server">
-		<root level="DEBUG">
+		<root level="INFO">
 			<appender-ref ref="stdout" />
 			<appender-ref ref="file" />
 		</root>

+ 2 - 0
mec-util/src/main/java/com/ym/mec/util/web/WebUtil.java

@@ -192,4 +192,6 @@ public class WebUtil {
 
 		return isFromMobile;
 	}
+
+	
 }

+ 1 - 1
mec-web/src/main/java/com/ym/mec/web/config/ResourceServerConfig.java

@@ -42,7 +42,7 @@ public class ResourceServerConfig extends ResourceServerConfigurerAdapter {
                         "/questionnaireTopic/getDetail", "/questionnaireUserResult/add",
                         "/tenantInfo/info/*", "/tenantInfo/checkInfo/*", "/tenantInfo/pay/*","/tenantInfo/testCheck", "/tenantInfo/getContract/*",
                         "/tenantPreJoin/add","/imLiveBroadcastRoom/queryRoomInfo","/imLiveBroadcastRoom/test",
-                        "/eduOrganization/queryAllOrgan","/eduOrganization/getOrganCooperation","/import/oaUploadFile",
+                        "/eduOrganization/queryAllOrgan","/eduOrganization/queryAll","/eduOrganization/getOrganCooperation","/import/oaUploadFile",
                         "/tenantInfo/callback","/adapay/callback","/temp/*"
                 )
                 .permitAll().anyRequest().authenticated().and().httpBasic();

+ 26 - 1
mec-web/src/main/java/com/ym/mec/web/controller/EmployeeController.java

@@ -7,6 +7,7 @@ import com.ym.mec.biz.dal.dto.EmployeeLevelDto;
 import com.ym.mec.biz.dal.dto.SysEmployeePositionDto;
 import com.ym.mec.biz.dal.entity.Employee;
 import com.ym.mec.biz.dal.enums.EmployeeOperateEnum;
+import com.ym.mec.biz.dal.enums.ParamEnum;
 import com.ym.mec.biz.dal.page.EmployeeQueryInfo;
 import com.ym.mec.biz.dal.page.UserBasicQueryInfo;
 import com.ym.mec.biz.service.EmployeeService;
@@ -21,6 +22,7 @@ import io.swagger.annotations.ApiOperation;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.Date;
@@ -128,6 +130,16 @@ public class EmployeeController extends BaseController {
         return succeed();
     }
 
+    @ApiOperation(value = "修改员工角色")
+    @PostMapping("/updateRole")
+    @PreAuthorize("@pcs.hasPermissions('employee/updateRole')")
+    public Object updateRole(@RequestBody Employee employee) {
+        TenantContextHolder.setTenantId(employee.getTenantId());
+        employee.setUpdateTime(new Date());
+        employeeService.updateEmployeeRole(employee);
+        return succeed();
+    }
+
     @ApiOperation(value = "修改员工")
     @PostMapping("/simpleUpdate")
     @PreAuthorize("@pcs.hasPermissions('employee/simpleUpdate')")
@@ -174,11 +186,24 @@ public class EmployeeController extends BaseController {
             sysUser.setOpenBankAddress(employee.getOpenBankAddress());
             sysUser.setPostDeptIds(employee.getPostDeptIds());
             sysUser.setOrganIdList(employee.getOrganIdList());
+
+            // 默认初始密钥
+            int phoneStrLen = sysUser.getPhone().length();
+            String defaultPassword = "gym" + sysUser.getPhone().substring(phoneStrLen - 4, phoneStrLen);
+            // 密码重置标识
+            sysUser.setResetFlag(false);
+
+            String password = sysUser.getPassword();
+            if (StringUtils.isNotBlank(password)
+                    && (new BCryptPasswordEncoder().matches(ParamEnum.INIT_PASSWORD.getCode().toString(), password)
+                    || new BCryptPasswordEncoder().matches(defaultPassword, password))) {
+                sysUser.setResetFlag(true);
+            }
             
             List<SysEmployeePositionDto> sysEmployeePositionDtoList = sysEmployeePositionService.queryByUserId(sysUser.getId());
             if(sysEmployeePositionDtoList != null && sysEmployeePositionDtoList.size() > 0){
                 sysUser.setPositions(StringUtils.join(sysEmployeePositionDtoList.stream().map(SysEmployeePositionDto :: getRoleId).collect(Collectors.toSet()),","));
-            	sysUser.setPositionName(sysEmployeePositionDtoList.stream().map(SysEmployeePositionDto :: getPositionName).collect(Collectors.joining(",")));
+                sysUser.setPositionName(sysEmployeePositionDtoList.stream().map(SysEmployeePositionDto :: getPositionName).collect(Collectors.joining(",")));
             }
             return succeed(sysUser);
         }

+ 8 - 0
mec-web/src/main/java/com/ym/mec/web/controller/MusicGroupPaymentCalenderController.java

@@ -50,6 +50,14 @@ public class MusicGroupPaymentCalenderController extends BaseController {
         return succeed(musicGroupPaymentCalenderService.queryCalenderPage(queryInfo));
     }
 
+
+    @ApiOperation(value = "查询审核人")
+    @GetMapping(value = "/queryUser")
+    public Object queryUser(MusicGroupPaymentCalenderQueryInfo queryInfo) {
+        queryInfo.setOrganId(organizationService.getEmployeeOrgan(queryInfo.getOrganId()));
+        return succeed(musicGroupPaymentCalenderService.queryUser(queryInfo));
+    }
+
     @ApiOperation(value = "获取缴费信息")
     @GetMapping("/getDetail")
     @PreAuthorize("@pcs.hasPermissions('musicGroupPaymentCalender/getDetail')")

+ 6 - 0
mec-web/src/main/java/com/ym/mec/web/controller/education/EduOrganizationController.java

@@ -45,6 +45,12 @@ public class EduOrganizationController extends BaseController {
     	
     }
 
+    @ApiOperation(value = "获取管乐迷分部列表")
+    @GetMapping("/queryAll")
+    public HttpResponseResult<List<Organization>> queryAll() {
+        return succeed(organizationService.queryAll());
+    }
+
     @ApiOperation(value = "获取员工所在分部列表")
     @GetMapping("/queryEmployeeOrgan")
     public HttpResponseResult<List<Organization>> queryEmployeeOrgan() throws Exception {

+ 1 - 1
mec-web/src/main/resources/exportColumnMapper.ini

@@ -324,7 +324,7 @@ fieldColumns = ["organName","normalNum","courseConsumerNum","courseSum","courseC
 
 [云教练统计导出]
 headColumns = ["分部", "会员人数","练习人数","练习率","<10分钟","10~60分钟", "60~120分钟","120~240分钟",">=240分钟","平均练习时长(会员)","平均练习时长(练习)","练习达标占比"]
-fieldColumns = ["organName","normalNum","trainStudentNum","trainRate+'%'","train","train1","train2","train3","train4","avgTrainTime","trainAvgTrainTime","trainStandRate+'%'"]
+fieldColumns = ["organName","normalNum","trainStudentNum","trainRate+'%'","train0","train1","train2","train3","train4","avgTrainTime","trainAvgTrainTime","trainStandRate+'%'"]
 
 [云教练统计详情导出]
 headColumns = ["声部老师", "会员人数","练习人数","练习率","<60分钟", "60~120分钟","120~240分钟",">=240分钟","平均练习时长(会员)","平均练习时长(练习)","练习达标占比"]

+ 3 - 3
mec-web/src/main/resources/logback-spring.xml

@@ -80,21 +80,21 @@
 
     <!--开发环境:打印控制台 -->
     <springProfile name="dev">
-        <root level="DEBUG">
+        <root level="INFO">
             <appender-ref ref="stdout"/>
             <appender-ref ref="file"/>
         </root>
     </springProfile>
 
     <springProfile name="test">
-        <root level="DEBUG">
+        <root level="INFO">
             <appender-ref ref="stdout"/>
             <appender-ref ref="file"/>
         </root>
     </springProfile>
 
     <springProfile name="dev_server">
-        <root level="DEBUG">
+        <root level="INFO">
             <appender-ref ref="stdout"/>
             <appender-ref ref="file"/>
         </root>