Explorar o código

修改视频查询bug

syh %!s(int64=4) %!d(string=hai) anos
pai
achega
53a7ef020a
Modificáronse 26 ficheiros con 1369 adicións e 2 borrados
  1. 2 1
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/SysUserController.java
  2. 149 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/controller/AiKuaishouCampaignLevelOperationRecordController.java
  3. 143 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/controller/AiKuaishouCreativeLevelOperationRecordController.java
  4. 243 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/controller/AiKuaishouProgramCreativeLevelOperationRecordController.java
  5. 243 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/controller/AiKuaishouUnitLevelOperationRecordController.java
  6. 53 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/entity/AiKuaishouCampaignLevelOperationRecord.java
  7. 87 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/entity/AiKuaishouCreativeLevelOperationRecord.java
  8. 71 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/entity/AiKuaishouProgramCreativeLevelOperationRecord.java
  9. 169 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/entity/AiKuaishouUnitLevelOperationRecord.java
  10. 14 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/AiKuaishouCampaignLevelOperationRecordMapper.java
  11. 14 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/AiKuaishouCreativeLevelOperationRecordMapper.java
  12. 14 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/AiKuaishouProgramCreativeLevelOperationRecordMapper.java
  13. 14 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/AiKuaishouUnitLevelOperationRecordMapper.java
  14. 5 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/xml/AiKuaishouCampaignLevelOperationRecordMapper.xml
  15. 5 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/xml/AiKuaishouCreativeLevelOperationRecordMapper.xml
  16. 5 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/xml/AiKuaishouProgramCreativeLevelOperationRecordMapper.xml
  17. 5 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/xml/AiKuaishouUnitLevelOperationRecordMapper.xml
  18. 15 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/IAiKuaishouCampaignLevelOperationRecordService.java
  19. 14 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/IAiKuaishouCreativeLevelOperationRecordService.java
  20. 14 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/IAiKuaishouProgramCreativeLevelOperationRecordService.java
  21. 14 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/IAiKuaishouUnitLevelOperationRecordService.java
  22. 18 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/impl/AiKuaishouCampaignLevelOperationRecordServiceImpl.java
  23. 18 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/impl/AiKuaishouCreativeLevelOperationRecordServiceImpl.java
  24. 18 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/impl/AiKuaishouProgramCreativeLevelOperationRecordServiceImpl.java
  25. 18 0
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/impl/AiKuaishouUnitLevelOperationRecordServiceImpl.java
  26. 4 1
      module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/mapper/xml/KuaiShouVideoGetMapper.xml

+ 2 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/controller/SysUserController.java

