教培定时器
parent
9a170e4a4e
commit
383e158990
|
@ -0,0 +1,68 @@
|
|||
package com.zcloud.config;
|
||||
|
||||
import com.alibaba.druid.pool.DruidDataSource;
|
||||
import org.apache.ibatis.session.SqlSessionFactory;
|
||||
import org.mybatis.spring.SqlSessionFactoryBean;
|
||||
import org.mybatis.spring.annotation.MapperScan;
|
||||
import org.springframework.beans.factory.annotation.Qualifier;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.core.io.DefaultResourceLoader;
|
||||
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
|
||||
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
import java.sql.SQLException;
|
||||
|
||||
/**
|
||||
* 说明:第二数据源配置
|
||||
*/
|
||||
@Configuration
|
||||
@MapperScan(basePackages = No2DataSourceConfig.PACKAGE, sqlSessionFactoryRef = "no2SqlSessionFactory") //扫描 Mapper 接口并容器管理
|
||||
public class No2DataSourceConfig {
|
||||
|
||||
static final String PACKAGE = "com.zcloud.mapper.dsno2"; //master 目录
|
||||
static final String MAPPER_LOCATION = "classpath:mybatis/dsno2/*/*.xml"; //扫描的 xml 目录
|
||||
static final String CONFIG_LOCATION = "classpath:mybatis/dsno2/mybatis-config.xml"; //自定义的mybatis config 文件位置
|
||||
static final String TYPE_ALIASES_PACKAGE = "com.zcloud.entity"; //扫描的 实体类 目录
|
||||
|
||||
@Value("${datasource.no2.url}")
|
||||
private String url;
|
||||
|
||||
@Value("${datasource.no2.username}")
|
||||
private String user;
|
||||
|
||||
@Value("${datasource.no2.password}")
|
||||
private String password;
|
||||
|
||||
@Value("${datasource.no2.driver-class-name}")
|
||||
private String driverClass;
|
||||
|
||||
@Bean(name = "no2DataSource")
|
||||
public DataSource no2DataSource() throws SQLException {
|
||||
DruidDataSource dataSource = new DruidDataSource();
|
||||
dataSource.setDriverClassName(driverClass);
|
||||
dataSource.setUrl(url);
|
||||
dataSource.setUsername(user);
|
||||
dataSource.setPassword(password);
|
||||
dataSource.addFilters("stat");
|
||||
dataSource.addFilters("wall");
|
||||
return dataSource;
|
||||
}
|
||||
|
||||
@Bean(name = "no2TransactionManager")
|
||||
public DataSourceTransactionManager no2TransactionManager() throws SQLException {
|
||||
return new DataSourceTransactionManager(no2DataSource());
|
||||
}
|
||||
|
||||
@Bean(name = "no2SqlSessionFactory")
|
||||
public SqlSessionFactory no2SqlSessionFactory(@Qualifier("no2DataSource") DataSource no2DataSource)throws Exception {
|
||||
final SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
|
||||
sessionFactory.setDataSource(no2DataSource);
|
||||
sessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(No2DataSourceConfig.MAPPER_LOCATION));
|
||||
sessionFactory.setConfigLocation(new DefaultResourceLoader().getResource(No2DataSourceConfig.CONFIG_LOCATION));
|
||||
sessionFactory.setTypeAliasesPackage(No2DataSourceConfig.TYPE_ALIASES_PACKAGE);
|
||||
return sessionFactory.getObject();
|
||||
}
|
||||
}
|
|
@ -1,24 +0,0 @@
|
|||
package com.zcloud.mapper.datasource.task;
|
||||
|
||||
import com.zcloud.entity.PageData;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 说明:在线学习考试-任务
|
||||
* 作者:luoxiaobao
|
||||
* 时间:2021-12-20
|
||||
* 官网:www.zcloudchina.com
|
||||
*/
|
||||
public interface StudyTaskMapper {
|
||||
|
||||
/**绩效得分
|
||||
* @param pd
|
||||
* @throws Exception
|
||||
*/
|
||||
List<PageData> getDeptExamine(PageData pd);
|
||||
|
||||
List<PageData> getUserExamine(PageData pd);
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
package com.zcloud.mapper.dsno2.education;
|
||||
|
||||
import com.zcloud.entity.PageData;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 说明:班级管理
|
||||
* 作者:luoxiaobao
|
||||
* 时间:2022-05-26
|
||||
* 官网:www.zcloudchina.com
|
||||
*/
|
||||
public interface ClassMapper {
|
||||
|
||||
/**
|
||||
* 修改
|
||||
*
|
||||
* @param pd
|
||||
* @throws Exception
|
||||
*/
|
||||
void editState(PageData pd);
|
||||
|
||||
/**
|
||||
* 列表(全部)
|
||||
*
|
||||
* @param pd
|
||||
* @throws Exception
|
||||
*/
|
||||
List<PageData> listAllScheduled(PageData pd);
|
||||
}
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
package com.zcloud.mapper.dsno2.education;
|
||||
|
||||
import com.zcloud.entity.Page;
|
||||
import com.zcloud.entity.PageData;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 说明:阶段考试学员关系表
|
||||
* 作者:luoxiaobao
|
||||
* 时间:2021-10-08
|
||||
* 官网:www.zcloudchina.com
|
||||
*/
|
||||
public interface StageStudentRelationMapper {
|
||||
|
||||
/**
|
||||
* 修改(更新班级所有学员考试状态)
|
||||
*
|
||||
* @param
|
||||
* @throws Exception
|
||||
*/
|
||||
void updateClassStateSch(PageData pd);
|
||||
|
||||
|
||||
int getCountByCla(PageData pd);
|
||||
}
|
||||
|
|
@ -0,0 +1,84 @@
|
|||
package com.zcloud.scheduled.education;
|
||||
|
||||
import com.zcloud.entity.PageData;
|
||||
import com.zcloud.service.education.ClassService;
|
||||
import com.zcloud.service.education.StageStudentRelationService;
|
||||
import com.zcloud.util.DateUtil;
|
||||
import com.zcloud.util.Tools;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.scheduling.annotation.Scheduled;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Component
|
||||
public class ClassScheduled {
|
||||
@Autowired
|
||||
private ClassService classService;
|
||||
@Autowired
|
||||
private StageStudentRelationService stageStudentRelationService;
|
||||
|
||||
|
||||
@Scheduled(cron = "0 30 0 * * ?") // 每天晚上12:30执行
|
||||
// @Scheduled(cron ="0 0/5 * * * ?") // 测试 每5分钟执行一次
|
||||
public void scheduled() {
|
||||
try {
|
||||
PageData pd = new PageData();
|
||||
String[] STATEARRAY = new String[]{"4", "5"};
|
||||
pd.put("STATEARRAY", STATEARRAY);
|
||||
// 查询所有班级列表
|
||||
List<PageData> classList = classService.listAllScheduled(pd);
|
||||
if (classList != null && classList.size() > 0) {
|
||||
for (PageData classInfo : classList) {
|
||||
if (classInfo != null
|
||||
&& classInfo.get("TRAINTYPE") != null && Tools.notEmpty(classInfo.get("TRAINTYPE").toString())
|
||||
&& classInfo.get("START_TIME") != null
|
||||
&& classInfo.get("END_TIME") != null) {
|
||||
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
Date startTime = formatter.parse(classInfo.getString("START_TIME"));
|
||||
Date endTime = formatter.parse(classInfo.getString("END_TIME"));
|
||||
Date now = new Date();
|
||||
|
||||
if (startTime.before(now) && now.before(endTime)) {
|
||||
classInfo.put("STATE", "5");
|
||||
} else if (endTime.before(now)) {
|
||||
classInfo.put("STATE", "6");
|
||||
pd.put("CLASS_ID", classInfo.getString("CLASS_ID"));
|
||||
int count = stageStudentRelationService.getCountByCla(pd);
|
||||
PageData studyState = new PageData();
|
||||
if (count > 0) {
|
||||
studyState.put("STUDYSTATE", "6");
|
||||
studyState.put("WHERESTUDYSTATE", new String[]{"5"});
|
||||
studyState.put("OPERATOR", "1"); //修改人
|
||||
studyState.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间
|
||||
studyState.put("CLASS_ID", classInfo.get("CLASS_ID"));
|
||||
stageStudentRelationService.updateClassStateSch(studyState);
|
||||
}
|
||||
studyState.put("STUDYSTATE", "4");
|
||||
studyState.put("WHERESTUDYSTATE", new String[]{"0", "1"});
|
||||
studyState.put("OPERATOR", "1"); //修改人
|
||||
studyState.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间
|
||||
studyState.put("CLASS_ID", classInfo.get("CLASS_ID"));
|
||||
stageStudentRelationService.updateClassStateSch(studyState);
|
||||
PageData stageExamState = new PageData();
|
||||
stageExamState.put("STAGEEXAMSTATE", "4");
|
||||
stageExamState.put("WHERESTAGEEXAMSTATE", new String[]{"1"});
|
||||
stageExamState.put("OPERATOR", "1"); //修改人
|
||||
stageExamState.put("CLASS_ID", classInfo.get("CLASS_ID"));
|
||||
stageExamState.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间
|
||||
stageStudentRelationService.updateClassStateSch(stageExamState);
|
||||
|
||||
}
|
||||
classInfo.put("OPERATOR", "1"); //修改人
|
||||
classInfo.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间
|
||||
classService.editState(classInfo);
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,35 @@
|
|||
package com.zcloud.service.education;
|
||||
|
||||
import com.zcloud.entity.Page;
|
||||
import com.zcloud.entity.PageData;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 说明:班级管理
|
||||
* 作者:luoxiaobao
|
||||
* 时间:2022-05-26
|
||||
* 官网:www.zcloudchina.com
|
||||
*/
|
||||
public interface ClassService {
|
||||
|
||||
/**
|
||||
* 修改
|
||||
*
|
||||
* @param pd
|
||||
* @throws Exception
|
||||
*/
|
||||
void editState(PageData pd) throws Exception;
|
||||
|
||||
|
||||
/**
|
||||
* 列表(全部)
|
||||
*
|
||||
* @param pd
|
||||
* @throws Exception
|
||||
*/
|
||||
List<PageData> listAllScheduled(PageData pd) throws Exception;
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
package com.zcloud.service.education;
|
||||
|
||||
import com.zcloud.entity.Page;
|
||||
import com.zcloud.entity.PageData;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 说明:阶段考试学员关系表
|
||||
* 作者:luoxiaobao
|
||||
* 时间:2021-10-08
|
||||
* 官网:www.zcloudchina.com
|
||||
*/
|
||||
public interface StageStudentRelationService {
|
||||
|
||||
|
||||
/**
|
||||
* 修改(更新班级所有学员考试状态)
|
||||
*
|
||||
* @param
|
||||
* @throws Exception
|
||||
*/
|
||||
void updateClassStateSch(PageData pd) throws Exception;
|
||||
|
||||
|
||||
int getCountByCla(PageData pd);
|
||||
}
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
package com.zcloud.service.education.impl;
|
||||
|
||||
import com.zcloud.entity.PageData;
|
||||
import com.zcloud.mapper.dsno2.education.ClassMapper;
|
||||
import com.zcloud.service.education.ClassService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 说明:班级管理
|
||||
* 作者:luoxiaobao
|
||||
* 时间:2022-05-26
|
||||
* 官网:www.zcloudchina.com
|
||||
*/
|
||||
@Service
|
||||
@Transactional //开启事物
|
||||
public class ClassServiceImpl implements ClassService {
|
||||
|
||||
@Resource
|
||||
private ClassMapper classMapper;
|
||||
|
||||
|
||||
/**
|
||||
* 修改
|
||||
*
|
||||
* @param pd
|
||||
* @throws Exception
|
||||
*/
|
||||
public void editState(PageData pd) throws Exception {
|
||||
classMapper.editState(pd);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表(全部)
|
||||
*
|
||||
* @param pd
|
||||
* @throws Exception
|
||||
*/
|
||||
public List<PageData> listAllScheduled(PageData pd) throws Exception {
|
||||
return classMapper.listAllScheduled(pd);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
package com.zcloud.service.education.impl;
|
||||
|
||||
import com.zcloud.entity.PageData;
|
||||
import com.zcloud.mapper.dsno2.education.StageStudentRelationMapper;
|
||||
import com.zcloud.service.education.StageStudentRelationService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import javax.annotation.Resource;
|
||||
|
||||
/**
|
||||
* 说明:阶段考试学员关系表
|
||||
* 作者:luoxiaobao
|
||||
* 时间:2021-10-08
|
||||
* 官网:www.zcloudchina.com
|
||||
*/
|
||||
@Service
|
||||
@Transactional //开启事物
|
||||
public class StageStudentRelationServiceImpl implements StageStudentRelationService {
|
||||
|
||||
@Resource
|
||||
private StageStudentRelationMapper stagestudentrelationMapper;
|
||||
|
||||
|
||||
/**
|
||||
* 修改(更新班级所有学员考试状态)
|
||||
*
|
||||
* @param
|
||||
* @throws Exception
|
||||
*/
|
||||
@Override
|
||||
public void updateClassStateSch(PageData pd) throws Exception {
|
||||
stagestudentrelationMapper.updateClassStateSch(pd);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public int getCountByCla(PageData pd) {
|
||||
return stagestudentrelationMapper.getCountByCla(pd);
|
||||
}
|
||||
}
|
||||
|
|
@ -3,15 +3,22 @@ server.port=9099
|
|||
|
||||
#æ°æ®æº1
|
||||
datasource.no1.driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
datasource.no1.url=jdbc:mysql://192.168.0.42:3306/integrated_whb?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=utf-8
|
||||
datasource.no1.url=jdbc:mysql://192.168.0.64:3306/qa-traffic-prevention?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=utf-8
|
||||
datasource.no1.username=root
|
||||
datasource.no1.password=root
|
||||
|
||||
datasource.no2.driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
datasource.no2.url=jdbc:mysql://192.168.0.64:3306/qa-traffic-education-org?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=utf-8
|
||||
datasource.no2.username=root
|
||||
datasource.no2.password=root
|
||||
|
||||
#datasource.no1.driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
#datasource.no1.url=jdbc:mysql://39.103.211.146:33068/zcloud_prevention?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=utf-8
|
||||
#datasource.no1.username=root
|
||||
#datasource.no1.password=Mysqlzcloud88888
|
||||
|
||||
|
||||
|
||||
#druidè¿æ¥æ±
|
||||
spring.datasource.type: com.alibaba.druid.pool.DruidDataSource
|
||||
#æ大活è·æ°
|
||||
|
|
|
@ -1,169 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.zcloud.mapper.datasource.task.StudyTaskMapper">
|
||||
|
||||
<!--表名 -->
|
||||
<sql id="tableName">
|
||||
BUS_STUDYTASK
|
||||
</sql>
|
||||
|
||||
<!--数据字典表名 -->
|
||||
<sql id="dicTableName">
|
||||
SYS_DICTIONARIES
|
||||
</sql>
|
||||
|
||||
<!-- 字段 -->
|
||||
<sql id="Field">
|
||||
f.STUDY_NAME,
|
||||
f.TRAINTYPE,
|
||||
f.POSTTYPE,
|
||||
f.PEIXUE_START_TIME,
|
||||
f.PEIXUE_END_TIME,
|
||||
f.KJ_STATE,
|
||||
f.GJ_STATE,
|
||||
f.STAGEEXAMPAPER_ID,
|
||||
f.STUDY_USER_ID,
|
||||
f.STUDY_CURRICULUM_ID,
|
||||
f.CREATOR,
|
||||
f.CREATTIME,
|
||||
f.OPERATOR,
|
||||
f.OPERATTIME,
|
||||
f.ISDELETE,
|
||||
f.CORPINFO_ID,
|
||||
f.STATE,
|
||||
f.COURSEWARE_COUNT,
|
||||
f.SUM_CLASSHOUR,
|
||||
f.STUDYTASK_ID
|
||||
</sql>
|
||||
|
||||
<!-- 字段用于新增 -->
|
||||
<sql id="Field2">
|
||||
STUDY_NAME,
|
||||
TRAINTYPE,
|
||||
POSTTYPE,
|
||||
PEIXUE_START_TIME,
|
||||
PEIXUE_END_TIME,
|
||||
KJ_STATE,
|
||||
GJ_STATE,
|
||||
STAGEEXAMPAPER_ID,
|
||||
STUDY_USER_ID,
|
||||
STUDY_CURRICULUM_ID,
|
||||
CREATOR,
|
||||
CREATTIME,
|
||||
OPERATOR,
|
||||
OPERATTIME,
|
||||
ISDELETE,
|
||||
CORPINFO_ID,
|
||||
STATE,
|
||||
COURSEWARE_COUNT,
|
||||
SUM_CLASSHOUR,
|
||||
STUDYTASK_ID
|
||||
</sql>
|
||||
|
||||
<!-- 字段值 -->
|
||||
<sql id="FieldValue">
|
||||
#{STUDY_NAME},
|
||||
#{TRAINTYPE},
|
||||
#{POSTTYPE},
|
||||
#{PEIXUE_START_TIME},
|
||||
#{PEIXUE_END_TIME},
|
||||
#{KJ_STATE},
|
||||
#{GJ_STATE},
|
||||
#{STAGEEXAMPAPER_ID},
|
||||
#{STUDY_USER_ID},
|
||||
#{STUDY_CURRICULUM_ID},
|
||||
#{CREATOR},
|
||||
#{CREATTIME},
|
||||
#{OPERATOR},
|
||||
#{OPERATTIME},
|
||||
#{ISDELETE},
|
||||
#{CORPINFO_ID},
|
||||
#{STATE},
|
||||
#{COURSEWARE_COUNT},
|
||||
#{SUM_CLASSHOUR},
|
||||
#{STUDYTASK_ID}
|
||||
</sql>
|
||||
|
||||
|
||||
<!-- 绩效得分 -->
|
||||
<select id="getDeptExamine" parameterType="pd" resultType="pd" >
|
||||
SELECT
|
||||
d.DEPARTMENT_ID,
|
||||
ifnull(un.user_count,0) as user_count,
|
||||
ifnull(st.NUM,0) as st_count
|
||||
FROM
|
||||
OA_DEPARTMENT d
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
count( distinct f.USER_ID) NUM,
|
||||
u.DEPARTMENT_ID
|
||||
FROM
|
||||
bus_stagestudentrelation f
|
||||
LEFT JOIN BUS_STUDYTASK t ON t.STUDYTASK_ID = f.STUDYTASK_ID
|
||||
LEFT JOIN SYS_USER u ON u.USER_ID = f.USER_ID
|
||||
WHERE
|
||||
(
|
||||
t.PEIXUE_START_TIME BETWEEN #{STARTTIME} and #{ENDTIME}
|
||||
or
|
||||
t.PEIXUE_END_TIME BETWEEN #{STARTTIME} and #{ENDTIME}
|
||||
or
|
||||
(t.PEIXUE_START_TIME <= #{STARTTIME} and t.PEIXUE_END_TIME >= #{ENDTIME})
|
||||
)
|
||||
group by u.DEPARTMENT_ID
|
||||
) st on st.DEPARTMENT_ID=d.DEPARTMENT_ID
|
||||
LEFT JOIN
|
||||
( SELECT count( 1 ) as user_count,u.DEPARTMENT_ID FROM SYS_USER u WHERE u.ISDELETE = 0 group by u.DEPARTMENT_ID) un on un.DEPARTMENT_ID = d.DEPARTMENT_ID
|
||||
|
||||
where
|
||||
d.ISDELETE = 0
|
||||
</select>
|
||||
|
||||
<select id="getUserExamine" parameterType="pd" resultType="pd" >
|
||||
SELECT
|
||||
u.USER_ID,
|
||||
ifnull(st.NUM,0) as st_count,
|
||||
ifnull(pa.NUM,0) as pass_count
|
||||
FROM
|
||||
SYS_USER u
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
count( distinct f.USER_ID) NUM,
|
||||
f.USER_ID
|
||||
FROM
|
||||
bus_stagestudentrelation f
|
||||
LEFT JOIN BUS_STUDYTASK t ON t.STUDYTASK_ID = f.STUDYTASK_ID
|
||||
WHERE
|
||||
(
|
||||
t.PEIXUE_START_TIME BETWEEN #{STARTTIME} and #{ENDTIME}
|
||||
or
|
||||
t.PEIXUE_END_TIME BETWEEN #{STARTTIME} and #{ENDTIME}
|
||||
or
|
||||
(t.PEIXUE_START_TIME <= #{STARTTIME} and t.PEIXUE_END_TIME >= #{ENDTIME})
|
||||
)
|
||||
group by f.USER_ID
|
||||
) st on st.USER_ID=u.USER_ID
|
||||
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
count( distinct f.USER_ID) NUM,
|
||||
f.USER_ID
|
||||
FROM
|
||||
bus_stagestudentrelation f
|
||||
LEFT JOIN BUS_STUDYTASK t ON t.STUDYTASK_ID = f.STUDYTASK_ID
|
||||
LEFT JOIN BUS_STAGEEXAMPAPER p ON t.STUDYTASK_ID = p.STUDYTASK_ID
|
||||
WHERE
|
||||
(
|
||||
t.PEIXUE_START_TIME BETWEEN #{STARTTIME} and #{ENDTIME}
|
||||
or
|
||||
t.PEIXUE_END_TIME BETWEEN #{STARTTIME} and #{ENDTIME}
|
||||
or
|
||||
(t.PEIXUE_START_TIME <= #{STARTTIME} and t.PEIXUE_END_TIME >= #{ENDTIME})
|
||||
)
|
||||
and p.PASSSCORE <= f.STAGEEXAMSCORE
|
||||
group by f.USER_ID
|
||||
) pa on pa.USER_ID=u.USER_ID
|
||||
where
|
||||
u.ISDELETE = 0
|
||||
</select>
|
||||
|
||||
</mapper>
|
|
@ -0,0 +1,195 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.zcloud.mapper.dsno2.education.ClassMapper">
|
||||
|
||||
<!--表名 -->
|
||||
<sql id="tableName">
|
||||
BUS_CLASS
|
||||
</sql>
|
||||
|
||||
<!--数据字典表名 -->
|
||||
<sql id="dicTableName">
|
||||
SYS_DICTIONARIES
|
||||
</sql>
|
||||
|
||||
<!-- 字段 -->
|
||||
<sql id="Field">
|
||||
f
|
||||
.
|
||||
NAME
|
||||
,
|
||||
f.ADMIN_DIVISION,
|
||||
f.START_TIME,
|
||||
f.END_TIME,
|
||||
f.PRINCIPAL,
|
||||
f.PRINCIPAL_PHONE,
|
||||
f.TRAINTYPE,
|
||||
f.POSTTYPE,
|
||||
f.INDUSTRY_END_ID,
|
||||
f.INDUSTRY_ALL_NAME,
|
||||
f.INDUSTRY_ALL_TYPE,
|
||||
f.TRAINLEVEL,
|
||||
f.TRAINERS_NUMBER,
|
||||
f.ISSUE,
|
||||
f.EXAM_TIME,
|
||||
f.ISCHECKPERIOD,
|
||||
f.CREATOR,
|
||||
f.CREATTIME,
|
||||
f.OPERATOR,
|
||||
f.OPERATTIME,
|
||||
f.ISDELETE,
|
||||
f.CORPINFO_ID,
|
||||
f.PROVINCE,
|
||||
f.CITY,
|
||||
f.COUNTY,
|
||||
f.VILLAGE,
|
||||
f.STREET,
|
||||
f.ISQUESTIONNAIRE,
|
||||
f.SAMPLINGNUMBER,
|
||||
f.CODE,
|
||||
f.STATE,
|
||||
f.SURVEY_ID,
|
||||
f.ENTERPRISE_ID,
|
||||
f.RECORDOR,
|
||||
f.ASSESSOR,
|
||||
f.SAFETYDEPTOR,
|
||||
f.ISFACE,
|
||||
f.EXAMINATION,
|
||||
f.NUMBEROFEXAMS,
|
||||
f.CLASS_ID,
|
||||
f.ISSTRENGTHEN,
|
||||
f.RELEASE_TYPE,
|
||||
f.PERSONNEL_TYPES
|
||||
</sql>
|
||||
|
||||
<!-- 字段用于新增 -->
|
||||
<sql id="Field2">
|
||||
NAME
|
||||
,
|
||||
ADMIN_DIVISION,
|
||||
START_TIME,
|
||||
END_TIME,
|
||||
PRINCIPAL,
|
||||
PRINCIPAL_PHONE,
|
||||
TRAINTYPE,
|
||||
POSTTYPE,
|
||||
INDUSTRY_END_ID,
|
||||
INDUSTRY_ALL_NAME,
|
||||
INDUSTRY_ALL_TYPE,
|
||||
TRAINLEVEL,
|
||||
TRAINERS_NUMBER,
|
||||
ISSUE,
|
||||
EXAM_TIME,
|
||||
ISCHECKPERIOD,
|
||||
CREATOR,
|
||||
CREATTIME,
|
||||
OPERATOR,
|
||||
OPERATTIME,
|
||||
ISDELETE,
|
||||
CORPINFO_ID,
|
||||
PROVINCE,
|
||||
CITY,
|
||||
COUNTY,
|
||||
VILLAGE,
|
||||
STREET,
|
||||
ISQUESTIONNAIRE,
|
||||
SAMPLINGNUMBER,
|
||||
CODE,
|
||||
STATE,
|
||||
SURVEY_ID,ENTERPRISE_ID,
|
||||
RECORDOR,
|
||||
ASSESSOR,
|
||||
SAFETYDEPTOR,
|
||||
NUMBEROFEXAMS,
|
||||
EXAMINATION,
|
||||
ISFACE,
|
||||
CLASS_ID,
|
||||
ISSTRENGTHEN,
|
||||
RELEASE_TYPE,
|
||||
PERSONNEL_TYPES
|
||||
</sql>
|
||||
|
||||
<!-- 字段值 -->
|
||||
<sql id="FieldValue">
|
||||
#{NAME}
|
||||
,
|
||||
#{ADMIN_DIVISION},
|
||||
#{START_TIME},
|
||||
#{END_TIME},
|
||||
#{PRINCIPAL},
|
||||
#{PRINCIPAL_PHONE},
|
||||
#{TRAINTYPE},
|
||||
#{POSTTYPE},
|
||||
#{INDUSTRY_END_ID},
|
||||
#{INDUSTRY_ALL_NAME},
|
||||
#{INDUSTRY_ALL_TYPE},
|
||||
#{TRAINLEVEL},
|
||||
#{TRAINERS_NUMBER},
|
||||
#{ISSUE},
|
||||
#{EXAM_TIME},
|
||||
#{ISCHECKPERIOD},
|
||||
#{CREATOR},
|
||||
#{CREATTIME},
|
||||
#{OPERATOR},
|
||||
#{OPERATTIME},
|
||||
#{ISDELETE},
|
||||
#{CORPINFO_ID},
|
||||
#{PROVINCE},
|
||||
#{CITY},
|
||||
#{COUNTY},
|
||||
#{VILLAGE},
|
||||
#{STREET},
|
||||
#{ISQUESTIONNAIRE},
|
||||
#{SAMPLINGNUMBER},
|
||||
#{CODE},
|
||||
#{STATE},
|
||||
#{SURVEY_ID},
|
||||
#{ENTERPRISE_ID},
|
||||
#{RECORDOR},
|
||||
#{ASSESSOR},
|
||||
#{SAFETYDEPTOR},
|
||||
#{NUMBEROFEXAMS},
|
||||
#{EXAMINATION},
|
||||
#{ISFACE},
|
||||
#{CLASS_ID},
|
||||
#{ISSTRENGTHEN},
|
||||
#{RELEASE_TYPE},
|
||||
#{PERSONNEL_TYPES}
|
||||
</sql>
|
||||
|
||||
<!-- 修改 -->
|
||||
<update id="editState" parameterType="pd">
|
||||
update
|
||||
<include refid="tableName"></include>
|
||||
set
|
||||
|
||||
<if test="NEW_END_TIME != null and NEW_END_TIME != ''"><!-- 关键词检索 -->
|
||||
END_TIME = #{NEW_END_TIME},
|
||||
</if>
|
||||
STATE = #{STATE},
|
||||
OPERATOR = #{OPERATOR},
|
||||
OPERATTIME = #{OPERATTIME}
|
||||
where
|
||||
CLASS_ID = #{CLASS_ID}
|
||||
</update>
|
||||
|
||||
|
||||
<!-- 列表(全部)定时器使用 -->
|
||||
<select id="listAllScheduled" parameterType="pd" resultType="pd">
|
||||
select
|
||||
<include refid="Field"></include>
|
||||
from
|
||||
<include refid="tableName"></include>
|
||||
f
|
||||
WHERE f.ISDELETE = '0'
|
||||
<if test="STATEARRAY != null and STATEARRAY != ''">
|
||||
and f.STATE in
|
||||
<foreach item="item" index="index" collection="STATEARRAY" open="(" separator="," close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
GROUP BY
|
||||
f.CLASS_ID
|
||||
</select>
|
||||
|
||||
</mapper>
|
|
@ -0,0 +1,127 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.zcloud.mapper.dsno2.education.StageStudentRelationMapper">
|
||||
|
||||
<!--表名 -->
|
||||
<sql id="tableName">
|
||||
BUS_STAGESTUDENTRELATION
|
||||
</sql>
|
||||
|
||||
<!--数据字典表名 -->
|
||||
<sql id="dicTableName">
|
||||
SYS_DICTIONARIES
|
||||
</sql>
|
||||
|
||||
<!-- 字段 -->
|
||||
<sql id="Field">
|
||||
f
|
||||
.
|
||||
STAGESTUDENTRELATION_ID
|
||||
,
|
||||
f.STAGEEXAMPAPER_ID,
|
||||
f.USER_ID,
|
||||
f.STAGEEXAMSTATE,
|
||||
f.STAGEEXAMSCORE,
|
||||
f.CREATOR,
|
||||
f.CREATTIME,
|
||||
f.OPERATOR,
|
||||
f.OPERATTIME,
|
||||
f.ISDELETE,
|
||||
f.CORPINFO_ID,
|
||||
f.STUDYTASK_ID,
|
||||
f.COMPLETE_COURSEWARE,
|
||||
f.COMPLETE_CLASSHOUR,
|
||||
f.USER_SIGN_PATH,
|
||||
f.CLASS_ID,
|
||||
f.STUDENT_ID,
|
||||
f.PAPER_ID,
|
||||
f.STUDYSTATE
|
||||
|
||||
</sql>
|
||||
|
||||
<!-- 字段用于新增 -->
|
||||
<sql id="Field2">
|
||||
STAGESTUDENTRELATION_ID
|
||||
,
|
||||
STAGEEXAMPAPER_ID,
|
||||
USER_ID,
|
||||
STAGEEXAMSTATE,
|
||||
STAGEEXAMSCORE,
|
||||
CREATOR,
|
||||
CREATTIME,
|
||||
OPERATOR,
|
||||
OPERATTIME,
|
||||
ISDELETE,
|
||||
CORPINFO_ID,
|
||||
STUDYTASK_ID,
|
||||
COMPLETE_COURSEWARE,
|
||||
COMPLETE_CLASSHOUR,
|
||||
USER_SIGN_PATH,
|
||||
CLASS_ID,
|
||||
STUDENT_ID,
|
||||
PAPER_ID,
|
||||
STUDYSTATE
|
||||
|
||||
</sql>
|
||||
|
||||
<!-- 字段值 -->
|
||||
<sql id="FieldValue">
|
||||
#{STAGESTUDENTRELATION_ID}
|
||||
,
|
||||
#{STAGEEXAMPAPER_ID},
|
||||
#{USER_ID},
|
||||
#{STAGEEXAMSTATE},
|
||||
#{STAGEEXAMSCORE},
|
||||
#{CREATOR},
|
||||
#{CREATTIME},
|
||||
#{OPERATOR},
|
||||
#{OPERATTIME},
|
||||
#{ISDELETE},
|
||||
#{CORPINFO_ID},
|
||||
#{STUDYTASK_ID},
|
||||
#{COMPLETE_COURSEWARE},
|
||||
#{COMPLETE_CLASSHOUR},
|
||||
#{USER_SIGN_PATH},
|
||||
#{CLASS_ID},
|
||||
#{STUDENT_ID},
|
||||
#{PAPER_ID},
|
||||
#{STUDYSTATE}
|
||||
</sql>
|
||||
|
||||
<!-- 修改(更新班级所有学员考试状态) -->
|
||||
<update id="updateClassStateSch" parameterType="pd">
|
||||
update
|
||||
<include refid="tableName"></include>
|
||||
set
|
||||
<if test="STUDYSTATE!= null and STUDYSTATE != ''"><!-- 关键词检索 -->
|
||||
STUDYSTATE = #{STUDYSTATE},
|
||||
</if>
|
||||
<if test="STAGEEXAMSTATE!= null and STAGEEXAMSTATE != ''"><!-- 关键词检索 -->
|
||||
STAGEEXAMSTATE = #{STAGEEXAMSTATE},
|
||||
</if>
|
||||
OPERATOR = #{OPERATOR},
|
||||
OPERATTIME = #{OPERATTIME}
|
||||
where
|
||||
CLASS_ID = #{CLASS_ID}
|
||||
<if test="WHERESTUDYSTATE!= null and WHERESTUDYSTATE != ''"><!-- 关键词检索 -->
|
||||
and STUDYSTATE in
|
||||
<foreach item="item" index="index" collection="WHERESTUDYSTATE" open="(" separator="," close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="WHERESTAGEEXAMSTATE!= null and WHERESTAGEEXAMSTATE != ''"><!-- 关键词检索 -->
|
||||
and STAGEEXAMSTATE in
|
||||
<foreach item="item" index="index" collection="WHERESTAGEEXAMSTATE" open="(" separator="," close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
</update>
|
||||
|
||||
<select id="getCountByCla" resultType="int">
|
||||
select count(*)
|
||||
from bus_stagestudentrelation f
|
||||
where f.CLASS_ID = #{CLASS_ID}
|
||||
and f.STUDYSTATE = '5'
|
||||
and f.ISDELETE = '0'
|
||||
</select>
|
||||
</mapper>
|
|
@ -0,0 +1,21 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD SQL Map Config 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-config.dtd">
|
||||
<configuration>
|
||||
|
||||
<typeAliases>
|
||||
<typeAlias type="com.zcloud.entity.PageData" alias="pd"/>
|
||||
<typeAlias type="com.zcloud.entity.Page" alias="page"/>
|
||||
<!-- 这里添加实体类 -->
|
||||
|
||||
</typeAliases>
|
||||
|
||||
<plugins>
|
||||
<plugin interceptor="com.zcloud.plugins.PagePlugin">
|
||||
<property name="dialect" value="mysql"/>
|
||||
<property name="pageSqlId" value=".*listPage.*"/>
|
||||
</plugin>
|
||||
</plugins>
|
||||
|
||||
|
||||
</configuration>
|
Loading…
Reference in New Issue