Explorar el Código

修改首页标签统计

2507040827 hace 1 día
padre
commit
0bd47f2a03

+ 0 - 10
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/controller/AitagTagLogController.java

@@ -163,14 +163,4 @@ public class AitagTagLogController {
         return stringBuilder.toString();
         return stringBuilder.toString();
     }
     }
 
 
-
-    @Autowired
-    private DistributedScheduledTask distributedScheduledTask;
-
-        @GetMapping("/syncDataTask")
-    public ResultDto<AitagTagLogEntity> test() {
-        distributedScheduledTask.syncDataTask();
-        return ResultDto.success();
-    }
-
 }
 }

+ 0 - 5
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/entity/AitagTagLogEntity.java

@@ -126,11 +126,6 @@ passr: true/false
     @ApiModelProperty(value = "打标耗时,秒")
     @ApiModelProperty(value = "打标耗时,秒")
     private String consumingTime;
     private String consumingTime;
 
 
-    /**
-     * 标签类别Id
-     **/
-    @ApiModelProperty(value = "标签类别Id")
-    private String categoryId;
 
 
     /**
     /**
      * 合同编号
      * 合同编号

+ 4 - 0
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/domain/vo/SmartTaggingResultVo.java

@@ -33,6 +33,10 @@ public class SmartTaggingResultVo extends PageQuery {
     private String categoryId;
     private String categoryId;
 
 
 
 
+    public String getCategoryExp() {
+        return "[{\"category_id\": \""+categoryId+"\"}]";
+    }
+
     public String getStartTaggingTime() {
     public String getStartTaggingTime() {
         return StringUtils.isBlank(startTaggingTime)? DateUtils.getCurrYear()+"-01-01 00:00:00":startTaggingTime;
         return StringUtils.isBlank(startTaggingTime)? DateUtils.getCurrYear()+"-01-01 00:00:00":startTaggingTime;
     }
     }

+ 10 - 5
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/service/DistributedScheduledTask.java

@@ -75,14 +75,16 @@ public class DistributedScheduledTask {
             Map<String,Integer> count = new HashMap<>();
             Map<String,Integer> count = new HashMap<>();
             for (AitagTagLogEntity aitagTagLog:aitagTagLogEntities){
             for (AitagTagLogEntity aitagTagLog:aitagTagLogEntities){
                 String feedback = aitagTagLog.getFeedback();
                 String feedback = aitagTagLog.getFeedback();
-                String categoryId = aitagTagLog.getCategoryId();
                 String result = null;
                 String result = null;
                 if(FEEDBACK_RESULT_REJECT.equals(feedback)){
                 if(FEEDBACK_RESULT_REJECT.equals(feedback)){
                     result = aitagTagLog.getFeedbackResult();
                     result = aitagTagLog.getFeedbackResult();
                 }else{
                 }else{
                     result = aitagTagLog.getResult();
                     result = aitagTagLog.getResult();
                 }
                 }
-                duCount(result, count,categoryId);
+                if(StringUtils.isBlank(result)){
+                    continue;
+                }
+                duCount(result, count);
             }
             }
             AitagTagDailyAggEntity aitagTagLog = new AitagTagDailyAggEntity();
             AitagTagDailyAggEntity aitagTagLog = new AitagTagDailyAggEntity();
             for (String key : count.keySet()){
             for (String key : count.keySet()){
@@ -90,19 +92,22 @@ public class DistributedScheduledTask {
                 aitagTagLog.setAggDate(yesterday);
                 aitagTagLog.setAggDate(yesterday);
                 aitagTagLog.setTagCount(count.get(key));
                 aitagTagLog.setTagCount(count.get(key));
                 String[] split = key.split(":");
                 String[] split = key.split(":");
+                if(split.length==2){
+                    aitagTagLog.setCategoryId(split[1]);
+                }
                 aitagTagLog.setTagNm(split[0]);
                 aitagTagLog.setTagNm(split[0]);
-                aitagTagLog.setCategoryId(split[1]);
                 aitagTagDailyAggDao.insert(aitagTagLog);
                 aitagTagDailyAggDao.insert(aitagTagLog);
             }
             }
 
 
         }
         }
     }
     }
 
 
-    private static void duCount(String result, Map<String, Integer> count,String categoryId) {
+    private static void duCount(String result, Map<String, Integer> count) {
         List<Map> results = JSONArray.parseArray(result, Map.class);
         List<Map> results = JSONArray.parseArray(result, Map.class);
         for (int i = 0 ;i<results.size();i++){
         for (int i = 0 ;i<results.size();i++){
             Map resultMap = results.get(i);
             Map resultMap = results.get(i);
-            String labe = resultMap.getOrDefault("tag_name","").toString()+":"+categoryId;
+            String labe = resultMap.getOrDefault("tag_name","").toString()+":"
+                    + resultMap.getOrDefault("category_id","").toString();
             if(count.containsKey(labe)){
             if(count.containsKey(labe)){
                 Integer integer = count.get(labe);
                 Integer integer = count.get(labe);
                 count.put(labe,integer+1);
                 count.put(labe,integer+1);

+ 11 - 11
server/yusp-tagging-core/src/main/java/cn/com/yusys/yusp/service/impl/AitagTagLogServiceImpl.java

@@ -56,23 +56,23 @@ public class AitagTagLogServiceImpl extends ServiceImpl<AitagTagLogDao, AitagTag
         log.info("查询出符合条件的全部打标数据:{} 条",totalCnt);
         log.info("查询出符合条件的全部打标数据:{} 条",totalCnt);
         dataOverview.setCountNum(totalCnt);
         dataOverview.setCountNum(totalCnt);
 
 
-        LambdaQueryWrapper<AitagTagLogEntity> queryCount = new LambdaQueryWrapper<>();
+        LambdaQueryWrapper<AitagTagLogEntity> queryWrapper = new LambdaQueryWrapper<>();
         if (StringUtils.isNotBlank(taggingResult.getCategoryId())) {
         if (StringUtils.isNotBlank(taggingResult.getCategoryId())) {
-            queryCount.eq(AitagTagLogEntity::getCategoryId, taggingResult.getCategoryId());
+            queryWrapper.apply("result @> '"+taggingResult.getCategoryExp()+"'");
         }
         }
         if (StringUtils.isNotBlank(taggingResult.getStartTaggingTime())){
         if (StringUtils.isNotBlank(taggingResult.getStartTaggingTime())){
-            queryCount.ge(AitagTagLogEntity::getInsertTime, taggingResult.getStartTaggingTime());
+            queryWrapper.ge(AitagTagLogEntity::getInsertTime, taggingResult.getStartTaggingTime());
         }
         }
         if (StringUtils.isNotBlank(taggingResult.getEndTaggingTime())){
         if (StringUtils.isNotBlank(taggingResult.getEndTaggingTime())){
-            queryCount.le(AitagTagLogEntity::getInsertTime, taggingResult.getEndTaggingTime());
+            queryWrapper.le(AitagTagLogEntity::getInsertTime, taggingResult.getEndTaggingTime());
         }
         }
-        queryCount.in(AitagTagLogEntity::getState, DataDictionary.RESULT_PUSHED,DataDictionary.MANAGER_CONFIRMED);
-        queryCount.eq(AitagTagLogEntity::getTagScope, PROD_DATA);
-        Integer totalConfirmedCnt = this.baseMapper.selectCount(queryCount);
+        queryWrapper.in(AitagTagLogEntity::getState, DataDictionary.RESULT_PUSHED,DataDictionary.MANAGER_CONFIRMED);
+        queryWrapper.eq(AitagTagLogEntity::getTagScope, PROD_DATA);
+        Integer totalConfirmedCnt = this.baseMapper.selectCount(queryWrapper);
         log.info("查询出符合条件的打标完成数据:{} 条",totalConfirmedCnt);
         log.info("查询出符合条件的打标完成数据:{} 条",totalConfirmedCnt);
 
 
-        queryCount.eq(AitagTagLogEntity::getFeedback,FEEDBACK_RESULT_AGREE);
-        Integer agreeTagNum = this.baseMapper.selectCount(queryCount);
+        queryWrapper.eq(AitagTagLogEntity::getFeedback,FEEDBACK_RESULT_AGREE);
+        Integer agreeTagNum = this.baseMapper.selectCount(queryWrapper);
         log.info("查询出符合条件的打标准确数据:{} 条",agreeTagNum);
         log.info("查询出符合条件的打标准确数据:{} 条",agreeTagNum);
         dataOverview.setAccurateNum(agreeTagNum);
         dataOverview.setAccurateNum(agreeTagNum);
 
 
@@ -112,7 +112,7 @@ public class AitagTagLogServiceImpl extends ServiceImpl<AitagTagLogDao, AitagTag
     public IPage<AitagTagLogEntity> taggingDetails(TaggingTransactionReqVo transactionReqVo) {
     public IPage<AitagTagLogEntity> taggingDetails(TaggingTransactionReqVo transactionReqVo) {
         LambdaQueryWrapper<AitagTagLogEntity> queryWrapper = new LambdaQueryWrapper<>();
         LambdaQueryWrapper<AitagTagLogEntity> queryWrapper = new LambdaQueryWrapper<>();
         if (StringUtils.isNotBlank(transactionReqVo.getCategoryId())) {
         if (StringUtils.isNotBlank(transactionReqVo.getCategoryId())) {
-            queryWrapper.eq(AitagTagLogEntity::getCategoryId, transactionReqVo.getCategoryId());
+            queryWrapper.apply("result @> '"+transactionReqVo.getCategoryExp()+"'");
         }
         }
         if (StringUtils.isNotBlank(transactionReqVo.getStartTaggingTime())){
         if (StringUtils.isNotBlank(transactionReqVo.getStartTaggingTime())){
             queryWrapper.ge(AitagTagLogEntity::getInsertTime, transactionReqVo.getStartTaggingTime());
             queryWrapper.ge(AitagTagLogEntity::getInsertTime, transactionReqVo.getStartTaggingTime());
@@ -179,7 +179,7 @@ public class AitagTagLogServiceImpl extends ServiceImpl<AitagTagLogDao, AitagTag
     public List<AitagTagLogEntity> queryConfirmedTagData(TaggingTransactionReqVo transactionReqVo) {
     public List<AitagTagLogEntity> queryConfirmedTagData(TaggingTransactionReqVo transactionReqVo) {
         LambdaQueryWrapper<AitagTagLogEntity> query = new LambdaQueryWrapper<>();
         LambdaQueryWrapper<AitagTagLogEntity> query = new LambdaQueryWrapper<>();
         if (StringUtils.isNotBlank(transactionReqVo.getCategoryId())) {
         if (StringUtils.isNotBlank(transactionReqVo.getCategoryId())) {
-            query.eq(AitagTagLogEntity::getCategoryId, transactionReqVo.getCategoryId());
+            query.apply("result @> '"+transactionReqVo.getCategoryExp()+"'");
         }
         }
         if (StringUtils.isNotBlank(transactionReqVo.getStartTaggingTime())){
         if (StringUtils.isNotBlank(transactionReqVo.getStartTaggingTime())){
             query.ge(AitagTagLogEntity::getInsertTime, transactionReqVo.getStartTaggingTime());
             query.ge(AitagTagLogEntity::getInsertTime, transactionReqVo.getStartTaggingTime());

+ 5 - 6
server/yusp-tagging-core/src/main/resources/mapper/AitagTagLogMapper.xml

@@ -17,7 +17,6 @@
         <result column="feedback_result" jdbcType="VARCHAR" property="feedbackResult"/>
         <result column="feedback_result" jdbcType="VARCHAR" property="feedbackResult"/>
         <result column="state" jdbcType="INTEGER" property="state"/>
         <result column="state" jdbcType="INTEGER" property="state"/>
         <result column="consuming_time" jdbcType="LONGVARCHAR" property="consumingTime"/>
         <result column="consuming_time" jdbcType="LONGVARCHAR" property="consumingTime"/>
-        <result column="category_id" jdbcType="VARCHAR" property="categoryId"/>
         <result column="reg_result" jdbcType="VARCHAR" property="regResult"/>
         <result column="reg_result" jdbcType="VARCHAR" property="regResult"/>
         <result column="feedback_user_org" jdbcType="VARCHAR" property="feedbackUserOrg"/>
         <result column="feedback_user_org" jdbcType="VARCHAR" property="feedbackUserOrg"/>
         <result column="feedback_user_endpoint" jdbcType="VARCHAR" property="feedbackUserEndpoint"/>
         <result column="feedback_user_endpoint" jdbcType="VARCHAR" property="feedbackUserEndpoint"/>
@@ -37,7 +36,7 @@
                 AND #{endTaggingTime} >= insert_time
                 AND #{endTaggingTime} >= insert_time
             </if>
             </if>
             <if test="categoryId != null and categoryId != ''">
             <if test="categoryId != null and categoryId != ''">
-                AND #{categoryId} = category_id
+                AND result @> #{categoryExp}::jsonb
             </if>
             </if>
     </select>
     </select>
 
 
@@ -55,7 +54,7 @@
                 AND #{endTaggingTime} >= insert_time
                 AND #{endTaggingTime} >= insert_time
             </if>
             </if>
             <if test="categoryId != null and categoryId != ''">
             <if test="categoryId != null and categoryId != ''">
-                AND #{categoryId} = category_id
+                AND result @> #{categoryExp}::jsonb
             </if>
             </if>
         GROUP BY DATE_FORMAT(insert_time, '%Y年%m月%d日')
         GROUP BY DATE_FORMAT(insert_time, '%Y年%m月%d日')
         ORDER BY stat;
         ORDER BY stat;
@@ -75,7 +74,7 @@
                 AND #{endTaggingTime} >= insert_time
                 AND #{endTaggingTime} >= insert_time
             </if>
             </if>
             <if test="categoryId != null and categoryId != ''">
             <if test="categoryId != null and categoryId != ''">
-                AND #{categoryId} = category_id
+                AND result @> #{categoryExp}::jsonb
             </if>
             </if>
         GROUP BY DATE_FORMAT(insert_time, '%Y年%m月')
         GROUP BY DATE_FORMAT(insert_time, '%Y年%m月')
         ORDER BY stat;
         ORDER BY stat;
@@ -95,14 +94,14 @@
                 AND #{endTaggingTime} >= insert_time
                 AND #{endTaggingTime} >= insert_time
             </if>
             </if>
             <if test="categoryId != null and categoryId != ''">
             <if test="categoryId != null and categoryId != ''">
-                AND #{categoryId} = category_id
+                AND result @> #{categoryExp}::jsonb
             </if>
             </if>
         GROUP BY YEARWEEK(insert_time, 1)
         GROUP BY YEARWEEK(insert_time, 1)
         ORDER BY stat;
         ORDER BY stat;
     </select>
     </select>
 
 
     <select id="selectByInsertTime" resultType="cn.com.yusys.yusp.domain.entity.AitagTagLogEntity">
     <select id="selectByInsertTime" resultType="cn.com.yusys.yusp.domain.entity.AitagTagLogEntity">
-        SELECT id, app_id, insert_time, business_attr, phrase, attachment, attachment_url, `result`, feedback_user_id, feedback_user_nm, feedback_time, feedback, feedback_result, state, consuming_time, category_id
+        SELECT id, app_id, insert_time, business_attr, phrase, attachment, attachment_url, `result`, feedback_user_id, feedback_user_nm, feedback_time, feedback, feedback_result, state, consuming_time
         FROM aitag_tag_log
         FROM aitag_tag_log
         WHERE
         WHERE
             tag_scope = 0
             tag_scope = 0