Selaa lähdekoodia

加入根据平台动态设置txt的编码

wangliang 2 vuotta sitten
vanhempi
commit
0daa7ab870

+ 1 - 1
distributed-print-business/src/main/resources/db/install/teachcloud_db.sql

@@ -2870,7 +2870,7 @@ INSERT INTO `sys_config` VALUES (36, NULL, NULL, 'sms.audit.overdue.code', '审
 INSERT INTO `sys_config` VALUES (37, NULL, NULL, 'sms.audit.reject.code', '审核驳回通知', 'SMS_237206063', NULL, 1, 14, 1, NULL, NULL, NULL);
 INSERT INTO `sys_config` VALUES (38, NULL, NULL, 'sms.upload.structure.code', '试卷结构推送通知', 'SMS_237201068', NULL, 1, 15, 1, NULL, NULL, NULL);
 INSERT INTO `sys_config` VALUES (39, NULL, NULL, 'sms.audit.copy.user.code', '用户', 'SMS_237206065', NULL, 1, 16, 1, NULL, NULL, NULL);
-INSERT INTO `sys_config` VALUES (40, NULL, NULL, 'sys.txt.charset', 'txt文件编码', 'utf8', NULL, 1, 1, 1, NULL, NULL, NULL);
+INSERT INTO `sys_config` VALUES (40, NULL, NULL, 'sys.txt.charset', 'txt文件编码', 'UTF-8', NULL, 1, 1, 1, NULL, NULL, NULL);
 
 INSERT INTO `sys_role` VALUES (1, NULL, NULL, '系统管理员', 1, 'ADMIN', NULL, NULL, NULL, NULL, 1, NULL, NULL);
 INSERT INTO `sys_role` VALUES (2, NULL, NULL, '教务处老师', 1, 'OFFICE_TEACHER', NULL, NULL, NULL, NULL, 1, 'ANALYSIS', '系统内置');

+ 4 - 1
distributed-print-business/src/main/resources/db/upgrade/3.2.5/1、升级3.2.5数据库修改脚本.sql

@@ -53,4 +53,7 @@ ALTER TABLE exam_student MODIFY COLUMN student_code varchar(100) NOT NULL COMMEN
 ALTER TABLE exam_student MODIFY COLUMN student_name varchar(100) NOT NULL COMMENT '考生姓名';
 ALTER TABLE sys_user MODIFY COLUMN code varchar(100) NULL COMMENT '工号';
 ALTER TABLE basic_course MODIFY COLUMN code varchar(100) NOT NULL COMMENT '课程编码';
-ALTER TABLE sys_user MODIFY COLUMN mobile_number varchar(30) NULL COMMENT '手机号';
+ALTER TABLE sys_user MODIFY COLUMN mobile_number varchar(30) NULL COMMENT '手机号';
+
+ALTER TABLE `exam_task_sync`
+    ADD COLUMN `paper_type` VARCHAR(10) NULL COMMENT '试卷类型' AFTER `paper_number`;

+ 5 - 1
distributed-print-business/src/main/resources/db/upgrade/3.2.5/2、升级3.2.5数据修改脚本.sql

@@ -56,4 +56,8 @@ where t.type = 'CUSTOM' and t.card_rule_id is null and t.id > 0;
 
 insert into exam_detail_course_paper_type select id + cast(FLOOR(RAND()*10000000000000) as signed), id, paper_type from exam_detail_course where paper_type is not null and id>0;
 
-INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('874', '共用接口-查询学院', '/api/admin/basic/condition/list_college', 'URL', '149', '14', 'SYS', '1', '1', '1');
+INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('874', '共用接口-查询学院', '/api/admin/basic/condition/list_college', 'URL', '149', '14', 'SYS', '1', '1', '1');
+
+UPDATE sys_config
+SET config_value='UTF-8'
+WHERE config_key='sys.txt.charset';

+ 12 - 4
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/SysConfigServiceImpl.java

@@ -13,6 +13,7 @@ import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
 import javax.annotation.Resource;
+import java.nio.charset.StandardCharsets;
 import java.util.List;
 import java.util.Objects;
 
@@ -56,10 +57,17 @@ public class SysConfigServiceImpl extends ServiceImpl<SysConfigMapper, SysConfig
             sysConfigList = this.list(sysConfigQueryWrapper);
             if (!CollectionUtils.isEmpty(sysConfigList)) {
                 for (SysConfig s : sysConfigList) {
-                    if (s.getConfigKey().contains(SystemConstant.SYS_CONFIG_KEY_CHARSETS) && Objects.nonNull(platform) && platform.contains(SystemConstant.WINDOWS)) {
-                        if (!Objects.equals(s.getConfigValue(), SystemConstant.CHARSET_GBK)) {
-                            s.setConfigValue(SystemConstant.CHARSET_GBK);
-                            this.updateById(s);
+                    if (s.getConfigKey().contains(SystemConstant.SYS_CONFIG_KEY_CHARSETS)) {
+                        if (Objects.nonNull(platform) && platform.contains(SystemConstant.WINDOWS)) {
+                            if (!Objects.equals(s.getConfigValue(), SystemConstant.CHARSET_GBK)) {
+                                s.setConfigValue(SystemConstant.CHARSET_GBK);
+                                this.updateById(s);
+                            }
+                        } else {
+                            if (!Objects.equals(s.getConfigValue(), StandardCharsets.UTF_8.toString())) {
+                                s.setConfigValue(StandardCharsets.UTF_8.toString());
+                                this.updateById(s);
+                            }
                         }
                     }
                     commonCacheService.updateSysConfigCacheForDb(s.getConfigKey(), s);