工单及审批相关接口修改

pull/2/head
sunchenliang 1 year ago
parent 712bb593bb
commit 142dc2c080

@ -16,6 +16,7 @@ import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture;
import cn.jyjz.xiaoyao.ocr.service.OcrPictureService; import cn.jyjz.xiaoyao.ocr.service.OcrPictureService;
import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService; import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService;
import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@ -376,7 +377,7 @@ public class OcrTaskchildPictureController extends BaseController {
@ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true) @ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true)
}) })
@GetMapping("/getSimilarityList") @GetMapping("/getSimilarityList")
public ResultVo<IPage<OcrTaskchildPicture>> getSimilarityList(HttpServletRequest request) { public ResultVo<IPage<OcrTaskChildPictureVo>> getSimilarityList(HttpServletRequest request) {
//获取页码、当前页 //获取页码、当前页
String pageNo = request.getParameter("pageNo"); String pageNo = request.getParameter("pageNo");
String pageSize = request.getParameter("pageSize"); String pageSize = request.getParameter("pageSize");
@ -396,7 +397,7 @@ public class OcrTaskchildPictureController extends BaseController {
String orderType = request.getParameter("orderType"); String orderType = request.getParameter("orderType");
//排序字段 //排序字段
String orderValue = request.getParameter("orderName"); String orderValue = request.getParameter("orderName");
Page<OcrTaskchildPicture> similarityList = ocrTaskchildPictureService.getSimilarityList(Integer.valueOf(pageNo), Integer.valueOf(pageSize), pictureId, orderType, orderValue); Page<OcrTaskChildPictureVo> similarityList = ocrTaskchildPictureService.getSimilarityList(Integer.valueOf(pageNo), Integer.valueOf(pageSize), pictureId, orderType, orderValue);
return ResultVoUtil.success(similarityList); return ResultVoUtil.success(similarityList);
} }
@ -414,7 +415,7 @@ public class OcrTaskchildPictureController extends BaseController {
@RequestParam(name = "checkDuplicateId") String checkDuplicateId, @RequestParam(name = "checkDuplicateId") String checkDuplicateId,
@RequestParam(name = "pictureId", required = false) String pictureId, @RequestParam(name = "pictureId", required = false) String pictureId,
HttpServletRequest req) { HttpServletRequest req) {
Page<OcrTaskchildPicture> result = ocrTaskchildPictureService.getPackageSimilarityList(pageNo, pageSize, orderType, orderName, checkDuplicateId, pictureId); Page<OcrTaskChildPictureVo> result = ocrTaskchildPictureService.getPackageSimilarityList(pageNo, pageSize, orderType, orderName, checkDuplicateId, pictureId);
return ResultVoUtil.success(result); return ResultVoUtil.success(result);
} }

@ -3,6 +3,7 @@ package cn.jyjz.xiaoyao.ocr.dataDao;
import cn.jyjz.xiaoyao.oa.from.vo.FlowUnionVo; import cn.jyjz.xiaoyao.oa.from.vo.FlowUnionVo;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPictureAppro; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPictureAppro;
import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo;
import cn.jyjz.xiaoyao.ocr.vo.PictureDetailVo; import cn.jyjz.xiaoyao.ocr.vo.PictureDetailVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@ -48,9 +49,9 @@ public interface OcrTaskchildPictureMybatisDao extends BaseMapper<OcrTaskchildPi
String selectocpicture(@Param("tenantid")String tenantid,@Param("packageid")String packageid,@Param("id")String id); String selectocpicture(@Param("tenantid")String tenantid,@Param("packageid")String packageid,@Param("id")String id);
List<OcrTaskchildPicture> getPictureHistoryList(@Param("pictureIds") List<String> pictureIds, @Param("taskname") String taskname); List<OcrTaskChildPictureVo> getPictureHistoryList(@Param("pictureIds") List<String> pictureIds, @Param("taskname") String taskname);
PictureDetailVo getPictureDetail(String pictureId); PictureDetailVo getPictureDetail(String pictureId);
Page<OcrTaskchildPicture> getPackageSimilarityList(Page<OcrTaskchildPicture> page, @Param("checkDuplicateId") String checkDuplicateId, @Param("pictureId") String pictureId, @Param("oderType") String oderType, @Param("oderName") String oderName); Page<OcrTaskChildPictureVo> getPackageSimilarityList(Page<OcrTaskChildPictureVo> page, @Param("checkDuplicateId") String checkDuplicateId, @Param("pictureId") String pictureId, @Param("oderType") String oderType, @Param("oderName") String oderName);
} }

