fix: 修改任务终审列表

pull/100/head
sunchenliang 1 year ago
parent eff87e6195
commit 74117f58a8

@ -383,10 +383,10 @@ public class FlowTaskController extends BaseController {
@RequestParam(name = "izstatus", defaultValue = "", required = false) String izstatus,
@RequestParam(name = "iztaskrrom", defaultValue = "", required = false) String iztaskrrom,
@RequestParam(name = "izuptime", defaultValue = "", required = false) String izuptime,
@RequestParam(name = "isFail", defaultValue = "false", required = false) String isFail,
HttpServletRequest request) {
SearchQuery searchQuery = new SearchQuery();
if (org.springframework.util.StringUtils.hasText(izupuser)) {
// searchQuery.addEqual("fromuserid",izupuser);
if (izupuser.contains(",")) {
String[] userIds = izupuser.split(",");
List<String> arrayData = Arrays.asList(userIds);
@ -422,17 +422,22 @@ public class FlowTaskController extends BaseController {
if (izstatus.contains(",")) {
String[] statusIds = izstatus.split(","); // 以逗号拆分字符串
List<String> arrayData = Arrays.asList(statusIds);
SearchQueryForm searchQueryForm = new SearchQueryForm();
searchQuery.addIn("states", arrayData);
} else {
searchQuery.addEqual("states", izstatus);
}
}else{
if(Boolean.parseBoolean(isFail)){
searchQuery.addEqual("isFail","1");
searchQuery.addIn("states", Arrays.asList("2","3","5"));
}else{
searchQuery.addIn("states", Arrays.asList("2","3"));
}
}
if (org.springframework.util.StringUtils.hasText(iztaskrrom)) {
if (iztaskrrom.contains(",")) {
String[] taskrromIds = iztaskrrom.split(","); // 以逗号拆分字符串
List<String> arrayData = Arrays.asList(taskrromIds);
SearchQueryForm searchQueryForm = new SearchQueryForm();
searchQuery.addIn("fromsourceid", arrayData);
} else {
searchQuery.addEqual("fromsourceid", iztaskrrom);
@ -474,7 +479,7 @@ public class FlowTaskController extends BaseController {
User user = this.userService.getSessionUser(request);
if (user.isUserIsSys(xiaoyaoConfig.getWebconfig().getSysLoginUser().split(","))) {
} else {
searchQuery.addEqual("thisLoginUserid", user.getId().toString());
searchQuery.addEqual("thisLoginUserid", user.getLoginname());
searchQuery.addEqual("tenantid", tenantId);
}
String searchId = request.getParameter("searchId");

@ -497,6 +497,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
} else {
//判断节点上的描述字段是否伟finale_judgment,如果是,记录到终审表中,如果终审表已经存在,不再重复记录
if (StringUtils.isNotBlank(taskData.getDescription()) && taskData.getDescription().equals(SystemConstantsOa.OA_TASK_COMPLETE_FINALE_FORM)) {
childPicture.setIsFinal(1);
User user = userService.findByLoginname(formData.getAssignee());
userFinalService.save(user.getId().toString(), formId);
}
@ -542,6 +543,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
executions.forEach(execution -> executionIds.add(execution.getId()));
OcrTaskchildPicture taskchildPicture = ocrTaskchildPictureService.getById(Long.parseLong(formId));
taskchildPicture.setFinishtime(System.currentTimeMillis());
taskchildPicture.setIsFinal(1);
ocrTaskchildPictureService.updateById(taskchildPicture);
OcrPicture picture = ocrPictureService.getById(taskchildPicture.getPictureid());
ocrTaskchildPictureService.sendFlowTaskResult(taskchildPicture, picture, approve);
@ -979,6 +981,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
ParamterPage paramterPage = new ParamterPage();
paramterPage.setStart((pageUtils.getCurrPage() - 1) * pageUtils.getPageSize());
paramterPage.setPagesize(pageUtils.getPageSize());
Page<OcrTaskchildPicture> page = new Page<>();
if (StringUtils.isNotBlank(pageUtils.getSortname())) {
paramterPage.setSortname(pageUtils.getSortname());
@ -992,97 +995,96 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
paramterPage.setSortorder("DESC");
}
Long count = ocrTaskchildPictureService.listFinalCount(query);
query.put("page", paramterPage);
Long count = ocrTaskchildPictureService.listFinalCount(query);
List<OcrTaskchildPicture> list = ocrTaskchildPictureService.listFinal(query);
for (OcrTaskchildPicture taskchildPicture : list) {
//查询对应的流程分类
Category category = categoryService.selectDtoById(taskchildPicture.getCategoryid());
taskchildPicture.setCategoryDto(category);
if (StringUtils.isNotBlank(taskchildPicture.getProcessdefinitionid())) {
List<Task> taskList = this.nowRunTask(taskchildPicture.getProcessinstanceid(), taskchildPicture.getProcessdefinitionid());
if (null != taskList && !taskList.isEmpty()) {
taskchildPicture.setTaskId(taskList.get(0).getId());
Task tasknow = taskService.createTaskQuery().taskId(taskchildPicture.getTaskId()).singleResult();
BpmnModel bpmnModel = repositoryService.getBpmnModel(tasknow.getProcessDefinitionId());
// 获取节点定义id
String taskDefinitionKey = tasknow.getTaskDefinitionKey();
// 根据节点定义id获取节点元素
FlowElement flowElement = bpmnModel.getFlowElement(taskDefinitionKey);
if (flowElement instanceof UserTask) {
UserTask userTask = (UserTask) flowElement;
taskchildPicture.setDocumentation(userTask.getDocumentation());
}
}
//查询历史
List<HistoricTaskInstanceDto> historicTaskInstanceDtos = new ArrayList<>();
// 查询当前任务的流转信息
List<HistoricTaskInstance> taskHiInstances = historyService.createHistoricTaskInstanceQuery()
.processInstanceId(taskchildPicture.getProcessinstanceid())
.includeProcessVariables()
.orderByHistoricTaskInstanceStartTime()
.asc()
.list();
for (HistoricTaskInstance taskHiInstance : taskHiInstances) {
HistoricTaskInstanceDto dto = new HistoricTaskInstanceDto();
dto.setTaskId(taskHiInstance.getId());
dto.setTaskName(taskHiInstance.getName());
dto.setFinishTime(taskHiInstance.getEndTime());
if (taskHiInstance.getDurationInMillis() != null) {
dto.setDuration(taskHiInstance.getDurationInMillis() / 1000 + "秒");
}
dto.setTaskDefKey(taskHiInstance.getTaskDefinitionKey());
//Map<String,Object> variables = taskHiInstance.getTaskLocalVariables();
Map<String, Object> variables = taskHiInstance.getProcessVariables();
if (null != variables && null != variables.get("approvd")) {
dto.setState(variables.get("approvd").toString());
}
if (StringUtils.isNotBlank(taskHiInstance.getAssignee())) {
if (SystemConstantsOa.OA_TASK_SKIP_ASSIGINE.equals(taskHiInstance.getAssignee())) {
dto.setAssigneeName(taskHiInstance.getAssignee());
} else {
User user1 = userService.findByLoginname(taskHiInstance.getAssignee());
dto.setAssigneeName(user1.getUsername());
}
}
BpmnModel bpmnModel = repositoryService.getBpmnModel(taskchildPicture.getProcessdefinitionid());
// // 根据节点定义id获取节点元素
FlowElement flowElement = bpmnModel.getFlowElement(taskHiInstance.getTaskDefinitionKey());
if (flowElement instanceof UserTask) {
UserTask userTask = (UserTask) flowElement;
taskchildPicture.setDocumentation(userTask.getDocumentation());
}
// 还需要根据 HistoricTaskInstance 找到对应的 审批意见
List<Comment> processInstanceComments = taskService.getProcessInstanceComments(taskchildPicture.getProcessinstanceid());
for (Comment comment : processInstanceComments) {
if (comment.getTaskId().equals(taskHiInstance.getId())) {
// 审批意见
String fullMessage = comment.getFullMessage();
dto.setComment(fullMessage);
}
}
historicTaskInstanceDtos.add(dto);
}
taskchildPicture.setTransferRecords(historicTaskInstanceDtos);
}
}
// for (OcrTaskchildPicture taskchildPicture : list) {
// //查询对应的流程分类
// Category category = categoryService.selectDtoById(taskchildPicture.getCategoryid());
// taskchildPicture.setCategoryDto(category);
//
// if (StringUtils.isNotBlank(taskchildPicture.getProcessdefinitionid())) {
//
// List<Task> taskList = this.nowRunTask(taskchildPicture.getProcessinstanceid(), taskchildPicture.getProcessdefinitionid());
// if (null != taskList && !taskList.isEmpty()) {
// taskchildPicture.setTaskId(taskList.get(0).getId());
//
// Task tasknow = taskService.createTaskQuery().taskId(taskchildPicture.getTaskId()).singleResult();
// BpmnModel bpmnModel = repositoryService.getBpmnModel(tasknow.getProcessDefinitionId());
// // 获取节点定义id
// String taskDefinitionKey = tasknow.getTaskDefinitionKey();
// // 根据节点定义id获取节点元素
// FlowElement flowElement = bpmnModel.getFlowElement(taskDefinitionKey);
// if (flowElement instanceof UserTask) {
// UserTask userTask = (UserTask) flowElement;
//
// taskchildPicture.setDocumentation(userTask.getDocumentation());
// }
// }
//
// //查询历史
// List<HistoricTaskInstanceDto> historicTaskInstanceDtos = new ArrayList<>();
// // 查询当前任务的流转信息
// List<HistoricTaskInstance> taskHiInstances = historyService.createHistoricTaskInstanceQuery()
// .processInstanceId(taskchildPicture.getProcessinstanceid())
// .includeProcessVariables()
// .orderByHistoricTaskInstanceStartTime()
// .asc()
// .list();
// for (HistoricTaskInstance taskHiInstance : taskHiInstances) {
// HistoricTaskInstanceDto dto = new HistoricTaskInstanceDto();
// dto.setTaskId(taskHiInstance.getId());
// dto.setTaskName(taskHiInstance.getName());
// dto.setFinishTime(taskHiInstance.getEndTime());
// if (taskHiInstance.getDurationInMillis() != null) {
// dto.setDuration(taskHiInstance.getDurationInMillis() / 1000 + "秒");
// }
// dto.setTaskDefKey(taskHiInstance.getTaskDefinitionKey());
//
// //Map<String,Object> variables = taskHiInstance.getTaskLocalVariables();
//
// Map<String, Object> variables = taskHiInstance.getProcessVariables();
//
// if (null != variables && null != variables.get("approvd")) {
// dto.setState(variables.get("approvd").toString());
// }
//
// if (StringUtils.isNotBlank(taskHiInstance.getAssignee())) {
// if (SystemConstantsOa.OA_TASK_SKIP_ASSIGINE.equals(taskHiInstance.getAssignee())) {
// dto.setAssigneeName(taskHiInstance.getAssignee());
// } else {
// User user1 = userService.findByLoginname(taskHiInstance.getAssignee());
//
// dto.setAssigneeName(user1.getUsername());
// }
//
// }
//
// BpmnModel bpmnModel = repositoryService.getBpmnModel(taskchildPicture.getProcessdefinitionid());
//
//// // 根据节点定义id获取节点元素
// FlowElement flowElement = bpmnModel.getFlowElement(taskHiInstance.getTaskDefinitionKey());
// if (flowElement instanceof UserTask) {
// UserTask userTask = (UserTask) flowElement;
//
// taskchildPicture.setDocumentation(userTask.getDocumentation());
// }
// // 还需要根据 HistoricTaskInstance 找到对应的 审批意见
// List<Comment> processInstanceComments = taskService.getProcessInstanceComments(taskchildPicture.getProcessinstanceid());
// for (Comment comment : processInstanceComments) {
//
// if (comment.getTaskId().equals(taskHiInstance.getId())) {
// // 审批意见
// String fullMessage = comment.getFullMessage();
// dto.setComment(fullMessage);
// }
// }
// historicTaskInstanceDtos.add(dto);
// }
// taskchildPicture.setTransferRecords(historicTaskInstanceDtos);
// }
// }
pageUtils.setTotalCount(count.intValue());
pageUtils.setList(list);

@ -401,10 +401,8 @@ public class OcrTaskchildPictureController extends BaseController {
@RequestParam(name = "orderType") String orderType,
@RequestParam(name = "orderName") String orderName,
@RequestParam(name = "checkDuplicateId") String checkDuplicateId,
@RequestParam(name = "pictureId") String pictureId,
HttpServletRequest request) {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
Page<OcrTaskChildPictureVo> result = ocrTaskchildPictureService.getPackageSimilarityList(pageNo, pageSize, orderType, orderName, checkDuplicateId, pictureId,userToken);
@RequestParam(name = "pictureId") String pictureId) {
Page<OcrTaskChildPictureVo> result = ocrTaskchildPictureService.getPackageSimilarityList(pageNo, pageSize, orderType, orderName, checkDuplicateId, pictureId);
return ResultVoUtil.success(result);
}

@ -12,7 +12,5 @@ import java.util.List;
*/
@Mapper
public interface OcrPictureMybatisDao extends BaseMapper<OcrPicture> {
OcrPicture getPackagePictureInfo(@Param("packageId") String packageId, @Param("pictureId") String pictureId, @Param("userNodeType") String userNodeType);
List<OcrPicture> getPictureNodeStatesList(@Param("pictureIds") List<String> pictureIds, @Param("userNodeType") String userNodeType);
OcrPicture getPackagePictureInfo(@Param("packageId") String packageId, @Param("pictureId") String pictureId);
}

@ -25,6 +25,9 @@ public interface OcrTaskchildPictureMybatisDao extends BaseMapper<OcrTaskchildPi
*/
public List<OcrTaskchildPicture> listFinal(Map<String, Object> query);
List<OcrTaskchildPicture> listFinalTask(Map<String, Object> query);
/**
*
* @param query
@ -53,5 +56,5 @@ public interface OcrTaskchildPictureMybatisDao extends BaseMapper<OcrTaskchildPi
PictureDetailVo getPictureDetail(String pictureId);
Page<OcrTaskChildPictureVo> getPackageSimilarityList(Page<OcrTaskChildPictureVo> page, @Param("checkDuplicateId") String checkDuplicateId, @Param("pictureId") String pictureId, @Param("oderType") String oderType, @Param("oderName") String oderName, @Param("taskname") String taskname);
Page<OcrTaskChildPictureVo> getPackageSimilarityList(Page<OcrTaskChildPictureVo> page, @Param("checkDuplicateId") String checkDuplicateId, @Param("pictureId") String pictureId, @Param("oderType") String oderType, @Param("oderName") String oderName);
}

@ -203,6 +203,10 @@ public class OcrTaskchildPicture implements BaseDto, java.io.Serializable {
@TableField(value = "FINISHTIME")
private Long finishtime;
@Schema(description = "是否终审")
@TableField(value = "ISFINAIL")
private Integer isFinal;
@ApiModelProperty(value = "项目对象")
@TableField(exist = false)
private Category categoryDto;

@ -71,14 +71,6 @@ public interface OcrPictureService extends BaseService<OcrPicture> {
OcrPicture getPackagePictureInfo(String packageId, String pictureId, UserToken userToken);
/**
* id
* @param pictureIds
* @param nodeType
* @return
*/
List<OcrPicture> getPictureNodeStatesList(List<String> pictureIds,Integer nodeType);
// Long getPhotoDateTime(OcrPicture picture);
}

@ -1,6 +1,5 @@
package cn.jyjz.xiaoyao.ocr.service;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@ -17,6 +16,7 @@ import cn.jyjz.xiaoyao.ocr.vo.PictureDetailVo;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
/**
*
@ -113,6 +113,8 @@ public interface OcrTaskchildPictureService extends BaseService<OcrTaskchildPict
/**
*
*
* @param page
* @param query
* @return
*/
@ -147,7 +149,7 @@ public interface OcrTaskchildPictureService extends BaseService<OcrTaskchildPict
Page<OcrTaskChildPictureVo> getSimilarityList(Integer pageNo, Integer pageSize, String pictureId, String orderType, String orderValue, UserToken userToken);
Page<OcrTaskChildPictureVo> getPackageSimilarityList(Integer pageNo, Integer pageSize, String oderType, String oderName, String checkDuplicateId, String pictureId, UserToken userToken);
Page<OcrTaskChildPictureVo> getPackageSimilarityList(Integer pageNo, Integer pageSize, String oderType, String oderName, String checkDuplicateId, String pictureId);
void sendFlowTaskResult(OcrTaskchildPicture taskchildPicture, OcrPicture picture, FlowApprove flowApprove) throws Exception;

@ -318,22 +318,11 @@ public class OcrPictureServiceImpl extends BaseServiceImpl<OcrPictureMybatisDao,
@Override
public OcrPicture getPackagePictureInfo(String checkDuplicateId, String pictureId, UserToken userToken) {
String userNodeType = ProcessConstant.userNodeType.getOrDefault(userToken.getNodeType(), "一级审批");
OcrPicture ocrPicture = pictureMybatisDao.getPackagePictureInfo(checkDuplicateId,pictureId,userNodeType);
OcrPicture ocrPicture = pictureMybatisDao.getPackagePictureInfo(checkDuplicateId,pictureId);
ocrPicture.getPictureInfo().setCreateTime(ocrPicture.getPhotoDateTimestamp());
return ocrPicture;
}
@Override
public List<OcrPicture> getPictureNodeStatesList(List<String> pictureIds, Integer nodeType) {
String userNodeType = ProcessConstant.userNodeType.getOrDefault(nodeType, "一级审批");
return pictureMybatisDao.getPictureNodeStatesList(pictureIds,userNodeType);
}
// @Override
// public Long getPhotoDateTime(OcrPicture picture) {
// long timestamp = 0L;

@ -1,8 +1,6 @@
package cn.jyjz.xiaoyao.ocr.service.impl;
import cn.hutool.core.map.MapBuilder;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.http.HttpUtil;
import cn.jyjz.flowable.common.ProcessConstant;
import cn.jyjz.flowable.common.SystemConstantsOa;
import cn.jyjz.flowable.domain.vo.FlowModelVO;
@ -42,9 +40,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.flowable.bpmn.model.FlowElement;
import org.flowable.bpmn.model.UserTask;
import org.flowable.engine.history.HistoricProcessInstance;
import org.flowable.task.api.Task;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpStatus;
@ -608,12 +603,13 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl<OcrTaskchild
/**
*
*
* @param page
* @param query
* @return
*/
public List<OcrTaskchildPicture> listFinal(Map<String, Object> query) {
return this.ocrtaskchildpicturemybatisdao.listFinal(query);
return this.ocrtaskchildpicturemybatisdao.listFinalTask(query);
}
@ -725,11 +721,9 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl<OcrTaskchild
}
@Override
public Page<OcrTaskChildPictureVo> getPackageSimilarityList(Integer pageNo, Integer pageSize, String oderType, String oderName, String checkDuplicateId, String pictureId, UserToken userToken) {
public Page<OcrTaskChildPictureVo> getPackageSimilarityList(Integer pageNo, Integer pageSize, String oderType, String oderName, String checkDuplicateId, String pictureId) {
Page<OcrTaskChildPictureVo> page = new Page<>(pageNo, pageSize);
String userNodeType = ProcessConstant.userNodeType.getOrDefault(userToken.getNodeType(), "一级审批");
return ocrtaskchildpicturemybatisdao.getPackageSimilarityList(page, checkDuplicateId, pictureId, oderType, oderName, userNodeType);
return ocrtaskchildpicturemybatisdao.getPackageSimilarityList(page, checkDuplicateId, pictureId, oderType, oderName);
}
@Override

@ -226,12 +226,18 @@
</sql>
<select id="getPackagePictureInfo" resultMap="BaseResultMap">
SELECT t2.*,t3.*,ifnull(t5.STATSHIS, 1) historyStates,t4.STATES,t4.TASKID,t4.ID taskchildId
SELECT t2.*,t3.*,t4.STATES,t4.TASKID,t4.ID taskchildId,
COALESCE(
(SELECT t5.STATSHIS
FROM oa_userapprove_t t5
WHERE t5.FORMID = t4.ID
ORDER BY t5.CREATEDATE DESC
LIMIT 1),
1) AS historyStates
FROM ocr_check_duplicate_result t1
LEFT JOIN ocr_picture t2 ON t1.picture_id = t2.ID
left join ocr_picture_info t3 on t2.ID=t3.picture_id
left join ocr_taskchild_picture t4 on t2.ID=t4.PICTUREID
left join oa_userapprove_t t5 on t4.ID=t5.FORMID and t5.TASKNAME = '${userNodeType}'
where t1.check_duplicate_id = #{packageId}
<if test="pictureId != null and pictureId != ''">
and t1.picture_id = #{pictureId}
@ -240,16 +246,4 @@
LIMIT 1
</select>
<select id="getPictureNodeStatesList" resultType="cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture">
SELECT t1.*,
ifnull(t3.STATSHIS, 1) historyStates
FROM ocr_picture t1
LEFT JOIN ocr_taskchild_picture t2
on t1.ID = t2.PICTUREID
LEFT JOIN oa_userapprove_t t3 on t2.ID = t3.FORMID and t3.TASKNAME = '${userNodeType}'
where t1.ID in
<foreach collection="pictureIds" open="(" close=")" item="item" separator="," index="index">
#{item}
</foreach>
</select>
</mapper>

@ -186,6 +186,8 @@
and OCPICTUREID ${ocpictureid.dataOp} ${ocpictureid.likestar}#{ocpictureid.value}${ocpictureid.likeend}
</if>
<if test="pictureresult != null">
@ -307,8 +309,6 @@
</if>
<if test="ocpictureid != null">
and tcp.OCPICTUREID ${ocpictureid.dataOp} ${ocpictureid.likestar}#{ocpictureid.value}${ocpictureid.likeend}
</if>
<if test="pictureresult != null">
@ -525,21 +525,22 @@
</if>
${izproject.likeend}
</if>
<!-- <if test="izuptime != null">-->
<!-- ${izuptime.rulesOp} tcp.FROMUPTIME ${izuptime.dataOp} ${izuptime.likestar}#{izuptime.value}${izuptime.likeend}-->
<!-- </if>-->
<!-- <if test="izuptimeStart != null">-->
<!-- and tcp.FROMUPTIME &gt;= '${izuptimeStart.value}'-->
<!-- </if>-->
<!-- <if test="izuptimeEnd != null">-->
<!-- and tcp.FROMUPTIME &lt;= '${izuptimeEnd.value}'-->
<!-- </if>-->
<!-- <if test="izuptime != null">-->
<!-- ${izuptime.rulesOp} tcp.FROMUPTIME ${izuptime.dataOp} ${izuptime.likestar}#{izuptime.value}${izuptime.likeend}-->
<!-- </if>-->
<!-- <if test="izuptimeStart != null">-->
<!-- and tcp.FROMUPTIME &gt;= '${izuptimeStart.value}'-->
<!-- </if>-->
<!-- <if test="izuptimeEnd != null">-->
<!-- and tcp.FROMUPTIME &lt;= '${izuptimeEnd.value}'-->
<!-- </if>-->
<if test="izuptimeStart != null">
<!-- 如果 izuptimeStart.dataOp 的值为 "<",则使用 "or" 连接 -->
<choose>
<when test="izuptimeStart.rulesOp == 'or' || izuptimeEnd.rulesOp=='or'">
<when test="izuptimeStart.rulesOp == 'or' || izuptimeEnd.rulesOp == 'or'">
<if test="izuptimeEnd != null">
and (tcp.FROMUPTIME ${izuptimeStart.dataOp} '${izuptimeStart.value}' or tcp.FROMUPTIME ${izuptimeEnd.dataOp} '${izuptimeEnd.value}')
and (tcp.FROMUPTIME ${izuptimeStart.dataOp} '${izuptimeStart.value}'
or tcp.FROMUPTIME ${izuptimeEnd.dataOp} '${izuptimeEnd.value}')
</if>
</when>
<otherwise>
@ -594,28 +595,22 @@
</if>
</select>
<select id="listFinalCount" resultType="java.lang.Long" parameterType="java.util.Map">
select count(tcp.ID) from (
select tc.*
from ocr_taskchild_picture tc,
OA_USERFINAL_T uf,
ocr_picture p
where tc.ID = uf.FORMID
and p.ID = tc.PICTUREID
and p.suspiciousfile = 0
<if test="thisLoginUserid != null">
and uf.USERID ${thisLoginUserid.dataOp} ${thisLoginUserid.likestar}#{thisLoginUserid.value}${thisLoginUserid.likeend}
</if>
UNION
select
tc.*
from ocr_taskchild_picture tc
where tc.STATES = 5
) as tcp
select count(1)
from ocr_taskchild_picture tcp
left join ocr_picture pic
on tcp.PICTUREID = pic.ID
<include refid="Base_Where_union">
</include>
and tcp.ISFINAIL = 1
and pic.suspiciousfile = 0
<if test="thisLoginUserid != null and isFail ==null">
and tcp.ASSIGNEE ${thisLoginUserid.dataOp} ${thisLoginUserid.likestar}#{thisLoginUserid.value}${thisLoginUserid.likeend}
</if>
<if test="thisLoginUserid != null and isFail !=null">
and (tcp.ASSIGNEE ${thisLoginUserid.dataOp} ${thisLoginUserid.likestar}#{thisLoginUserid.value}${thisLoginUserid.likeend}
or tcp.STATES = 5)
</if>
<if test="fromuptimeStart != null">
and tcp.fromuptime &gt;= ${fromuptimeStart}
</if>
@ -628,54 +623,43 @@
parameterType="java.util.Map">
select tcp.* from (
select tc.*,
uf.COMMENTHIS,
uf.TASKNAME as TASKNAMEHIS,
uf.STATSHIS,
uf.TASKINDEX,
uf.TASKNO,
uf.COMMENTHIS,
uf.TASKNAME as TASKNAMEHIS,
uf.STATSHIS,
uf.TASKINDEX,
uf.TASKNO,
op.field6 as fromCustomerLevel,
op.field6 as fromCustomerLevel,
op.releaseArea as fromCity,
op.is_repeat
from ocr_taskchild_picture tc
LEFT JOIN OA_USERAPPROVE_T uf ON tc.ID = uf.ID
left join ocr_picture op on tc.PICTUREID = op.ID
LEFT JOIN OA_USERAPPROVE_T uf ON tc.ID = uf.ID
left join ocr_picture op on tc.PICTUREID = op.ID
where tc.ASSIGNEE = #{searchassignee}
and tc.TENANTID = #{searchtenantid}
and tc.STATES = 2
and op.suspiciousfile = 0
<if test="izApprovalStatus != null ">
and tc.TENANTID = #{searchtenantid}
and tc.STATES = 2
and op.suspiciousfile = 0
<if test="izApprovalStatus != null">
${izApprovalStatus.rulesOp}
(
#{izApprovalStatus.value} ${izApprovalStatus.dataOp} COALESCE(uf.STATSHIS, 1)
)
( #{izApprovalStatus.value} ${izApprovalStatus.dataOp} COALESCE (uf.STATSHIS
, 1)
)
</if>
UNION
select tc.*,
uf.COMMENTHIS,
uf.TASKNAME as TASKNAMEHIS,
uf.STATSHIS,
uf.TASKINDEX,
uf.TASKNO,
op.field6 as fromCustomerLevel,
op.releaseArea as fromCity,
op.is_repeat
from ocr_taskchild_picture tc,
OA_USERAPPROVE_T uf,
ocr_picture op
select tc.*, uf.COMMENTHIS, uf.TASKNAME as TASKNAMEHIS, uf.STATSHIS, uf.TASKINDEX, uf.TASKNO, op.field6 as fromCustomerLevel, op.releaseArea as fromCity, op.is_repeat
from ocr_taskchild_picture tc, OA_USERAPPROVE_T uf, ocr_picture op
where tc.ID = uf.FORMID
and tc.PICTUREID = op.ID
and op.suspiciousfile = 0
and tc.TENANTID = #{searchtenantid}
and tc.PICTUREID = op.ID
and op.suspiciousfile = 0
and tc.TENANTID = #{searchtenantid}
<if test="thisLoginUserid != null">
and uf.USERID = #{thisLoginUserid}
</if>
<if test="izApprovalStatus != null ">
<if test="izApprovalStatus != null">
${izApprovalStatus.rulesOp}
(
#{izApprovalStatus.value} ${izApprovalStatus.dataOp} COALESCE(uf.STATSHIS, 1)
)
( #{izApprovalStatus.value} ${izApprovalStatus.dataOp} COALESCE (uf.STATSHIS
, 1)
)
</if>
) as tcp
<include refid="Base_Where_union">
@ -694,22 +678,22 @@
select tc.*
from ocr_taskchild_picture tc
where tc.ASSIGNEE = #{searchassignee}
and tc.TENANTID = #{searchtenantid}
and tc.STATES = 2
and tc.TENANTID = #{searchtenantid}
and tc.STATES = 2
UNION
select tc.*
from ocr_taskchild_picture tc,
OA_USERAPPROVE_T uf
OA_USERAPPROVE_T uf
where tc.ID = uf.FORMID
and tc.TENANTID = #{searchtenantid}
and tc.TENANTID = #{searchtenantid}
<if test="thisLoginUserid != null">
and uf.USERID = #{thisLoginUserid}
</if>
<if test="izApprovalStatus != null ">
<if test="izApprovalStatus != null">
${izApprovalStatus.rulesOp}
(
#{izApprovalStatus.value} ${izApprovalStatus.dataOp} COALESCE(uf.STATSHIS, 1)
)
( #{izApprovalStatus.value} ${izApprovalStatus.dataOp} COALESCE (uf.STATSHIS
, 1)
)
</if>
) as tcp
<include refid="Base_Where_union">
@ -837,44 +821,48 @@
<select id="getPackageSimilarityList" resultType="cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo">
SELECT distinct t3.ID id,
t3.PICTUREID pictureId,
t3.STATES states,
t3.PROCESSINSTANCEID processInstanceId,
t3.PROCESSDEFINITIONID processDefinitionId,
t3.DEPLOYMENTID deploymentId,
t3.ASSIGNEENAME assigneeName,
t3.ASSIGNEE assignee,
t3.FILEANNEX fileAnnex,
t3.GUIDANG guiDang,
t3.CREATEUSER createUser,
t3.CREATEUSERNAME createUserName,
t3.CREATEDATE createDate,
t3.USERID userId,
t3.USERNAME userName,
t3.FROMTASKID fromTaskId,
t3.FROMTASKNAME fromTaskName,
t3.FROMUSERID fromUserId,
t3.FROMPROJECTID fromProjectId,
t3.FROMPLANID fromPlanId,
t3.FROMUPTIME fromupTime,
t3.FROMSOURCEID fromSourceId,
t3.HAVEPOINTS havePoints,
t3.TASKNAME taskName,
t3.FROMUSERNAME fromUserName,
t3.FROMPROJECTNAME fromProjectName,
t3.FINISHTIME finishTime,
t3.TASKID taskId,
t2.imgUrl,
t2.submit_date_timestamp submitDateTimestamp,
t2.photo_date_timestamp photoDateTimestamp,
t2.server_thumbnail_url serverThumbnailUrl,
t1.max_similarity maxSimilarity,
ifnull(t4.STATSHIS, 1) historyStates,
t1.check_duplicate_id
t3.PICTUREID pictureId,
t3.STATES states,
t3.PROCESSINSTANCEID processInstanceId,
t3.PROCESSDEFINITIONID processDefinitionId,
t3.DEPLOYMENTID deploymentId,
t3.ASSIGNEENAME assigneeName,
t3.ASSIGNEE assignee,
t3.FILEANNEX fileAnnex,
t3.GUIDANG guiDang,
t3.CREATEUSER createUser,
t3.CREATEUSERNAME createUserName,
t3.CREATEDATE createDate,
t3.USERID userId,
t3.USERNAME userName,
t3.FROMTASKID fromTaskId,
t3.FROMTASKNAME fromTaskName,
t3.FROMUSERID fromUserId,
t3.FROMPROJECTID fromProjectId,
t3.FROMPLANID fromPlanId,
t3.FROMUPTIME fromupTime,
t3.FROMSOURCEID fromSourceId,
t3.HAVEPOINTS havePoints,
t3.TASKNAME taskName,
t3.FROMUSERNAME fromUserName,
t3.FROMPROJECTNAME fromProjectName,
t3.FINISHTIME finishTime,
t3.TASKID taskId,
t2.imgUrl,
t2.submit_date_timestamp submitDateTimestamp,
t2.photo_date_timestamp photoDateTimestamp,
t2.server_thumbnail_url serverThumbnailUrl,
t1.max_similarity maxSimilarity,
COALESCE(
(SELECT t4.STATSHIS
FROM oa_userapprove_t t4
WHERE t4.FORMID = t3.ID
ORDER BY t4.CREATEDATE DESC
LIMIT 1), 1) AS historyStates,
t1.check_duplicate_id
FROM ocr_check_duplicate_result t1
LEFT JOIN ocr_picture t2 ON t1.picture_id = t2.ID
LEFT JOIN ocr_taskchild_picture t3 ON t2.ID = t3.PICTUREID
LEFT JOIN oa_userapprove_t t4 ON t3.ID = t4.FORMID and t4.TASKNAME = '${taskname}'
left join ocr_picture_info t5 on t2.ID = t5.picture_id
WHERE t1.check_duplicate_id = #{checkDuplicateId}
and t2.suspiciousfile = 0
@ -932,4 +920,41 @@
#{item}
</foreach>
</select>
<select id="listFinalTask" resultType="cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture"
parameterType="java.util.Map">
select tcp.*, pic.field11 reporttime, pic.similarity_score similarityscore
from ocr_taskchild_picture tcp
left join ocr_picture pic
on tcp.PICTUREID = pic.ID
<include refid="Base_Where_union">
</include>
and tcp.ISFINAIL = 1
and pic.suspiciousfile = 0
<if test="thisLoginUserid != null and isFail ==null">
and tcp.ASSIGNEE ${thisLoginUserid.dataOp} ${thisLoginUserid.likestar}#{thisLoginUserid.value}${thisLoginUserid.likeend}
</if>
<if test="thisLoginUserid != null and isFail !=null">
and (tcp.ASSIGNEE ${thisLoginUserid.dataOp} ${thisLoginUserid.likestar}#{thisLoginUserid.value}${thisLoginUserid.likeend}
or tcp.STATES = 5)
</if>
<if test="fromuptimeStart != null">
and tcp.fromuptime &gt;= ${fromuptimeStart}
</if>
<if test="fromuptimeEnd != null">
and tcp.fromuptime &lt;= ${fromuptimeEnd}
</if>
<if test="page != null">
<if test="page.sortname != null">
<if test="page.sortname == 'states'">
order by tcp.${page.sortname} ${page.sortorder}
</if>
<if test="page.sortname != 'states'">
order by pic.${page.sortname} ${page.sortorder}
</if>
</if>
limit ${page.start}, ${page.Pagesize}
</if>
</select>
</mapper>

Loading…
Cancel
Save