You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

97 lines
4.1 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

/**
* 文件名DataInterChangeDao.java
* 创建人ye
* 创建时间2018年11月7日 下午1:06:42
*/
package com.dsideal.newUniversityExamination.selectcourse.data.dao;
import java.util.List;
import com.dsideal.newUniversityExamination.util.COMMON;
import com.jfinal.plugin.activerecord.Db;
import com.jfinal.plugin.activerecord.Record;
/**
* @描述:
* @方法名:DataInterChangeDao.java. DataInterChangeDao
* @创建人 ye
* @创建时间 2018年11月7日下午1:06:42
*/
public class DataInterChangeDao {
public static final DataInterChangeDao dao = new DataInterChangeDao();
/**
*
* @描述:更新大走班行政班id
* @方法名:DataInterChangeDao.java. updateBaseClassInfo
* @创建人 ye
* @创建时间 2018年11月7日下午2:26:39
*/
public void updateBaseClassId(String uuid){
StringBuffer sql = new StringBuffer();
sql.append(" UPDATE t_select_course_task_timetable_release a,( ");
sql.append(" SELECT class_id,class.base_class_id,ttr.uuid,f_select_course_plan_result_class(class_type) as class_type ");
sql.append(" FROM t_select_course_task_year_xq main ");
sql.append(" INNER JOIN t_select_course_task_timetable_release ttr on main.uuid=ttr.uuid ");
sql.append(" INNER JOIN t_select_core_result_class class on ttr.classId=class.class_id ");
sql.append(" WHERE ttr.uuid=? and main.is_ordinary=0");
sql.append(" GROUP BY ttr.classId ");
sql.append(" ) b ");
sql.append(" SET a.base_class_id=b.base_class_id,a.base_class_type=b.class_type ");
sql.append(" WHERE a.uuid=b.uuid and a.classid = b.class_id and b.base_class_id is not NULL ");
Db.update(sql.toString(),uuid);
}
/**
* @描述:更新非大走班行政班id
* @方法名:DataInterChangeDao.java. updateBaseClassInfo
* @创建人 ye
* @创建时间 2018年11月10日上午8:47:39
*/
public void updateReleaseBaseClassId(String uuid,List<Record> list){
StringBuffer sql = new StringBuffer();
for(Record record : list){
sql.append("UPDATE t_select_course_task_timetable_release SET base_class_id = "+String.valueOf(record.get("base_class_id"))+" , base_class_type = "+String.valueOf(record.get("base_class_type"))+" WHERE classId = "+String.valueOf(record.get("class_id"))+" and uuid='"+uuid+"';");
}
if(sql.length()<=0){
return;
}
Db.update(sql.toString());
}
/**
*
* @描述:获取发布课表班级列表
* @方法名:DataInterChangeDao.java. getClassInfo
* @创建人 ye
* @创建时间 2018年11月7日下午2:32:49
*/
public List<Record> getClassInfo(String uuid,int isOrdinary,String classType,int baseFlag){
StringBuffer sql = new StringBuffer();
sql.append(" SELECT class.class_id,ttr.base_class_id,class.class_type,ttr.type,class.class_name,ttr.roomId as room_id,ttr.uuid,class.course,"
+ "GROUP_CONCAT(DISTINCT person.person_id ORDER BY person.person_id) as personIds, GROUP_CONCAT(DISTINCT ttr.teacherId ORDER BY ttr.teacherId) as teacherIds");
sql.append(" FROM t_select_course_task_year_xq main ");
sql.append(" INNER JOIN t_select_course_task_timetable_release ttr on main.uuid=ttr.uuid and ttr.courseId > 0 ");
sql.append(" INNER JOIN t_select_core_result_class class on ttr.classId=class.class_id ");
sql.append(" INNER JOIN t_select_core_result_class_person person ON class.class_id = person.class_id and person.b_use=1 ");
sql.append(" WHERE ttr.uuid=?");
if(!COMMON.isEmpty(isOrdinary)){
sql.append(" and main.is_ordinary= "+isOrdinary+" ");
}
if(!COMMON.isEmpty(classType)){
sql.append(" and class.class_type in ("+classType+") ");
}
if(baseFlag == 1){
sql.append(" and ttr.base_class_id is null ");
}
sql.append(" GROUP BY ttr.classId ");
sql.append(" ORDER BY type desc,class_type,class.class_id ");
return Db.find(sql.toString(),uuid);
}
}