瀏覽代碼

优化清理标签逻辑,删除待发送记录数据等

yjwang 3 天之前
父節點
當前提交
acec5a0d65

+ 2 - 0
fs-company/src/main/java/com/fs/company/controller/qw/QwSopTempController.java

@@ -349,6 +349,8 @@ public class QwSopTempController extends BaseController
             qwSopTemp.setTemplateType(0);
             qwSopTemp.setIsTop(0);
         }
+        LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
+        qwSopTemp.setCreateBy(loginUser.getUser().getUserId().toString());
         qwSopTempService.copyTemplate(qwSopTemp);
         return toAjax(1);
     }

+ 10 - 1
fs-service/src/main/java/com/fs/qw/service/impl/QwExternalContactServiceImpl.java

@@ -4323,9 +4323,18 @@ public class QwExternalContactServiceImpl extends ServiceImpl<QwExternalContactM
             logsInfoDelParam.setCorpId(corpId);
             logsInfoDelParam.setExternalId(externalId);
             sopUserLogsInfoMapper.deleteBySopIdToContactId(logsInfoDelParam);
-
             logger.info("移除sop营期:"+logsInfoDelParam);
 
+            //清理对应待发送执行记录
+            QwSopLogs qwSopLogs = new QwSopLogs();
+            qwSopLogs.setSopId(sopId);
+            qwSopLogs.setCorpId(corpId);
+            qwSopLogs.setQwUserid(qwUserId);
+            qwSopLogs.setExternalId(externalId);
+            qwSopLogs.setSendStatus(3L);
+            iQwSopLogsService.deleteQwSopLogsLabel(qwSopLogs);
+            logger.info("清理待发送执行记录:"+logsInfoDelParam);
+
         }catch (Exception e){
             logger.error("删除Sop任务营期里的该客户信息异常:"+logsInfoDelParam+"|"+e.getMessage());
         }

+ 3 - 0
fs-service/src/main/java/com/fs/sop/mapper/QwSopLogsMapper.java

@@ -354,4 +354,7 @@ public interface QwSopLogsMapper extends BaseMapper<QwSopLogs> {
             "ORDER BY qw_user_key" +
             "</script>")
     List<QwApiSopLogToken> countQwApiAopLogToken(@Param("data") String dateStr);
+
+    @DataSource(DataSourceType.SOP)
+    void deleteQwSopLogsLabel(@Param("qwSopLogs") QwSopLogs qwSopLogs);
 }

+ 6 - 0
fs-service/src/main/java/com/fs/sop/service/IQwSopLogsService.java

@@ -134,4 +134,10 @@ public interface IQwSopLogsService extends IService<QwSopLogs>
     void updateBatch(List<QwSopLogs> collect);
 
     void countQwApiAopLogToken(String dateStr);
+
+    /**
+     * 清理标签解绑用户执行记录
+     * @param qwSopLogs
+     * **/
+    void deleteQwSopLogsLabel(QwSopLogs qwSopLogs);
 }

+ 5 - 0
fs-service/src/main/java/com/fs/sop/service/impl/QwSopLogsServiceImpl.java

@@ -1615,6 +1615,11 @@ public class QwSopLogsServiceImpl extends ServiceImpl<QwSopLogsMapper, QwSopLogs
         sopLogTokenService.saveBatch(qwApiSopLogTokens,500);
     }
 
+    @Override
+    public void deleteQwSopLogsLabel(QwSopLogs qwSopLogs) {
+        qwSopLogsMapper.deleteQwSopLogsLabel(qwSopLogs);
+    }
+
 
     // 定义一个方法来批量处理插入逻辑,支持每 500 条数据一次的批量插入
     private void processAndInsertQwSopLogs(List<QwSopLogsDoSendListTVO> logsByJsApiNotExtId) {

+ 1 - 2
fs-service/src/main/java/com/fs/sop/service/impl/QwSopTempServiceImpl.java

@@ -376,11 +376,10 @@ public class QwSopTempServiceImpl implements IQwSopTempService {
             qwSopTemp.setTemplateType(0);
             qwSopTemp.setIsTop(0);
         }
-
         // 设置创建时间为当前系统时间
         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         qwSopTemp.setCreateTime(sdf.format(new Date()));
-
+        qwSopTemp.setCreateBy(qwSopTemp.getCreateBy());
         qwSopTempMapper.insertQwSopTemp(qwSopTemp);
         List<QwSopTempDay> dayList = qwSopTempRulesService.listByTempIdAll(oldId);
         if (dayList.isEmpty()) return;

+ 4 - 0
fs-service/src/main/resources/mapper/sop/QwSopLogsMapper.xml

@@ -863,4 +863,8 @@
         ]]>
         order by ql.sort DESC ,ql.send_time asc limit 10
     </select>
+
+    <delete id="deleteQwSopLogsLabel">
+        DELETE FROM qw_sop_logs WHERE external_id = #{qwSopLogs.externalId} AND corp_id = #{qwSopLogs.corpId} AND qw_userid = #{qwSopLogs.qwUserid} AND sop_id = #{qwSopLogs.sopId} AND send_status = #{qwSopLogs.sendStatus}
+    </delete>
 </mapper>