diff --git a/src/main/java/com/zcloud/config/No2DataSourceConfig.java b/src/main/java/com/zcloud/config/No2DataSourceConfig.java new file mode 100644 index 0000000..fa5aa1c --- /dev/null +++ b/src/main/java/com/zcloud/config/No2DataSourceConfig.java @@ -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(); + } +} diff --git a/src/main/java/com/zcloud/mapper/datasource/task/StudyTaskMapper.java b/src/main/java/com/zcloud/mapper/datasource/task/StudyTaskMapper.java deleted file mode 100644 index c227187..0000000 --- a/src/main/java/com/zcloud/mapper/datasource/task/StudyTaskMapper.java +++ /dev/null @@ -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 getDeptExamine(PageData pd); - - List getUserExamine(PageData pd); - -} - diff --git a/src/main/java/com/zcloud/mapper/dsno2/education/ClassMapper.java b/src/main/java/com/zcloud/mapper/dsno2/education/ClassMapper.java new file mode 100644 index 0000000..363ef76 --- /dev/null +++ b/src/main/java/com/zcloud/mapper/dsno2/education/ClassMapper.java @@ -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 listAllScheduled(PageData pd); +} + diff --git a/src/main/java/com/zcloud/mapper/dsno2/education/StageStudentRelationMapper.java b/src/main/java/com/zcloud/mapper/dsno2/education/StageStudentRelationMapper.java new file mode 100644 index 0000000..f4f802e --- /dev/null +++ b/src/main/java/com/zcloud/mapper/dsno2/education/StageStudentRelationMapper.java @@ -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); +} + diff --git a/src/main/java/com/zcloud/scheduled/education/ClassScheduled.java b/src/main/java/com/zcloud/scheduled/education/ClassScheduled.java new file mode 100644 index 0000000..2326858 --- /dev/null +++ b/src/main/java/com/zcloud/scheduled/education/ClassScheduled.java @@ -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 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(); + } + } +} diff --git a/src/main/java/com/zcloud/service/education/ClassService.java b/src/main/java/com/zcloud/service/education/ClassService.java new file mode 100644 index 0000000..ed903ad --- /dev/null +++ b/src/main/java/com/zcloud/service/education/ClassService.java @@ -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 listAllScheduled(PageData pd) throws Exception; + +} + + diff --git a/src/main/java/com/zcloud/service/education/StageStudentRelationService.java b/src/main/java/com/zcloud/service/education/StageStudentRelationService.java new file mode 100644 index 0000000..3705e41 --- /dev/null +++ b/src/main/java/com/zcloud/service/education/StageStudentRelationService.java @@ -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); +} + diff --git a/src/main/java/com/zcloud/service/education/impl/ClassServiceImpl.java b/src/main/java/com/zcloud/service/education/impl/ClassServiceImpl.java new file mode 100644 index 0000000..a94b565 --- /dev/null +++ b/src/main/java/com/zcloud/service/education/impl/ClassServiceImpl.java @@ -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 listAllScheduled(PageData pd) throws Exception { + return classMapper.listAllScheduled(pd); + } + +} + diff --git a/src/main/java/com/zcloud/service/education/impl/StageStudentRelationServiceImpl.java b/src/main/java/com/zcloud/service/education/impl/StageStudentRelationServiceImpl.java new file mode 100644 index 0000000..a907c4d --- /dev/null +++ b/src/main/java/com/zcloud/service/education/impl/StageStudentRelationServiceImpl.java @@ -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); + } +} + diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 6f556a2..9210cae 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -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 #最大活跃数 diff --git a/src/main/resources/mybatis/datasource/task/StudyTaskMapper.xml b/src/main/resources/mybatis/datasource/task/StudyTaskMapper.xml deleted file mode 100644 index 721b8cd..0000000 --- a/src/main/resources/mybatis/datasource/task/StudyTaskMapper.xml +++ /dev/null @@ -1,169 +0,0 @@ - - - - - - - BUS_STUDYTASK - - - - - SYS_DICTIONARIES - - - - - 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 - - - - - 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 - - - - - #{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} - - - - - - - - - diff --git a/src/main/resources/mybatis/dsno2/education/ClassMapper.xml b/src/main/resources/mybatis/dsno2/education/ClassMapper.xml new file mode 100644 index 0000000..a1d881c --- /dev/null +++ b/src/main/resources/mybatis/dsno2/education/ClassMapper.xml @@ -0,0 +1,195 @@ + + + + + + + BUS_CLASS + + + + + SYS_DICTIONARIES + + + + + 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 + + + + + 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 + + + + + #{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} + + + + + update + + set + + + END_TIME = #{NEW_END_TIME}, + + STATE = #{STATE}, + OPERATOR = #{OPERATOR}, + OPERATTIME = #{OPERATTIME} + where + CLASS_ID = #{CLASS_ID} + + + + + + + diff --git a/src/main/resources/mybatis/dsno2/education/StageStudentRelationMapper.xml b/src/main/resources/mybatis/dsno2/education/StageStudentRelationMapper.xml new file mode 100644 index 0000000..23ef782 --- /dev/null +++ b/src/main/resources/mybatis/dsno2/education/StageStudentRelationMapper.xml @@ -0,0 +1,127 @@ + + + + + + + BUS_STAGESTUDENTRELATION + + + + + SYS_DICTIONARIES + + + + + 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 + + + + + + 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 + + + + + + #{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} + + + + + update + + set + + STUDYSTATE = #{STUDYSTATE}, + + + STAGEEXAMSTATE = #{STAGEEXAMSTATE}, + + OPERATOR = #{OPERATOR}, + OPERATTIME = #{OPERATTIME} + where + CLASS_ID = #{CLASS_ID} + + and STUDYSTATE in + + #{item} + + + + and STAGEEXAMSTATE in + + #{item} + + + + + + diff --git a/src/main/resources/mybatis/dsno2/mybatis-config.xml b/src/main/resources/mybatis/dsno2/mybatis-config.xml new file mode 100644 index 0000000..205a966 --- /dev/null +++ b/src/main/resources/mybatis/dsno2/mybatis-config.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + +