From d49173a4c3cbdbc2cec41f7c434e7b4e51458cfb Mon Sep 17 00:00:00 2001 From: yqy Date: Fri, 26 May 2023 09:36:56 +0800 Subject: [PATCH] =?UTF-8?q?=E6=97=A5=E5=BF=97=E9=80=BB=E8=BE=91=E4=BF=AE?= =?UTF-8?q?=E6=94=B9,=E6=89=93=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../aspect/BadRequestExceptionAspect.java | 36 +++++++++++++++ .../java/com/baiye/aspect/ClearMDCAspect.java | 45 +++++++++++++++++++ .../main/java/com/baiye/aspect/LogAspect.java | 33 ++++++++------ .../main/java/com/baiye/common/CommonLog.java | 14 ++++++ .../baiye/config/LogInterceptorHandler.java | 18 ++++---- .../src/main/resources/logback-spring.xml | 4 +- .../rest/ActivationCodeController.java | 3 +- .../platform/rest/DebtFormController.java | 2 + .../platform/rest/LabelController.java | 5 +++ .../rest/LabelOrganizeController.java | 4 ++ .../platform/rest/OrganizeController.java | 9 ++++ .../platform/rest/PayComboController.java | 3 ++ .../rest/PayFatherTemplateController.java | 5 +++ .../modules/platform/rest/TaskController.java | 7 +++ .../impl/ActivationCodeServiceImpl.java | 9 +++- .../impl/LabelOrganizeServiceImpl.java | 2 - .../service/impl/OrganizeServiceImpl.java | 27 +++++++++-- .../impl/PayFatherTemplateServiceImpl.java | 2 - .../service/impl/TaskServiceImpl.java | 12 ++--- .../system/domain/LogElasticSearchEntity.java | 4 +- .../system/dto/LogElasticSearchCriteria.java | 4 +- .../system/dto/LogElasticSearchDTO.java | 2 + .../system/service/impl/LogServiceImpl.java | 7 ++- .../resources/config/application-prod.yml | 7 ++- .../java/com/baiye/model/entity/BaseTask.java | 2 +- .../module/controller/ClueController.java | 11 +++++ .../controller/ClueRecordController.java | 3 ++ .../controller/ConductRecordController.java | 3 ++ .../controller/UploadFileController.java | 6 ++- .../module/listener/DynamicTaskListener.java | 5 +-- .../baiye/module/listener/TokerListener.java | 5 +-- .../baiye/module/listener/ZdyListener.java | 5 +-- .../listener/dto/BaseExcelListenerDto.java | 11 +++++ .../module/service/UploadFileService.java | 2 +- .../service/impl/ClueRecordServiceImpl.java | 3 +- .../module/service/impl/ClueServiceImpl.java | 26 ++++++----- .../service/impl/UploadFileServiceImpl.java | 5 ++- .../java/com/baiye/task/ClueBackupsTask.java | 4 +- .../java/com/baiye/task/FileAnalysisTask.java | 7 ++- .../main/java/com/baiye/task/FileTask.java | 4 +- .../src/main/resources/application-prod.yml | 2 +- 41 files changed, 293 insertions(+), 75 deletions(-) create mode 100644 ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/aspect/BadRequestExceptionAspect.java create mode 100644 ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/aspect/ClearMDCAspect.java diff --git a/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/aspect/BadRequestExceptionAspect.java b/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/aspect/BadRequestExceptionAspect.java new file mode 100644 index 00000000..b5eab87f --- /dev/null +++ b/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/aspect/BadRequestExceptionAspect.java @@ -0,0 +1,36 @@ +package com.baiye.aspect; + +import com.baiye.common.CommonLog; +import lombok.extern.slf4j.Slf4j; +import org.aspectj.lang.JoinPoint; +import org.aspectj.lang.annotation.*; +import org.springframework.stereotype.Component; + +import java.util.Arrays; + +/** + * @Author YQY + * @Date 2023/5/24 + */ +@Component +@Aspect +@Slf4j +public class BadRequestExceptionAspect { + + /** + * 配置切入点 + */ + @Pointcut("execution(* com.baiye.exception.handler.GlobalExceptionHandler.badRequestException(..))") + public void badRequestExceptionPointcut() { + } + + @Before("badRequestExceptionPointcut()") + public void bb(JoinPoint joinPoint) { + Object[] args = joinPoint.getArgs(); + if (args.length > 0) { + String str = Arrays.toString(args); + int index = str.indexOf(':'); + if (index != -1) CommonLog.error(str.substring(index + 1, str.length() - 1)); + } + } +} diff --git a/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/aspect/ClearMDCAspect.java b/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/aspect/ClearMDCAspect.java new file mode 100644 index 00000000..bb357629 --- /dev/null +++ b/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/aspect/ClearMDCAspect.java @@ -0,0 +1,45 @@ +package com.baiye.aspect; + +import com.baiye.common.CommonLog; +import org.aspectj.lang.JoinPoint; +import org.aspectj.lang.annotation.*; +import org.slf4j.MDC; +import org.springframework.stereotype.Component; + + +/** + * 清除异步任务和定时任务的MDC + * @Author YQY + * @Date 2023/5/24 + */ +@Component +@Aspect +public class ClearMDCAspect { + + /** + * 配置切入点异步线程池 + */ + @Pointcut("@annotation(org.springframework.scheduling.annotation.Async)") + public void asyncPointcut() { + } + + /** + * 配置切入点定时任务 + */ + @Pointcut("@annotation(org.springframework.scheduling.annotation.Scheduled)") + public void scheduledPointcut() { + } + + @AfterReturning("asyncPointcut() || scheduledPointcut()") + public void clearAspectMDCAfterReturning(JoinPoint joinPoint) { + MDC.clear(); + } + + @AfterThrowing(pointcut = "asyncPointcut() || scheduledPointcut()", throwing = "e") + public void clearAspectMDCAfterThrowing(JoinPoint joinPoint, Throwable e) { + CommonLog.error(e.getMessage()); + MDC.clear(); + } + + +} diff --git a/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/aspect/LogAspect.java b/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/aspect/LogAspect.java index 3538db16..1fdb09e2 100644 --- a/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/aspect/LogAspect.java +++ b/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/aspect/LogAspect.java @@ -3,6 +3,7 @@ package com.baiye.aspect; import cn.hutool.core.collection.CollUtil; import cn.hutool.json.JSONUtil; import com.baiye.annotation.Log; +import com.baiye.constant.DefaultNumberConstants; import com.baiye.constant.LogType; import com.baiye.dto.LogReqDTO; import com.baiye.feign.SystemClient; @@ -78,22 +79,24 @@ public class LogAspect { /** * 配置异常通知 */ - @AfterThrowing(pointcut = "logPointcut()", throwing = "e") - public void logAfterThrowing(JoinPoint joinPoint, Throwable e) { + @AfterThrowing(value = "@annotation(controllerLog)", throwing = "e") + public void logAfterThrowing(JoinPoint joinPoint, Log controllerLog, Throwable e) { try { HttpServletRequest request = RequestHolder.getHttpServletRequest(); String ip = RequestUtils.getIp(request); - LogReqDTO logReqDTO = this.install(joinPoint, null, ip, e); - logReqDTO.setLogType(LogType.ERROR); - logReqDTO.setTime(System.currentTimeMillis() - currentTime.get()); - logReqDTO.setBrowser(RequestUtils.getBrowser(request)); - logReqDTO.setExceptionDetail(ThrowableUtil.getStackTrace(e).getBytes()); - - currentTime.remove(); - systemClient.save(logReqDTO); - }catch (Exception exception){ - log.error("LogAspect 异常通知error: {}",ThrowableUtil.getStackTrace(exception)); + // 插入数据库的日志 + if (controllerLog.isSaveMySQL()) { + LogReqDTO logReqDTO = this.install(joinPoint, null, ip, e); + logReqDTO.setLogType(LogType.ERROR); + logReqDTO.setTime(System.currentTimeMillis() - currentTime.get()); + logReqDTO.setBrowser(RequestUtils.getBrowser(request)); + logReqDTO.setExceptionDetail(ThrowableUtil.getStackTrace(e).getBytes()); + currentTime.remove(); + systemClient.save(logReqDTO); + } + } catch (Exception exception) { + log.error("异常通知内部错误"); } } @@ -110,7 +113,7 @@ public class LogAspect { String reqMethod = ServletUtil.getRequest().getMethod(); - if (e == null){ + if (e == null) { MDC.put("userId", this.getUserId()); MDC.put("userName", this.getUsername()); MDC.put("reqIp", ip); @@ -118,7 +121,7 @@ public class LogAspect { MDC.put("params", reqParams); MDC.put("reqMethod", reqMethod); MDC.put("reqUrl", Objects.requireNonNull(ServletUtil.getRequest()).getRequestURI()); - if (controllerLog != null){ + if (controllerLog != null) { MDC.put("businessPartyType", controllerLog.BusinessPartyType()); logReqDTO.setDescription(controllerLog.value()); } @@ -140,7 +143,9 @@ public class LogAspect { logReqDTO.setUsername(getUsername()); if (e == null) { + MDC.put("systemType", String.valueOf(DefaultNumberConstants.ONE_NUMBER)); log.info("{}", controllerLog.value()); + MDC.remove("systemType"); } return logReqDTO; } diff --git a/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/common/CommonLog.java b/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/common/CommonLog.java index f52ba6a1..8ea15fd4 100644 --- a/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/common/CommonLog.java +++ b/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/common/CommonLog.java @@ -2,6 +2,7 @@ package com.baiye.common; import cn.hutool.core.util.IdUtil; import com.baiye.config.LogInterceptorHandler; +import com.baiye.constant.DefaultNumberConstants; import com.baiye.constant.LogType; import com.baiye.util.SecurityUtils; import lombok.extern.slf4j.Slf4j; @@ -16,6 +17,7 @@ import org.slf4j.MDC; public class CommonLog { private static final String TRACE_ID = "traceId"; + private static final String SYSTEM_TYPE = "systemType"; /** * 获取traceId @@ -115,6 +117,14 @@ public class CommonLog { printType(message, userId, LogType.INFO); } + /** + * 指定userId ,继承traceId链路,获取新traceId + */ + public static void infoUserTraceId(String message, Long userId, String traceId) { + updateTraceId(traceId); + printType(message, userId, LogType.INFO); + } + /** * 打印日志级别 * @@ -135,6 +145,7 @@ public class CommonLog { log.info("{}", message); break; } + MDC.remove(SYSTEM_TYPE); } /** @@ -157,6 +168,9 @@ public class CommonLog { long id = IdUtil.getSnowflake(9, 9).nextId(); MDC.put(TRACE_ID, id + "-0"); } + if (StringUtils.isBlank(MDC.get(SYSTEM_TYPE))){ + MDC.put(SYSTEM_TYPE, String.valueOf(DefaultNumberConstants.ONE_NUMBER)); + } } /** diff --git a/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/config/LogInterceptorHandler.java b/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/config/LogInterceptorHandler.java index 7bb394d9..fc3822c2 100644 --- a/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/config/LogInterceptorHandler.java +++ b/ad-platform-common/ad-platform-common-log/src/main/java/com/baiye/config/LogInterceptorHandler.java @@ -29,20 +29,20 @@ public class LogInterceptorHandler implements HandlerInterceptor { } else { MDC.put(TRACE_ID, traceId); } - return true; } @Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView){ //防止内存泄露, 字段remove查看logback-spring.xml - MDC.remove("traceId"); - MDC.remove("userId"); - MDC.remove("userName"); - MDC.remove("params"); - MDC.remove("reqUrl"); - MDC.remove("reqMethod"); - MDC.remove("reqIp"); - MDC.remove("businessPartyType"); +// MDC.remove("traceId"); +// MDC.remove("userId"); +// MDC.remove("userName"); +// MDC.remove("params"); +// MDC.remove("reqUrl"); +// MDC.remove("reqMethod"); +// MDC.remove("reqIp"); +// MDC.remove("businessPartyType"); + MDC.clear(); } } diff --git a/ad-platform-common/ad-platform-common-log/src/main/resources/logback-spring.xml b/ad-platform-common/ad-platform-common-log/src/main/resources/logback-spring.xml index afd68e85..390f95c4 100644 --- a/ad-platform-common/ad-platform-common-log/src/main/resources/logback-spring.xml +++ b/ad-platform-common/ad-platform-common-log/src/main/resources/logback-spring.xml @@ -83,7 +83,9 @@ "reqIp": "%X{reqIp}", - "businessPartyType": "%X{businessPartyType}" + "businessPartyType": "%X{businessPartyType}" , + + "systemType": "%X{systemType}" } diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/ActivationCodeController.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/ActivationCodeController.java index b3ba8c29..769e226b 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/ActivationCodeController.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/ActivationCodeController.java @@ -1,8 +1,8 @@ package com.baiye.modules.platform.rest; +import com.baiye.annotation.Log; import com.baiye.http.CommonResponse; import com.baiye.model.dto.ActivationCodeQueryCriteria; -import com.baiye.model.dto.TaskQueryCriteria; import com.baiye.modules.platform.service.ActivationCodeService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -25,6 +25,7 @@ public class ActivationCodeController { @ApiOperation("生成激活码") @GetMapping("/generate") + @Log("生成激活码") public CommonResponse generateActivationCode(@RequestParam("codeNum") int codeNum, @RequestParam("codeType") int codeType){ activationCodeService.generateActivationCode(codeNum, codeType); return CommonResponse.createBySuccess(); diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/DebtFormController.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/DebtFormController.java index ffc855bf..34643205 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/DebtFormController.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/DebtFormController.java @@ -1,5 +1,6 @@ package com.baiye.modules.platform.rest; +import com.baiye.annotation.Log; import com.baiye.http.CommonResponse; import com.baiye.http.ResponseCode; import com.baiye.modules.platform.domain.Debt; @@ -30,6 +31,7 @@ public class DebtFormController { @ApiOperation("新建债务表单") @PostMapping("/saveDebtForm") + @Log("新建债务表单") public ResponseEntity saveTask(@Validated @RequestBody Debt debt){ debtFormService.saveDebtForm(debt); return new ResponseEntity<>(CommonResponse.createBySuccess(ResponseCode.SUCCESS), HttpStatus.OK); diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/LabelController.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/LabelController.java index 82f3c923..5d8b5bdd 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/LabelController.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/LabelController.java @@ -1,5 +1,6 @@ package com.baiye.modules.platform.rest; +import com.baiye.annotation.Log; import com.baiye.modules.platform.domain.Label; import com.baiye.modules.platform.service.LabelService; import com.baiye.modules.platform.service.dto.LabelQueryCriteria; @@ -33,6 +34,7 @@ public class LabelController { @ApiOperation("导出数据") @GetMapping(value = "/download") @PreAuthorize("@el.check('label:list')") + @Log("导出数据") public void download(HttpServletResponse response, LabelQueryCriteria criteria) throws IOException { labelService.download(labelService.queryAll(criteria), response); } @@ -57,6 +59,7 @@ public class LabelController { @PostMapping @ApiOperation("新增LabelController") @PreAuthorize("@el.check('label:add')") + @Log("新增标签") public ResponseEntity create(@Validated @RequestBody Label resources){ return new ResponseEntity<>(labelService.create(resources),HttpStatus.CREATED); } @@ -64,6 +67,7 @@ public class LabelController { @PutMapping @ApiOperation("修改LabelController") @PreAuthorize("@el.check('label:edit')") + @Log("修改标签") public ResponseEntity update(@Validated @RequestBody Label resources){ labelService.update(resources); return new ResponseEntity<>(HttpStatus.NO_CONTENT); @@ -72,6 +76,7 @@ public class LabelController { @ApiOperation("删除LabelController") @PreAuthorize("@el.check('label:del')") @DeleteMapping + @Log("删除标签") public ResponseEntity delete(@RequestBody Long[] ids) { labelService.deleteAll(ids); return new ResponseEntity<>(HttpStatus.OK); diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/LabelOrganizeController.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/LabelOrganizeController.java index 455ef1be..9f7a3ef1 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/LabelOrganizeController.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/LabelOrganizeController.java @@ -1,5 +1,6 @@ package com.baiye.modules.platform.rest; +import com.baiye.annotation.Log; import com.baiye.http.CommonResponse; import com.baiye.modules.platform.domain.LabelOrganize; import com.baiye.modules.platform.service.LabelOrganizeService; @@ -31,6 +32,7 @@ public class LabelOrganizeController { @ApiOperation("新增标签组和标签") @PostMapping("/add") + @Log("新增标签标签组") public CommonResponse save(@Validated({AddGroup.class}) @RequestBody LabelOrganize labelOrganize) { labelOrganizeService.save(labelOrganize); return CommonResponse.createBySuccess(); @@ -38,6 +40,7 @@ public class LabelOrganizeController { @ApiOperation("修改标签组") @PostMapping("/update") + @Log("修改标签组") public CommonResponse update(@Validated({UpdateGroup.class}) @RequestBody LabelOrganize labelOrganize) { labelOrganizeService.update(labelOrganize); return CommonResponse.createBySuccess(); @@ -45,6 +48,7 @@ public class LabelOrganizeController { @ApiOperation("删除标签组") @DeleteMapping("/del") + @Log("删除标签组") public CommonResponse del(@RequestBody Set ids) { labelOrganizeService.del(ids); return CommonResponse.createBySuccess(); diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/OrganizeController.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/OrganizeController.java index b357aa51..87fdcc01 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/OrganizeController.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/OrganizeController.java @@ -1,5 +1,6 @@ package com.baiye.modules.platform.rest; +import com.baiye.annotation.Log; import com.baiye.http.CommonResponse; import com.baiye.http.ResponseCode; import com.baiye.model.dto.OrganizeQueryCriteria; @@ -38,6 +39,7 @@ public class OrganizeController { @ApiOperation("新增小组") @PostMapping("/save") + @Log("新增小组") public CommonResponse saveOrganize(@RequestBody @Valid ValidList organizeList) { organizeService.saveOrganize(organizeList); return CommonResponse.createBySuccess(); @@ -45,6 +47,7 @@ public class OrganizeController { @ApiOperation("修改组") @PostMapping("/update") + @Log("修改组") public CommonResponse updateOrganize(@RequestBody Organize organize) { organizeService.updateOrganize(organize); return CommonResponse.createBySuccess(); @@ -52,6 +55,7 @@ public class OrganizeController { @ApiOperation("删除组") @GetMapping("/del") + @Log("删除组") public CommonResponse delOrganize(@RequestParam(value = "organizeId") Long organizeId, @RequestParam("replaceOrganizeId") Long replaceOrganizeId) { organizeService.delOrganize(organizeId, replaceOrganizeId); return CommonResponse.createBySuccess(); @@ -59,6 +63,7 @@ public class OrganizeController { @ApiOperation("添加组员") @PostMapping("/addMember") + @Log("添加组员") public CommonResponse addMember(@RequestBody @Valid ValidList OrganizeUser) { organizeService.addMember(OrganizeUser); return CommonResponse.createBySuccess(); @@ -66,6 +71,7 @@ public class OrganizeController { @ApiOperation("删除组员") @GetMapping("/delMember") + @Log("删除组员") public CommonResponse delMember(@RequestParam("userId") Long userId, @RequestParam(value = "replaceUserId", required = false) Long replaceUserId) { organizeService.delMember(userId, replaceUserId); @@ -86,6 +92,7 @@ public class OrganizeController { @ApiOperation("管理员分配任务") @PostMapping("/saveOrganizeDistribution") + @Log("分配任务小组任务") public ResponseEntity saveOrganizeDistribution(@Validated @RequestBody OrganizeSaveDTO organizeSaveDTO) { return organizeService.saveOrganizeDistribution(organizeSaveDTO); } @@ -128,6 +135,7 @@ public class OrganizeController { @ApiOperation("组长分配任务") @PostMapping("/saveMemberDistribution") + @Log("组任务分配") public ResponseEntity saveMemberDistribution(@Validated @RequestBody OrganizeMemberDistributionDTO organizeMemberDistributionDTO) { if (organizeMemberDistributionDTO != null) { return organizeService.saveMemberDistribution(organizeMemberDistributionDTO); @@ -185,6 +193,7 @@ public class OrganizeController { @PostMapping("/convert") @ApiOperation("组成员变动") + @Log("组成员变动") public CommonResponse convert(@Validated @RequestBody OrganizeConvertDTO organizeConvertDTO) { organizeService.convert(organizeConvertDTO); return CommonResponse.createBySuccess(); diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/PayComboController.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/PayComboController.java index 5b567b55..d824c38f 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/PayComboController.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/PayComboController.java @@ -1,5 +1,6 @@ package com.baiye.modules.platform.rest; +import com.baiye.annotation.Log; import com.baiye.http.CommonResponse; import com.baiye.modules.platform.domain.PayCombo; import com.baiye.modules.platform.service.PayComboService; @@ -24,6 +25,7 @@ public class PayComboController { @ApiOperation("新增模板") @PostMapping("/add") + @Log("新增模板") public CommonResponse add(@Validated({AddGroup.class}) @RequestBody PayCombo payCombo){ payComboService.addPayTemplate(payCombo); return CommonResponse.createBySuccess(); @@ -31,6 +33,7 @@ public class PayComboController { @ApiOperation("更新模板") @PostMapping("/update") + @Log("更新模板") public CommonResponse update(@Validated({UpdateGroup.class}) @RequestBody PayCombo payCombo){ payComboService.updatePayTemplate(payCombo); return CommonResponse.createBySuccess(); diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/PayFatherTemplateController.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/PayFatherTemplateController.java index 08c26d6e..895981c6 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/PayFatherTemplateController.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/PayFatherTemplateController.java @@ -1,5 +1,6 @@ package com.baiye.modules.platform.rest; +import com.baiye.annotation.Log; import com.baiye.http.CommonResponse; import com.baiye.modules.platform.domain.PayFatherTemplate; import com.baiye.modules.platform.service.PayFatherTemplateService; @@ -27,6 +28,7 @@ public class PayFatherTemplateController { @ApiOperation("新增模板") @PostMapping("/add") + @Log("新增模板") public CommonResponse add(@Validated({AddGroup.class}) @RequestBody PayFatherTemplate payFatherTemplate){ payFatherTemplateService.add(payFatherTemplate); return CommonResponse.createBySuccess(); @@ -34,6 +36,7 @@ public class PayFatherTemplateController { @ApiOperation("更新模板状态") @PostMapping("/update") + @Log("更新模板状态") public CommonResponse update(@Validated({UpdateGroup.class}) @RequestBody PayFatherTemplate payFatherTemplate){ payFatherTemplateService.update(payFatherTemplate); return CommonResponse.createBySuccess(); @@ -41,6 +44,7 @@ public class PayFatherTemplateController { @ApiOperation("删除模板") @DeleteMapping("/del") + @Log("删除模板") public CommonResponse del(@RequestBody Set ids) { payFatherTemplateService.del(ids); return CommonResponse.createBySuccess(); @@ -60,6 +64,7 @@ public class PayFatherTemplateController { @ApiOperation("替换模板列表") @GetMapping("/replace") + @Log("替换模板列表") public CommonResponse replace(@RequestParam("replaceId") Long replaceId,@RequestParam("templateId") Long templateId){ payFatherTemplateService.replace(replaceId, templateId); return CommonResponse.createBySuccess(); diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/TaskController.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/TaskController.java index 2d336c94..caced13d 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/TaskController.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/rest/TaskController.java @@ -1,6 +1,7 @@ package com.baiye.modules.platform.rest; import com.baiye.annotation.Inner; +import com.baiye.annotation.Log; import com.baiye.http.CommonResponse; import com.baiye.model.dto.DynamicTaskDistributionDTO; import com.baiye.model.dto.TaskQueryCriteria; @@ -37,6 +38,7 @@ public class TaskController { @Inner(value = false) @ApiOperation("新建任务") @PostMapping("/saveTask") + @Log("新建任务") public CommonResponse saveTask(@RequestBody @Validated({AddGroup.class}) Task task) { taskService.saveTask(task); return CommonResponse.createBySuccess(); @@ -87,6 +89,7 @@ public class TaskController { @Inner(value = false) @ApiOperation("修改任务信息") @PostMapping("/update") + @Log("修改任务信息") public CommonResponse updateTask(@RequestBody Task task) { taskService.updateTask(task); return CommonResponse.createBySuccess(); @@ -94,6 +97,7 @@ public class TaskController { @ApiOperation("未分配前删除任务-(删除任务)") @GetMapping("/del") + @Log("未分配前删除任务") public CommonResponse delTask(@RequestParam("taskId") Long taskId) { taskService.delTask(taskId); return CommonResponse.createBySuccess(); @@ -115,6 +119,7 @@ public class TaskController { @ApiOperation("新增动态任务(自动)分配比率") @PostMapping("/addTaskDistribution") + @Log("新增动态任务分配比率") public CommonResponse addTaskDistribution(@RequestBody @Validated DynamicTaskDistributionDTO dynamicTaskDistributionDTO) { taskService.addTaskDistribution(dynamicTaskDistributionDTO); return CommonResponse.createBySuccessMessage("操作成功"); @@ -132,6 +137,7 @@ public class TaskController { */ @ApiOperation("新建dmp任务") @PostMapping("/saveAdBackTask") + @Log("新建dmp任务") public CommonResponse saveAdBackTask(@RequestBody @Validated TaskTagDto taskTagDto) { return taskService.saveAdBackTask(taskTagDto); } @@ -144,6 +150,7 @@ public class TaskController { @ApiOperation("修改dmp任务信息") @PostMapping("/updateDmpTask") + @Log("修改dmp任务信息") public CommonResponse updateDmpTask(@RequestBody TaskTagDto taskTagDto) { return taskService.updateDmpTask(taskTagDto); } diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/ActivationCodeServiceImpl.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/ActivationCodeServiceImpl.java index 5d8173b2..3be51246 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/ActivationCodeServiceImpl.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/ActivationCodeServiceImpl.java @@ -2,6 +2,7 @@ package com.baiye.modules.platform.service.impl; import cn.hutool.core.collection.CollUtil; import cn.hutool.json.JSONArray; +import com.baiye.common.CommonLog; import com.baiye.exception.BadRequestException; import com.baiye.model.dto.ActivationCodeQueryCriteria; import com.baiye.modules.platform.domain.ActivationRecord; @@ -55,16 +56,21 @@ public class ActivationCodeServiceImpl implements ActivationCodeService { Company company = companyRepository.findByUserId(currentUserId); Integer isActivation = company.getIsActivation(); // 未激活过,先进行注册 - if (isActivation == 0) wechatSendMessageService.register(namePrefix, name, company.getId()); + if (isActivation == 0){ + CommonLog.infoNewTraceId("未曾激活,进行注册"); + wechatSendMessageService.register(namePrefix, name, company.getId()); + } // 计费,默认季卡 double price = 300.00; if (codeType == 2) price = 1080.00; double totalPrice = company.getUserBalance() - (codeNum * price); if (totalPrice < 0) throw new BadRequestException("余额不足"); // 生成激活码 + CommonLog.infoNewTraceId("生成激活码"); JSONArray array = activationCodeRequestApi.getActivationCode(codeNum, codeType, name); if (CollUtil.isNotEmpty(array)) { // 扣费 + CommonLog.info("生成激活码成功,开始扣费"); companyService.updateUserBalanceByCompanyId(totalPrice, company.getId()); // 插入激活码记录 List list = new ArrayList<>(); @@ -72,6 +78,7 @@ public class ActivationCodeServiceImpl implements ActivationCodeService { ActivationRecord activationRecord = new ActivationRecord((String) obj, currentUserId, codeType); list.add(activationRecord); } + CommonLog.info("扣费成功,插入记录结束"); activationCodeRepository.saveAll(list); } } diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/LabelOrganizeServiceImpl.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/LabelOrganizeServiceImpl.java index 25396ca1..16498e7d 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/LabelOrganizeServiceImpl.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/LabelOrganizeServiceImpl.java @@ -15,7 +15,6 @@ import com.baiye.util.QueryHelp; import com.baiye.util.SecurityUtils; import com.baiye.util.RequestUtils; import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Pageable; @@ -26,7 +25,6 @@ import javax.transaction.Transactional; import java.util.*; import java.util.stream.Collectors; -@Slf4j @Service @RequiredArgsConstructor public class LabelOrganizeServiceImpl implements LabelOrganizeService { diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/OrganizeServiceImpl.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/OrganizeServiceImpl.java index ce96ef55..65e15259 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/OrganizeServiceImpl.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/OrganizeServiceImpl.java @@ -3,6 +3,7 @@ package com.baiye.modules.platform.service.impl; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.ListUtil; import cn.hutool.core.util.ObjectUtil; +import com.baiye.common.CommonLog; import com.baiye.constant.DefaultNumberConstants; import com.baiye.constant.RoleNumberConstants; import com.baiye.exception.BadRequestException; @@ -30,7 +31,6 @@ import com.baiye.modules.telemarkting.service.ExtensionNumberService; import com.baiye.util.*; import com.google.common.collect.Lists; import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; import org.springframework.cache.annotation.CacheEvict; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; @@ -46,7 +46,6 @@ import java.util.stream.Collectors; @Service @RequiredArgsConstructor -@Slf4j public class OrganizeServiceImpl implements OrganizeService { private final OrganizeRepository organizeRepository; @@ -78,12 +77,14 @@ public class OrganizeServiceImpl implements OrganizeService { Set organizeUserIds = findOrganizeUserIds(); for (Organize organize : organizeList) { if (organizeUserIds.contains(organize.getUserId())) { + CommonLog.error("用户已经分配到组"); throw new BadRequestException("用户已经分配到组"); } organize.setCreateBy(SecurityUtils.getCurrentUserId()); Organize saveOrganize = organizeRepository.save(organize); //添加分机号 if (organize.getCallMode() == 1) { + CommonLog.infoNewTraceId("添加分机号"); extensionNumberService.assignExtensionNum(saveOrganize.getId(), organize.getUserId()); } // 添加小组成员信息 @@ -91,11 +92,13 @@ public class OrganizeServiceImpl implements OrganizeService { organizeUser.setOrganizeId(saveOrganize.getId()); Long roleId = Collections.min(roleService.findByUsersId(organize.getUserId()).stream().map(RoleSmallDto::getId).collect(Collectors.toList())); if (!roleId.equals(RoleNumberConstants.MINUS_NINE_NUMBER)) { + CommonLog.error("指定组长不是组长角色"); throw new BadRequestException("指定组长必须是组长角色"); } organizeUser.setUserId(organize.getUserId()); organizeUser.setIsLeader(true); organizeUser.setCreateBy(SecurityUtils.getCurrentUserId()); + CommonLog.infoNewTraceId("添加小组成员信息"); organizeUserRepository.save(organizeUser); // 分配任务时创建组调用返回小组ID saveUserId = saveOrganize.getId(); @@ -116,15 +119,18 @@ public class OrganizeServiceImpl implements OrganizeService { if (!organizeUser.getUserId().equals(organize.getUserId())) { Long roleId = Collections.min(roleService.findByUsersId(organize.getUserId()).stream().map(RoleSmallDto::getId).collect(Collectors.toList())); if (!roleId.equals(RoleNumberConstants.MINUS_NINE_NUMBER)) { + CommonLog.error("选择的组长不是组长角色用户"); throw new BadRequestException("请选择组长角色的用户"); } // 替换组长-资源替换 + CommonLog.infoNewTraceId("修改组长资源"); ResponseEntity response = sourceClueClient.updateMember(organizeUser.getUserId(), organize.getUserId()); if (response.getStatusCode().value() != 200) throw new BadRequestException("组长修改失败"); extensionUserRepository.updateByMember(organizeUser.getUserId(), organize.getUserId()); } //添加(删除)分机号 if (organize.getCallMode() != null && !organize.getCallMode().equals(updateOrganize.getCallMode())) { + CommonLog.infoNewTraceId("操作分机号"); List organizeList = organizeUserRepository.findByOrganizeId(organize.getId()); if (organize.getCallMode() == 1) { organizeList.forEach(oe -> extensionNumberService.assignExtensionNum(oe.getOrganizeId(), oe.getUserId())); @@ -132,6 +138,7 @@ public class OrganizeServiceImpl implements OrganizeService { extensionNumberService.unbindExtension(updateOrganize.getId()); } } + CommonLog.infoNewTraceId("修改组信息"); if (organize.getOrganizeName() != null) { updateOrganize.setOrganizeName(organize.getOrganizeName()); updateOrganize.setCallMode(organize.getCallMode()); @@ -146,6 +153,7 @@ public class OrganizeServiceImpl implements OrganizeService { organizeRepository.save(updateOrganize); } + CommonLog.infoNewTraceId("修改组用户信息"); if (organize.getUserId() != null) { // 修改所有组员的父ID(组长用户ID) organizeUserRepository.updateUserId(organize.getId(), organize.getUserId()); @@ -181,6 +189,7 @@ public class OrganizeServiceImpl implements OrganizeService { Set organizeUserIds = findOrganizeUserIds(); OrganizeUser organizeUserByUserId = organizeUserRepository.findByUserId(currentUserId); if (organizeUserByUserId == null) { + CommonLog.error("用户还未分配到组内"); throw new BadRequestException("用户未分配到组,请创建小组"); } Long organizeId = organizeUserByUserId.getOrganizeId(); @@ -211,8 +220,10 @@ public class OrganizeServiceImpl implements OrganizeService { // 替换组员 organizeUserRepository.updateUser(userId, replaceUserId); // 组员资源替换 + CommonLog.info("替换组员资源"); sourceClueClient.updateMember(userId, replaceUserId); } else { + CommonLog.info("重新分配资源"); // 删除组员 organizeUserRepository.deleteByUserId(userId); // 不替换组员操作(直接删除),所属资源再次分配给所有组员 @@ -261,6 +272,7 @@ public class OrganizeServiceImpl implements OrganizeService { organizeUserAll.forEach(organizeUser -> userList.add(organizeUser.getUserId())); organizeSaveDTO.getOrganizeList().forEach(o -> { if (o.getId() == null && userList.contains(o.getUserId())) { + CommonLog.error("组长重复"); throw new BadRequestException("组长不能重复"); } }); @@ -294,6 +306,7 @@ public class OrganizeServiceImpl implements OrganizeService { if (CollUtil.isNotEmpty(labelList)) { task.setBaseLabel(labelList); } + CommonLog.info("修改任务"); taskRepository.save(task); // 分配任务引擎 DistributeDTO distributeDTO = new DistributeDTO(); @@ -302,12 +315,14 @@ public class OrganizeServiceImpl implements OrganizeService { List data; distributeDTO.setWeights(weights); distributeDTO.setIsWeight(true); + CommonLog.infoNewTraceId("调用分配引擎,查询分配线索"); CommonResponse> commonResponse = assignDataClient.dataDistribution(distributeDTO); if (commonResponse.getStatus() == 1) { throw new BadRequestException(commonResponse.getMsg()); } data = commonResponse.getData(); // 线索更新 + CommonLog.infoNewTraceId("线索更新"); if (data != null && data.size() > 0) { int index = 0; for (DistributeResponseDTO distributeResponseDTO : data) { @@ -499,12 +514,14 @@ public class OrganizeServiceImpl implements OrganizeService { clueQueryCriteria.setOrganizeId(organizeId); clueQueryCriteria.setUserIds(userIds); clueQueryCriteria.setTaskId(taskId); + CommonLog.infoNewTraceId("调用服务,分配资源"); ResponseEntity rse = sourceClueClient.queryOrganizeIdList(clueQueryCriteria); if (rse.getBody() != null && !rse.getBody().equals("success")) { UserDto user = userService.findById(Long.parseLong(rse.getBody())); throw new BadRequestException(user.getNickName() + "比例过低,分配数量不能低于0"); } //修改小组任务信息 + CommonLog.infoNewTraceId("修改小组任务信息"); TaskOrganize updateTaskOrganize = taskOrganizeRepository.findByOrganizeIdAndTaskId(organizeId, taskId); updateTaskOrganize.setTaskStatus(1); updateTaskOrganize.setBeginTime(organizeMemberDistributionDTO.getBeginTime()); @@ -779,8 +796,8 @@ public class OrganizeServiceImpl implements OrganizeService { } else { //2、替换人是组员 List organizeUserList = organizeUserRepository.findByUserIdIn(ListUtil.of(userId, replaceUserId)); - OrganizeUser userOrganizeUser = organizeUserList.get(DefaultNumberConstants.ONE_NUMBER); - OrganizeUser repOrganizeUser = organizeUserList.get(DefaultNumberConstants.ZERO_NUMBER); + OrganizeUser userOrganizeUser = organizeUserList.get(DefaultNumberConstants.ZERO_NUMBER); + OrganizeUser repOrganizeUser = organizeUserList.get(DefaultNumberConstants.ONE_NUMBER); userOrganizeUser.setUserId(replaceUserId); repOrganizeUser.setUserId(userId); organizeUserRepository.saveAll(ListUtil.of(userOrganizeUser, repOrganizeUser)); @@ -816,6 +833,7 @@ public class OrganizeServiceImpl implements OrganizeService { } } // 分机号变动 + CommonLog.infoNewTraceId("分机号变动"); extensionNumberService.extensionNumberConvert(userId, replaceUserId, organizeId); // 资源所属组相互转换 Map map = new HashMap<>(); @@ -824,6 +842,7 @@ public class OrganizeServiceImpl implements OrganizeService { OrganizeUser organizeUser = organizeUserRepository.findByUserId(replaceUserId); map.put(replaceUserId, organizeUser.getOrganizeId()); } + CommonLog.infoNewTraceId("资源所属组相互转换"); ResponseEntity response = sourceClueClient.updateClueOrganize(map); if (response.getStatusCode().value() != 200) throw new BadRequestException("修改失败"); } diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/PayFatherTemplateServiceImpl.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/PayFatherTemplateServiceImpl.java index a627fc10..82b90f48 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/PayFatherTemplateServiceImpl.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/PayFatherTemplateServiceImpl.java @@ -15,7 +15,6 @@ import com.baiye.util.PageUtil; import com.baiye.util.QueryHelp; import com.baiye.util.RequestUtils; import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Pageable; @@ -34,7 +33,6 @@ import java.util.stream.Collectors; */ @Service @RequiredArgsConstructor -@Slf4j public class PayFatherTemplateServiceImpl implements PayFatherTemplateService { private final PayFatherTemplateRepository payFatherTemplateRepository; diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/TaskServiceImpl.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/TaskServiceImpl.java index 9813e200..e308e69b 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/TaskServiceImpl.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/platform/service/impl/TaskServiceImpl.java @@ -2,11 +2,11 @@ package com.baiye.modules.platform.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; +import com.baiye.common.CommonLog; import com.baiye.constant.ClueTypeConstants; import com.baiye.constant.DefaultNumberConstants; import com.baiye.constant.KeyFieldConstants; @@ -30,7 +30,6 @@ import com.baiye.util.QueryHelp; import com.baiye.util.RedisUtils; import com.baiye.util.SecurityUtils; import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; import org.springframework.cache.annotation.CachePut; import org.springframework.cache.annotation.Cacheable; @@ -50,7 +49,6 @@ import java.util.stream.Collectors; */ @Service @RequiredArgsConstructor -@Slf4j public class TaskServiceImpl implements TaskService { private final TaskRepository taskRepository; @@ -300,6 +298,11 @@ public class TaskServiceImpl implements TaskService { @Override public Set queryTaskId(TaskQueryCriteria taskQueryCriteria) { + Boolean isManager = SecurityUtils.getCurrentUser().getUser().getIsManager(); + Long whichUserId = SecurityUtils.getCurrentUser().getUser().getWhichUserId(); + if (isManager != null && !isManager && whichUserId != null){ + taskQueryCriteria.setCreateBy(whichUserId); + } List taskDtoList = taskMapper.toDto(taskRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root, taskQueryCriteria, criteriaBuilder))); if (CollUtil.isNotEmpty(taskDtoList)) { return taskDtoList.stream().map(TaskDto::getId).collect(Collectors.toSet()); @@ -379,7 +382,6 @@ public class TaskServiceImpl implements TaskService { @Transactional(rollbackOn = Exception.class) public void updateTask(Task task) { if (task.getId() != null) { - log.info("==================== task id {} date time {} ====================", task.getId(), DateUtil.date()); Task updateTask = taskRepository.findById(task.getId()).orElseGet(Task::new); if (ObjectUtil.isNotNull(updateTask) && updateTask.getId() != null) { if (task.getRemark() != null) { @@ -422,7 +424,7 @@ public class TaskServiceImpl implements TaskService { @Override public void sendMessage(String message, Long userId, String type) { - + CommonLog.infoUser("websocket发送信息", userId); Map map = new HashMap<>(); map.put("message", message); map.put("type", type); diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/domain/LogElasticSearchEntity.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/domain/LogElasticSearchEntity.java index 932ac48f..b2a88663 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/domain/LogElasticSearchEntity.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/domain/LogElasticSearchEntity.java @@ -44,7 +44,7 @@ public class LogElasticSearchEntity { /** 请求ip */ // @Field(value = "host", type = FieldType.Text) - @Field(value = "host") +// @Field(value = "host") private String reqIp; /** 请求地址 */ @@ -59,6 +59,8 @@ public class LogElasticSearchEntity { private String userName; + private String systemType; + /** 创建日期 */ // @Field(value = "@timestamp",name = "@timestamp", type = FieldType.Date, format = DateFormat.custom, // pattern = "uuuu-MM-dd'T'HH:mm:ss.SSSX") diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/dto/LogElasticSearchCriteria.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/dto/LogElasticSearchCriteria.java index e0b68948..13ce4bd7 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/dto/LogElasticSearchCriteria.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/dto/LogElasticSearchCriteria.java @@ -18,7 +18,7 @@ public class LogElasticSearchCriteria { private String level; - private String host; + private String reqIp; private String businessPartyType; @@ -26,5 +26,7 @@ public class LogElasticSearchCriteria { private String userName; + private String systemType; + private List createTime; } diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/dto/LogElasticSearchDTO.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/dto/LogElasticSearchDTO.java index 433dab3c..342e90fa 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/dto/LogElasticSearchDTO.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/dto/LogElasticSearchDTO.java @@ -40,6 +40,8 @@ public class LogElasticSearchDTO implements Serializable { private String userName; + private String systemType; + /** 创建日期 */ // @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") //格式化后端传给前端展示的日期 // @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") //格式化前端传来的String类型的日期 diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/impl/LogServiceImpl.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/impl/LogServiceImpl.java index 744594d0..af9c4375 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/impl/LogServiceImpl.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/impl/LogServiceImpl.java @@ -201,8 +201,8 @@ public class LogServiceImpl implements LogService { if (StringUtils.isNotBlank(query.getLevel())) { filter.must(QueryBuilders.termQuery("level", query.getLevel())); } - if (StringUtils.isNotBlank(query.getHost())) { - filter.must(QueryBuilders.termQuery("host", query.getHost())); + if (StringUtils.isNotBlank(query.getReqIp())) { + filter.must(QueryBuilders.termQuery("reqIp", query.getReqIp())); } if (query.getUserId() != null) { filter.must(QueryBuilders.termQuery("userId", query.getUserId())); @@ -213,6 +213,9 @@ public class LogServiceImpl implements LogService { if (StringUtils.isNotBlank(query.getUserName())) { filter.must(QueryBuilders.matchQuery("userName", query.getUserName())); } + if (StringUtils.isNotBlank(query.getSystemType())) { + filter.must(QueryBuilders.termQuery("systemType", query.getSystemType())); + } if (StringUtils.isNotBlank(query.getTraceId())) { filter.must(QueryBuilders.matchPhrasePrefixQuery("traceId", query.getTraceId())); sort = Sort.by(Sort.Direction.ASC, "@timestamp"); diff --git a/ad-platform-manage/ad-platform-management/src/main/resources/config/application-prod.yml b/ad-platform-manage/ad-platform-management/src/main/resources/config/application-prod.yml index bc27c5f3..4544e6fe 100644 --- a/ad-platform-manage/ad-platform-management/src/main/resources/config/application-prod.yml +++ b/ad-platform-manage/ad-platform-management/src/main/resources/config/application-prod.yml @@ -8,6 +8,11 @@ spring: database: 2 host: 127.0.0.1 timeout: 5000 + elasticsearch: + rest: + uris: 127.0.0.1:9200 + read-timeout: 30s + connection-timeout: 5s datasource: druid: db-type: com.alibaba.druid.pool.DruidDataSource @@ -214,4 +219,4 @@ channel: id: 11 logstash: - url: localhost:5044 + url: 127.0.0.1:5044 diff --git a/ad-platform-pojo/src/main/java/com/baiye/model/entity/BaseTask.java b/ad-platform-pojo/src/main/java/com/baiye/model/entity/BaseTask.java index 7586daad..48a736f0 100644 --- a/ad-platform-pojo/src/main/java/com/baiye/model/entity/BaseTask.java +++ b/ad-platform-pojo/src/main/java/com/baiye/model/entity/BaseTask.java @@ -44,7 +44,7 @@ public class BaseTask implements Serializable { @Column(name = "is_distribution") private Integer isDistribution; - @ApiModelProperty(value = "此次任务是否加密线索手机号 0:不加密 1:加密") + @ApiModelProperty(value = "此次任务是否加密线索手机号 0:不加密 1:加密 2:随机字符串") @Column(name = "encryption_type") private Integer encryptionType; diff --git a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/controller/ClueController.java b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/controller/ClueController.java index ef534642..d6faaf85 100644 --- a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/controller/ClueController.java +++ b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/controller/ClueController.java @@ -46,30 +46,35 @@ public class ClueController { @ApiOperation("批量更新组信息,小组任务分配更新") @PostMapping("/batchUpdateOrganize") + @Log("批量更新组信息,小组任务分配更新") public ResponseEntity batchUpdateOrganize(@RequestBody DistributeResponseDTO distributeResponseDTO) { return new ResponseEntity<>(clueService.batchUpdateOrganize(distributeResponseDTO), HttpStatus.OK); } @ApiOperation("修改资源组员关系") @GetMapping("/updateMember") + @Log("修改资源组员关系") public ResponseEntity updateMember(@RequestParam("userId") Long userId, @RequestParam(value = "replaceUserId") Long replaceUserId) { return new ResponseEntity<>(clueService.updateMember(userId, replaceUserId), HttpStatus.OK); } @ApiOperation("修改组") @GetMapping("/updateOrganize") + @Log("修改资源所属组") public void updateOrganize(@RequestParam("organizeId") Long organizeId, @RequestParam("replaceOrganizeId") Long replaceOrganizeId) { clueService.updateOrganize(organizeId, replaceOrganizeId); } @ApiOperation("(小组表单任务)组长分配组员资源") @PostMapping("/queryOrganizeIdList") + @Log("(小组表单任务)组长分配组员资源") public ResponseEntity leaderDistribute(@RequestBody ClueQueryCriteria clueQueryCriteria) { return new ResponseEntity<>(clueService.leaderDistribute(clueQueryCriteria), HttpStatus.OK); } @ApiOperation("资源ID批量更新人员(动态任务分配)") @PostMapping("/updateBatchMember") + @Log("资源ID批量更新人员(动态任务分配)") public CommonResponse updateBatchMember(@RequestBody ClueQueryCriteria clueQueryCriteria) { clueService.updateBatchMember(clueQueryCriteria); return CommonResponse.createBySuccess(); @@ -102,6 +107,7 @@ public class ClueController { @ApiOperation("更新资源信息") @PostMapping("/update") @Inner(value = false) + @Log("更新资源信息") public CommonResponse update(@Validated @RequestBody ClueMiddle clueMiddle) { clueService.update(clueMiddle); return CommonResponse.createBySuccess(); @@ -127,6 +133,7 @@ public class ClueController { @ApiOperation("删除人上传资源") @DeleteMapping("/delIndividualClue") + @Log("删除人上传资源") public CommonResponse delIndividualClue(@RequestBody Long clueId) { clueService.delIndividualClue(clueId); return CommonResponse.createBySuccess(); @@ -134,12 +141,14 @@ public class ClueController { @ApiOperation("删除所有关联数据") @PostMapping("/delClueAll") + @Log("删除所有关联数据") public ResponseEntity delClueAll(@RequestBody Set taskIds) { return new ResponseEntity<>(clueService.delClueAll(taskIds), HttpStatus.OK); } @ApiOperation("删除用户所有关联数据") @GetMapping("/delClueByUser") + @Log("删除用户所有关联数据") public ResponseEntity> delClueByUser(@RequestParam("userId") Long userId) { return new ResponseEntity<>(clueService.delClueByUser(userId), HttpStatus.OK); } @@ -152,6 +161,7 @@ public class ClueController { @ApiOperation("撤回(动态任务)资源") @PostMapping("/withdrawSource") + @Log("撤回(动态任务)资源") public ResponseEntity withdrawSource(@RequestBody ClueQueryCriteria clueQueryCriteria) { return new ResponseEntity<>(clueService.withdrawSource(clueQueryCriteria), HttpStatus.OK); } @@ -187,6 +197,7 @@ public class ClueController { @PostMapping("/dynamic/task") @ApiOperation("表单上传动态任务") + @Log("表单上传动态任务") public CommonResponse insertDynamicTask(@Validated @RequestBody DynamicTaskDto dynamicTaskDto) { clueService.insertDynamicTask(dynamicTaskDto); return CommonResponse.createBySuccess(); diff --git a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/controller/ClueRecordController.java b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/controller/ClueRecordController.java index 51694944..cef4a4a9 100644 --- a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/controller/ClueRecordController.java +++ b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/controller/ClueRecordController.java @@ -1,5 +1,6 @@ package com.baiye.module.controller; +import com.baiye.annotation.Log; import com.baiye.http.CommonResponse; import com.baiye.module.service.ClueRecordService; import com.baiye.module.service.dto.ClueRecordCriteria; @@ -30,6 +31,7 @@ public class ClueRecordController { @ApiOperation("审核文件") @PostMapping("/audit") + @Log("审核文件") public CommonResponse auditFile(@RequestBody ClueRecordQueryCriteria clueRecordQueryCriteria){ clueRecordService.auditFile(clueRecordQueryCriteria); return CommonResponse.createBySuccess(); @@ -43,6 +45,7 @@ public class ClueRecordController { @ApiOperation("导出资源记录") @GetMapping("/queryRecordList/download") + @Log("导出资源记录") public void exportRecordList(HttpServletResponse response, ClueRecordCriteria clueRecordCriteria) { clueRecordService.exportRecordList(response, clueRecordCriteria); } diff --git a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/controller/ConductRecordController.java b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/controller/ConductRecordController.java index d42ccf8f..b526a965 100644 --- a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/controller/ConductRecordController.java +++ b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/controller/ConductRecordController.java @@ -1,5 +1,6 @@ package com.baiye.module.controller; +import com.baiye.annotation.Log; import com.baiye.http.CommonResponse; import com.baiye.module.entity.ConductRecord; import com.baiye.module.service.ConductRecordService; @@ -25,6 +26,7 @@ public class ConductRecordController { @ApiOperation("新增记录") @PostMapping("/saveRecord") + @Log("新增记录") public CommonResponse saveRecord(@Validated({AddGroup.class}) @RequestBody ConductRecord conductRecord){ conductRecordService.saveRecord(conductRecord); return CommonResponse.createBySuccess(); @@ -32,6 +34,7 @@ public class ConductRecordController { @ApiOperation("删除记录") @GetMapping("/del") + @Log("删除记录") public CommonResponse delRecord(@RequestParam(value = "id") Long id) { conductRecordService.delRecord(id); return CommonResponse.createBySuccess(); diff --git a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/controller/UploadFileController.java b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/controller/UploadFileController.java index e3888449..a5905c8e 100644 --- a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/controller/UploadFileController.java +++ b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/controller/UploadFileController.java @@ -1,5 +1,6 @@ package com.baiye.module.controller; +import com.baiye.annotation.Log; import com.baiye.http.CommonResponse; import com.baiye.http.ResponseCode; import com.baiye.module.service.UploadFileService; @@ -33,13 +34,15 @@ public class UploadFileController { */ @ApiOperation("文件上传") @PostMapping("/fileUpload") + @Log("文件上传") public ResponseEntity singleFileUpload(@RequestParam("file") MultipartFile[] file, @RequestParam(value = "uploadType") Integer uploadType, @RequestParam(value = "taskId", required = false) Long taskId, + @RequestParam(value = "encryptionType", required = false) Integer encryptionType, @RequestParam(value = "userId") Long userId) { if (file.length > 0) { - return uploadFileService.singleFileUpload(file, uploadType, userId, taskId); + return uploadFileService.singleFileUpload(file, uploadType, userId, taskId, encryptionType); } return new ResponseEntity<>(CommonResponse.createBySuccess(ResponseCode.EMPTY_ARGUMENT.getDesc()), HttpStatus.OK); } @@ -51,6 +54,7 @@ public class UploadFileController { */ @ApiOperation("模板下载") @GetMapping("/downLoadTemplate") + @Log("模板下载") public ResponseEntity downLoadTemplate(@RequestParam("downLoadType") Integer downLoadType) { switch (downLoadType) { case 0: diff --git a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/listener/DynamicTaskListener.java b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/listener/DynamicTaskListener.java index 88d39046..a980a1f2 100644 --- a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/listener/DynamicTaskListener.java +++ b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/listener/DynamicTaskListener.java @@ -3,6 +3,7 @@ package com.baiye.module.listener; import cn.hutool.core.collection.CollUtil; import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.event.AnalysisEventListener; +import com.baiye.common.CommonLog; import com.baiye.constant.DefaultNumberConstants; import com.baiye.constant.FileConstant; import com.baiye.module.entity.Clue; @@ -10,14 +11,12 @@ import com.baiye.module.listener.dto.BaseExcelListenerDto; import com.baiye.module.listener.dto.DynamicTaskListenerDto; import com.baiye.module.service.ClueService; import com.baiye.util.DecryptPnoUtil; -import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; import org.springframework.beans.BeanUtils; import java.util.ArrayList; import java.util.List; -@Slf4j public class DynamicTaskListener extends AnalysisEventListener { public final List rows = new ArrayList<>(); @@ -29,7 +28,7 @@ public class DynamicTaskListener extends AnalysisEventListener { public final List rows = new ArrayList<>(); @@ -31,7 +30,7 @@ public class TokerListener extends AnalysisEventListener { private static ClueService clueService; public TokerListener(ClueService clueService, BaseExcelListenerDto baseExcelListenerDto) { - log.info("==============开始导入拓客动态任务表单:{}", Thread.currentThread().getName()); + CommonLog.info("开始导入拓客动态任务表单"); this.clueService = clueService; this.baseExcelListenerDto = baseExcelListenerDto; } diff --git a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/listener/ZdyListener.java b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/listener/ZdyListener.java index 370ea5d2..eba609e4 100644 --- a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/listener/ZdyListener.java +++ b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/listener/ZdyListener.java @@ -3,20 +3,19 @@ package com.baiye.module.listener; import cn.hutool.core.collection.CollUtil; import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.event.AnalysisEventListener; +import com.baiye.common.CommonLog; import com.baiye.constant.DefaultNumberConstants; import com.baiye.constant.FileConstant; import com.baiye.module.entity.Clue; import com.baiye.module.listener.dto.BaseExcelListenerDto; import com.baiye.module.listener.dto.ZdyListenerDto; import com.baiye.module.service.ClueService; -import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; import org.springframework.beans.BeanUtils; import java.util.ArrayList; import java.util.List; -@Slf4j public class ZdyListener extends AnalysisEventListener { public final List rows = new ArrayList<>(); @@ -27,7 +26,7 @@ public class ZdyListener extends AnalysisEventListener { private static ClueService clueService; public ZdyListener(ClueService clueService, BaseExcelListenerDto baseExcelListenerDto) { - log.info("==============开始导入自定义表单:{}", Thread.currentThread().getName()); + CommonLog.info("开始导入自定义表单"); this.clueService = clueService; this.baseExcelListenerDto = baseExcelListenerDto; } diff --git a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/listener/dto/BaseExcelListenerDto.java b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/listener/dto/BaseExcelListenerDto.java index c16ccb5c..1be79018 100644 --- a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/listener/dto/BaseExcelListenerDto.java +++ b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/listener/dto/BaseExcelListenerDto.java @@ -24,10 +24,21 @@ public class BaseExcelListenerDto { @ApiModelProperty(value = "文件名") private String oneFileName; + @ApiModelProperty(value = "此次任务是否加密线索手机号 0:不加密 1:加密 2:随机字符串") + private Integer encryptionType; + public BaseExcelListenerDto( Long userId, Integer origin, Long taskId, String oneFileName) { this.userId = userId; this.origin = origin; this.taskId = taskId; this.oneFileName = oneFileName; } + + public BaseExcelListenerDto(Long clueRecordId, Long userId, Integer origin, Long taskId, String oneFileName) { + this.clueRecordId = clueRecordId; + this.userId = userId; + this.origin = origin; + this.taskId = taskId; + this.oneFileName = oneFileName; + } } diff --git a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/UploadFileService.java b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/UploadFileService.java index 68414f8f..38b66eb1 100644 --- a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/UploadFileService.java +++ b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/UploadFileService.java @@ -8,5 +8,5 @@ public interface UploadFileService { /** * 文件上传 */ - ResponseEntity singleFileUpload(MultipartFile[] file, Integer uploadType, Long userId, Long taskId); + ResponseEntity singleFileUpload(MultipartFile[] file, Integer uploadType, Long userId, Long taskId, Integer taskEncryptionType); } diff --git a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/impl/ClueRecordServiceImpl.java b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/impl/ClueRecordServiceImpl.java index b7eab129..df18a8d7 100644 --- a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/impl/ClueRecordServiceImpl.java +++ b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/impl/ClueRecordServiceImpl.java @@ -1,6 +1,7 @@ package com.baiye.module.service.impl; import cn.hutool.core.collection.CollUtil; +import com.baiye.common.CommonLog; import com.baiye.constant.DefaultNumberConstants; import com.baiye.feign.UserClient; import com.baiye.http.CommonResponse; @@ -96,7 +97,7 @@ public class ClueRecordServiceImpl implements ClueRecordService { List clueRecords = clueRecordRepository.findByTaskIdAndIsPass(taskId, DefaultNumberConstants.ONE_NUMBER); // 异步读取文件并更新任务 if (CollUtil.isNotEmpty(clueRecords)) { - fileAnalysisTask.runFileAnalysisTask(clueRecords, clueRecords.get(0).getOldFile(), false); + fileAnalysisTask.runFileAnalysisTask(clueRecords, clueRecords.get(0).getOldFile(), false, CommonLog.getTraceId(), null); } } clueRecordRepository.updateIsPassByTaskIdIn(taskIdList, DefaultNumberConstants.ZERO_NUMBER); diff --git a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/impl/ClueServiceImpl.java b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/impl/ClueServiceImpl.java index 62825089..d350ac0a 100644 --- a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/impl/ClueServiceImpl.java +++ b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/impl/ClueServiceImpl.java @@ -19,13 +19,11 @@ import com.baiye.module.entity.*; import com.baiye.module.listener.dto.BaseExcelListenerDto; import com.baiye.module.request.ReqOceanEngineApi; import com.baiye.module.service.ClueService; -import com.baiye.module.service.CompanyService; import com.baiye.module.service.dto.ClueRecordCriteria; import com.baiye.task.ClueBackupsTask; import com.baiye.util.*; import com.google.common.collect.Lists; import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.data.domain.Page; @@ -41,7 +39,6 @@ import java.util.*; import java.util.stream.Collectors; @Service -@Slf4j @RequiredArgsConstructor public class ClueServiceImpl implements ClueService { @@ -66,7 +63,6 @@ public class ClueServiceImpl implements ClueService { private final AllCallInfoRepository allCallInfoRepository; private final AssignDataClient assignDataClient; - private final CompanyService companyService; private final TurnCrmLogRepository turnCrmLogRepository; private final ReportTokerRepository reportTokerRepository; private final ClueBackupsTask clueBackupsTask; @@ -210,6 +206,9 @@ public class ClueServiceImpl implements ClueService { taskQueryCriteria.setCreateBy(clueQueryCriteria.getMemberId()); taskQueryCriteria.setBlurry(clueQueryCriteria.getTaskName()); Set taskIds = findTaskId(taskQueryCriteria); + if (CollUtil.isEmpty(taskIds)) { + return PageUtil.toPage(new ArrayList<>(), DefaultNumberConstants.ZERO_NUMBER); + } clueQueryCriteria.setTaskIds(taskIds); } List userIds = organizeClient.findOrganizeIdByMember(clueQueryCriteria.getMemberId()).getBody(); @@ -365,6 +364,7 @@ public class ClueServiceImpl implements ClueService { * 拓客线索修改 */ private void executeTalkClue(ClueMiddle clueMiddle) { + CommonLog.info("拓客线索修改"); ClueTalk clueTalk = clueTalkRepository.findById(clueMiddle.getClueId()).orElseGet(ClueTalk::new); if (clueMiddle.getClueCallStatus() != null) { clueTalk.setClueCallStatus(clueMiddle.getClueCallStatus()); @@ -392,6 +392,7 @@ public class ClueServiceImpl implements ClueService { */ @Transactional(rollbackFor = Exception.class) public void callbackOceanEngine(Long clueId, Integer stage) { + CommonLog.infoNewTraceId("飞鱼回传"); OceanEngineClueId oceanEngineClue = oceanEngineClueIdRepository.findOceanEngineClueIdByLocalClueId(clueId); String oceanEngineClueId = oceanEngineClue.getOceanEngineClueId(); Long userId = oceanEngineClue.getUserId(); @@ -401,7 +402,7 @@ public class ClueServiceImpl implements ClueService { if (aBoolean) { oceanEngineClue.setStatus(DefaultNumberConstants.ONE_NUMBER); oceanEngineClueIdRepository.save(oceanEngineClue); - log.info("回传成功===="); + CommonLog.info("飞鱼回传成功"); } } } @@ -462,6 +463,7 @@ public class ClueServiceImpl implements ClueService { Long taskId = baseExcelListenerDto.getTaskId(); Long userId = baseExcelListenerDto.getUserId(); Integer origin = baseExcelListenerDto.getOrigin(); + Integer encryptionType = baseExcelListenerDto.getEncryptionType(); Integer taskNum; if (origin == DefaultNumberConstants.SIX_NUMBER) { taskNum = clueTalkRepository.findTaskNum(taskId); @@ -489,6 +491,7 @@ public class ClueServiceImpl implements ClueService { task.setTaskType(DefaultNumberConstants.ONE_NUMBER); task.setIsForm(DefaultNumberConstants.FIVE_NUMBER); } + if (encryptionType != null) task.setEncryptionType(encryptionType); ResponseEntity response = taskClient.saveTask(task); if (response.getStatusCode().value() != 200) throw new BadRequestException("创建任务失败"); } @@ -567,7 +570,7 @@ public class ClueServiceImpl implements ClueService { public void delete(List clueAll, Set clueIds) { //1、备份数据 - clueBackupsTask.clueBackups(clueAll); + clueBackupsTask.clueBackups(clueAll, SecurityUtils.getCurrentUserId(), CommonLog.getTraceId()); //2、删除资源数据 clueRepository.deleteAllByIdIn(clueIds); //3、删除跟进记录 @@ -608,7 +611,7 @@ public class ClueServiceImpl implements ClueService { } return findClueList(clueQueryCriteria, pageable); } else { - log.info("========================用户id为空============================"); + CommonLog.info("====用户id为空,刷新后重试"); throw new BadRequestException("刷新后重试"); } } @@ -810,6 +813,7 @@ public class ClueServiceImpl implements ClueService { */ public void clueBackFlow(ClueTalk clueTalk) { + CommonLog.infoNewTraceId("线索回流crm"); if (clueTalk.getMemberStatus() == DefaultNumberConstants.FOUR_NUMBER) { throw new BadRequestException("已经转为crm,请勿重复操作"); } @@ -896,7 +900,7 @@ public class ClueServiceImpl implements ClueService { task.setCreateBy(createBy); ResponseEntity response = taskClient.saveTask(task); if (response.getStatusCode().value() != 200) { - log.error("回流失败的管理员id== {}", createBy); + CommonLog.error("回流失败的管理员id==" + createBy); throw new BadRequestException("回流失败,请联系管理员"); } } @@ -1032,7 +1036,7 @@ public class ClueServiceImpl implements ClueService { private Map findClueList(ClueQueryCriteria clueQueryCriteria, Pageable pageable) { // 任务名模糊搜索时,没搜到就返回空数据 if (clueQueryCriteria.getTaskName() != null && CollUtil.isEmpty(clueQueryCriteria.getTaskIds())) { - return PageUtil.toPage(DefaultNumberConstants.ZERO_NUMBER, DefaultNumberConstants.ZERO_NUMBER); + return PageUtil.toPage(new ArrayList<>(), DefaultNumberConstants.ZERO_NUMBER); } clueQueryCriteria.setIsAdmin(true); List clueList = this.findClue(clueQueryCriteria, pageable); @@ -1149,7 +1153,7 @@ public class ClueServiceImpl implements ClueService { if (StringUtils.isNotBlank(phone)) { Boolean checkPhone = MobileUtil.checkPhone(phone); if (Boolean.FALSE.equals(checkPhone)) { - log.info("============== the exchange phone as {} =====================", phone); + CommonLog.info("==============the exchange phone as: " + phone); continue; } Clue clue = new Clue(); @@ -1164,7 +1168,7 @@ public class ClueServiceImpl implements ClueService { clueNumber++; } } - log.info("================= save clue size as {} =================", responseList.size()); + CommonLog.info("==============save clue size as: " + responseList.size()); return clueNumber; } diff --git a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/impl/UploadFileServiceImpl.java b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/impl/UploadFileServiceImpl.java index 29509679..daeee3ae 100644 --- a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/impl/UploadFileServiceImpl.java +++ b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/impl/UploadFileServiceImpl.java @@ -1,6 +1,7 @@ package com.baiye.module.service.impl; import cn.hutool.core.util.IdUtil; +import com.baiye.common.CommonLog; import com.baiye.constant.DefaultNumberConstants; import com.baiye.exception.BadRequestException; import com.baiye.feign.UserClient; @@ -50,7 +51,7 @@ public class UploadFileServiceImpl implements UploadFileService { @Override @SneakyThrows //处理异常try @Transactional(rollbackFor = Exception.class) - public ResponseEntity singleFileUpload(MultipartFile[] files, Integer uploadType, Long userId, Long taskId) { + public ResponseEntity singleFileUpload(MultipartFile[] files, Integer uploadType, Long userId, Long taskId, Integer taskEncryptionType) { List clueRecordList = new ArrayList<>(); String oneFileName = files[0].getOriginalFilename(); @@ -83,7 +84,7 @@ public class UploadFileServiceImpl implements UploadFileService { } if (!flag) { //异步读取文件并创建任务 - fileAnalysisTask.runFileAnalysisTask(clueRecordList, oneFileName, isCreateTask); + fileAnalysisTask.runFileAnalysisTask(clueRecordList, oneFileName, isCreateTask, CommonLog.getTraceId(), taskEncryptionType); } return new ResponseEntity<>(CommonResponse.createBySuccess(ResponseCode.SUCCESS), HttpStatus.OK); } diff --git a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/task/ClueBackupsTask.java b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/task/ClueBackupsTask.java index ab3e32e8..4753026b 100644 --- a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/task/ClueBackupsTask.java +++ b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/task/ClueBackupsTask.java @@ -2,6 +2,7 @@ package com.baiye.task; import cn.hutool.core.collection.CollUtil; import cn.hutool.json.JSONUtil; +import com.baiye.common.CommonLog; import com.baiye.constant.FileConstant; import com.baiye.model.dto.ClueDto; import com.baiye.module.dao.ClueBackupsRepository; @@ -29,8 +30,9 @@ public class ClueBackupsTask { @Transactional(rollbackFor = Exception.class) @Async(value = "SendBigDataTaskExecutor") - public void clueBackups(List clueAll) { + public void clueBackups(List clueAll, Long userId, String traceId) { if (CollUtil.isNotEmpty(clueAll)) { + CommonLog.infoUserTraceId("异步备份删除数据", userId, traceId); List list = new ArrayList<>(); for (ClueDto clue : clueAll) { ClueBackups clueBackups = new ClueBackups(); diff --git a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/task/FileAnalysisTask.java b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/task/FileAnalysisTask.java index 1487deaf..52bfd1e3 100644 --- a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/task/FileAnalysisTask.java +++ b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/task/FileAnalysisTask.java @@ -2,6 +2,7 @@ package com.baiye.task; import cn.hutool.core.collection.CollUtil; import com.alibaba.excel.EasyExcelFactory; +import com.baiye.common.CommonLog; import com.baiye.constant.DefaultNumberConstants; import com.baiye.constant.FileConstant; import com.baiye.feign.TaskClient; @@ -55,8 +56,9 @@ public class FileAnalysisTask { */ @Transactional(rollbackFor = Exception.class) @Async(value = "SendBigDataTaskExecutor") - public void runFileAnalysisTask(List clueRecords, String oneFileName, Boolean isCreateTask) { + public void runFileAnalysisTask(List clueRecords, String oneFileName, Boolean isCreateTask, String traceId, Integer taskEncryptionType) { if (CollUtil.isNotEmpty(clueRecords)) { + CommonLog.infoUserTraceId("异步上传文件", clueRecords.get(0).getCreateBy(), traceId); List recordIds = clueRecords.stream().map(ClueRecord::getId).collect(Collectors.toList()); try { for (ClueRecord clueRecord : clueRecords) { @@ -79,7 +81,7 @@ public class FileAnalysisTask { // 修改文件记录上传状态 this.updateClueRecord(recordIds, DefaultNumberConstants.TWO_NUMBER); } catch (Exception e) { - log.error("=========读取资源错误:,{}", e.getMessage()); + CommonLog.error("读取资源错误" + e.getMessage()); taskClient.sendMessage("导入资源错误,请检查数据格式后重新导入", clueRecords.get(0).getCreateBy(), "source_error"); this.updateClueRecord(recordIds, DefaultNumberConstants.ONE_NUMBER); } @@ -104,6 +106,7 @@ public class FileAnalysisTask { Long userId = clueRecords.get(0).getCreateBy(); if (taskId != null && userId != null && StringUtils.isNotBlank(oneFileName)) { BaseExcelListenerDto baseExcelListenerDto = new BaseExcelListenerDto(userId, uploadType, taskId, oneFileName); + baseExcelListenerDto.setEncryptionType(taskEncryptionType); clueService.saveTask(baseExcelListenerDto); } taskClient.sendMessage("文件上传成功", clueRecords.get(0).getCreateBy(), "create"); diff --git a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/task/FileTask.java b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/task/FileTask.java index c28390cc..b98ba2a4 100644 --- a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/task/FileTask.java +++ b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/task/FileTask.java @@ -3,6 +3,7 @@ package com.baiye.task; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; import cn.hutool.core.io.FileUtil; +import com.baiye.common.CommonLog; import com.baiye.module.dao.TurnCrmLogRepository; import com.baiye.util.FileZipUtil; import lombok.RequiredArgsConstructor; @@ -31,6 +32,7 @@ public class FileTask { @Scheduled(cron = "0 0 3 * * ? ") @Transactional(rollbackFor = Exception.class) public void compress() throws Exception { + CommonLog.info("---开始压缩文件夹---"); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); DateTime date = DateUtil.yesterday(); String path = URL + dateFormat.format(date); @@ -38,7 +40,6 @@ public class FileTask { if (directory) { FileZipUtil.zipFile(new File(path), "zip"); } - log.info("-----------------------------压缩文件夹开始时间{}-----------------------------", DateUtil.now()); } /** @@ -47,6 +48,7 @@ public class FileTask { @Scheduled(cron = "0 0 1 * * ? ") @Transactional(rollbackFor = Exception.class) public void emptyLog(){ + CommonLog.info("---清空日志---"); turnCrmLogRepository.deleteAll(); } } diff --git a/ad-platform-services/ad-platform-source/src/main/resources/application-prod.yml b/ad-platform-services/ad-platform-source/src/main/resources/application-prod.yml index ed4fcf4d..8b84f364 100644 --- a/ad-platform-services/ad-platform-source/src/main/resources/application-prod.yml +++ b/ad-platform-services/ad-platform-source/src/main/resources/application-prod.yml @@ -95,4 +95,4 @@ platform: logstash: - url: localhost:5044 + url: 127.0.0.1:5044