فهرست منبع

管乐迷需求迭代

zouxuan 2 سال پیش
والد
کامیت
2f953ccd4c

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

@@ -193,6 +193,11 @@ public class NewsController extends BaseController {
 			@ApiImplicitParam(name = "memo", value = "版本号",  dataType = "String") })
 	@GetMapping("/list/tree")
 	public Object listWithTree(Integer id, String memo) {
-		return succeed(sysNewsTypeService.listWithTree(id,memo));
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        Integer userId = null;
+        if(sysUser != null && sysUser.getId() != null){
+            userId = sysUser.getId();
+        }
+        return succeed(sysNewsTypeService.listWithTree(id,memo,userId));
 	}
 }

+ 1 - 1
cms/src/main/java/com/ym/mec/cms/service/SysNewsTypeService.java

@@ -13,5 +13,5 @@ public interface SysNewsTypeService extends BaseService<Integer, SysNewsType> {
 	//根据父级查询子集
 	List<SysNewsTypeTree> queryByParentId(Integer parentId);
 
-	List<SysNewsType> listWithTree(Integer id,String memo);
+	List<SysNewsType> listWithTree(Integer id,String memo,Integer userId);
 }

+ 14 - 3
cms/src/main/java/com/ym/mec/cms/service/impl/SysNewsTypeServiceImpl.java

@@ -10,11 +10,14 @@ import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.common.tenant.TenantContextHolder;
 
+import com.ym.mec.util.date.DateUtil;
+import com.ym.mec.web.WebFeignService;
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.Date;
 import java.util.Iterator;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -25,6 +28,8 @@ public class SysNewsTypeServiceImpl extends BaseServiceImpl<Integer, SysNewsType
     private SysNewsTypeDao sysNewsTypeDao;
     @Autowired
     private SysNewsInformationDao informationDao;
+    @Autowired
+    private WebFeignService webFeignService;
 
     @Override
     public BaseDAO<Integer, SysNewsType> getDAO() {
@@ -54,10 +59,10 @@ public class SysNewsTypeServiceImpl extends BaseServiceImpl<Integer, SysNewsType
         return sysNewsTypeDao.queryByParentId(parentId);
     }
 
-    public List<SysNewsType> listWithTree(Integer id, String memo) {
+    public List<SysNewsType> listWithTree(Integer id, String memo,Integer userId) {
         SysNewsType newsType = sysNewsTypeDao.get(id);
         List<SysNewsType> all = sysNewsTypeDao.findAll(null);
-
+        String startTime = DateUtil.format(DateUtil.getFirstDayOfMonth(DateUtil.addMonths(new Date(), -1)),DateUtil.ISO_EXPANDED_DATE_FORMAT);
         all.forEach(e -> {
             List<SysNewsInformation> list = informationDao.queryBySubType(e.getId(), memo);
             if (CollectionUtils.isEmpty(list)) {
@@ -69,7 +74,13 @@ public class SysNewsTypeServiceImpl extends BaseServiceImpl<Integer, SysNewsType
     			sni = iterator.next();
     			if(TenantContextHolder.getTenantId() != 1 && StringUtils.indexOf(sni.getTitle(), "商城") >= 0){
     				iterator.remove();
-    			}
+    			}else if(sni.getTitle().equals("进阶课堂")){
+                    //当前学员是否有可购买vip课
+                    sni.setRedDot(webFeignService.queryVipPracticeGroups());
+                }else if(sni.getTitle().equals("学员考勤异常")){
+                    //当前老师是否有学员考勤异常
+                    sni.setRedDot(informationDao.countStudentAttendanceError(startTime,userId));
+                }
     		}
             e.setInformationList(list);
         });

+ 1 - 1
cms/src/main/resources/config/mybatis/SysNewsInformationMapper.xml

@@ -321,7 +321,7 @@
 		LEFT JOIN student_attendance sa ON sa.course_schedule_id_ = cs.id_ AND cssp.user_id_ = sa.user_id_
 		LEFT JOIN teacher_attendance ta on ta.course_schedule_id_ = cs.id_
 		LEFT JOIN course_schedule_teacher_salary csts ON csts.course_schedule_id_ = cs.id_
-		where cs.del_flag_ = 0 AND cs.pre_course_flag_ = 0 AND csts.user_id_ = #{userId} AND cs.status_ = 'OVER' AND cs.class_date_ >= #{startTime}
+		where cs.del_flag_ = 0 AND cs.pre_course_flag_ = 0 AND csts.user_id_ = #{userId} AND cs.status_ = 'OVER' AND cs.class_date_ BETWEEN #{startTime} AND DATE(NOW())
 		AND (sa.id_ IS NULL OR (sa.status_ = 'TRUANT' AND sa.visit_flag_ = 0))
 		AND EXISTS (SELECT id_ FROM course_schedule_teacher_salary WHERE cs.id_=course_schedule_id_ AND settlement_time_ IS NULL)
 		AND (cs.new_course_id_ IS NULL OR cs.new_course_id_=cs.id_) AND cssp.id_ IS NOT NULL

+ 3 - 1
mec-teacher/src/main/java/com/ym/mec/teacher/controller/StudentController.java

@@ -47,7 +47,9 @@ public class StudentController extends BaseController {
     public Object superFindCourseSchedules(@RequestBody EndCourseScheduleQueryInfo queryInfo){
         queryInfo.setTeacherIdList(sysUserService.getUserId().toString());
         queryInfo.setSearchType("STUDENT_ERR_ATTENDANCE");
-        queryInfo.setStartTime(DateUtil.getFirstDayOfMonth(DateUtil.addMonths(new Date(), -1)));
+        Date date = new Date();
+        queryInfo.setStartTime(DateUtil.getFirstDayOfMonth(DateUtil.addMonths(date, -1)));
+        queryInfo.setStartTime(date);
         return succeed(courseScheduleService.endFindCourseSchedules(queryInfo));
     }