Переглянути джерело

Merge remote-tracking branch 'origin/test' into test

syh 4 роки тому
батько
коміт
a761f6de3d
32 змінених файлів з 278 додано та 158 видалено
  1. 42 3
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/MaterialInfoController.java
  2. 21 4
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/ProjectController.java
  3. 0 24
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/ProjectMemberController.java
  4. 1 1
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/SupplierWatermarkController.java
  5. 1 1
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/TestController.java
  6. 3 0
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/entity/Advertiser.java
  7. 1 1
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/entity/BytedanceAreaInfo.java
  8. 6 5
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/message/entity/SysMessage.java
  9. 0 1
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/aspect/DictAspect.java
  10. 0 1
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/SysDictController.java
  11. 8 3
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/SysAnnouncement.java
  12. 3 0
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/SysDepart.java
  13. 5 4
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/SysDictItem.java
  14. 6 4
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/SysLog.java
  15. 5 2
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/SysPermission.java
  16. 10 10
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/SysUser.java
  17. 0 2
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/wps/service/impl/WpsFileServiceImpl.java
  18. 20 12
      jeecg-boot-module-system/src/test/java/org/jeecg/SampleTest.java
  19. 7 7
      module-common/src/main/java/cn/com/ctop/common/module/entity/Project.java
  20. 1 1
      module-common/src/main/java/cn/com/ctop/common/module/service/IMaterialInfoService.java
  21. 45 35
      module-common/src/main/java/cn/com/ctop/common/module/service/impl/MaterialInfoServiceImpl.java
  22. 2 0
      module-ctop/src/main/java/cn/com/ctop/manage/modules/actor/entity/Actor.java
  23. 55 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/controller/BatchController.java
  24. 2 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/entity/KuaiShouVideoGet.java
  25. 0 7
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/service/IKuaishouInterfaceService.java
  26. 10 30
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/service/impl/KuaishouInterfaceServiceImpl.java
  27. 1 0
      module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/entity/ByteDanceCreative.java
  28. 5 0
      module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/entity/BytedanceEffectVideoInfo.java
  29. 5 0
      performance-appraisal/src/main/java/cn/com/ctop/performanceappraisal/entity/OptimizerRoleInfo.java
  30. 4 0
      performance-appraisal/src/main/java/cn/com/ctop/performanceappraisal/entity/Performance.java
  31. 4 0
      performance-appraisal/src/main/java/cn/com/ctop/performanceappraisal/entity/RolePerformancRraise.java
  32. 5 0
      performance-appraisal/src/main/java/cn/com/ctop/performanceappraisal/entity/RolePerformanceCommission.java

+ 42 - 3
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/MaterialInfoController.java

@@ -4,6 +4,7 @@ package org.jeecg.modules.ctop.controller;
 import cn.com.ctop.common.module.annotation.AutoLog;
 import cn.com.ctop.common.module.constant.CtopRoleCodeConstant;
 import cn.com.ctop.common.module.entity.*;
+import cn.com.ctop.common.module.enums.MaterialSupplierEnum;
 import cn.com.ctop.common.module.service.*;
 import cn.com.ctop.common.module.utils.Check;
 import cn.com.ctop.common.module.utils.JsonUtil;
@@ -25,7 +26,6 @@ import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.common.util.DateUtils;
-import org.jeecg.modules.ctop.service.IKuaiShouUploadService;
 import org.jeecg.modules.ctop.service.IProjectMemberService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