@ -10,6 +10,7 @@ import cn.jyjz.xiaoyao.common.mybatisplus.base.BaseService;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture; import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPictureAppro; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPictureAppro;
import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo;
import cn.jyjz.xiaoyao.ocr.vo.PictureDetailVo; import cn.jyjz.xiaoyao.ocr.vo.PictureDetailVo;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
@ -138,12 +139,12 @@ public interface OcrTaskchildPictureService extends BaseService<OcrTaskchildPict
public Long listmytaskCount(Map<String, Object> query); public Long listmytaskCount(Map<String, Object> query);
List<OcrTaskchildPicture> getPictureHistoryList(List<String> pictureIds, String taskname); List<OcrTaskChildPictureVo> getPictureHistoryList(List<String> pictureIds, String taskname);
PictureDetailVo getPictureDetail(String pictureId, UserToken userToken); PictureDetailVo getPictureDetail(String pictureId, UserToken userToken);
Page<OcrTaskchildPicture> getSimilarityList(Integer pageNo, Integer pageSize, String pictureId, String orderType, String orderValue); Page<OcrTaskChildPictureVo> getSimilarityList(Integer pageNo, Integer pageSize, String pictureId, String orderType, String orderValue);
Page<OcrTaskchildPicture> getPackageSimilarityList(Integer pageNo, Integer pageSize, String oderType, String oderName, String checkDuplicateId, String pictureId); Page<OcrTaskChildPictureVo> getPackageSimilarityList(Integer pageNo, Integer pageSize, String oderType, String oderName, String checkDuplicateId, String pictureId);
} }