@@ -315,7 +315,8 @@ public class SysUserController {
         String selectedDeparts = jsonObject.getString("selecteddeparts");
         try {
             SysUser user = JSON.parseObject(jsonObject.toJSONString(), SysUser.class);
-            user.setCreateTime(new Date());//设置创建时间
+            //设置创建时间
+            user.setCreateTime(new Date());
             String salt = oConvertUtils.randomGen(8);
             user.setSalt(salt);
             String passwordEncode = PasswordUtil.encrypt(user.getUsername(), user.getPassword(), salt);

+ 149 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/controller/AiKuaishouCampaignLevelOperationRecordController.java

@@ -0,0 +1,149 @@
+package cn.com.ctop.kuaishou.modules.ai.controller;
+
+import cn.com.ctop.common.module.annotation.AutoLog;
+import cn.com.ctop.common.module.utils.QueryGenerator;
+import cn.com.ctop.kuaishou.modules.ai.entity.AiKuaishouCampaignLevelOperationRecord;
+import cn.com.ctop.kuaishou.modules.ai.service.IAiKuaishouCampaignLevelOperationRecordService;
+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.jeecg.common.api.vo.Result;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.Arrays;
+
+ /**
+ * 计划创建记录
+ * @author jeecg-boot
+ * @date   2021-04-12
+ * @version V1.0
+ */
+@Slf4j
+@Api(tags="计划创建记录")
+@RestController
+@RequestMapping("/ctop/aiKuaishouCampaignLevelOperationRecord")
+public class AiKuaishouCampaignLevelOperationRecordController {
+	@Autowired
+	private IAiKuaishouCampaignLevelOperationRecordService aiKuaishouCampaignLevelOperationRecordService;
+
+	/**
+	  * 分页列表查询
+	 * @param aiKuaishouCampaignLevelOperationRecord
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	@GetMapping(value = "/list")
+	public Result<IPage<AiKuaishouCampaignLevelOperationRecord>> queryPageList(AiKuaishouCampaignLevelOperationRecord aiKuaishouCampaignLevelOperationRecord,
+																			   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+																			   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+																			   HttpServletRequest req) {
+		Result<IPage<AiKuaishouCampaignLevelOperationRecord>> result = new Result<>();
+		QueryWrapper<AiKuaishouCampaignLevelOperationRecord> queryWrapper = QueryGenerator.initQueryWrapper(aiKuaishouCampaignLevelOperationRecord, req.getParameterMap());
+		Page<AiKuaishouCampaignLevelOperationRecord> page = new Page<AiKuaishouCampaignLevelOperationRecord>(pageNo, pageSize);
+		IPage<AiKuaishouCampaignLevelOperationRecord> pageList = aiKuaishouCampaignLevelOperationRecordService.page(page, queryWrapper);
+		result.setSuccess(true);
+		result.setResult(pageList);
+		return result;
+	}
+
+	/**
+	  *   添加
+	 * @param aiKuaishouCampaignLevelOperationRecord
+	 * @return
+	 */
+	@AutoLog(value = "计划创建记录-添加")
+	@ApiOperation(value="计划创建记录-添加", notes="计划创建记录-添加")
+	@PostMapping(value = "/add")
+	public Result<AiKuaishouCampaignLevelOperationRecord> add(@RequestBody AiKuaishouCampaignLevelOperationRecord aiKuaishouCampaignLevelOperationRecord) {
+		Result<AiKuaishouCampaignLevelOperationRecord> result = new Result<>();
+		try {
+			aiKuaishouCampaignLevelOperationRecordService.save(aiKuaishouCampaignLevelOperationRecord);
+			result.success("添加成功!");
+		} catch (Exception e) {
+			log.error(e.getMessage(),e);
+			result.error500("操作失败");
+		}
+		return result;
+	}
+
+	/**
+	  *  编辑
+	 * @param aiKuaishouCampaignLevelOperationRecord
+	 * @return
+	 */
+	@PutMapping(value = "/edit")
+	public Result<AiKuaishouCampaignLevelOperationRecord> edit(@RequestBody AiKuaishouCampaignLevelOperationRecord aiKuaishouCampaignLevelOperationRecord) {
+		Result<AiKuaishouCampaignLevelOperationRecord> result = new Result<AiKuaishouCampaignLevelOperationRecord>();
+		AiKuaishouCampaignLevelOperationRecord aiKuaishouCampaignLevelOperationRecordEntity = aiKuaishouCampaignLevelOperationRecordService.getById(aiKuaishouCampaignLevelOperationRecord.getCampaignUuid());
+		if(aiKuaishouCampaignLevelOperationRecordEntity==null) {
+			result.error500("未找到对应实体");
+		}else {
+			boolean ok = aiKuaishouCampaignLevelOperationRecordService.updateById(aiKuaishouCampaignLevelOperationRecord);
+			if(ok) {
+				result.success("修改成功!");
+			}
+		}
+
+		return result;
+	}
+
+	/**
+	  *   通过id删除
+	 * @param id
+	 * @return
+	 */
+	@DeleteMapping(value = "/delete")
+	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
+		try {
+			aiKuaishouCampaignLevelOperationRecordService.removeById(id);
+		} catch (Exception e) {
+			log.error("删除失败",e.getMessage());
+			return Result.error("删除失败!");
+		}
+		return Result.ok("删除成功!");
+	}
+
+	/**
+	  *  批量删除
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "计划创建记录-批量删除")
+	@ApiOperation(value="计划创建记录-批量删除", notes="计划创建记录-批量删除")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<AiKuaishouCampaignLevelOperationRecord> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		Result<AiKuaishouCampaignLevelOperationRecord> result = new Result<>();
+		if(ids==null || "".equals(ids.trim())) {
+			result.error500("参数不识别!");
+		}else {
+			this.aiKuaishouCampaignLevelOperationRecordService.removeByIds(Arrays.asList(ids.split(",")));
+			result.success("删除成功!");
+		}
+		return result;
+	}
+
+	/**
+	  * 通过id查询
+	 * @param id
+	 * @return
+	 */
+	@GetMapping(value = "/queryById")
+	public Result<AiKuaishouCampaignLevelOperationRecord> queryById(@RequestParam(name="id",required=true) String id) {
+		Result<AiKuaishouCampaignLevelOperationRecord> result = new Result<>();
+		AiKuaishouCampaignLevelOperationRecord aiKuaishouCampaignLevelOperationRecord = aiKuaishouCampaignLevelOperationRecordService.getById(id);
+		if(aiKuaishouCampaignLevelOperationRecord==null) {
+			result.error500("未找到对应实体");
+		}else {
+			result.setResult(aiKuaishouCampaignLevelOperationRecord);
+			result.setSuccess(true);
+		}
+		return result;
+	}
+}

+ 143 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/controller/AiKuaishouCreativeLevelOperationRecordController.java

@@ -0,0 +1,143 @@
+package cn.com.ctop.kuaishou.modules.ai.controller;
+
+import cn.com.ctop.common.module.utils.QueryGenerator;
+import cn.com.ctop.kuaishou.modules.ai.entity.AiKuaishouCreativeLevelOperationRecord;
+import cn.com.ctop.kuaishou.modules.ai.service.IAiKuaishouCreativeLevelOperationRecordService;
+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 lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.vo.Result;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.Arrays;
+
+ /**
+ * 自定义创意创建记录
+ * @author jeecg-boot
+ * @date   2021-04-12
+ * @version V1.0
+ */
+@Slf4j
+@Api(tags="自定义创意创建记录")
+@RestController
+@RequestMapping("/ctop/aiKuaishouCreativeLevelOperationRecord")
+public class AiKuaishouCreativeLevelOperationRecordController {
+	@Autowired
+	private IAiKuaishouCreativeLevelOperationRecordService aiKuaishouCreativeLevelOperationRecordService;
+
+	/**
+	  * 分页列表查询
+	 * @param aiKuaishouCreativeLevelOperationRecord
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	@GetMapping(value = "/list")
+	public Result<IPage<AiKuaishouCreativeLevelOperationRecord>> queryPageList(AiKuaishouCreativeLevelOperationRecord aiKuaishouCreativeLevelOperationRecord,
+																			   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+																			   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+																			   HttpServletRequest req) {
+		Result<IPage<AiKuaishouCreativeLevelOperationRecord>> result = new Result<>();
+		QueryWrapper<AiKuaishouCreativeLevelOperationRecord> queryWrapper = QueryGenerator.initQueryWrapper(aiKuaishouCreativeLevelOperationRecord, req.getParameterMap());
+		Page<AiKuaishouCreativeLevelOperationRecord> page = new Page<AiKuaishouCreativeLevelOperationRecord>(pageNo, pageSize);
+		IPage<AiKuaishouCreativeLevelOperationRecord> pageList = aiKuaishouCreativeLevelOperationRecordService.page(page, queryWrapper);
+		result.setSuccess(true);
+		result.setResult(pageList);
+		return result;
+	}
+
+	/**
+	  *   添加
+	 * @param aiKuaishouCreativeLevelOperationRecord
+	 * @return
+	 */
+	@PostMapping(value = "/add")
+	public Result<AiKuaishouCreativeLevelOperationRecord> add(@RequestBody AiKuaishouCreativeLevelOperationRecord aiKuaishouCreativeLevelOperationRecord) {
+		Result<AiKuaishouCreativeLevelOperationRecord> result = new Result<>();
+		try {
+			aiKuaishouCreativeLevelOperationRecordService.save(aiKuaishouCreativeLevelOperationRecord);
+			result.success("添加成功!");
+		} catch (Exception e) {
+			log.error(e.getMessage(),e);
+			result.error500("操作失败");
+		}
+		return result;
+	}
+
+	/**
+	  *  编辑
+	 * @param aiKuaishouCreativeLevelOperationRecord
+	 * @return
+	 */
+	@PutMapping(value = "/edit")
+	public Result<AiKuaishouCreativeLevelOperationRecord> edit(@RequestBody AiKuaishouCreativeLevelOperationRecord aiKuaishouCreativeLevelOperationRecord) {
+		Result<AiKuaishouCreativeLevelOperationRecord> result = new Result<AiKuaishouCreativeLevelOperationRecord>();
+		AiKuaishouCreativeLevelOperationRecord aiKuaishouCreativeLevelOperationRecordEntity = aiKuaishouCreativeLevelOperationRecordService.getById(aiKuaishouCreativeLevelOperationRecord.getCreativeUuid());
+		if(aiKuaishouCreativeLevelOperationRecordEntity==null) {
+			result.error500("未找到对应实体");
+		}else {
+			boolean ok = aiKuaishouCreativeLevelOperationRecordService.updateById(aiKuaishouCreativeLevelOperationRecord);
+			if(ok) {
+				result.success("修改成功!");
+			}
+		}
+
+		return result;
+	}
+
+	/**
+	  *   通过id删除
+	 * @param id
+	 * @return
+	 */
+	@DeleteMapping(value = "/delete")
+	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
+		try {
+			aiKuaishouCreativeLevelOperationRecordService.removeById(id);
+		} catch (Exception e) {
+			log.error("删除失败",e.getMessage());
+			return Result.error("删除失败!");
+		}
+		return Result.ok("删除成功!");
+	}
+
+	/**
+	  *  批量删除
+	 * @param ids
+	 * @return
+	 */
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<AiKuaishouCreativeLevelOperationRecord> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		Result<AiKuaishouCreativeLevelOperationRecord> result = new Result<>();
+		if(ids==null || "".equals(ids.trim())) {
+			result.error500("参数不识别!");
+		}else {
+			this.aiKuaishouCreativeLevelOperationRecordService.removeByIds(Arrays.asList(ids.split(",")));
+			result.success("删除成功!");
+		}
+		return result;
+	}
+
+	/**
+	  * 通过id查询
+	 * @param id
+	 * @return
+	 */
+	@GetMapping(value = "/queryById")
+	public Result<AiKuaishouCreativeLevelOperationRecord> queryById(@RequestParam(name="id",required=true) String id) {
+		Result<AiKuaishouCreativeLevelOperationRecord> result = new Result<>();
+		AiKuaishouCreativeLevelOperationRecord aiKuaishouCreativeLevelOperationRecord = aiKuaishouCreativeLevelOperationRecordService.getById(id);
+		if(aiKuaishouCreativeLevelOperationRecord==null) {
+			result.error500("未找到对应实体");
+		}else {
+			result.setResult(aiKuaishouCreativeLevelOperationRecord);
+			result.setSuccess(true);
+		}
+		return result;
+	}
+}

