Browse Source

Merge branch 'master' of http://101.36.160.140:21044/delivery-warehouse-java/delivery-depot-admin into liuj_pc_dev

liujing-123 2 weeks ago
parent
commit
b24b5cf8d0

+ 29 - 0
delivery-framework/delivery-spring-boot-starter-web/src/main/java/com/unis/framework/jackson/core/databind/StringLocalDateTimeSerializer.java

@@ -0,0 +1,29 @@
1
+package com.unis.framework.jackson.core.databind;
2
+
3
+import com.fasterxml.jackson.core.JsonGenerator;
4
+import com.fasterxml.jackson.databind.JsonSerializer;
5
+import com.fasterxml.jackson.databind.SerializerProvider;
6
+
7
+import java.io.IOException;
8
+import java.time.LocalDateTime;
9
+import java.time.format.DateTimeFormatter;
10
+
11
+import static com.unis.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
12
+
13
+/**
14
+ * 自定义序列化器:
15
+ *  LocalDateTime类型对象返回给前端时,返回的时间格式为:yyyy-MM-dd HH:mm:ss
16
+ *  应用:在需要转换的字段上添加:@JsonSerialize(using = CustomLocalDateTimeSerializer.class) // 使用自定义序列化器
17
+ */
18
+public class StringLocalDateTimeSerializer extends JsonSerializer<LocalDateTime> {
19
+    private static final DateTimeFormatter formatter = DateTimeFormatter.ofPattern(FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND);
20
+
21
+    @Override
22
+    public void serialize(LocalDateTime value, JsonGenerator gen, SerializerProvider serializers) throws IOException {
23
+        if (value != null) {
24
+            gen.writeString(value.format(formatter));
25
+        } else {
26
+            gen.writeNull();
27
+        }
28
+    }
29
+}

+ 1 - 1
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/controller/admin/task/TaskController.java