@@ -70,8 +70,47 @@ public class MaterialInfoController {
     private IProjectMemberService memberService;
     @Autowired
     private IMaterialImageInfoService iMaterialImageInfoService;
-    @Autowired
-    private IKuaiShouUploadService uploadService;
+
+
+    @GetMapping("/supplierWatermark")
+    public Result<String> supplierWatermark(String id) {
+        Result<String> result = new Result<>();
+        try {
+            if (Check.isNull(id)) {
+                throw new Exception("请选择素材");
+            }
+            MaterialInfo materialInfo = materialInfoService.getById(id);
+            if (Check.isNull(materialInfo)) {
+                throw new Exception("素材信息为空");
+            }
+            QueryWrapper<MaterialParameter> parameterQueryWrapper = new QueryWrapper<>();
+            parameterQueryWrapper.eq("material_id", materialInfo.getCode());
+            parameterQueryWrapper.last("limit 1");
+            MaterialParameter parameter = materialParameterService.getOne(parameterQueryWrapper);
+            if (Check.isNull(parameter)) {
+                throw new Exception("素材基本信息为空");
+            }
+
+            Long templateId = MaterialSupplierEnum.getTemplateIdBySize(Integer.valueOf(parameter.getWidth()), Integer.valueOf(parameter.getHeight()));
+            String s = null;
+            if (!Check.isNull(templateId)) {
+                s = materialInfoService.watermarkVideoBySupplierCode(materialInfo.getCode(), materialInfo.getUrl(), templateId);
+
+            }
+            if (Check.isNull(s)) {
+                result.setSuccess(false);
+                result.setMessage("水印生成失败");
+            } else {
+                result.setSuccess(true);
+                result.setResult(s);
+            }
+        } catch (Exception e) {
+            result.setSuccess(false);
+            result.setMessage(e.getMessage());
+        }
+
+        return result;
+    }
 
 
     @PostMapping("/correlationUpload")

+ 21 - 4
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/ProjectController.java

@@ -4,12 +4,10 @@ import cn.com.ctop.common.module.annotation.AutoLog;
 import cn.com.ctop.common.module.constant.CtopRoleCodeConstant;
 import cn.com.ctop.common.module.entity.MaterialInfo;
 import cn.com.ctop.common.module.entity.Project;
+import cn.com.ctop.common.module.entity.SupplierList;
 import cn.com.ctop.common.module.entity.UserAllocation;
 import cn.com.ctop.common.module.mapper.ProjectMapper;
-import cn.com.ctop.common.module.service.IMaterialInfoService;
-import cn.com.ctop.common.module.service.IProjectService;
-import cn.com.ctop.common.module.service.ISysRoleService;
-import cn.com.ctop.common.module.service.IUserAllocationService;
+import cn.com.ctop.common.module.service.*;
 import cn.com.ctop.common.module.utils.Check;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -156,6 +154,8 @@ public class ProjectController {
 
     @Autowired
     private ISysCategoryService sysCategoryService;
+    @Autowired
+    private ISupplierListService supplierListService;
 
     /**
      * 分页列表查询
@@ -202,6 +202,23 @@ public class ProjectController {
             queryWrapper.like("project_name", projectName);
         }
         IPage<Project> pageList = projectService.page(page, queryWrapper);
+        List<Project> records = pageList.getRecords();
+        if (!Check.isNull(records)) {
+            for (Project project1 : records) {
+                if (!Check.isNull(project1.getSupplierCode())) {
+                    QueryWrapper<SupplierList> supplierListQueryWrapper = new QueryWrapper<>();
+                    supplierListQueryWrapper.eq("supplier_code", project1.getSupplierCode());
+                    supplierListQueryWrapper.last("limit 1");
+                    SupplierList one = supplierListService.getOne(supplierListQueryWrapper);
+                    if (!Check.isNull(one)) {
+                        project1.setSupplierCode_dictText(one.getSupplierName());
+                    }
+                }
+
+
+            }
+
+        }
         result.setSuccess(true);
         result.setResult(pageList);
         return result;

+ 0 - 24
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/ProjectMemberController.java

@@ -1,6 +1,5 @@
 package org.jeecg.modules.ctop.controller;
 
-import cn.com.ctop.common.module.annotation.AutoLog;
 import cn.com.ctop.common.module.entity.Project;
 import cn.com.ctop.common.module.service.IProjectService;
 import cn.com.ctop.common.module.service.ISysRoleService;
@@ -11,7 +10,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.api.vo.Result;
@@ -58,8 +56,6 @@ public class ProjectMemberController {
      * @param projectId
      * @return
      */
-    @AutoLog(value = "项目成员-分页列表查询")
-    @ApiOperation(value = "项目成员-分页列表查询", notes = "项目成员-分页列表查询")
     @GetMapping(value = "/getMemberList")
     public Map<String, Object> getMemberList(String projectId) {
         Map<String, Object> map = new HashMap<>();
@@ -86,8 +82,6 @@ public class ProjectMemberController {
      * @param userId
      * @return
      */
-    @AutoLog(value = "项目成员-分页列表查询")
-    @ApiOperation(value = "项目成员-分页列表查询", notes = "项目成员-分页列表查询")
     @GetMapping(value = "/participateList")
     public Map<String, Object> participateList(String userId) {
         Map<String, Object> map = new HashMap<>();
@@ -140,8 +134,6 @@ public class ProjectMemberController {
      * @param req
      * @return
      */
-    @AutoLog(value = "项目成员-分页列表查询")
-    @ApiOperation(value = "项目成员-分页列表查询", notes = "项目成员-分页列表查询")
     @GetMapping(value = "/list")
     public Result<IPage<ProjectMember>> queryPageList(ProjectMember projectMember,
                                                       @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@@ -163,10 +155,6 @@ public class ProjectMemberController {
      * @param jsonObject
      * @return
      */
-
-
-    @AutoLog(value = "项目成员-添加")
-    @ApiOperation(value = "项目成员-添加", notes = "项目成员-添加")
     @PostMapping(value = "/batchAdd")
     public Result<ProjectMember> batchAdd(@RequestBody JSONObject jsonObject) {
         Result<ProjectMember> result = new Result<>();
@@ -221,8 +209,6 @@ public class ProjectMemberController {
      * @param projectMember
      * @return
      */
-    @AutoLog(value = "项目成员-添加")
-    @ApiOperation(value = "项目成员-添加", notes = "项目成员-添加")
     @PostMapping(value = "/add")
     public Result<ProjectMember> add(@RequestBody ProjectMember projectMember) {
         Result<ProjectMember> result = new Result<>();
@@ -242,8 +228,6 @@ public class ProjectMemberController {
      * @param projectMember
      * @return
      */
-    @AutoLog(value = "项目成员-编辑")
-    @ApiOperation(value = "项目成员-编辑", notes = "项目成员-编辑")
     @PutMapping(value = "/edit")
     public Result<ProjectMember> edit(@RequestBody ProjectMember projectMember) {
         Result<ProjectMember> result = new Result<>();
@@ -266,8 +250,6 @@ public class ProjectMemberController {
      * @param id
      * @return
      */
-    @AutoLog(value = "项目成员-通过id删除")
-    @ApiOperation(value = "项目成员-通过id删除", notes = "项目成员-通过id删除")
     @DeleteMapping(value = "/delete")
     public Result<Object> delete(@RequestParam(name = "id", required = true) String id) {
         try {
@@ -285,8 +267,6 @@ public class ProjectMemberController {
      * @param ids
      * @return
      */
-    @AutoLog(value = "项目成员-批量删除")
-    @ApiOperation(value = "项目成员-批量删除", notes = "项目成员-批量删除")
     @DeleteMapping(value = "/deleteBatch")
     public Result<ProjectMember> deleteBatch(@RequestParam(name = "ids", required = true) String ids) {
         Result<ProjectMember> result = new Result<>();
@@ -305,8 +285,6 @@ public class ProjectMemberController {
      * @param id
      * @return
      */
-    @AutoLog(value = "项目成员-通过id查询")
-    @ApiOperation(value = "项目成员-通过id查询", notes = "项目成员-通过id查询")
     @GetMapping(value = "/queryById")
     public Result<ProjectMember> queryById(@RequestParam(name = "id", required = true) String id) {
         Result<ProjectMember> result = new Result<>();
@@ -325,8 +303,6 @@ public class ProjectMemberController {
      *
      * @return
      */
-    @AutoLog(value = "头条视频报表-参与项目列表")
-    @ApiOperation(value = "头条视频报表-参与项目列表", notes = "头条视频报表-参与项目列表")
     @GetMapping(value = "/bytedanceProjectParticipateInList")
     public Result<List<ProjectMember>> bytedanceProjectParticipateInList() {
         Result<List<ProjectMember>> result = new Result<>();

+ 1 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/SupplierWatermarkController.java

@@ -43,7 +43,7 @@ import java.util.Map;
 @Slf4j
 @Api(tags = "供应商水印")
 @RestController
-@RequestMapping("/a12/supplierWatermark")
+@RequestMapping("/ctop/supplierWatermark")
 public class SupplierWatermarkController {
     @Autowired
     private ISupplierWatermarkService supplierWatermarkService;

+ 1 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/TestController.java

@@ -835,7 +835,7 @@ public class TestController {
 
             tokens.forEach(token -> {
 
-                kuaishouInterfaceService.getAppList2(token.getAccountId(),token.getAccessToken());
+                kuaishouInterfaceService.getAppList(token.getAccountId(),token.getAccessToken());
                 //suzhaoService.submit(new Runnable() {
                 //    @Override
                 //    public void run() {

+ 3 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/entity/Advertiser.java

@@ -1,5 +1,6 @@
 package org.jeecg.modules.ctop.entity;
 
+import cn.com.ctop.common.module.annotation.Dict;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
@@ -46,6 +47,7 @@ public class Advertiser {
      */
     @Excel(name = "行业ID", width = 15)
     @ApiModelProperty(value = "行业ID")
+    @Dict(dicCode = "id",dictTable="sys_category",dicText="name")
     private String industryId;
     private String industryCode;
     /**
@@ -53,6 +55,7 @@ public class Advertiser {
      */
     @Excel(name = "销售ID", width = 15)
     @ApiModelProperty(value = "销售ID")
+    @Dict(dicCode = "id",dictTable="sys_user",dicText="realname")
     private String saleId;
     /**
      * 销售ID

+ 1 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/entity/BytedanceAreaInfo.java

@@ -29,7 +29,7 @@ public class BytedanceAreaInfo {
     /**
      * id
      */
-    @TableId(type = IdType.UUID)
+    @TableId(type = IdType.AUTO)
     @ApiModelProperty(value = "id")
     private Integer id;
     /**

+ 6 - 5
jeecg-boot-module-system/src/main/java/org/jeecg/modules/message/entity/SysMessage.java

@@ -1,15 +1,14 @@
 package org.jeecg.modules.message.entity;
 
-import org.jeecg.common.system.base.entity.JeecgEntity;
-import org.jeecgframework.poi.excel.annotation.Excel;
-import org.springframework.format.annotation.DateTimeFormat;
-
+import cn.com.ctop.common.module.annotation.Dict;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.annotation.JsonFormat;
-
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
+import org.jeecg.common.system.base.entity.JeecgEntity;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
 
 /**
  * @Description: 消息
@@ -39,6 +38,7 @@ public class SysMessage extends JeecgEntity {
 	private java.lang.Integer esSendNum;
 	/**推送状态 0未推送 1推送成功 2推送失败*/
 	@Excel(name = "推送状态 0未推送 1推送成功 2推送失败", width = 15)
+	@Dict(dicCode = "msgSendStatus")
     private java.lang.String esSendStatus;
 	/**推送时间*/
 	@Excel(name = "推送时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
@@ -50,6 +50,7 @@ public class SysMessage extends JeecgEntity {
 	private java.lang.String esTitle;
 	/**推送方式:1短信 2邮件 3微信*/
 	@Excel(name = "推送方式:1短信 2邮件 3微信", width = 15)
+	@Dict(dicCode = "msgType")
     private java.lang.String esType;
 	/**备注*/
 	@Excel(name = "备注", width = 15)

+ 0 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/aspect/DictAspect.java

@@ -42,7 +42,6 @@ public class DictAspect {
      * 定义切点Pointcut
      */
     @Pointcut("execution(public * org.jeecg.modules..*.*Controller.*(..))||execution(public * cn.com.ctop..*.*Controller.*(..))")
-//    @Pointcut(value = "@annotation(cn.com.ctop.common.module.annotation.Dict)")
     public void excudeService() {
     }
 

+ 0 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/SysDictController.java

@@ -146,7 +146,6 @@ public class SysDictController {
 
 			 result.setSuccess(true);
 			 result.setResult(ls);
-			 log.info(result.toString());
 		} catch (Exception e) {
 			log.error(e.getMessage(),e);
 			result.error500("操作失败");

+ 8 - 3
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/SysAnnouncement.java

@@ -1,15 +1,16 @@
 package org.jeecg.modules.system.entity;
 
-import java.io.Serializable;
-
+import cn.com.ctop.common.module.annotation.Dict;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
 import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
 import org.jeecgframework.poi.excel.annotation.Excel;
 import org.springframework.format.annotation.DateTimeFormat;
 
+import java.io.Serializable;
+
 /**
  * @Description: 系统通告表
  * @Author: jeecg-boot
@@ -59,22 +60,26 @@ public class SysAnnouncement implements Serializable {
      * 优先级(L低,M中,H高)
      */
     @Excel(name = "优先级", width = 15, dicCode = "priority")
+    @Dict(dicCode = "priority")
     private java.lang.String priority;
 
     /**
      * 消息类型1:通知公告2:系统消息
      */
     @Excel(name = "消息类型", width = 15, dicCode = "msg_category")
+    @Dict(dicCode = "msg_category")
     private java.lang.String msgCategory;
     /**
      * 通告对象类型(USER:指定用户,ALL:全体用户)
      */
     @Excel(name = "通告对象类型", width = 15, dicCode = "msg_type")
+    @Dict(dicCode = "msg_type")
     private java.lang.String msgType;
     /**
      * 发布状态(0未发布,1已发布,2已撤销)
      */
     @Excel(name = "发布状态", width = 15, dicCode = "send_status")
+    @Dict(dicCode = "send_status")
     private java.lang.String sendStatus;
     /**
      * 发布时间

+ 3 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/SysDepart.java

@@ -1,5 +1,6 @@
 package org.jeecg.modules.system.entity;
 
+import cn.com.ctop.common.module.annotation.Dict;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
@@ -64,9 +65,11 @@ public class SysDepart implements Serializable {
 	private String memo;
 	/**状态(1启用,0不启用)*/
 	@Excel(name="状态",width=15)
+	@Dict(dicCode = "depart_status")
     private String status;
 	/**删除状态(0,正常,1已删除)*/
 	@Excel(name="删除状态",width=15)
+	@Dict(dicCode = "del_flag")
     private String delFlag;
 	/**创建人*/
 	private String createBy;

+ 5 - 4
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/SysDictItem.java

@@ -1,16 +1,16 @@
 package org.jeecg.modules.system.entity;
 
-import java.io.Serializable;
-import java.util.Date;
-
+import cn.com.ctop.common.module.annotation.Dict;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
-
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
 import org.jeecgframework.poi.excel.annotation.Excel;
 
+import java.io.Serializable;
+import java.util.Date;
+
 /**
  * <p>
  *
@@ -65,6 +65,7 @@ public class SysDictItem implements Serializable {
     /**
      * 状态(1启用 0不启用)
      */
+    @Dict(dicCode = "dict_item_status")
     private Integer status;
 
     private String createBy;

+ 6 - 4
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/SysLog.java

@@ -1,15 +1,16 @@
 package org.jeecg.modules.system.entity;
 
-import java.util.Date;
-
-import org.springframework.format.annotation.DateTimeFormat;
+import cn.com.ctop.common.module.annotation.Dict;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.fasterxml.jackson.annotation.JsonFormat;
-import java.io.Serializable;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
 
 /**
  * <p>
@@ -99,6 +100,7 @@ public class SysLog implements Serializable {
 	/**
 	 * 日志类型(1登录日志,2操作日志)
 	 */
+	@Dict(dicCode = "log_type")
 	private Integer logType;
 
 	/**

+ 5 - 2
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/SysPermission.java

@@ -1,7 +1,6 @@
 package org.jeecg.modules.system.entity;
 
-import java.io.Serializable;
-import java.util.Date;
+import cn.com.ctop.common.module.annotation.Dict;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
@@ -9,6 +8,9 @@ import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
 
+import java.io.Serializable;
+import java.util.Date;
+
 /**
  * <p>
  * 菜单权限表
@@ -81,6 +83,7 @@ public class SysPermission implements Serializable {
 	/**
 	 * 类型(0:一级菜单;1:子菜单 ;2:按钮权限)
 	 */
+	@Dict(dicCode = "menu_type")
 	private Integer menuType;
 
 	/**

+ 10 - 10
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/entity/SysUser.java

@@ -1,21 +1,19 @@
 package org.jeecg.modules.system.entity;
 
-import java.util.Date;
-
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableLogic;
-import org.jeecgframework.poi.excel.annotation.Excel;
-import org.springframework.format.annotation.DateTimeFormat;
-
+import cn.com.ctop.common.module.annotation.Dict;
 import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.fasterxml.jackson.annotation.JsonFormat;
-
-import java.io.Serializable;
-
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
 
 /**
  * <p>
@@ -78,6 +76,7 @@ public class SysUser implements Serializable {
      * 性别(1:男 2:女)
      */
     @Excel(name = "性别", width = 15, dicCode = "sex")
+    @Dict(dicCode = "sex")
     private Integer sex;
 
     /**
@@ -101,6 +100,7 @@ public class SysUser implements Serializable {
      * 状态(1:正常  2:冻结 )
      */
     @Excel(name = "状态", width = 15, dicCode = "user_status")
+    @Dict(dicCode = "user_status")
     private Integer status;
 
     /**

+ 0 - 2
jeecg-boot-module-system/src/main/java/org/jeecg/modules/wps/service/impl/WpsFileServiceImpl.java

@@ -31,7 +31,6 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.web.multipart.MultipartFile;
 
-import java.net.URLEncoder;
 import java.util.*;
 
 /**
@@ -173,7 +172,6 @@ public class WpsFileServiceImpl extends ServiceImpl<WpsFileMapper, WpsFile> impl
         FileDTO file = new FileDTO();
         BeanUtils.copyProperties(fileEntity,file);
         String url = fileEntity.getDownloadUrl();
-        url = URLEncoder.encode(url);
         file.setDownload_url(url);
         file.setUser_acl(userAcl);
         file.setWatermark(watermark);

+ 20 - 12
jeecg-boot-module-system/src/test/java/org/jeecg/SampleTest.java

@@ -4,12 +4,15 @@ import cn.com.ctop.common.module.entity.BindAccountLogin;
 import cn.com.ctop.common.module.entity.CtopOauthToken;
 import cn.com.ctop.common.module.service.IBindAccountLoginService;
 import cn.com.ctop.common.module.service.ICtopOauthTokenService;
+import cn.com.ctop.common.module.utils.Check;
+import cn.com.ctop.common.module.utils.CorpWexinUtils;
 import cn.com.ctop.common.module.utils.CtopAdConstant;
 import cn.com.ctop.common.module.utils.HttpUtils;
 import cn.com.ctop.crawler.modules.pangolin.entity.PangolinApp;
 import cn.com.ctop.crawler.modules.pangolin.service.PangolinAppService;
 import cn.com.ctop.crawler.modules.pangolin.service.PangolinCrawlerService;
 import cn.com.ctop.crawler.modules.pangolin.service.PangolinLoginService;
+import cn.com.ctop.kuaishou.modules.batch.service.IKuaishouInterfaceService;
 import cn.com.ctop.kuaishou.modules.graphql.service.IKuaishouWebInterfaceService;
 import cn.com.ctop.toutiao.modules.material.service.IByteDanceAdvertiserDataService;
 import cn.com.ctop.toutiao.modules.material.service.IByteDanceCampaignService;
@@ -18,6 +21,8 @@ import cn.com.ctop.toutiao.modules.report.service.IReportService;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import lombok.extern.slf4j.Slf4j;
+import me.chanjar.weixin.common.error.WxErrorException;
+import me.chanjar.weixin.cp.bean.WxCpMessage;
 import org.jeecg.common.util.DateUtils;
 import org.jeecg.modules.ctop.entity.KuaishouEffectVideoInfo;
 import org.jeecg.modules.ctop.service.IKuaishouEffectVideoInfoService;
@@ -32,6 +37,11 @@ import java.util.List;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
+import me.chanjar.weixin.common.error.WxErrorException;
+import me.chanjar.weixin.cp.api.WxCpService;
+import me.chanjar.weixin.cp.api.impl.WxCpServiceImpl;
+import me.chanjar.weixin.cp.bean.WxCpMessage;
+import me.chanjar.weixin.cp.config.impl.WxCpDefaultConfigImpl;
 
 @RunWith(SpringRunner.class)
 @SpringBootTest
@@ -43,20 +53,18 @@ public class SampleTest {
     private IByteDanceAdvertiserDataService advertiserDataService;
     @Autowired
     private IReportService reportService;
+    @Autowired
+    private IKuaishouInterfaceService interfaceService;
+
     @Test
     public void loadBytedanceCampaignData() {
-//        List<CtopOauthToken> tokens = oauthTokenService.selectToutiaoToken();
-//        tokens.forEach(token -> campaignService.getAdvertiserCampaign(token, null, null));
-//        campaignService.createCampaign(1649600126891015L,"测试广告组123",null,"BUDGET_MODE_DAY",15000,"APP",null);
-//        campaignService.getAdvertiserCampaign(token, null, null);
-
-        campaignService.updateCampaignStatus(1649600126891015L,"1673352811480076,1673351071217708","enable");
-        BytedanceCampaignEditVo vo = new BytedanceCampaignEditVo();
-        vo.setAccountId(1649600126891015L);
-        vo.setId(1673352811480076L);
-        vo.setCampaignName("咩哈哈哈哈哈");
-        vo.setBudget(10000);
-        campaignService.updateCampaign(vo);
+
+
+       // CorpWexinUtils.sendMessageByWeChatId("34585ddd4bd86e57756cf6a51b9443a5","测试消息发送");
+        interfaceService.getAppList(23212L,"493aedfee07d9c500c50077e7c808145");
+
+
+
     }
 
     @Autowired

+ 7 - 7
module-common/src/main/java/cn/com/ctop/common/module/entity/Project.java

@@ -30,7 +30,6 @@ import java.util.Date;
 @Accessors(chain = true)
 @ApiModel(value = "ctop_project对象", description = "项目")
 public class Project {
-
     /**
      * id
      */
@@ -56,7 +55,7 @@ public class Project {
 
     @Dict(dicCode = "id", dictTable = "sys_category", dicText = "name")
     private String industryId;
-    @Dict(dicCode = "code",dictTable="sys_category",dicText="name")
+    @Dict(dicCode = "code", dictTable = "sys_category", dicText = "name")
     private String industryCode;
     /**
      * 创建人
@@ -100,10 +99,14 @@ public class Project {
      */
     private Long maxBid;
 
-    //供应商
-    @Dict(dicCode = "supplier_code", dictTable = "ctop_supplier_list", dicText = "supplier_name")
     private String supplierCode;
 
+    /**
+     * 销售
+     */
+    @TableField(exist = false)
+    private String supplierCode_dictText;
+
     // 销售
     @Dict(dicCode = "id", dictTable = "sys_user", dicText = "realname")
     private String saleId;
@@ -128,10 +131,7 @@ public class Project {
     @ApiModelProperty(value = "修改时间")
     private Date updateTime;
 
-
     @TableField(exist = false)
     private Integer needExamine;
 
-
-
 }

+ 1 - 1
module-common/src/main/java/cn/com/ctop/common/module/service/IMaterialInfoService.java

@@ -24,7 +24,7 @@ public interface IMaterialInfoService extends IService<MaterialInfo> {
      * @param videoUrl
      * @param templateId
      */
-    void watermarkVideoBySupplierCode(String videoSignature, String videoUrl, Long templateId);
+    String watermarkVideoBySupplierCode(String videoSignature, String videoUrl, Long templateId);
 
     MaterialInfo getMaterialInfoByCodeAndProjectId(String code, Long projectId);
 

+ 45 - 35
module-common/src/main/java/cn/com/ctop/common/module/service/impl/MaterialInfoServiceImpl.java

@@ -107,7 +107,7 @@ public class MaterialInfoServiceImpl extends ServiceImpl<MaterialInfoMapper, Mat
 
 
     @Override
-    public void watermarkVideoBySupplierCode(String videoSignature, String videoUrl, Long templateId) {
+    public String watermarkVideoBySupplierCode(String videoSignature, String videoUrl, Long templateId) {
         try {
 
             QueryWrapper<SupplierWatermark> supplierWatermarkQueryWrapper = new QueryWrapper<>();
@@ -115,43 +115,45 @@ public class MaterialInfoServiceImpl extends ServiceImpl<MaterialInfoMapper, Mat
             supplierWatermarkQueryWrapper.last("limit 1");
             SupplierWatermark one = supplierWatermarkService.getOne(supplierWatermarkQueryWrapper);
             if (!Check.isNull(one)) {
-                return;
+                log.info("供应商水印已存在,videoCode:{}", videoSignature);
+                return one.getWatermarkUrl();
             }
+            String path = URLDecoder.decode(videoUrl).replace("https://media-1301855440.cos.ap-chongqing.myqcloud.com/", "");
+            String taskId = videoWatermarkHandle(path, templateId);
+            DescribeTaskDetailResponse taskDetailResponse = null;
+            for (int i = 0; i < 30; i++) {
+                try {
+                    Thread.sleep(2000);
+                } catch (InterruptedException e) {
+                    log.error(e.getMessage());
+                }
+                taskDetailResponse = getTaskDetailResponse(taskId);
+                if (taskDetailResponse.getStatus().equals("FINISH")) {
+                    break;
+                }
+            }
+            if (taskDetailResponse.getStatus().equals("FINISH")) {
+                String url = taskDetailResponse.getWorkflowTask().getMediaProcessResultSet()[0].getTranscodeTask().getOutput().getPath();
+                SupplierWatermark supplierWatermark = new SupplierWatermark();
+                supplierWatermark.setVideoSignature(videoSignature);
+                String watermarkUrl = "https://media-1301855440.cos.ap-chongqing.myqcloud.com" + url;
+                supplierWatermark.setWatermarkUrl(watermarkUrl);
+                boolean save = supplierWatermarkService.save(supplierWatermark);
+                if (save) {
+                    log.info("供应商水印生成完毕,videoCode:{}", videoSignature);
 
-
-            Thread thread = new Thread() {
-                @Override
-                public void run() {
-                    String path = URLDecoder.decode(videoUrl).replace("https://media-1301855440.cos.ap-chongqing.myqcloud.com/", "");
-                    String taskId = videoWatermarkHandle(path, templateId);
-                    DescribeTaskDetailResponse taskDetailResponse = null;
-                    for (int i = 0; i < 20; i++) {
-                        try {
-                            Thread.sleep(2000);
-                        } catch (InterruptedException e) {
-                            log.error(e.getMessage());
-                        }
-                        taskDetailResponse = getTaskDetailResponse(taskId);
-                        if (taskDetailResponse.getStatus().equals("FINISH")) {
-                            break;
-                        }
-                    }
-                    if (taskDetailResponse.getStatus().equals("FINISH")) {
-                        String url = taskDetailResponse.getWorkflowTask().getMediaProcessResultSet()[0].getTranscodeTask().getOutput().getPath();
-                        SupplierWatermark supplierWatermark = new SupplierWatermark();
-                        supplierWatermark.setVideoSignature(videoSignature);
-                        supplierWatermark.setWatermarkUrl("https://media-1301855440.cos.ap-chongqing.myqcloud.com" + url);
-                        supplierWatermarkService.save(supplierWatermark);
-                    }
                 }
-            };
-            thread.start();
+                return watermarkUrl;
+            }
+
 
         } catch (Exception e) {
+            log.info("供应商水印生成异常,videoCode:{}", videoSignature);
             e.printStackTrace();
 
-        }
 
+        }
+        return null;
 
     }
 
@@ -437,7 +439,16 @@ public class MaterialInfoServiceImpl extends ServiceImpl<MaterialInfoMapper, Mat
                                 // 默认抽帧 素造供应商
                                 Long templateId = MaterialSupplierEnum.getTemplateIdBySize(Integer.valueOf(width), Integer.valueOf(height));
                                 if (!Check.isNull(templateId)) {
-                                    watermarkVideoBySupplierCode(materialInfo.getCode(), materialInfo.getUrl(), templateId);
+
+                                    Thread thread = new Thread() {
+                                        @Override
+                                        public void run() {
+                                            watermarkVideoBySupplierCode(materialInfo.getCode(), materialInfo.getUrl(), templateId);
+                                        }
+                                    };
+                                    thread.start();
+
+
                                 }
                             }
 
@@ -539,13 +550,12 @@ public class MaterialInfoServiceImpl extends ServiceImpl<MaterialInfoMapper, Mat
             info.setCreateTime(new Date());
             info.setUpdateTime(new Date());
             info.setType(type);
-
             Project project = projectService.getById(projectId);
             if (!Check.isNull(project)) {
-                info.setSupplierCode(project.getSupplierCode());
+                if (!Check.isNull(project.getSupplierCode())) {
+                    info.setSupplierCode(project.getSupplierCode());
+                }
             }
-
-
             MaterialCutFrame cutFrame = materialCutFrameService.getCutFrameByCode(code);
             if (Check.isNull(cutFrame)) {
                 String videoUrl = URLDecoder.decode(info.getUrl()).replace("https://media-1301855440.cos.ap-chongqing.myqcloud.com/", "");

+ 2 - 0
module-ctop/src/main/java/cn/com/ctop/manage/modules/actor/entity/Actor.java

@@ -1,5 +1,6 @@
 package cn.com.ctop.manage.modules.actor.entity;
 
+import cn.com.ctop.common.module.annotation.Dict;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
@@ -27,6 +28,7 @@ public class Actor {
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     private Date birthday;
     private String coverUrl;
+    @Dict(dicCode = "sex")
     private Integer sex;
     private String speciality;
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")

+ 55 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/controller/BatchController.java

@@ -2239,4 +2239,59 @@ public class BatchController {
     }
 
 
+    /**
+     * 同步素材
+     *
+     * @param accountId
+     * @return
+     */
+    @GetMapping(value = "/syncVideo")
+    public Result<Boolean> syncVideo(Long accountId) {
+        Result<Boolean> result = new Result<>();
+        try {
+            String nowDate = DateUtils.getNowDate("yyyy-MM-dd");
+            String endDate = DateUtils.getAnotherDay("yyyy-MM-dd", nowDate, 1);
+            syncPullMaterialService.getSyncVideoList(accountId, nowDate, nowDate);
+            syncPullMaterialService.getSyncSuZaoList(accountId, nowDate, endDate);
+            Thread.sleep(5 * 1000L);
+            result.setSuccess(true);
+            result.setResult(true);
+        } catch (InterruptedException e) {
+            e.printStackTrace();
+        }
+
+        return result;
+    }
+
+
+    /**
+     * 同步应用
+     *
+     * @param accountId
+     * @return
+     */
+    @GetMapping(value = "/syncAppList")
+    public Result<Boolean> syncAppList(Long accountId) {
+        Result<Boolean> result = new Result<>();
+        try {
+            if (Check.isNull(accountId)) {
+                throw new Exception("入参为空");
+            }
+            CtopOauthToken oauthToken = oauthTokenService.getTokenByAccountId(accountId);
+            if (Check.isNull(oauthToken)) {
+                throw new Exception("未获取到账户信息");
+            }
+            iKuaishouInterfaceService.getAppList(oauthToken.getAccountId(), oauthToken.getAccessToken());
+            result.setSuccess(true);
+            result.setResult(true);
+        } catch (Exception e) {
+            e.printStackTrace();
+            result.setSuccess(false);
+            result.setResult(false);
+            result.setMessage(e.getMessage());
+        }
+
+        return result;
+    }
+
 }

+ 2 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/entity/KuaiShouVideoGet.java

@@ -77,6 +77,8 @@ public class KuaiShouVideoGet {
     private Date statDate;
 
     private Integer materialType;
+
+    private String materialId;
     /**
      * 创建时间
      */

+ 0 - 7
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/service/IKuaishouInterfaceService.java

@@ -265,13 +265,6 @@ public interface IKuaishouInterfaceService {
      */
     void getAppList(Long advertiserId, String accessToken);
 
-    /**
-     * 获取应用列表
-     *
-     * @param advertiserId
-     * @param accessToken
-     */
-    void getAppList2(Long advertiserId, String accessToken);
 
     /**
      * 文件上传 发送请求

+ 10 - 30
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/service/impl/KuaishouInterfaceServiceImpl.java

@@ -2424,13 +2424,8 @@ public class KuaishouInterfaceServiceImpl implements IKuaishouInterfaceService {
         return returnMap;
     }
 
-    /**
-     * 获取应用列表
-     *
-     * @param advertiserId
-     * @param accessToken
-     */
-    @Override
+
+    /*@Override
     public void getAppList(Long advertiserId, String accessToken) {
         try {
             String url = PropertiesUtils.getConfig("kuaishou_api_url") + KuaishouInterfaceConstant.APP_LIST;
@@ -2476,7 +2471,7 @@ public class KuaishouInterfaceServiceImpl implements IKuaishouInterfaceService {
         } catch (Exception e) {
             e.printStackTrace();
         }
-    }
+    }*/
 
 
     public Object jsonToObj(Object t, String jsonStr) throws
@@ -2949,6 +2944,7 @@ public class KuaishouInterfaceServiceImpl implements IKuaishouInterfaceService {
                     kuaiShouVideoGet.setStatDate(jsonObject.getDate("sync_date"));
                     kuaiShouVideoGet.setChannelType(1);
                     kuaiShouVideoGet.setUserId(userId);
+                    kuaiShouVideoGet.setMaterialId(jsonObject.getString("material_id"));
                     Integer type = MaterialEnum.getTypeBySize(kuaiShouVideoGet.getWidth(), kuaiShouVideoGet.getHeight());
                     if (!Check.isNull(type)) {
                         kuaiShouVideoGet.setMaterialType(type);
@@ -3242,8 +3238,8 @@ public class KuaishouInterfaceServiceImpl implements IKuaishouInterfaceService {
      * @param accessToken
      */
     @Override
-    public void getAppList2(Long advertiserId, String accessToken) {
-        Integer pageSize = 20;
+    public void getAppList(Long advertiserId, String accessToken) {
+        Integer pageSize = 50;
         Integer page = 1;
         getAppList2ByPage(advertiserId, accessToken, page, pageSize);
     }
@@ -3263,7 +3259,7 @@ public class KuaishouInterfaceServiceImpl implements IKuaishouInterfaceService {
             if (!Check.isNull(resultJson)) {
                 Integer code = resultJson.getInteger("code");
                 if (code == 0) {
-                    if(page == 1){ //分页保存数据,如果页数为1,删除之前的数据重新入库
+                    if (page == 1) { //分页保存数据,如果页数为1,删除之前的数据重新入库
                         Map<String, Object> deleteMap = new HashMap<>();
                         deleteMap.put("account_id", advertiserId);
                         appListMapper.deleteByMap(deleteMap);
@@ -3289,9 +3285,9 @@ public class KuaishouInterfaceServiceImpl implements IKuaishouInterfaceService {
                                 appListMapper.insert(appList);
                             }
                         }
-                        Integer totalPage = (totalCount-1)/pageSize + 1;
-                        if(page < totalPage ){
-                            getAppList2ByPage(advertiserId,accessToken,page+1,pageSize);
+                        Integer totalPage = (totalCount - 1) / pageSize + 1;
+                        if (page < totalPage) {
+                            getAppList2ByPage(advertiserId, accessToken, page + 1, pageSize);
                         }
                     }
                 } else {
@@ -3306,20 +3302,4 @@ public class KuaishouInterfaceServiceImpl implements IKuaishouInterfaceService {
     }
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
 }

+ 1 - 0
module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/entity/ByteDanceCreative.java

@@ -42,6 +42,7 @@ public class ByteDanceCreative {
     /**
      * 本平台广告主id
      */
+    @Dict(dicCode = "account_id",dictTable="ctop_user_allocation",dicText="auth_name")
     private String accountId;
     /**
      * 创意素材标题

+ 5 - 0
module-toutiao/src/main/java/cn/com/ctop/toutiao/modules/material/entity/BytedanceEffectVideoInfo.java

@@ -1,5 +1,6 @@
 package cn.com.ctop.toutiao.modules.material.entity;
 
+import cn.com.ctop.common.module.annotation.Dict;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
@@ -28,9 +29,13 @@ public class BytedanceEffectVideoInfo {
 	private String url;
 	private String initialCostDate;
 	private String finalCostDate;
+	@Dict(dicCode = "id",dictTable="sys_user",dicText="realname")
 	private String plane;
+	@Dict(dicCode = "id",dictTable="sys_user",dicText="realname")
 	private String plan;
+	@Dict(dicCode = "id",dictTable="sys_user",dicText="realname")
 	private String shot;
+	@Dict(dicCode = "id",dictTable="sys_user",dicText="realname")
 	private String clip;
 	private String manager;
 	private java.math.BigDecimal twoWeekCost;

+ 5 - 0
performance-appraisal/src/main/java/cn/com/ctop/performanceappraisal/entity/OptimizerRoleInfo.java

@@ -1,5 +1,6 @@
 package cn.com.ctop.performanceappraisal.entity;
 
+import cn.com.ctop.common.module.annotation.Dict;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
@@ -43,12 +44,14 @@ public class OptimizerRoleInfo {
      */
     @Excel(name = "角色类型 1:运营经理 2:运营专员", width = 15)
     @ApiModelProperty(value = "角色类型 1:运营经理 2:运营专员")
+    @Dict(dicCode = "optimizer_type")
     private Integer type;
     /**
      * 用户id
      */
     @Excel(name = "用户id", width = 15)
     @ApiModelProperty(value = "用户id")
+    @Dict(dicCode = "id", dictTable = "sys_user", dicText = "realname")
     private String userId;
     private String realname;
     /**
@@ -56,12 +59,14 @@ public class OptimizerRoleInfo {
      */
     @Excel(name = "归属人id", width = 15)
     @ApiModelProperty(value = "归属人id")
+    @Dict(dicCode = "id", dictTable = "sys_user", dicText = "realname")
     private String belongerId;
     /**
      * enabled
      */
     @Excel(name = "enabled", width = 15)
     @ApiModelProperty(value = "enabled")
+    @Dict(dicCode = "valid_status")
     private Integer enabled;
     /**
      * createTime

+ 4 - 0
performance-appraisal/src/main/java/cn/com/ctop/performanceappraisal/entity/Performance.java

@@ -1,5 +1,6 @@
 package cn.com.ctop.performanceappraisal.entity;
 
+import cn.com.ctop.common.module.annotation.Dict;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
@@ -37,12 +38,14 @@ public class Performance {
      */
     @Excel(name = "sys_user的主键id", width = 15)
     @ApiModelProperty(value = "sys_user的主键id")
+    @Dict(dicCode = "id", dictTable = "sys_user", dicText = "realname")
     private String userId;
     /**
      * sys_role的主键id
      */
     @Excel(name = "sys_role的主键id", width = 15)
     @ApiModelProperty(value = "sys_role的主键id")
+    @Dict(dicCode = "id", dictTable = "sys_role", dicText = "role_name")
     private String roleId;
     /**
      * 年度
@@ -103,6 +106,7 @@ public class Performance {
      */
     @Excel(name = "媒体类型1_头条2_快手", width = 15)
     @ApiModelProperty(value = "媒体类型1_头条2_快手")
+    @Dict(dicCode = "app_type")
     private Integer appType;
     /**
      * 创建时间

+ 4 - 0
performance-appraisal/src/main/java/cn/com/ctop/performanceappraisal/entity/RolePerformancRraise.java

@@ -1,5 +1,6 @@
 package cn.com.ctop.performanceappraisal.entity;
 
+import cn.com.ctop.common.module.annotation.Dict;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
@@ -37,6 +38,7 @@ public class RolePerformancRraise {
      */
     @Excel(name = "角色id", width = 15)
     @ApiModelProperty(value = "角色id")
+    @Dict(dicCode = "id", dictTable = "sys_role", dicText = "role_name")
     private String roleId;
     /**
      * 提点梯度级别
@@ -61,12 +63,14 @@ public class RolePerformancRraise {
      */
     @Excel(name = "媒体类型1_头条2_快手", width = 15)
     @ApiModelProperty(value = "媒体类型1_头条2_快手")
+    @Dict(dicCode = "media_type")
     private Integer appType;
     /**
      * 是否可用
      */
     @Excel(name = "是否可用", width = 15)
     @ApiModelProperty(value = "是否可用")
+    @Dict(dicCode = "valid_status")
     private Integer enabled;
     /**
      * createTime

+ 5 - 0
performance-appraisal/src/main/java/cn/com/ctop/performanceappraisal/entity/RolePerformanceCommission.java

@@ -1,5 +1,6 @@
 package cn.com.ctop.performanceappraisal.entity;
 
+import cn.com.ctop.common.module.annotation.Dict;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
@@ -37,6 +38,7 @@ public class RolePerformanceCommission {
      */
     @Excel(name = "sys_role的主键id", width = 15)
     @ApiModelProperty(value = "sys_role的主键id")
+    @Dict(dicCode = "id", dictTable = "sys_role", dicText = "role_name")
     private String roleId;
     /**
      * 角色提成比例
@@ -49,16 +51,19 @@ public class RolePerformanceCommission {
      */
     @Excel(name = "是否可用", width = 15)
     @ApiModelProperty(value = "是否可用 1:可用 2:不可用")
+    @Dict(dicCode = "valid_status")
     private Integer enabled;
     /**
      * 1:快手  2:头条
      */
     @Excel(name = "媒体类型1_头条2_快手", width = 15)
     @ApiModelProperty(value = "媒体类型1_头条2_快手")
+    @Dict(dicCode = "media_type")
     private Integer appType;
 
     @Excel(name = "是否有平面", width = 15)
     @ApiModelProperty(value = "是否有平面")
+    @Dict(dicCode = "has_plane")
     private Integer hasPlane;
     /**
      * 开始时间