+ 243 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/controller/AiKuaishouProgramCreativeLevelOperationRecordController.java

@@ -0,0 +1,243 @@
+package cn.com.ctop.kuaishou.modules.ai.controller;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+import java.net.URLDecoder;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.modules.query.QueryGenerator;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.util.oConvertUtils;
+import cn.com.ctop.ctop.entity.AiKuaishouProgramCreativeLevelOperationRecord;
+import cn.com.ctop.ctop.service.IAiKuaishouProgramCreativeLevelOperationRecordService;
+import java.util.Date;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import lombok.extern.slf4j.Slf4j;
+
+import org.jeecgframework.poi.excel.ExcelImportUtil;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.entity.ImportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
+import org.springframework.web.servlet.ModelAndView;
+import com.alibaba.fastjson.JSON;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+ /**
+ * 程序换创意创建记录
+ * @author jeecg-boot
+ * @date   2021-04-12
+ * @version V1.0
+ */
+@Slf4j
+@Api(tags="程序换创意创建记录")
+@RestController
+@RequestMapping("/ctop/aiKuaishouProgramCreativeLevelOperationRecord")
+public class AiKuaishouProgramCreativeLevelOperationRecordController {
+	@Autowired
+	private IAiKuaishouProgramCreativeLevelOperationRecordService aiKuaishouProgramCreativeLevelOperationRecordService;
+
+	/**
+	  * 分页列表查询
+	 * @param aiKuaishouProgramCreativeLevelOperationRecord
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	@AutoLog(value = "程序换创意创建记录-分页列表查询")
+	@ApiOperation(value="程序换创意创建记录-分页列表查询", notes="程序换创意创建记录-分页列表查询")
+	@GetMapping(value = "/list")
+	public Result<IPage<AiKuaishouProgramCreativeLevelOperationRecord>> queryPageList(AiKuaishouProgramCreativeLevelOperationRecord aiKuaishouProgramCreativeLevelOperationRecord,
+									  @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+									  @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+									  HttpServletRequest req) {
+		Result<IPage<AiKuaishouProgramCreativeLevelOperationRecord>> result = new Result<>();
+		QueryWrapper<AiKuaishouProgramCreativeLevelOperationRecord> queryWrapper = QueryGenerator.initQueryWrapper(aiKuaishouProgramCreativeLevelOperationRecord, req.getParameterMap());
+		Page<AiKuaishouProgramCreativeLevelOperationRecord> page = new Page<AiKuaishouProgramCreativeLevelOperationRecord>(pageNo, pageSize);
+		IPage<AiKuaishouProgramCreativeLevelOperationRecord> pageList = aiKuaishouProgramCreativeLevelOperationRecordService.page(page, queryWrapper);
+		result.setSuccess(true);
+		result.setResult(pageList);
+		return result;
+	}
+
+	/**
+	  *   添加
+	 * @param aiKuaishouProgramCreativeLevelOperationRecord
+	 * @return
+	 */
+	@AutoLog(value = "程序换创意创建记录-添加")
+	@ApiOperation(value="程序换创意创建记录-添加", notes="程序换创意创建记录-添加")
+	@PostMapping(value = "/add")
+	public Result<AiKuaishouProgramCreativeLevelOperationRecord> add(@RequestBody AiKuaishouProgramCreativeLevelOperationRecord aiKuaishouProgramCreativeLevelOperationRecord) {
+		Result<AiKuaishouProgramCreativeLevelOperationRecord> result = new Result<>();
+		try {
+			aiKuaishouProgramCreativeLevelOperationRecordService.save(aiKuaishouProgramCreativeLevelOperationRecord);
+			result.success("添加成功!");
+		} catch (Exception e) {
+			log.error(e.getMessage(),e);
+			result.error500("操作失败");
+		}
+		return result;
+	}
+
+	/**
+	  *  编辑
+	 * @param aiKuaishouProgramCreativeLevelOperationRecord
+	 * @return
+	 */
+	@AutoLog(value = "程序换创意创建记录-编辑")
+	@ApiOperation(value="程序换创意创建记录-编辑", notes="程序换创意创建记录-编辑")
+	@PutMapping(value = "/edit")
+	public Result<AiKuaishouProgramCreativeLevelOperationRecord> edit(@RequestBody AiKuaishouProgramCreativeLevelOperationRecord aiKuaishouProgramCreativeLevelOperationRecord) {
+		Result<AiKuaishouProgramCreativeLevelOperationRecord> result = new Result<AiKuaishouProgramCreativeLevelOperationRecord>();
+		AiKuaishouProgramCreativeLevelOperationRecord aiKuaishouProgramCreativeLevelOperationRecordEntity = aiKuaishouProgramCreativeLevelOperationRecordService.getById(aiKuaishouProgramCreativeLevelOperationRecord.getId());
+		if(aiKuaishouProgramCreativeLevelOperationRecordEntity==null) {
+			result.error500("未找到对应实体");
+		}else {
+			boolean ok = aiKuaishouProgramCreativeLevelOperationRecordService.updateById(aiKuaishouProgramCreativeLevelOperationRecord);
+			if(ok) {
+				result.success("修改成功!");
+			}
+		}
+
+		return result;
+	}
+
+	/**
+	  *   通过id删除
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "程序换创意创建记录-通过id删除")
+	@ApiOperation(value="程序换创意创建记录-通过id删除", notes="程序换创意创建记录-通过id删除")
+	@DeleteMapping(value = "/delete")
+	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
+		try {
+			aiKuaishouProgramCreativeLevelOperationRecordService.removeById(id);
+		} catch (Exception e) {
+			log.error("删除失败",e.getMessage());
+			return Result.error("删除失败!");
+		}
+		return Result.ok("删除成功!");
+	}
+
+	/**
+	  *  批量删除
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "程序换创意创建记录-批量删除")
+	@ApiOperation(value="程序换创意创建记录-批量删除", notes="程序换创意创建记录-批量删除")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<AiKuaishouProgramCreativeLevelOperationRecord> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		Result<AiKuaishouProgramCreativeLevelOperationRecord> result = new Result<>();
+		if(ids==null || "".equals(ids.trim())) {
+			result.error500("参数不识别!");
+		}else {
+			this.aiKuaishouProgramCreativeLevelOperationRecordService.removeByIds(Arrays.asList(ids.split(",")));
+			result.success("删除成功!");
+		}
+		return result;
+	}
+
+	/**
+	  * 通过id查询
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "程序换创意创建记录-通过id查询")
+	@ApiOperation(value="程序换创意创建记录-通过id查询", notes="程序换创意创建记录-通过id查询")
+	@GetMapping(value = "/queryById")
+	public Result<AiKuaishouProgramCreativeLevelOperationRecord> queryById(@RequestParam(name="id",required=true) String id) {
+		Result<AiKuaishouProgramCreativeLevelOperationRecord> result = new Result<>();
+		AiKuaishouProgramCreativeLevelOperationRecord aiKuaishouProgramCreativeLevelOperationRecord = aiKuaishouProgramCreativeLevelOperationRecordService.getById(id);
+		if(aiKuaishouProgramCreativeLevelOperationRecord==null) {
+			result.error500("未找到对应实体");
+		}else {
+			result.setResult(aiKuaishouProgramCreativeLevelOperationRecord);
+			result.setSuccess(true);
+		}
+		return result;
+	}
+
+  /**
+      * 导出excel
+   *
+   * @param request
+   * @param response
+   */
+  @RequestMapping(value = "/exportXls")
+  public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response) {
+      // Step.1 组装查询条件
+      QueryWrapper<AiKuaishouProgramCreativeLevelOperationRecord> queryWrapper = null;
+      try {
+          String paramsStr = request.getParameter("paramsStr");
+          if (oConvertUtils.isNotEmpty(paramsStr)) {
+              String deString = URLDecoder.decode(paramsStr, "UTF-8");
+              AiKuaishouProgramCreativeLevelOperationRecord aiKuaishouProgramCreativeLevelOperationRecord = JSON.parseObject(deString, AiKuaishouProgramCreativeLevelOperationRecord.class);
+              queryWrapper = QueryGenerator.initQueryWrapper(aiKuaishouProgramCreativeLevelOperationRecord, request.getParameterMap());
+          }
+      } catch (UnsupportedEncodingException e) {
+          e.printStackTrace();
+      }
+
+      //Step.2 AutoPoi 导出Excel
+      ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+      List<AiKuaishouProgramCreativeLevelOperationRecord> pageList = aiKuaishouProgramCreativeLevelOperationRecordService.list(queryWrapper);
+      //导出文件名称
+      mv.addObject(NormalExcelConstants.FILE_NAME, "程序换创意创建记录列表");
+      mv.addObject(NormalExcelConstants.CLASS, AiKuaishouProgramCreativeLevelOperationRecord.class);
+      mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("程序换创意创建记录列表数据", "导出人:Jeecg", "导出信息"));
+      mv.addObject(NormalExcelConstants.DATA_LIST, pageList);
+      return mv;
+  }
+
+  /**
+      * 通过excel导入数据
+   *
+   * @param request
+   * @param response
+   * @return
+   */
+  @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+  public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+      MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
+      Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
+      for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
+          MultipartFile file = entity.getValue();
+          ImportParams params = new ImportParams();
+          params.setTitleRows(2);
+          params.setHeadRows(1);
+          params.setNeedSave(true);
+          try {
+              List<AiKuaishouProgramCreativeLevelOperationRecord> listAiKuaishouProgramCreativeLevelOperationRecords = ExcelImportUtil.importExcel(file.getInputStream(), AiKuaishouProgramCreativeLevelOperationRecord.class, params);
+              aiKuaishouProgramCreativeLevelOperationRecordService.saveBatch(listAiKuaishouProgramCreativeLevelOperationRecords);
+              return Result.ok("文件导入成功!数据行数:" + listAiKuaishouProgramCreativeLevelOperationRecords.size());
+          } catch (Exception e) {
+              log.error(e.getMessage(),e);
+              return Result.error("文件导入失败:"+e.getMessage());
+          } finally {
+              try {
+                  file.getInputStream().close();
+              } catch (IOException e) {
+                  e.printStackTrace();
+              }
+          }
+      }
+      return Result.ok("文件导入失败!");
+  }
+
+}

