deason 9 月之前
父節點
當前提交
083cce24ef

+ 1 - 0
src/main/java/cn/com/qmth/scancentral/entity/ExamEntity.java

@@ -37,6 +37,7 @@ public class ExamEntity extends AuditingWithoutIdEntity {
 
     private Boolean enableSyncVerify;
 
+    // 卷型条码内容(JSON字符串)
     @TableField(value = "paper_type_barcode_content", typeHandler = JacksonTypeHandler.class)
     private List<String> paperTypeBarcodeContent;
 

+ 6 - 5
src/main/java/cn/com/qmth/scancentral/service/impl/ExamServiceImpl.java

@@ -8,6 +8,7 @@ import cn.com.qmth.scancentral.entity.ExamSummaryEntity;
 import cn.com.qmth.scancentral.enums.*;
 import cn.com.qmth.scancentral.exception.ParameterExceptions;
 import cn.com.qmth.scancentral.service.*;
+import cn.com.qmth.scancentral.util.JsonMapper;
 import cn.com.qmth.scancentral.util.MathUtil;
 import cn.com.qmth.scancentral.util.PageUtil;
 import cn.com.qmth.scancentral.vo.ExamConfigVo;
@@ -23,6 +24,7 @@ import cn.com.qmth.scancentral.vo.scanexamlist.ScanExamListVo;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.qmth.boot.core.collection.PageResult;
@@ -299,15 +301,14 @@ public class ExamServiceImpl extends ServiceImpl<ExamDao, ExamEntity> implements
             throw ParameterExceptions.EXAM_NOT_FOUND;
         }
 
-        LambdaUpdateWrapper<ExamEntity> updateWrapper = new LambdaUpdateWrapper<>();
-
+        LambdaUpdateWrapper<ExamEntity> updateWrapper = Wrappers.lambdaUpdate(ExamEntity.class);
         if (config.getPaperTypeBarcodeContent() != null) {
-            updateWrapper.set(ExamEntity::getPaperTypeBarcodeContent, config.getPaperTypeBarcodeContent());
+            updateWrapper.setSql("paper_type_barcode_content = '" + new JsonMapper().toJson(config.getPaperTypeBarcodeContent()) + "'");
         }
         if (config.getImageCheckRatio() != null) {
             updateWrapper.set(ExamEntity::getImageCheckRatio, config.getImageCheckRatio());
         }
-        if (config.getImageCheckOrder() != null) {
+        if (StringUtils.isNotBlank(config.getImageCheckOrder())) {
             updateWrapper.set(ExamEntity::getImageCheckOrder, config.getImageCheckOrder());
         }
         if (config.getEnableSyncVerify() != null) {
@@ -316,7 +317,7 @@ public class ExamServiceImpl extends ServiceImpl<ExamDao, ExamEntity> implements
         if (config.getScannerAssignedMaxCount() != null) {
             updateWrapper.set(ExamEntity::getScannerAssignedMaxCount, config.getScannerAssignedMaxCount());
         }
-        if (config.getScannerAssignedVerifyPassword() != null) {
+        if (StringUtils.isNotBlank(config.getScannerAssignedVerifyPassword())) {
             updateWrapper.set(ExamEntity::getScannerAssignedVerifyPassword, config.getScannerAssignedVerifyPassword());
         }