@ -19,6 +19,7 @@ import cn.jyjz.xiaoyao.ocr.service.IOcrPictureDuplicateHisService;
import cn.jyjz.xiaoyao.ocr.service.OcrPictureInfoService; import cn.jyjz.xiaoyao.ocr.service.OcrPictureInfoService;
import cn.jyjz.xiaoyao.ocr.service.OcrPictureService; import cn.jyjz.xiaoyao.ocr.service.OcrPictureService;
import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService; import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService;
import cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo;
import cn.jyjz.xiaoyao.ocr.vo.PictureDetailVo; import cn.jyjz.xiaoyao.ocr.vo.PictureDetailVo;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@ -623,7 +624,7 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl<OcrTaskchild
} }
@Override @Override
public List<OcrTaskchildPicture> getPictureHistoryList(List<String> pictureIds, String taskname) { public List<OcrTaskChildPictureVo> getPictureHistoryList(List<String> pictureIds, String taskname) {
return ocrtaskchildpicturemybatisdao.getPictureHistoryList(pictureIds,taskname); return ocrtaskchildpicturemybatisdao.getPictureHistoryList(pictureIds,taskname);
} }
@ -643,31 +644,31 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl<OcrTaskchild
} }
@Override @Override
public Page<OcrTaskchildPicture> getSimilarityList(Integer pageNo, Integer pageSize, String pictureId, String orderType, String orderValue) { public Page<OcrTaskChildPictureVo> getSimilarityList(Integer pageNo, Integer pageSize, String pictureId, String orderType, String orderValue) {
OcrPictureDuplicateHis duplicateHis = pictureDuplicateHisService.getOne(new LambdaQueryWrapper<OcrPictureDuplicateHis>().eq(OcrPictureDuplicateHis::getPictureId, pictureId)); OcrPictureDuplicateHis duplicateHis = pictureDuplicateHisService.getOne(new LambdaQueryWrapper<OcrPictureDuplicateHis>().eq(OcrPictureDuplicateHis::getPictureId, pictureId));
Page<OcrTaskchildPicture> objectPage = new Page<>(); Page<OcrTaskChildPictureVo> objectPage = new Page<>();
if (ObjectUtils.isNotEmpty(duplicateHis) && org.apache.commons.lang3.StringUtils.isNotBlank(duplicateHis.getCheckDuplicateResultHisJson())) { if (ObjectUtils.isNotEmpty(duplicateHis) && org.apache.commons.lang3.StringUtils.isNotBlank(duplicateHis.getCheckDuplicateResultHisJson())) {
OcrTaskchildPicture one = this.getOne(new LambdaQueryWrapper<OcrTaskchildPicture>().eq(OcrTaskchildPicture::getPictureid, pictureId)); OcrTaskchildPicture one = this.getOne(new LambdaQueryWrapper<OcrTaskchildPicture>().eq(OcrTaskchildPicture::getPictureid, pictureId));
JSONObject jsonObject = JSONObject.parseObject(duplicateHis.getCheckDuplicateResultHisJson()); JSONObject jsonObject = JSONObject.parseObject(duplicateHis.getCheckDuplicateResultHisJson());
Set<String> pictureIds = jsonObject.keySet(); Set<String> pictureIds = jsonObject.keySet();
List<OcrTaskchildPicture> taskChildPictures = this.getPictureHistoryList(new ArrayList<>(pictureIds), one.getTaskname()); List<OcrTaskChildPictureVo> taskChildPictures = this.getPictureHistoryList(new ArrayList<>(pictureIds), one.getTaskname());
for (OcrTaskchildPicture taskChildPicture : taskChildPictures) { for (OcrTaskChildPictureVo taskChildPicture : taskChildPictures) {
taskChildPicture.setSimilarityscore(Integer.parseInt(jsonObject.getString(taskChildPicture.getPictureid().toString()))); taskChildPicture.setSimilarityScore(Integer.parseInt(jsonObject.getString(taskChildPicture.getPictureId().toString())));
} }
if (orderValue.equals("similarityScore")) { if (orderValue.equals("similarityScore")) {
if ("desc".equals(orderType)) { if ("desc".equals(orderType)) {
taskChildPictures.sort(Comparator.comparing(OcrTaskchildPicture::getSimilarityscore).reversed()); taskChildPictures.sort(Comparator.comparing(OcrTaskChildPictureVo::getSimilarityScore).reversed());
} else { } else {
taskChildPictures.sort(Comparator.comparing(OcrTaskchildPicture::getSimilarityscore)); taskChildPictures.sort(Comparator.comparing(OcrTaskChildPictureVo::getSimilarityScore));
} }
} else { } else {
if ("desc".equals(orderType)) { if ("desc".equals(orderType)) {
taskChildPictures.sort(Comparator.comparing(OcrTaskchildPicture::getCreatedate).reversed()); taskChildPictures.sort(Comparator.comparing(OcrTaskChildPictureVo::getCreateDate).reversed());
} else { } else {
taskChildPictures.sort(Comparator.comparing(OcrTaskchildPicture::getCreatedate)); taskChildPictures.sort(Comparator.comparing(OcrTaskChildPictureVo::getCreateDate));
} }
} }
List<OcrTaskchildPicture> collect = taskChildPictures.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); List<OcrTaskChildPictureVo> collect = taskChildPictures.stream().skip((pageNo - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
objectPage.setRecords(collect); objectPage.setRecords(collect);
objectPage.setTotal(taskChildPictures.size()); objectPage.setTotal(taskChildPictures.size());
return objectPage; return objectPage;
@ -676,8 +677,8 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl<OcrTaskchild
} }
@Override @Override
public Page<OcrTaskchildPicture> getPackageSimilarityList(Integer pageNo, Integer pageSize, String oderType, String oderName, String checkDuplicateId, String pictureId) { public Page<OcrTaskChildPictureVo> getPackageSimilarityList(Integer pageNo, Integer pageSize, String oderType, String oderName, String checkDuplicateId, String pictureId) {
Page<OcrTaskchildPicture> page = new Page<>(pageNo,pageSize); Page<OcrTaskChildPictureVo> page = new Page<>(pageNo,pageSize);
return ocrtaskchildpicturemybatisdao.getPackageSimilarityList(page,checkDuplicateId,pictureId,oderType,oderName); return ocrtaskchildpicturemybatisdao.getPackageSimilarityList(page,checkDuplicateId,pictureId,oderType,oderName);
} }

@ -0,0 +1,171 @@
package cn.jyjz.xiaoyao.ocr.vo;
import cn.jyjz.xiaoyao.oa.from.dataobject.Category;
import cn.jyjz.xiaoyao.oa.from.dataobject.Userapprove;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrPictureInfo;
import cn.jyjz.xiaoyao.ocr.dto.UserapproveDto;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ApiModel(value = "任务信息", description = "任务信息")
public class OcrTaskChildPictureVo implements java.io.Serializable {
@ApiModelProperty(value = "主键")
private String id;
@ApiModelProperty(value = "原图片主键")
private String pictureId;
@ApiModelProperty(value = "状态,审批状态 1:未提交 2:审批中 3:审批通过 5拒绝")
private Integer states;
@ApiModelProperty(value = "流程实例IdprocessInstanceId")
private String processInstanceId;
@ApiModelProperty(value = "流程定义id")
private String processDefinitionId;
@ApiModelProperty(value = "流程部署id")
private String deploymentId;
@ApiModelProperty(value = "审批人姓名")
private String assigneeName;
@ApiModelProperty(value = "审批人")
private String assignee;
@ApiModelProperty(value = "修改人,记录创建人的帐号")
private String updateUser;
@ApiModelProperty(value = "更新时间")
private Long updateTime;
@ApiModelProperty(value = "附件")
private String fileAnnex;
@ApiModelProperty(value = "是否归档0未归档1归档")
private Integer guiDang;
@ApiModelProperty(value = "创建人")
private String createUser;
@ApiModelProperty(value = "创建人姓名")
private String createUserName;
@ApiModelProperty(value = "创建时间")
private Long createDate;
@ApiModelProperty(value = "员工主键")
private Long userId;
@ApiModelProperty(value = "员工姓名")
private String userName;
@ApiModelProperty(value = "任务id,来源于图片表")
private String fromTaskId;
@ApiModelProperty(value = "任务名称,来源于图片表")
private String fromTaskName;
@ApiModelProperty(value = "提报人")
private String fromUserId;
@ApiModelProperty(value = "提报人名称")
private String fromUserName;
@ApiModelProperty(value = "所属项目")
private String fromProjectId;
@ApiModelProperty(value = "所属项目名称")
private String fromProjectName;
@ApiModelProperty(value = "所属计划")
private String fromPlanId;
@ApiModelProperty(value = "提报时间")
private Long fromupTime;
@ApiModelProperty(value = "任务来源")
private String fromSourceId;
@ApiModelProperty(value = "是否为相似图片与其他图片对比为百分百的记录为10不相似1相似")
private Integer havePoints;
@Schema(description = "当前节点名称")
private String taskName;
@Schema(description = "完成时间")
private Long finishTime;
@ApiModelProperty(value = "项目对象")
private Category categoryDto;
@ApiModelProperty(value = "节点主键")
private String taskId;
@ApiModelProperty(value = "节点描述")
private String documentation;
@ApiModelProperty(value = "是否为历史图片true是历史图片false非历史图片")
private boolean izHistory;
@ApiModelProperty(value = "图片真假 0:假1其他表示没有设置")
private Integer iztrueorfalse;
@ApiModelProperty(value = "是否已经审批0未审批1审批中2已审批")
private String workStatus;
@ApiModelProperty(value = "图片对象")
private OcrPicture ocrPicture;
@ApiModelProperty(value = "提报时间")
private String reportTime;
@ApiModelProperty(value = "相似度数值")
private Integer similarityScore;
@ApiModelProperty(value = "本人审查日志")
private Userapprove userapprove;
@ApiModelProperty(value = "拜访终端")
private String field3 = "测试拜访终端";
@ApiModelProperty(value = "是否重复")
private String field14 = "重复";
@ApiModelProperty(value = "历史状态")
private Integer historyStates;
@ApiModelProperty(value = "定位")
private String location;
@ApiModelProperty(value = "图片路径")
private String imgUrl;
@ApiModelProperty(value = "最大相似度值")
private String maxSimilarity;
@ApiModelProperty(value = "缩略图")
private String serverThumbnailUrl;
@ApiModelProperty(value = "生成时间")
private String submitDateTimestamp;
@ApiModelProperty(value = "拍照时间")
private String photoDateTimestamp;
}

@ -64,6 +64,8 @@
<result column="field16" property="field16" jdbcType="VARCHAR"/> <result column="field16" property="field16" jdbcType="VARCHAR"/>
<result column="field17" property="field17" jdbcType="VARCHAR"/> <result column="field17" property="field17" jdbcType="VARCHAR"/>
<result column="field18" property="field18" jdbcType="VARCHAR"/> <result column="field18" property="field18" jdbcType="VARCHAR"/>
<result column="submit_date_timestamp" property="submitDateTimestamp" jdbcType="VARCHAR"/>
<result column="photo_date_timestamp" property="photoDateTimestamp" jdbcType="VARCHAR"/>
<result column="suspiciousfile" property="suspiciousfile" jdbcType="INTEGER"/> <result column="suspiciousfile" property="suspiciousfile" jdbcType="INTEGER"/>
<result column="states" property="states" jdbcType="INTEGER"/> <result column="states" property="states" jdbcType="INTEGER"/>

@ -554,13 +554,17 @@
AND ID = #{id} AND ID = #{id}
</select> </select>
<select id="getPictureHistoryList" resultType="cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture"> <select id="getPictureHistoryList" resultType="cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo">
SELECT t2.*,t1.imgUrl, SELECT t2.ID id, t2.PICTUREID pictureId, t2.STATES states, t2.PROCESSINSTANCEID processInstanceId,
ifnull(t3.STATSHIS, 1) historyStates t2.PROCESSDEFINITIONID processDefinitionId, t2.DEPLOYMENTID deploymentId, t2.ASSIGNEENAME assigneeName, t2.ASSIGNEE assignee,
t2.FILEANNEX fileAnnex, t2.GUIDANG guiDang, t2.CREATEUSER createUser, t2.CREATEUSERNAME createUserName, t2.CREATEDATE createDate, t2.USERID userId, t2.USERNAME userName,
t2.FROMTASKID fromTaskId, t2.FROMTASKNAME fromTaskName, t2.FROMUSERID fromUserId, t2.FROMPROJECTID fromProjectId, t2.FROMPLANID fromPlanId, t2.FROMUPTIME fromupTime, t2.FROMSOURCEID fromSourceId,
t2.HAVEPOINTS havePoints, t2.TASKNAME taskName, t2.FROMUSERNAME fromUserName, t2.FROMPROJECTNAME fromProjectName, t2.FINISHTIME finishTime,t1.imgUrl,
ifnull(t3.STATSHIS, 1) historyStates,t1.submit_date_timestamp submitDateTimestamp,t1.photo_date_timestamp photoDateTimestamp
FROM ocr_picture t1 FROM ocr_picture t1
LEFT JOIN ocr_taskchild_picture t2 LEFT JOIN ocr_taskchild_picture t2
on t1.ID = t2.PICTUREID on t1.ID = t2.PICTUREID
LEFT JOIN oa_userapprove_t t3 on t2.ID = t3.FORMID and t3.TASKNAME = '${taskname}' LEFT JOIN oa_userapprove_t t3 on t2.ID = t3.FORMID and t3.TASKNAME = '${taskname}'
where t1.ID in where t1.ID in
<foreach collection="pictureIds" open="(" close=")" item="item" separator="," index="index"> <foreach collection="pictureIds" open="(" close=")" item="item" separator="," index="index">
#{item} #{item}
@ -628,10 +632,40 @@
where t1.ID = #{pictureId} where t1.ID = #{pictureId}
</select> </select>
<select id="getPackageSimilarityList" resultType="cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture"> <select id="getPackageSimilarityList" resultType="cn.jyjz.xiaoyao.ocr.vo.OcrTaskChildPictureVo">
SELECT t3.*,t2.imgUrl,t2.server_thumbnail_url serverThumbnailUrl, SELECT t3.ID id,
t1.max_similarity maxSimilarity, t3.PICTUREID pictureId,
ifnull(t4.STATSHIS, 1) historyStates 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,
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
FROM ocr_check_duplicate_result t1 FROM ocr_check_duplicate_result t1
LEFT JOIN ocr_picture t2 ON t1.picture_id = t2.ID LEFT JOIN ocr_picture t2 ON t1.picture_id = t2.ID
LEFT JOIN ocr_taskchild_picture t3 ON t2.ID = t3.PICTUREID LEFT JOIN ocr_taskchild_picture t3 ON t2.ID = t3.PICTUREID

Loading…
Cancel
Save