+ 243 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/controller/AiKuaishouUnitLevelOperationRecordController.java

@@ -0,0 +1,243 @@
+package cn.com.ctop.kuaishou.modules.ai.controller;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+import java.net.URLDecoder;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.modules.query.QueryGenerator;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.util.oConvertUtils;
+import cn.com.ctop.ctop.entity.AiKuaishouUnitLevelOperationRecord;
+import cn.com.ctop.ctop.service.IAiKuaishouUnitLevelOperationRecordService;
+import java.util.Date;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import lombok.extern.slf4j.Slf4j;
+
+import org.jeecgframework.poi.excel.ExcelImportUtil;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.entity.ImportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
+import org.springframework.web.servlet.ModelAndView;
+import com.alibaba.fastjson.JSON;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+ /**
+ * 组创建记录
+ * @author jeecg-boot
+ * @date   2021-04-12
+ * @version V1.0
+ */
+@Slf4j
+@Api(tags="组创建记录")
+@RestController
+@RequestMapping("/ctop/aiKuaishouUnitLevelOperationRecord")
+public class AiKuaishouUnitLevelOperationRecordController {
+	@Autowired
+	private IAiKuaishouUnitLevelOperationRecordService aiKuaishouUnitLevelOperationRecordService;
+
+	/**
+	  * 分页列表查询
+	 * @param aiKuaishouUnitLevelOperationRecord
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	@AutoLog(value = "组创建记录-分页列表查询")
+	@ApiOperation(value="组创建记录-分页列表查询", notes="组创建记录-分页列表查询")
+	@GetMapping(value = "/list")
+	public Result<IPage<AiKuaishouUnitLevelOperationRecord>> queryPageList(AiKuaishouUnitLevelOperationRecord aiKuaishouUnitLevelOperationRecord,
+									  @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+									  @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+									  HttpServletRequest req) {
+		Result<IPage<AiKuaishouUnitLevelOperationRecord>> result = new Result<>();
+		QueryWrapper<AiKuaishouUnitLevelOperationRecord> queryWrapper = QueryGenerator.initQueryWrapper(aiKuaishouUnitLevelOperationRecord, req.getParameterMap());
+		Page<AiKuaishouUnitLevelOperationRecord> page = new Page<AiKuaishouUnitLevelOperationRecord>(pageNo, pageSize);
+		IPage<AiKuaishouUnitLevelOperationRecord> pageList = aiKuaishouUnitLevelOperationRecordService.page(page, queryWrapper);
+		result.setSuccess(true);
+		result.setResult(pageList);
+		return result;
+	}
+
+	/**
+	  *   添加
+	 * @param aiKuaishouUnitLevelOperationRecord
+	 * @return
+	 */
+	@AutoLog(value = "组创建记录-添加")
+	@ApiOperation(value="组创建记录-添加", notes="组创建记录-添加")
+	@PostMapping(value = "/add")
+	public Result<AiKuaishouUnitLevelOperationRecord> add(@RequestBody AiKuaishouUnitLevelOperationRecord aiKuaishouUnitLevelOperationRecord) {
+		Result<AiKuaishouUnitLevelOperationRecord> result = new Result<>();
+		try {
+			aiKuaishouUnitLevelOperationRecordService.save(aiKuaishouUnitLevelOperationRecord);
+			result.success("添加成功!");
+		} catch (Exception e) {
+			log.error(e.getMessage(),e);
+			result.error500("操作失败");
+		}
+		return result;
+	}
+
+	/**
+	  *  编辑
+	 * @param aiKuaishouUnitLevelOperationRecord
+	 * @return
+	 */
+	@AutoLog(value = "组创建记录-编辑")
+	@ApiOperation(value="组创建记录-编辑", notes="组创建记录-编辑")
+	@PutMapping(value = "/edit")
+	public Result<AiKuaishouUnitLevelOperationRecord> edit(@RequestBody AiKuaishouUnitLevelOperationRecord aiKuaishouUnitLevelOperationRecord) {
+		Result<AiKuaishouUnitLevelOperationRecord> result = new Result<AiKuaishouUnitLevelOperationRecord>();
+		AiKuaishouUnitLevelOperationRecord aiKuaishouUnitLevelOperationRecordEntity = aiKuaishouUnitLevelOperationRecordService.getById(aiKuaishouUnitLevelOperationRecord.getId());
+		if(aiKuaishouUnitLevelOperationRecordEntity==null) {
+			result.error500("未找到对应实体");
+		}else {
+			boolean ok = aiKuaishouUnitLevelOperationRecordService.updateById(aiKuaishouUnitLevelOperationRecord);
+			if(ok) {
+				result.success("修改成功!");
+			}
+		}
+
+		return result;
+	}
+
+	/**
+	  *   通过id删除
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "组创建记录-通过id删除")
+	@ApiOperation(value="组创建记录-通过id删除", notes="组创建记录-通过id删除")
+	@DeleteMapping(value = "/delete")
+	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
+		try {
+			aiKuaishouUnitLevelOperationRecordService.removeById(id);
+		} catch (Exception e) {
+			log.error("删除失败",e.getMessage());
+			return Result.error("删除失败!");
+		}
+		return Result.ok("删除成功!");
+	}
+
+	/**
+	  *  批量删除
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "组创建记录-批量删除")
+	@ApiOperation(value="组创建记录-批量删除", notes="组创建记录-批量删除")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<AiKuaishouUnitLevelOperationRecord> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		Result<AiKuaishouUnitLevelOperationRecord> result = new Result<>();
+		if(ids==null || "".equals(ids.trim())) {
+			result.error500("参数不识别!");
+		}else {
+			this.aiKuaishouUnitLevelOperationRecordService.removeByIds(Arrays.asList(ids.split(",")));
+			result.success("删除成功!");
+		}
+		return result;
+	}
+
+	/**
+	  * 通过id查询
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "组创建记录-通过id查询")
+	@ApiOperation(value="组创建记录-通过id查询", notes="组创建记录-通过id查询")
+	@GetMapping(value = "/queryById")
+	public Result<AiKuaishouUnitLevelOperationRecord> queryById(@RequestParam(name="id",required=true) String id) {
+		Result<AiKuaishouUnitLevelOperationRecord> result = new Result<>();
+		AiKuaishouUnitLevelOperationRecord aiKuaishouUnitLevelOperationRecord = aiKuaishouUnitLevelOperationRecordService.getById(id);
+		if(aiKuaishouUnitLevelOperationRecord==null) {
+			result.error500("未找到对应实体");
+		}else {
+			result.setResult(aiKuaishouUnitLevelOperationRecord);
+			result.setSuccess(true);
+		}
+		return result;
+	}
+
+  /**
+      * 导出excel
+   *
+   * @param request
+   * @param response
+   */
+  @RequestMapping(value = "/exportXls")
+  public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response) {
+      // Step.1 组装查询条件
+      QueryWrapper<AiKuaishouUnitLevelOperationRecord> queryWrapper = null;
+      try {
+          String paramsStr = request.getParameter("paramsStr");
+          if (oConvertUtils.isNotEmpty(paramsStr)) {
+              String deString = URLDecoder.decode(paramsStr, "UTF-8");
+              AiKuaishouUnitLevelOperationRecord aiKuaishouUnitLevelOperationRecord = JSON.parseObject(deString, AiKuaishouUnitLevelOperationRecord.class);
+              queryWrapper = QueryGenerator.initQueryWrapper(aiKuaishouUnitLevelOperationRecord, request.getParameterMap());
+          }
+      } catch (UnsupportedEncodingException e) {
+          e.printStackTrace();
+      }
+
+      //Step.2 AutoPoi 导出Excel
+      ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+      List<AiKuaishouUnitLevelOperationRecord> pageList = aiKuaishouUnitLevelOperationRecordService.list(queryWrapper);
+      //导出文件名称
+      mv.addObject(NormalExcelConstants.FILE_NAME, "组创建记录列表");
+      mv.addObject(NormalExcelConstants.CLASS, AiKuaishouUnitLevelOperationRecord.class);
+      mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("组创建记录列表数据", "导出人:Jeecg", "导出信息"));
+      mv.addObject(NormalExcelConstants.DATA_LIST, pageList);
+      return mv;
+  }
+
+  /**
+      * 通过excel导入数据
+   *
+   * @param request
+   * @param response
+   * @return
+   */
+  @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+  public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+      MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
+      Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
+      for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
+          MultipartFile file = entity.getValue();
+          ImportParams params = new ImportParams();
+          params.setTitleRows(2);
+          params.setHeadRows(1);
+          params.setNeedSave(true);
+          try {
+              List<AiKuaishouUnitLevelOperationRecord> listAiKuaishouUnitLevelOperationRecords = ExcelImportUtil.importExcel(file.getInputStream(), AiKuaishouUnitLevelOperationRecord.class, params);
+              aiKuaishouUnitLevelOperationRecordService.saveBatch(listAiKuaishouUnitLevelOperationRecords);
+              return Result.ok("文件导入成功!数据行数:" + listAiKuaishouUnitLevelOperationRecords.size());
+          } catch (Exception e) {
+              log.error(e.getMessage(),e);
+              return Result.error("文件导入失败:"+e.getMessage());
+          } finally {
+              try {
+                  file.getInputStream().close();
+              } catch (IOException e) {
+                  e.printStackTrace();
+              }
+          }
+      }
+      return Result.ok("文件导入失败!");
+  }
+
+}