@@ -88,7 +88,7 @@ public class TaskController {
88
 
88
 
89
     @PostMapping("/setDkxxByKqId")
89
     @PostMapping("/setDkxxByKqId")
90
     @Operation(summary = "打卡(传 id 是变更(传图片),不传 id 是新增")
90
     @Operation(summary = "打卡(传 id 是变更(传图片),不传 id 是新增")
91
-    public CommonResult<Boolean> setDkxxByKqId(@RequestBody TaskDkxxSaveVO saveVO) {
91
+    public CommonResult<TaskDkxxRespVO> setDkxxByKqId(@RequestBody TaskDkxxSaveVO saveVO) {
92
         return success(taskService.setDkxxByKqId(saveVO));
92
         return success(taskService.setDkxxByKqId(saveVO));
93
     }
93
     }
94
 
94
 

+ 3 - 0
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/controller/admin/task/vo/TaskDkxxRespVO.java

@@ -1,6 +1,8 @@
1
 package com.unis.module.coding.controller.admin.task.vo;
1
 package com.unis.module.coding.controller.admin.task.vo;
2
 
2
 
3
 import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
3
 import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
4
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
5
+import com.unis.framework.jackson.core.databind.StringLocalDateTimeSerializer;
4
 import io.swagger.v3.oas.annotations.media.Schema;
6
 import io.swagger.v3.oas.annotations.media.Schema;
5
 import lombok.Data;
7
 import lombok.Data;
6
 
8
 
@@ -21,6 +23,7 @@ public class TaskDkxxRespVO {
21
     private Long userId;
23
     private Long userId;
22
 
24
 
23
     @Schema(description = "打卡时间")
25
     @Schema(description = "打卡时间")
26
+    @JsonSerialize(using = StringLocalDateTimeSerializer.class) // 使用自定义序列化器
24
     private LocalDateTime dksj;
27
     private LocalDateTime dksj;
25
 
28
 
26
     @Schema(description = "打卡地点")
29
     @Schema(description = "打卡地点")

+ 1 - 1
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/service/task/TaskService.java

@@ -29,7 +29,7 @@ public interface TaskService {
29
 
29
 
30
     TaskDkxxRespVO getDkxxByKqId(TaskPageReqVO reqVO);
30
     TaskDkxxRespVO getDkxxByKqId(TaskPageReqVO reqVO);
31
 
31
 
32
-    Boolean setDkxxByKqId(TaskDkxxSaveVO saveVO);
32
+    TaskDkxxRespVO setDkxxByKqId(TaskDkxxSaveVO saveVO);
33
 
33
 
34
     Boolean getStoreroom(TaskPageReqVO reqVO);
34
     Boolean getStoreroom(TaskPageReqVO reqVO);
35
 
35
 

+ 37 - 26
delivery-module-core/delivery-module-core-biz/src/main/java/com/unis/module/coding/service/task/TaskServiceImpl.java

@@ -39,6 +39,7 @@ import org.springframework.transaction.annotation.Transactional;
39
 import org.springframework.validation.annotation.Validated;
39
 import org.springframework.validation.annotation.Validated;
40
 
40
 
41
 import javax.annotation.Resource;
41
 import javax.annotation.Resource;
42
+import java.time.LocalDateTime;
42
 import java.util.ArrayList;
43
 import java.util.ArrayList;
43
 import java.util.List;
44
 import java.util.List;
44
 import java.util.Set;
45
 import java.util.Set;
@@ -83,9 +84,7 @@ public class TaskServiceImpl implements TaskService {
83
         addParamDeptIds(pageReqVO);
84
         addParamDeptIds(pageReqVO);
84
 
85
 
85
         IPage<TaskRespVO> page = new Page<>(pageReqVO.getPageNo(), pageReqVO.getPageSize());
86
         IPage<TaskRespVO> page = new Page<>(pageReqVO.getPageNo(), pageReqVO.getPageSize());
86
-        dkMapper.getTaskList(page, pageReqVO);
87
-
88
-        return page;
87
+        return dkMapper.getTaskList(page, pageReqVO);
89
     }
88
     }
90
 
89
 
91
     @Override
90
     @Override
@@ -118,7 +117,6 @@ public class TaskServiceImpl implements TaskService {
118
     public Boolean getTasks(TaskPageReqVO reqVO) {
117
     public Boolean getTasks(TaskPageReqVO reqVO) {
119
 
118
 
120
         //校验是登录人可选的任务
119
         //校验是登录人可选的任务
121
-        reqVO.setListType(TaskPageReqVO.LIST_TYPE_TASK1);
122
         verifyTask(reqVO);
120
         verifyTask(reqVO);
123
 
121
 
124
         Long loginUserId = SecurityFrameworkUtils.getLoginUserIdNotNull();
122
         Long loginUserId = SecurityFrameworkUtils.getLoginUserIdNotNull();
@@ -130,7 +128,7 @@ public class TaskServiceImpl implements TaskService {
130
         if(roleCodes.contains(RoleCodeEnum.PROVINCIAL_VERIFICATION_PERSONNEL.getCode())) {
128
         if(roleCodes.contains(RoleCodeEnum.PROVINCIAL_VERIFICATION_PERSONNEL.getCode())) {
131
             reqVO.getKqIds().forEach(kqId -> {
129
             reqVO.getKqIds().forEach(kqId -> {
132
                 ProvinceDO provinceDO = new ProvinceDO()
130
                 ProvinceDO provinceDO = new ProvinceDO()
133
-                        .setHyState(reqVO.getHyState() == null ? DeliveryHyState.WAIT_HY.getCode() : reqVO.getHyState())
131
+                        .setHyState(reqVO.getHyState())
134
                         .setHyryId(SecurityFrameworkUtils.getLoginUserId())
132
                         .setHyryId(SecurityFrameworkUtils.getLoginUserId())
135
                         .setHyryName(SecurityFrameworkUtils.getLoginUserNickname());
133
                         .setHyryName(SecurityFrameworkUtils.getLoginUserNickname());
136
                 provinceMapper.updateByKqId(provinceDO, kqId);
134
                 provinceMapper.updateByKqId(provinceDO, kqId);
@@ -140,7 +138,7 @@ public class TaskServiceImpl implements TaskService {
140
         if(roleCodes.contains(RoleCodeEnum.BANK_VERIFICATION_PERSONNEL.getCode())) {
138
         if(roleCodes.contains(RoleCodeEnum.BANK_VERIFICATION_PERSONNEL.getCode())) {
141
             reqVO.getKqIds().forEach(kqId -> {
139
             reqVO.getKqIds().forEach(kqId -> {
142
                 BankDO bankDO = new BankDO()
140
                 BankDO bankDO = new BankDO()
143
-                        .setHyState(reqVO.getHyState() == null ? DeliveryHyState.WAIT_HY.getCode() : reqVO.getHyState())
141
+                        .setHyState(reqVO.getHyState())
144
                         .setHyryId(SecurityFrameworkUtils.getLoginUserId())
142
                         .setHyryId(SecurityFrameworkUtils.getLoginUserId())
145
                         .setHyryName(SecurityFrameworkUtils.getLoginUserNickname());
143
                         .setHyryName(SecurityFrameworkUtils.getLoginUserNickname());
146
                 bankMapper.updateByKqId(bankDO, kqId);
144
                 bankMapper.updateByKqId(bankDO, kqId);
@@ -254,37 +252,45 @@ public class TaskServiceImpl implements TaskService {
254
         return BeanUtils.toBean(dkDO, TaskDkxxRespVO.class);
252
         return BeanUtils.toBean(dkDO, TaskDkxxRespVO.class);
255
     }
253
     }
256
 
254
 
255
+    /**
256
+     * 打卡(传 id 是变更(传图片),不传 id 是新增
257
+     * @param saveVO 打卡对象
258
+     * @return 结果
259
+     */
257
     @Override
260
     @Override
258
     @Transactional(rollbackFor = Exception.class)
261
     @Transactional(rollbackFor = Exception.class)
259
-    public Boolean setDkxxByKqId(TaskDkxxSaveVO saveVO) {
262
+    public TaskDkxxRespVO setDkxxByKqId(TaskDkxxSaveVO saveVO) {
260
 
263
 
261
         if(ObjectUtils.isEmpty(saveVO) || ObjectUtils.isEmpty(saveVO.getKqId())) {
264
         if(ObjectUtils.isEmpty(saveVO) || ObjectUtils.isEmpty(saveVO.getKqId())) {
262
             throw exception(ErrorCodeConstants.APP_PARAM_ERROR);
265
             throw exception(ErrorCodeConstants.APP_PARAM_ERROR);
263
         }
266
         }
264
-        Long loginUserId = SecurityFrameworkUtils.getLoginUserId();
267
+        Long loginUserId = SecurityFrameworkUtils.getLoginUserIdNotNull();
265
         DkDO dkDO = dkMapper.selectByKqIdAndUserId(saveVO.getKqId(), loginUserId);
268
         DkDO dkDO = dkMapper.selectByKqIdAndUserId(saveVO.getKqId(), loginUserId);
269
+        synchronized (loginUserId){ //上锁 避免重复提交
270
+            if(ObjectUtils.isEmpty(saveVO.getId())) {
271
+                if(ObjectUtils.isNotEmpty(dkDO)) {
272
+                    throw exception(ErrorCodeConstants.APP_TASK_RECEIVE_ERROR_RETRY);
273
+                }
266
 
274
 
267
-        if(ObjectUtils.isEmpty(saveVO.getId())) {
268
-            if(ObjectUtils.isNotEmpty(dkDO)) {
269
-                throw exception(ErrorCodeConstants.APP_TASK_RECEIVE_ERROR_RETRY);
270
-            }
271
-
272
-            // 查询登录人角色标识,填充[打卡类型]
273
-            setDkType(saveVO, loginUserId);
275
+                // 查询登录人角色标识,填充[打卡类型]
276
+                setDkType(saveVO, loginUserId);
274
 
277
 
275
-            //新增
276
-            DkDO saveDo = getDkDO(saveVO, loginUserId);
277
-            dkMapper.insert(saveDo);
278
-        } else {
279
-            //变更
280
-            if(ObjectUtils.isNotEmpty(dkDO) && dkDO.getId().equals(saveVO.getId())) {
281
-                dkMapper.updateById(BeanUtils.toBean(saveVO, DkDO.class));
278
+                //新增
279
+                DkDO saveDo = getDkDO(saveVO, loginUserId);
280
+                dkMapper.insert(saveDo);
281
+                return BeanUtils.toBean(saveDo, TaskDkxxRespVO.class); //返回打卡对象
282
             } else {
282
             } else {
283
-                throw exception(ErrorCodeConstants.APP_PARAM_ERROR);
283
+                //变更
284
+                if(ObjectUtils.isNotEmpty(dkDO) && dkDO.getId().equals(saveVO.getId())) {
285
+                    DkDO updateDo = BeanUtils.toBean(saveVO, DkDO.class);
286
+                    updateDo.setDksj(LocalDateTime.now());
287
+                    dkMapper.updateById(updateDo);
288
+                    return BeanUtils.toBean(updateDo, TaskDkxxRespVO.class);
289
+                } else {
290
+                    throw exception(ErrorCodeConstants.APP_PARAM_ERROR);
291
+                }
284
             }
292
             }
285
         }
293
         }
286
-
287
-        return null;
288
     }
294
     }
289
 
295
 
290
     @Override
296
     @Override
@@ -319,6 +325,7 @@ public class TaskServiceImpl implements TaskService {
319
         DkDO saveDo = BeanUtils.toBean(saveVO, DkDO.class);
325
         DkDO saveDo = BeanUtils.toBean(saveVO, DkDO.class);
320
         saveDo.setId(YitIdHelper.nextId());// 雪花id
326
         saveDo.setId(YitIdHelper.nextId());// 雪花id
321
         saveDo.setUserId(loginUserId);
327
         saveDo.setUserId(loginUserId);
328
+        saveDo.setDksj(LocalDateTime.now());
322
         return saveDo;
329
         return saveDo;
323
     }
330
     }
324
 
331
 
@@ -335,6 +342,10 @@ public class TaskServiceImpl implements TaskService {
335
     }
342
     }
336
 
343
 
337
     private void verifyTask(TaskPageReqVO reqVO) {
344
     private void verifyTask(TaskPageReqVO reqVO) {
345
+        if(reqVO.getKqIds() == null || reqVO.getKqIds().isEmpty()
346
+                || reqVO.getHyState() == null || reqVO.getListType() == null){
347
+            throw exception(ErrorCodeConstants.APP_PARAM_ERROR);
348
+        }
338
 
349
 
339
         TaskPageReqVO pageReqVO = new TaskPageReqVO();
350
         TaskPageReqVO pageReqVO = new TaskPageReqVO();
340
         pageReqVO.setKqIds(reqVO.getKqIds());
351
         pageReqVO.setKqIds(reqVO.getKqIds());
@@ -343,7 +354,7 @@ public class TaskServiceImpl implements TaskService {
343
 
354
 
344
         IPage<TaskRespVO> taskList = getTaskList(pageReqVO);
355
         IPage<TaskRespVO> taskList = getTaskList(pageReqVO);
345
 
356
 
346
-        if(taskList.getTotal() != reqVO.getKqIds().size()) {
357
+        if(taskList.getRecords().size() != reqVO.getKqIds().size()) {
347
             throw exception(ErrorCodeConstants.APP_TASK_RECEIVE_ERROR);
358
             throw exception(ErrorCodeConstants.APP_TASK_RECEIVE_ERROR);
348
         }
359
         }
349
     }
360
     }

+ 0 - 8
delivery-module-core/delivery-module-core-biz/src/main/resources/mapper/dk/DkMapper.xml

@@ -1,15 +1,7 @@
1
 <?xml version="1.0" encoding="UTF-8"?>
1
 <?xml version="1.0" encoding="UTF-8"?>
2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
-<!--suppress SqlNoDataSourceInspection -->
4
 <mapper namespace="com.unis.module.coding.dal.mysql.dk.DkMapper">
3
 <mapper namespace="com.unis.module.coding.dal.mysql.dk.DkMapper">
5
 
4
 
6
-    <!--
7
-        一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
8
-        无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
9
-        代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
10
-        文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
11
-     -->
12
-
13
     <select id="getTaskList" resultType="com.unis.module.coding.controller.admin.task.vo.TaskRespVO">
5
     <select id="getTaskList" resultType="com.unis.module.coding.controller.admin.task.vo.TaskRespVO">
14
         SELECT
6
         SELECT
15
             dk.ID AS kqId,
7
             dk.ID AS kqId,

+ 49 - 17
delivery-module-core/delivery-module-core-biz/src/main/resources/mapper/dwxx/DwxxMapper.xml

@@ -65,17 +65,28 @@
65
         <where>
65
         <where>
66
             cd.bz is null
66
             cd.bz is null
67
             and cd.qyxz!='10'
67
             and cd.qyxz!='10'
68
-            and cd.DELETED=0   and (t1.cfnum!=0   or  t2.yxcfnum!=0)
68
+            and cd.DELETED=0
69
+            <choose>
70
+                <when test=" (pageReqVO.cflx!=null and pageReqVO.cflx!='')
71
+                         or (pageReqVO.cfzt!=null and pageReqVO.cfzt!='')
72
+                         or (pageReqVO.cfStart!=null and pageReqVO.cfStart !='')
73
+                         or (pageReqVO.cfEnd!=null and pageReqVO.cfEnd !='') ">
74
+                    and t1.cfnum !=0
75
+                </when>
76
+                <otherwise>
77
+                   and  (t1.cfnum !=0  or t2.yxcfnum !=0)
78
+                </otherwise>
79
+            </choose>
69
             <if test="pageReqVO.areaCode!=null and pageReqVO.areaCode!=''">
80
             <if test="pageReqVO.areaCode!=null and pageReqVO.areaCode!=''">
70
                 and ck.xzqhdm like #{pageReqVO.areaCode}
81
                 and ck.xzqhdm like #{pageReqVO.areaCode}
71
             </if>
82
             </if>
72
-            <if test="pageReqVO.kqStart!=null and pageReqVO.kqStart!='' and pageReqVO.kqEnd!=null and pageReqVO.kqEnd!=''">
73
-                and t1.sjcrNum between #{pageReqVO.kqStart} and #{pageReqVO.kqEnd}
83
+            <if test="pageReqVO.kqStart!=null and pageReqVO.kqEnd!=null ">
84
+                and IFNULL(t1.sjcrNum, 0)between #{pageReqVO.kqStart} and #{pageReqVO.kqEnd}
74
             </if>
85
             </if>
75
-            <if test="pageReqVO.kqStart!=null and pageReqVO.kqStart!='' and (pageReqVO.kqEnd==null or pageReqVO.kqEnd=='')">
86
+            <if test="pageReqVO.kqStart!=null  and pageReqVO.kqEnd==null ">
76
                 and t1.sjcrNum <![CDATA[>=]]>  #{pageReqVO.kqStart}
87
                 and t1.sjcrNum <![CDATA[>=]]>  #{pageReqVO.kqStart}
77
             </if>
88
             </if>
78
-            <if test="(pageReqVO.kqStart==null or pageReqVO.kqStart=='') and pageReqVO.kqEnd!=null and pageReqVO.kqEnd!=''">
89
+            <if test="pageReqVO.kqStart==null  and pageReqVO.kqEnd!=null ">
79
                 and t1.sjcrNum <![CDATA[<=]]>  #{pageReqVO.kqEnd}
90
                 and t1.sjcrNum <![CDATA[<=]]>  #{pageReqVO.kqEnd}
80
             </if>           
91
             </if>           
81
             <if test="pageReqVO.dwmc!=null and pageReqVO.dwmc!=''">
92
             <if test="pageReqVO.dwmc!=null and pageReqVO.dwmc!=''">
@@ -115,7 +126,7 @@
115
                     <if test="pageReqVO.cfzt!=null and pageReqVO.cfzt!=''">
126
                     <if test="pageReqVO.cfzt!=null and pageReqVO.cfzt!=''">
116
                         and cc.CAZT=#{pageReqVO.cfzt}
127
                         and cc.CAZT=#{pageReqVO.cfzt}
117
                     </if>
128
                     </if>
118
-                    <if test="pageReqVO.cfStart!=null and cfStart.cfStart!='' and pageReqVO.cfEnd!=null and pageReqVO.cfEnd!=''">
129
+                    <if test="pageReqVO.cfStart!=null and pageReqVO.cfStart!='' and pageReqVO.cfEnd!=null and pageReqVO.cfEnd!=''">
119
                         and cc.SJCR between #{pageReqVO.cfStart} and #{pageReqVO.cfEnd}
130
                         and cc.SJCR between #{pageReqVO.cfStart} and #{pageReqVO.cfEnd}
120
                     </if>
131
                     </if>
121
                     <if test="(pageReqVO.cfStart == null or pageReqVO.cfStart == '') and pageReqVO.cfEnd != null and pageReqVO.cfEnd != ''">
132
                     <if test="(pageReqVO.cfStart == null or pageReqVO.cfStart == '') and pageReqVO.cfEnd != null and pageReqVO.cfEnd != ''">
@@ -139,13 +150,24 @@
139
         <where>
150
         <where>
140
             cd.qyxz!='10'
151
             cd.qyxz!='10'
141
             and cd.DELETED=0
152
             and cd.DELETED=0
142
-            <if test="pageReqVO.kqStart!=null and pageReqVO.kqStart!='' and pageReqVO.kqEnd!=null and pageReqVO.kqEnd!=''">
143
-                and t1.sjcrNum between #{pageReqVO.kqStart} and #{pageReqVO.kqEnd}
153
+            <choose>
154
+                <when test=" (pageReqVO.cflx!=null and pageReqVO.cflx!='')
155
+                         or (pageReqVO.cfzt!=null and pageReqVO.cfzt!='')
156
+                         or (pageReqVO.cfStart!=null and pageReqVO.cfStart !='')
157
+                         or (pageReqVO.cfEnd!=null and pageReqVO.cfEnd !='') ">
158
+                    and t1.cfnum !=0
159
+                </when>
160
+                <otherwise>
161
+                   and  (t1.cfnum !=0  or t2.yxcfnum !=0)
162
+                </otherwise>
163
+            </choose>
164
+            <if test="pageReqVO.kqStart!=null  and pageReqVO.kqEnd!=null">
165
+                and IFNULL(t1.sjcrNum, 0) between #{pageReqVO.kqStart} and #{pageReqVO.kqEnd}
144
             </if>
166
             </if>
145
-            <if test="pageReqVO.kqStart!=null and pageReqVO.kqStart!='' and (pageReqVO.kqEnd==null or pageReqVO.kqEnd=='')">
167
+            <if test="pageReqVO.kqStart!=null  and pageReqVO.kqEnd==null">
146
                 and t1.sjcrNum <![CDATA[>=]]>  #{pageReqVO.kqStart}
168
                 and t1.sjcrNum <![CDATA[>=]]>  #{pageReqVO.kqStart}
147
             </if>
169
             </if>
148
-            <if test="(pageReqVO.kqStart==null or pageReqVO.kqStart=='') and pageReqVO.kqEnd!=null and pageReqVO.kqEnd!=''">
170
+            <if test="pageReqVO.kqStart==null  and pageReqVO.kqEnd!=null">
149
                 and t1.sjcrNum <![CDATA[<=]]>  #{pageReqVO.kqEnd}
171
                 and t1.sjcrNum <![CDATA[<=]]>  #{pageReqVO.kqEnd}
150
             </if>
172
             </if>
151
             <if test="pageReqVO.dwmc!=null and pageReqVO.dwmc!=''">
173
             <if test="pageReqVO.dwmc!=null and pageReqVO.dwmc!=''">
@@ -246,13 +268,24 @@
246
         ) t3 on t3.KQ_ID=ck.id
268
         ) t3 on t3.KQ_ID=ck.id
247
         <where>
269
         <where>
248
             cd.qyxz!='10' and cd.DELETED=0
270
             cd.qyxz!='10' and cd.DELETED=0
249
-            <if test="pageReqVO.kqStart!=null and pageReqVO.kqStart!='' and pageReqVO.kqEnd!=null and pageReqVO.kqEnd!=''">
250
-                and t1.sjcrNum between #{pageReqVO.kqStart} and #{pageReqVO.kqEnd}
271
+            <choose>
272
+                <when test=" (pageReqVO.cflx!=null and pageReqVO.cflx!='')
273
+                         or (pageReqVO.cfzt!=null and pageReqVO.cfzt!='')
274
+                         or (pageReqVO.cfStart!=null and pageReqVO.cfStart !='')
275
+                         or (pageReqVO.cfEnd!=null and pageReqVO.cfEnd !='') ">
276
+                    and t1.cfnum !=0
277
+                </when>
278
+                <otherwise>
279
+                   and  (t1.cfnum !=0  or t3.yxcfnum !=0)
280
+                </otherwise>
281
+            </choose>
282
+            <if test="pageReqVO.kqStart!=null and pageReqVO.kqEnd!=null">
283
+                and IFNULL(t1.sjcrNum, 0) between #{pageReqVO.kqStart} and #{pageReqVO.kqEnd}
251
             </if>
284
             </if>
252
-            <if test="pageReqVO.kqStart!=null and pageReqVO.kqStart!='' and (pageReqVO.kqEnd==null or pageReqVO.kqEnd=='')">
285
+            <if test="pageReqVO.kqStart!=null and pageReqVO.kqEnd==null ">
253
                 and t1.sjcrNum <![CDATA[>=]]>  #{pageReqVO.kqStart}
286
                 and t1.sjcrNum <![CDATA[>=]]>  #{pageReqVO.kqStart}
254
             </if>
287
             </if>
255
-            <if test="(pageReqVO.kqStart==null or pageReqVO.kqStart=='') and pageReqVO.kqEnd!=null and pageReqVO.kqEnd!=''">
288
+            <if test="pageReqVO.kqStart==null  and pageReqVO.kqEnd!=null">
256
                 and t1.sjcrNum <![CDATA[<=]]>  #{pageReqVO.kqEnd}
289
                 and t1.sjcrNum <![CDATA[<=]]>  #{pageReqVO.kqEnd}
257
             </if>
290
             </if>
258
             <if test="pageReqVO.dwmc!=null and pageReqVO.dwmc!=''">
291
             <if test="pageReqVO.dwmc!=null and pageReqVO.dwmc!=''">
@@ -276,10 +309,9 @@
276
                 cc.ID  ,
309
                 cc.ID  ,
277
                 cc.KQMC,
310
                 cc.KQMC,
278
                 cc.CAMC,
311
                 cc.CAMC,
279
-
312
+                cc.CAZT,
280
                 cc.CFLX,
313
                 cc.CFLX,
281
-                TRUNC(cc.SJCR)  sjcr,
282
-                cc.SJCR
314
+                TRUNC(cc.SJCR)  sjcr
283
         from  CODING_CAXX cc
315
         from  CODING_CAXX cc
284
         join CODING_FMXX cf on cc.id=cf.BASE_CAXX_ID
316
         join CODING_FMXX cf on cc.id=cf.BASE_CAXX_ID
285
         <where>
317
         <where>