+ 53 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/entity/AiKuaishouCampaignLevelOperationRecord.java

@@ -0,0 +1,53 @@
+package cn.com.ctop.kuaishou.modules.ai.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.util.Date;
+
+/**
+ * 计划创建记录
+ * @author jeecg-boot
+ * @date   2021-04-12
+ * @version V1.0
+ */
+@Data
+@TableName("ctop_ai_kuaishou_campaign_level_operation_record")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class AiKuaishouCampaignLevelOperationRecord {
+
+	/**计划操作表uuid*/
+	@TableId(type = IdType.ASSIGN_UUID)
+	private String campaignUuid;
+	/**AI策略ID*/
+	private String aiStrategyUuid;
+	/**账户ID*/
+	private Integer accountId;
+	/**广告计划ID*/
+	private Integer campaignId;
+	/**广告计划名称*/
+	private String campaignName;
+	/**计划类型 2-提升应用安装 3-获取电商下单 4-推广品牌活动 5-收集销售线索 7-提高应用活跃*/
+	private Integer campaignType;
+	/**单日预算*/
+	private Integer dayBudget;
+	/**分日预算*/
+	private String dayBudgetSchedule;
+	/**操作类型 1-新增 2-修改*/
+	private Integer operationType;
+	/**计划创建时间*/
+	private Date campaignCreateTime;
+	/**计划更新时间*/
+	private Date campaignUpdateTime;
+	/**创建时间*/
+	private Date createTime;
+	/**状态*/
+	private Integer status;
+	/**状态详情*/
+	private String message;
+}

+ 87 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/entity/AiKuaishouCreativeLevelOperationRecord.java

@@ -0,0 +1,87 @@
+package cn.com.ctop.kuaishou.modules.ai.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 自定义创意创建记录
+ * @author jeecg-boot
+ * @date   2021-04-12
+ * @version V1.0
+ */
+@Data
+@TableName("ctop_ai_kuaishou_creative_level_operation_record")
+public class AiKuaishouCreativeLevelOperationRecord {
+
+	/**创意操作表uuid*/
+	@TableId(type = IdType.ASSIGN_UUID)
+	private String creativeUuid;
+	/**AI策略ID*/
+	private String aiStrategyUuid;
+	/**账户ID*/
+	private Integer accountId;
+	/**广告计划ID*/
+	private Integer campaignId;
+	/**广告组ID*/
+	private Integer unitId;
+	/**广告创意ID*/
+	private Integer creativeId;
+	/**是否为便利贴,默认为0*/
+	private Integer isSticky;
+	/**创意名称*/
+	private String creativeName;
+	/**视频ID*/
+	private String photoId;
+	/**封面md5*/
+	private String imageMd5;
+	/**封面图片token*/
+	private String imageToken;
+	/**素材类型*/
+	private Integer creativeMaterialType;
+	/**便利贴单图图片创意token*/
+	private String imageTokens;
+	/**行动号召按钮文案*/
+	private String actionBarText;
+	/**广告语*/
+	private String description;
+	/**便利贴创意短广告语*/
+	private String shortSlogan;
+	/**封面广告语标题*/
+	private String stickerTitle;
+	/**贴纸样式类型*/
+	private String overlayType;
+	/**广告标签*/
+	private String exposeTag;
+	/**广告标签2期*/
+	private String newExposeTag;
+	/**安卓下载中间页ID*/
+	private Integer siteId;
+	/**第三方点击检测链接*/
+	private String clickTrackUrl;
+	/**第三方开始播放监测链接*/
+	private String impressionUrl;
+	/**第三方有效播放监测链接*/
+	private String adPhotoPlayedT3sUrl;
+	/**第三方点击按钮监测链接*/
+	private String actionbarClickUrl;
+	/**创意分类*/
+	private Integer creativeCategory;
+	/**创意标签*/
+	private String creativeTag;
+	/**操作类型 1-新增 2-修改*/
+	private Integer operationType;
+	/**创意创建时间*/
+	private Date creativeCreateTime;
+	/**创意更新时间*/
+	private Date creativeUpdateTime;
+	/**创建时间*/
+	private Date createTime;
+	/**状态*/
+	private Integer status;
+	/**状态详情*/
+	private String message;
+}

+ 71 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/entity/AiKuaishouProgramCreativeLevelOperationRecord.java

@@ -0,0 +1,71 @@
+package cn.com.ctop.kuaishou.modules.ai.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 程序换创意创建记录
+ * @author jeecg-boot
+ * @date   2021-04-12
+ * @version V1.0
+ */
+@Data
+@TableName("ctop_ai_kuaishou_program_creative_level_operation_record")
+public class AiKuaishouProgramCreativeLevelOperationRecord {
+
+	/**程序化创意操作表uuid*/
+	@TableId(type = IdType.ASSIGN_UUID)
+	private String creativeUuid;
+	/**AI策略ID*/
+	private String aiStrategyUuid;
+	/**账户ID*/
+	private Integer accountId;
+	/**广告计划ID*/
+	private Integer campaignId;
+	/**广告组ID*/
+	private Integer unitId;
+	/**是否为便利贴,默认为0*/
+	private Integer isSticky;
+	/**程序化创意名称*/
+	private String packageName;
+	/**横版视频ID list*/
+	private String horizontalPhotoIds;
+	/**竖版视频ID list*/
+	private String verticalPhotoIds;
+	/**封面list image_token*/
+	private String coverImageTokens;
+	/**落地页ID*/
+	private Integer siteId;
+	/**封面贴纸*/
+	private String stickerStyles;
+	/**封面广告语*/
+	private String coverSlogans;
+	/**行动号召按钮*/
+	private String actionBar;
+	/**作品广告语*/
+	private String captions;
+	/**第三方点击检测链接*/
+	private String clickUrl;
+	/**第三方点击检测链接*/
+	private String actionbarClickUrl;
+	/**创意分类*/
+	private Integer creativeCategory;
+	/**创意标签*/
+	private String creativeTag;
+	/**状态值 1-已提交等待回调 0-创建成功 */
+	private Integer status;
+	/**状态详情*/
+	private String message;
+	/**操作类型 1-新增 2-修改*/
+	private Integer operationType;
+	/**创意创建时间*/
+	private Date creativeCreateTime;
+	/**创意更新时间*/
+	private Date creativeUpdateTime;
+	/**创建时间*/
+	private Date createTime;
+}

+ 169 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/entity/AiKuaishouUnitLevelOperationRecord.java

@@ -0,0 +1,169 @@
+package cn.com.ctop.kuaishou.modules.ai.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.jeecgframework.poi.excel.annotation.Excel;
+
+import java.util.Date;
+
+/**
+ * 组创建记录
+ * @author jeecg-boot
+ * @date   2021-04-12
+ * @version V1.0
+ */
+@Data
+@TableName("ctop_ai_kuaishou_unit_level_operation_record")
+public class AiKuaishouUnitLevelOperationRecord {
+
+	/**组操作表uuid*/
+	@TableId(type = IdType.ASSIGN_UUID)
+	private String groupUuid;
+	/**AI策略ID*/
+	private String aiStrategyUuid;
+	/**账户ID*/
+	private Integer accountId;
+	/**广告计划ID*/
+	private Integer campaignId;
+	/**广告组ID*/
+	private Integer unitId;
+	/**广告组名称*/
+	private String groupName;
+	/**定向模板id*/
+	private Integer templateId;
+	/**优化目标出价类型*/
+	private Integer bidType;
+	/**优先从系统应用商店下载*/
+	private Integer useAppMarket;
+	/**应用商店列表*/
+	private String appStore;
+	/**出价*/
+	private Integer bid;
+	/**出价*/
+	private Integer cpaBid;
+	/**优先低成本出价*/
+	private Integer smartBid;
+	/**优化目标*/
+	private Integer ocpxActionType;
+	/**深度转化目标*/
+	private Integer deepConversionType;
+	/**付费ROI系数*/
+	private Float roiRatio;
+	/**资源位置*/
+	private String sceneId;
+	/** 创意制作方式*/
+	private Integer unitType;
+	/**投放开始时间*/
+	private String beginTime;
+	/**投放结束时间*/
+	private String endTime;
+	/**投放时间段*/
+	private String scheduleTime;
+	/**单日预算*/
+	private Integer dayBudget;
+	/**分日预算*/
+	private String dayBudgetSchedule;
+	/**转化目标ID*/
+	private Integer convertId;
+	/**url类型*/
+	private Integer urlType;
+	/**url类型*/
+	private Integer webUriType;
+	/**投放链接*/
+	private String url;
+	/**调起链接*/
+	private String schemaUri;
+	/**应用ID*/
+	private Integer appId;
+	/**创意展现方式*/
+	private Integer showMode;
+	/**投放方式*/
+	private Integer speed;
+	/**预约广告*/
+	private Integer siteType;
+	/**游戏礼包码*/
+	private String giftData;
+	/**是否使用落地页前置功能*/
+	private Integer videoLandingPage;
+	/**智能定向*/
+	private Integer autoTarget;
+	/**是否开启自动生成视频*/
+	private Integer autoCreatePhoto;
+	/**地域*/
+	private String region;
+	/**商圈定向*/
+	private String districtIds;
+	/**用户类型*/
+	private Integer userType;
+	/**最大年龄*/
+	private Integer ageMin;
+	/**最小年龄*/
+	private Integer ageMax;
+	/**固定年龄段*/
+	private String agesRange;
+	/**性别*/
+	private Integer gender;
+	/**操作系统*/
+	private Integer platformOs;
+	/**Android版本*/
+	private Integer androidOsv;
+	/**iOS版本*/
+	private Integer iosOsv;
+	/**网络环境*/
+	private Integer network;
+	/**设备品牌*/
+	private String deviceBrand;
+	/**设备价格*/
+	private String devicePrice;
+	/**商业兴趣类型*/
+	private Integer businessInterestType;
+	/**商业兴趣*/
+	private String businessInterest;
+	/**网红粉丝*/
+	private String fansStar;
+	/**兴趣视频用户*/
+	private String interestVideo;
+	/**APP行为-按分类*/
+	private String appInterest;
+	/**APP行为-按APP名称*/
+	private String appIds;
+	/**过滤已转化人群纬度*/
+	private Integer filterConvertedLevel;
+	/**人群包定向*/
+	private String population;
+	/**人群包排除*/
+	private String excludePopulation;
+	/**付费人群包id*/
+	private String paidAudience;
+	/**开启智能扩量*/
+	private Integer isOpen;
+	/**不可突破年龄*/
+	private Integer noAgeBreak;
+	/**不可突破性别*/
+	private Integer noGenderBreak;
+	/**不可突破地域*/
+	private Integer noAreaBreak;
+	/**行为兴趣定向*/
+	private String behaviorInterest;
+	/**操作类型 1-新增 2-修改*/
+	private Integer operationType;
+	/**组创建时间*/
+	private Date groupCreateTime;
+	/**组更新时间*/
+	private Date groupUpdateTime;
+	/**创建时间*/
+	private Date createTime;
+	/**状态*/
+	private Integer status;
+	/**状态详情*/
+	private String message;
+	/**程序化创意2.0-是否开启智能抽帧*/
+	private Integer smartCover;
+	/**程序化创意2.0-是否开启素材挖掘*/
+	private Integer assetMining;
+	/**深度转化目标出价*/
+	private Integer deepConversionBid;
+}

+ 14 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/AiKuaishouCampaignLevelOperationRecordMapper.java

@@ -0,0 +1,14 @@
+package cn.com.ctop.kuaishou.modules.ai.mapper;
+
+import cn.com.ctop.kuaishou.modules.ai.entity.AiKuaishouCampaignLevelOperationRecord;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * 计划创建记录
+ * @author: jeecg-boot
+ * @date:   2021-04-12
+ * @cersion: V1.0
+ */
+public interface AiKuaishouCampaignLevelOperationRecordMapper extends BaseMapper<AiKuaishouCampaignLevelOperationRecord> {
+
+}

+ 14 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/AiKuaishouCreativeLevelOperationRecordMapper.java

@@ -0,0 +1,14 @@
+package cn.com.ctop.kuaishou.modules.ai.mapper;
+
+import cn.com.ctop.kuaishou.modules.ai.entity.AiKuaishouCreativeLevelOperationRecord;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * 自定义创意创建记录
+ * @author: jeecg-boot
+ * @date:   2021-04-12
+ * @cersion: V1.0
+ */
+public interface AiKuaishouCreativeLevelOperationRecordMapper extends BaseMapper<AiKuaishouCreativeLevelOperationRecord> {
+
+}

+ 14 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/AiKuaishouProgramCreativeLevelOperationRecordMapper.java

@@ -0,0 +1,14 @@
+package cn.com.ctop.kuaishou.modules.ai.mapper;
+
+import cn.com.ctop.kuaishou.modules.ai.entity.AiKuaishouProgramCreativeLevelOperationRecord;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * 程序换创意创建记录
+ * @author: jeecg-boot
+ * @date:   2021-04-12
+ * @cersion: V1.0
+ */
+public interface AiKuaishouProgramCreativeLevelOperationRecordMapper extends BaseMapper<AiKuaishouProgramCreativeLevelOperationRecord> {
+
+}

+ 14 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/AiKuaishouUnitLevelOperationRecordMapper.java

@@ -0,0 +1,14 @@
+package cn.com.ctop.kuaishou.modules.ai.mapper;
+
+import cn.com.ctop.kuaishou.modules.ai.entity.AiKuaishouUnitLevelOperationRecord;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * 组创建记录
+ * @author: jeecg-boot
+ * @date:   2021-04-12
+ * @cersion: V1.0
+ */
+public interface AiKuaishouUnitLevelOperationRecordMapper extends BaseMapper<AiKuaishouUnitLevelOperationRecord> {
+
+}

+ 5 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/xml/AiKuaishouCampaignLevelOperationRecordMapper.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="cn.com.ctop.kuaishou.modules.ai.mapper.AiKuaishouCampaignLevelOperationRecordMapper">
+
+</mapper>

+ 5 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/xml/AiKuaishouCreativeLevelOperationRecordMapper.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="cn.com.ctop.kuaishou.modules.ai.mapper.AiKuaishouCreativeLevelOperationRecordMapper">
+
+</mapper>

+ 5 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/xml/AiKuaishouProgramCreativeLevelOperationRecordMapper.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="cn.com.ctop.kuaishou.modules.ai.mapper.AiKuaishouProgramCreativeLevelOperationRecordMapper">
+
+</mapper>

+ 5 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/xml/AiKuaishouUnitLevelOperationRecordMapper.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="cn.com.ctop.kuaishou.modules.ai.mapper.AiKuaishouUnitLevelOperationRecordMapper">
+
+</mapper>

+ 15 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/IAiKuaishouCampaignLevelOperationRecordService.java

@@ -0,0 +1,15 @@
+package cn.com.ctop.kuaishou.modules.ai.service;
+
+import cn.com.ctop.kuaishou.modules.ai.entity.AiKuaishouCampaignLevelOperationRecord;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: 计划创建记录
+ * @Author: jeecg-boot
+ * @Date:   2021-04-12
+ * @Version: V1.0
+ */
+public interface IAiKuaishouCampaignLevelOperationRecordService extends IService<AiKuaishouCampaignLevelOperationRecord> {
+
+}
+

+ 14 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/IAiKuaishouCreativeLevelOperationRecordService.java

@@ -0,0 +1,14 @@
+package cn.com.ctop.kuaishou.modules.ai.service;
+
+import cn.com.ctop.kuaishou.modules.ai.entity.AiKuaishouCreativeLevelOperationRecord;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: 自定义创意创建记录
+ * @Author: jeecg-boot
+ * @Date:   2021-04-12
+ * @Version: V1.0
+ */
+public interface IAiKuaishouCreativeLevelOperationRecordService extends IService<AiKuaishouCreativeLevelOperationRecord> {
+
+}

+ 14 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/IAiKuaishouProgramCreativeLevelOperationRecordService.java

@@ -0,0 +1,14 @@
+package cn.com.ctop.kuaishou.modules.ai.service;
+
+import cn.com.ctop.kuaishou.modules.ai.entity.AiKuaishouProgramCreativeLevelOperationRecord;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: 程序换创意创建记录
+ * @Author: jeecg-boot
+ * @Date:   2021-04-12
+ * @Version: V1.0
+ */
+public interface IAiKuaishouProgramCreativeLevelOperationRecordService extends IService<AiKuaishouProgramCreativeLevelOperationRecord> {
+
+}

+ 14 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/IAiKuaishouUnitLevelOperationRecordService.java

@@ -0,0 +1,14 @@
+package cn.com.ctop.kuaishou.modules.ai.service;
+
+import cn.com.ctop.kuaishou.modules.ai.entity.AiKuaishouUnitLevelOperationRecord;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @Description: 组创建记录
+ * @Author: jeecg-boot
+ * @Date:   2021-04-12
+ * @Version: V1.0
+ */
+public interface IAiKuaishouUnitLevelOperationRecordService extends IService<AiKuaishouUnitLevelOperationRecord> {
+
+}

+ 18 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/impl/AiKuaishouCampaignLevelOperationRecordServiceImpl.java

@@ -0,0 +1,18 @@
+package cn.com.ctop.kuaishou.modules.ai.service.impl;
+
+import cn.com.ctop.kuaishou.modules.ai.entity.AiKuaishouCampaignLevelOperationRecord;
+import cn.com.ctop.kuaishou.modules.ai.mapper.AiKuaishouCampaignLevelOperationRecordMapper;
+import cn.com.ctop.kuaishou.modules.ai.service.IAiKuaishouCampaignLevelOperationRecordService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * 计划创建记录
+ * @author jeecg-boot
+ * @date   2021-04-12
+ * @version V1.0
+ */
+@Service
+public class AiKuaishouCampaignLevelOperationRecordServiceImpl extends ServiceImpl<AiKuaishouCampaignLevelOperationRecordMapper, AiKuaishouCampaignLevelOperationRecord> implements IAiKuaishouCampaignLevelOperationRecordService {
+
+}

+ 18 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/impl/AiKuaishouCreativeLevelOperationRecordServiceImpl.java

@@ -0,0 +1,18 @@
+package cn.com.ctop.kuaishou.modules.ai.service.impl;
+
+import cn.com.ctop.kuaishou.modules.ai.entity.AiKuaishouCreativeLevelOperationRecord;
+import cn.com.ctop.kuaishou.modules.ai.mapper.AiKuaishouCreativeLevelOperationRecordMapper;
+import cn.com.ctop.kuaishou.modules.ai.service.IAiKuaishouCreativeLevelOperationRecordService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * 自定义创意创建记录
+ * @author jeecg-boot
+ * @date   2021-04-12
+ * @version V1.0
+ */
+@Service
+public class AiKuaishouCreativeLevelOperationRecordServiceImpl extends ServiceImpl<AiKuaishouCreativeLevelOperationRecordMapper, AiKuaishouCreativeLevelOperationRecord> implements IAiKuaishouCreativeLevelOperationRecordService {
+
+}

+ 18 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/impl/AiKuaishouProgramCreativeLevelOperationRecordServiceImpl.java

@@ -0,0 +1,18 @@
+package cn.com.ctop.kuaishou.modules.ai.service.impl;
+
+import cn.com.ctop.kuaishou.modules.ai.entity.AiKuaishouProgramCreativeLevelOperationRecord;
+import cn.com.ctop.kuaishou.modules.ai.mapper.AiKuaishouProgramCreativeLevelOperationRecordMapper;
+import cn.com.ctop.kuaishou.modules.ai.service.IAiKuaishouProgramCreativeLevelOperationRecordService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * 程序换创意创建记录
+ * @author jeecg-boot
+ * @date   2021-04-12
+ * @version V1.0
+ */
+@Service
+public class AiKuaishouProgramCreativeLevelOperationRecordServiceImpl extends ServiceImpl<AiKuaishouProgramCreativeLevelOperationRecordMapper, AiKuaishouProgramCreativeLevelOperationRecord> implements IAiKuaishouProgramCreativeLevelOperationRecordService {
+
+}

+ 18 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/impl/AiKuaishouUnitLevelOperationRecordServiceImpl.java

@@ -0,0 +1,18 @@
+package cn.com.ctop.kuaishou.modules.ai.service.impl;
+
+import cn.com.ctop.kuaishou.modules.ai.entity.AiKuaishouUnitLevelOperationRecord;
+import cn.com.ctop.kuaishou.modules.ai.mapper.AiKuaishouUnitLevelOperationRecordMapper;
+import cn.com.ctop.kuaishou.modules.ai.service.IAiKuaishouUnitLevelOperationRecordService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * 组创建记录
+ * @author jeecg-boot
+ * @date   2021-04-12
+ * @version V1.0
+ */
+@Service
+public class AiKuaishouUnitLevelOperationRecordServiceImpl extends ServiceImpl<AiKuaishouUnitLevelOperationRecordMapper, AiKuaishouUnitLevelOperationRecord> implements IAiKuaishouUnitLevelOperationRecordService {
+
+}

+ 4 - 1
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/mapper/xml/KuaiShouVideoGetMapper.xml

@@ -226,7 +226,7 @@
             and video.channel_type = #{channelType}
         </if>
         <if test="appVersion != null and appVersion != '' ">
-            and photo_name like concat(#{appVersion},'%')
+            and video.photo_name like concat(#{appVersion},'%')
         </if>
         and video.status = 0
         group by video.signature
@@ -277,6 +277,9 @@
         <if test="endTime!=null">
             and stat_date &lt;= #{endTime}
         </if>
+        <if test="appVersion != null and appVersion != '' ">
+            and photo_name like concat(#{appVersion},'%')
+        </if>
         group by signature) video
                   on video.signature = report.signature
         left join (SELECT id, photo_id from ctop_ai_creative_limit WHERE account_id = #{accountId}) t2