Browse Source

接口定义

wangyunpeng 2 days ago
parent
commit
c4ca0e9505
55 changed files with 8129 additions and 6 deletions
  1. 34 0
      api-module/src/main/java/com/tzld/piaoquan/api/common/enums/wecom/ThirdPartWeComStaffStatusEnum.java
  2. 69 0
      api-module/src/main/java/com/tzld/piaoquan/api/controller/wecom/thirdpart/WeComThirdPartyAccountController.java
  3. 47 0
      api-module/src/main/java/com/tzld/piaoquan/api/controller/wecom/thirdpart/WeComThirdPartyRoomController.java
  4. 30 0
      api-module/src/main/java/com/tzld/piaoquan/api/dao/mapper/wecom/thirdpart/ThirdPartWeComRoomConfigMapper.java
  5. 30 0
      api-module/src/main/java/com/tzld/piaoquan/api/dao/mapper/wecom/thirdpart/ThirdPartWeComRoomConfigTaskContentMapper.java
  6. 30 0
      api-module/src/main/java/com/tzld/piaoquan/api/dao/mapper/wecom/thirdpart/ThirdPartWeComRoomConfigTaskMapper.java
  7. 30 0
      api-module/src/main/java/com/tzld/piaoquan/api/dao/mapper/wecom/thirdpart/ThirdPartWeComStaffConfigMapper.java
  8. 30 0
      api-module/src/main/java/com/tzld/piaoquan/api/dao/mapper/wecom/thirdpart/ThirdPartWeComStaffConfigTaskContentMapper.java
  9. 30 0
      api-module/src/main/java/com/tzld/piaoquan/api/dao/mapper/wecom/thirdpart/ThirdPartWeComStaffConfigTaskMapper.java
  10. 18 3
      api-module/src/main/java/com/tzld/piaoquan/api/job/wecom/thirdpart/WeComAccountJob.java
  11. 34 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyAccountConfigParam.java
  12. 19 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyAccountConfigTaskContentParam.java
  13. 21 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyAccountConfigTaskParam.java
  14. 15 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyAccountListParam.java
  15. 10 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyAccountLogOutParam.java
  16. 10 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyConfigGetParam.java
  17. 30 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyRoomConfigParam.java
  18. 19 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyRoomConfigTaskContentParam.java
  19. 21 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyRoomConfigTaskParam.java
  20. 15 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyRoomListParam.java
  21. 125 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComRoomConfig.java
  22. 842 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComRoomConfigExample.java
  23. 103 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComRoomConfigTask.java
  24. 114 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComRoomConfigTaskContent.java
  25. 792 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComRoomConfigTaskContentExample.java
  26. 722 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComRoomConfigTaskExample.java
  27. 136 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComStaffConfig.java
  28. 902 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComStaffConfigExample.java
  29. 103 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComStaffConfigTask.java
  30. 114 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComStaffConfigTaskContent.java
  31. 792 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComStaffConfigTaskContentExample.java
  32. 722 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComStaffConfigTaskExample.java
  33. 19 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/vo/IdNameVO.java
  34. 16 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/vo/contentplatform/AccountQrCodeVO.java
  35. 19 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/vo/wecom/thirdpart/ThirdPartyAccountConfigTaskContentVO.java
  36. 21 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/vo/wecom/thirdpart/ThirdPartyAccountConfigTaskVO.java
  37. 30 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/vo/wecom/thirdpart/ThirdPartyAccountConfigVO.java
  38. 31 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/vo/wecom/thirdpart/ThirdPartyAccountVO.java
  39. 19 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/vo/wecom/thirdpart/ThirdPartyRoomConfigTaskContentVO.java
  40. 21 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/vo/wecom/thirdpart/ThirdPartyRoomConfigTaskVO.java
  41. 30 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/vo/wecom/thirdpart/ThirdPartyRoomConfigVO.java
  42. 24 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/vo/wecom/thirdpart/ThirdPartyRoomVO.java
  43. 29 0
      api-module/src/main/java/com/tzld/piaoquan/api/service/wecom/thirdparty/WeComThirdPartyAccountService.java
  44. 22 0
      api-module/src/main/java/com/tzld/piaoquan/api/service/wecom/thirdparty/WeComThirdPartyRoomService.java
  45. 72 0
      api-module/src/main/java/com/tzld/piaoquan/api/service/wecom/thirdparty/impl/WeComThirdPartyAccountServiceImpl.java
  46. 51 0
      api-module/src/main/java/com/tzld/piaoquan/api/service/wecom/thirdparty/impl/WeComThirdPartyRoomServiceImpl.java
  47. 3 2
      api-module/src/main/java/com/tzld/piaoquan/api/service/wecom/thirdparty/impl/WeComThirdPartyServiceImpl.java
  48. 294 0
      api-module/src/main/resources/mapper/wecom/thirdpart/ThirdPartWeComRoomConfigMapper.xml
  49. 278 0
      api-module/src/main/resources/mapper/wecom/thirdpart/ThirdPartWeComRoomConfigTaskContentMapper.xml
  50. 261 0
      api-module/src/main/resources/mapper/wecom/thirdpart/ThirdPartWeComRoomConfigTaskMapper.xml
  51. 311 0
      api-module/src/main/resources/mapper/wecom/thirdpart/ThirdPartWeComStaffConfigMapper.xml
  52. 278 0
      api-module/src/main/resources/mapper/wecom/thirdpart/ThirdPartWeComStaffConfigTaskContentMapper.xml
  53. 261 0
      api-module/src/main/resources/mapper/wecom/thirdpart/ThirdPartWeComStaffConfigTaskMapper.xml
  54. 7 1
      api-module/src/main/resources/mybatis-api-wecomThirdpart-generator-config.xml
  55. 23 0
      common-module/src/main/java/com/tzld/piaoquan/growth/common/utils/DistributedIdGenerator.java

+ 34 - 0
api-module/src/main/java/com/tzld/piaoquan/api/common/enums/wecom/ThirdPartWeComStaffStatusEnum.java

@@ -0,0 +1,34 @@
+package com.tzld.piaoquan.api.common.enums.wecom;
+
+import lombok.Getter;
+
+@Getter
+public enum ThirdPartWeComStaffStatusEnum {
+    
+    NORMAL(0, "正常"),
+    OFFLINE(1, "掉线"),
+    QUIT(2, "离线"),
+
+    other(999, "其他");
+
+    // 0正常,1掉线,2离线
+    private final int val;
+    private final String description;
+
+    ThirdPartWeComStaffStatusEnum(int val, String description) {
+        this.val = val;
+        this.description = description;
+    }
+
+    public static ThirdPartWeComStaffStatusEnum from(int val) {
+        for (ThirdPartWeComStaffStatusEnum statusEnum : ThirdPartWeComStaffStatusEnum.values()) {
+            if (statusEnum.getVal() == val) {
+                return statusEnum;
+            }
+        }
+
+        return other;
+    }
+
+
+}

+ 69 - 0
api-module/src/main/java/com/tzld/piaoquan/api/controller/wecom/thirdpart/WeComThirdPartyAccountController.java

@@ -0,0 +1,69 @@
+package com.tzld.piaoquan.api.controller.wecom.thirdpart;
+
+import com.tzld.piaoquan.api.model.param.wecom.thirdpart.*;
+import com.tzld.piaoquan.api.model.vo.IdNameVO;
+import com.tzld.piaoquan.api.model.vo.contentplatform.AccountQrCodeVO;
+import com.tzld.piaoquan.api.model.vo.wecom.thirdpart.ThirdPartyAccountConfigVO;
+import com.tzld.piaoquan.api.model.vo.wecom.thirdpart.ThirdPartyAccountVO;
+import com.tzld.piaoquan.api.service.wecom.thirdparty.WeComThirdPartyAccountService;
+import com.tzld.piaoquan.growth.common.common.base.CommonResponse;
+import com.tzld.piaoquan.growth.common.utils.page.Page;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+@Slf4j
+@RestController
+@RequestMapping("/wecom/thirdparty/account")
+@CrossOrigin(origins = "*")
+public class WeComThirdPartyAccountController {
+
+    @Autowired
+    private WeComThirdPartyAccountService service;
+
+    @GetMapping("/getQrCode")
+    public CommonResponse<AccountQrCodeVO> getQrCode(@RequestParam String id) {
+        return CommonResponse.success(service.getQrCode(id));
+    }
+
+    @GetMapping("/getNeedCheckCode")
+    public CommonResponse<Boolean> getNeedCheckCode(@RequestParam String uuid) {
+        return CommonResponse.success(service.getNeedCheckCode(uuid));
+    }
+
+    @PostMapping("/setCheckCode")
+    public CommonResponse<Void> setCheckCode(@RequestBody CheckCodeRequest param) {
+        service.setCheckCode(param);
+        return CommonResponse.success();
+    }
+
+    @PostMapping("/list")
+    public CommonResponse<Page<ThirdPartyAccountVO>> list(@RequestBody ThirdPartyAccountListParam param) {
+        return CommonResponse.success(service.list(param));
+    }
+
+    @GetMapping("/getPushAccountList")
+    public CommonResponse<List<IdNameVO<Long>>> getPushAccountList(@RequestParam Long accountId, @RequestParam String name) {
+        return CommonResponse.success(service.getPushAccountList(accountId, name));
+    }
+
+    @PostMapping("/getAccountConfig")
+    public CommonResponse<ThirdPartyAccountConfigVO> getAccountConfig(@RequestBody ThirdPartyConfigGetParam param) {
+        return CommonResponse.success(service.getAccountConfig(param));
+    }
+
+    @PostMapping("/saveAccountConfig")
+    public CommonResponse<Void> saveAccountConfig(@RequestBody ThirdPartyAccountConfigParam param) {
+        service.saveAccountConfig(param);
+        return CommonResponse.success();
+    }
+
+    @PostMapping("/logout")
+    public CommonResponse<Void> logout(@RequestBody ThirdPartyAccountLogOutParam param) {
+        service.logout(param);
+        return CommonResponse.success();
+    }
+
+}

+ 47 - 0
api-module/src/main/java/com/tzld/piaoquan/api/controller/wecom/thirdpart/WeComThirdPartyRoomController.java

@@ -0,0 +1,47 @@
+package com.tzld.piaoquan.api.controller.wecom.thirdpart;
+
+import com.tzld.piaoquan.api.model.param.wecom.thirdpart.ThirdPartyRoomConfigParam;
+import com.tzld.piaoquan.api.model.param.wecom.thirdpart.ThirdPartyConfigGetParam;
+import com.tzld.piaoquan.api.model.param.wecom.thirdpart.ThirdPartyRoomListParam;
+import com.tzld.piaoquan.api.model.vo.IdNameVO;
+import com.tzld.piaoquan.api.model.vo.wecom.thirdpart.ThirdPartyRoomConfigVO;
+import com.tzld.piaoquan.api.model.vo.wecom.thirdpart.ThirdPartyRoomVO;
+import com.tzld.piaoquan.api.service.wecom.thirdparty.WeComThirdPartyRoomService;
+import com.tzld.piaoquan.growth.common.common.base.CommonResponse;
+import com.tzld.piaoquan.growth.common.utils.page.Page;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+@Slf4j
+@RestController
+@RequestMapping("/wecom/thirdparty/room")
+@CrossOrigin(origins = "*")
+public class WeComThirdPartyRoomController {
+
+    @Autowired
+    private WeComThirdPartyRoomService service;
+
+    @PostMapping("/list")
+    public CommonResponse<Page<ThirdPartyRoomVO>> list(@RequestBody ThirdPartyRoomListParam param) {
+        return CommonResponse.success(service.list(param));
+    }
+
+    @GetMapping("/getPushAccountList")
+    public CommonResponse<List<IdNameVO<Long>>> getPushAccountList(@RequestParam Long roomId, @RequestParam String name) {
+        return CommonResponse.success(service.getPushAccountList(roomId, name));
+    }
+
+    @PostMapping("/getRoomConfig")
+    public CommonResponse<ThirdPartyRoomConfigVO> getRoomConfig(@RequestBody ThirdPartyConfigGetParam param) {
+        return CommonResponse.success(service.getRoomConfig(param));
+    }
+
+    @PostMapping("/saveRoomConfig")
+    public CommonResponse<Void> saveRoomConfig(@RequestBody ThirdPartyRoomConfigParam param) {
+        service.saveRoomConfig(param);
+        return CommonResponse.success();
+    }
+}

+ 30 - 0
api-module/src/main/java/com/tzld/piaoquan/api/dao/mapper/wecom/thirdpart/ThirdPartWeComRoomConfigMapper.java

@@ -0,0 +1,30 @@
+package com.tzld.piaoquan.api.dao.mapper.wecom.thirdpart;
+
+import com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfig;
+import com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigExample;
+import java.util.List;
+import org.apache.ibatis.annotations.Param;
+
+public interface ThirdPartWeComRoomConfigMapper {
+    long countByExample(ThirdPartWeComRoomConfigExample example);
+
+    int deleteByExample(ThirdPartWeComRoomConfigExample example);
+
+    int deleteByPrimaryKey(String id);
+
+    int insert(ThirdPartWeComRoomConfig record);
+
+    int insertSelective(ThirdPartWeComRoomConfig record);
+
+    List<ThirdPartWeComRoomConfig> selectByExample(ThirdPartWeComRoomConfigExample example);
+
+    ThirdPartWeComRoomConfig selectByPrimaryKey(String id);
+
+    int updateByExampleSelective(@Param("record") ThirdPartWeComRoomConfig record, @Param("example") ThirdPartWeComRoomConfigExample example);
+
+    int updateByExample(@Param("record") ThirdPartWeComRoomConfig record, @Param("example") ThirdPartWeComRoomConfigExample example);
+
+    int updateByPrimaryKeySelective(ThirdPartWeComRoomConfig record);
+
+    int updateByPrimaryKey(ThirdPartWeComRoomConfig record);
+}

+ 30 - 0
api-module/src/main/java/com/tzld/piaoquan/api/dao/mapper/wecom/thirdpart/ThirdPartWeComRoomConfigTaskContentMapper.java

@@ -0,0 +1,30 @@
+package com.tzld.piaoquan.api.dao.mapper.wecom.thirdpart;
+
+import com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTaskContent;
+import com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTaskContentExample;
+import java.util.List;
+import org.apache.ibatis.annotations.Param;
+
+public interface ThirdPartWeComRoomConfigTaskContentMapper {
+    long countByExample(ThirdPartWeComRoomConfigTaskContentExample example);
+
+    int deleteByExample(ThirdPartWeComRoomConfigTaskContentExample example);
+
+    int deleteByPrimaryKey(String id);
+
+    int insert(ThirdPartWeComRoomConfigTaskContent record);
+
+    int insertSelective(ThirdPartWeComRoomConfigTaskContent record);
+
+    List<ThirdPartWeComRoomConfigTaskContent> selectByExample(ThirdPartWeComRoomConfigTaskContentExample example);
+
+    ThirdPartWeComRoomConfigTaskContent selectByPrimaryKey(String id);
+
+    int updateByExampleSelective(@Param("record") ThirdPartWeComRoomConfigTaskContent record, @Param("example") ThirdPartWeComRoomConfigTaskContentExample example);
+
+    int updateByExample(@Param("record") ThirdPartWeComRoomConfigTaskContent record, @Param("example") ThirdPartWeComRoomConfigTaskContentExample example);
+
+    int updateByPrimaryKeySelective(ThirdPartWeComRoomConfigTaskContent record);
+
+    int updateByPrimaryKey(ThirdPartWeComRoomConfigTaskContent record);
+}

+ 30 - 0
api-module/src/main/java/com/tzld/piaoquan/api/dao/mapper/wecom/thirdpart/ThirdPartWeComRoomConfigTaskMapper.java

@@ -0,0 +1,30 @@
+package com.tzld.piaoquan.api.dao.mapper.wecom.thirdpart;
+
+import com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTask;
+import com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTaskExample;
+import java.util.List;
+import org.apache.ibatis.annotations.Param;
+
+public interface ThirdPartWeComRoomConfigTaskMapper {
+    long countByExample(ThirdPartWeComRoomConfigTaskExample example);
+
+    int deleteByExample(ThirdPartWeComRoomConfigTaskExample example);
+
+    int deleteByPrimaryKey(String id);
+
+    int insert(ThirdPartWeComRoomConfigTask record);
+
+    int insertSelective(ThirdPartWeComRoomConfigTask record);
+
+    List<ThirdPartWeComRoomConfigTask> selectByExample(ThirdPartWeComRoomConfigTaskExample example);
+
+    ThirdPartWeComRoomConfigTask selectByPrimaryKey(String id);
+
+    int updateByExampleSelective(@Param("record") ThirdPartWeComRoomConfigTask record, @Param("example") ThirdPartWeComRoomConfigTaskExample example);
+
+    int updateByExample(@Param("record") ThirdPartWeComRoomConfigTask record, @Param("example") ThirdPartWeComRoomConfigTaskExample example);
+
+    int updateByPrimaryKeySelective(ThirdPartWeComRoomConfigTask record);
+
+    int updateByPrimaryKey(ThirdPartWeComRoomConfigTask record);
+}

+ 30 - 0
api-module/src/main/java/com/tzld/piaoquan/api/dao/mapper/wecom/thirdpart/ThirdPartWeComStaffConfigMapper.java

@@ -0,0 +1,30 @@
+package com.tzld.piaoquan.api.dao.mapper.wecom.thirdpart;
+
+import com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfig;
+import com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigExample;
+import java.util.List;
+import org.apache.ibatis.annotations.Param;
+
+public interface ThirdPartWeComStaffConfigMapper {
+    long countByExample(ThirdPartWeComStaffConfigExample example);
+
+    int deleteByExample(ThirdPartWeComStaffConfigExample example);
+
+    int deleteByPrimaryKey(String id);
+
+    int insert(ThirdPartWeComStaffConfig record);
+
+    int insertSelective(ThirdPartWeComStaffConfig record);
+
+    List<ThirdPartWeComStaffConfig> selectByExample(ThirdPartWeComStaffConfigExample example);
+
+    ThirdPartWeComStaffConfig selectByPrimaryKey(String id);
+
+    int updateByExampleSelective(@Param("record") ThirdPartWeComStaffConfig record, @Param("example") ThirdPartWeComStaffConfigExample example);
+
+    int updateByExample(@Param("record") ThirdPartWeComStaffConfig record, @Param("example") ThirdPartWeComStaffConfigExample example);
+
+    int updateByPrimaryKeySelective(ThirdPartWeComStaffConfig record);
+
+    int updateByPrimaryKey(ThirdPartWeComStaffConfig record);
+}

+ 30 - 0
api-module/src/main/java/com/tzld/piaoquan/api/dao/mapper/wecom/thirdpart/ThirdPartWeComStaffConfigTaskContentMapper.java

@@ -0,0 +1,30 @@
+package com.tzld.piaoquan.api.dao.mapper.wecom.thirdpart;
+
+import com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTaskContent;
+import com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTaskContentExample;
+import java.util.List;
+import org.apache.ibatis.annotations.Param;
+
+public interface ThirdPartWeComStaffConfigTaskContentMapper {
+    long countByExample(ThirdPartWeComStaffConfigTaskContentExample example);
+
+    int deleteByExample(ThirdPartWeComStaffConfigTaskContentExample example);
+
+    int deleteByPrimaryKey(String id);
+
+    int insert(ThirdPartWeComStaffConfigTaskContent record);
+
+    int insertSelective(ThirdPartWeComStaffConfigTaskContent record);
+
+    List<ThirdPartWeComStaffConfigTaskContent> selectByExample(ThirdPartWeComStaffConfigTaskContentExample example);
+
+    ThirdPartWeComStaffConfigTaskContent selectByPrimaryKey(String id);
+
+    int updateByExampleSelective(@Param("record") ThirdPartWeComStaffConfigTaskContent record, @Param("example") ThirdPartWeComStaffConfigTaskContentExample example);
+
+    int updateByExample(@Param("record") ThirdPartWeComStaffConfigTaskContent record, @Param("example") ThirdPartWeComStaffConfigTaskContentExample example);
+
+    int updateByPrimaryKeySelective(ThirdPartWeComStaffConfigTaskContent record);
+
+    int updateByPrimaryKey(ThirdPartWeComStaffConfigTaskContent record);
+}

+ 30 - 0
api-module/src/main/java/com/tzld/piaoquan/api/dao/mapper/wecom/thirdpart/ThirdPartWeComStaffConfigTaskMapper.java

@@ -0,0 +1,30 @@
+package com.tzld.piaoquan.api.dao.mapper.wecom.thirdpart;
+
+import com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTask;
+import com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTaskExample;
+import java.util.List;
+import org.apache.ibatis.annotations.Param;
+
+public interface ThirdPartWeComStaffConfigTaskMapper {
+    long countByExample(ThirdPartWeComStaffConfigTaskExample example);
+
+    int deleteByExample(ThirdPartWeComStaffConfigTaskExample example);
+
+    int deleteByPrimaryKey(String id);
+
+    int insert(ThirdPartWeComStaffConfigTask record);
+
+    int insertSelective(ThirdPartWeComStaffConfigTask record);
+
+    List<ThirdPartWeComStaffConfigTask> selectByExample(ThirdPartWeComStaffConfigTaskExample example);
+
+    ThirdPartWeComStaffConfigTask selectByPrimaryKey(String id);
+
+    int updateByExampleSelective(@Param("record") ThirdPartWeComStaffConfigTask record, @Param("example") ThirdPartWeComStaffConfigTaskExample example);
+
+    int updateByExample(@Param("record") ThirdPartWeComStaffConfigTask record, @Param("example") ThirdPartWeComStaffConfigTaskExample example);
+
+    int updateByPrimaryKeySelective(ThirdPartWeComStaffConfigTask record);
+
+    int updateByPrimaryKey(ThirdPartWeComStaffConfigTask record);
+}

+ 18 - 3
api-module/src/main/java/com/tzld/piaoquan/api/job/wecom/thirdpart/WeComAccountJob.java

@@ -2,12 +2,14 @@ package com.tzld.piaoquan.api.job.wecom.thirdpart;
 
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.TypeReference;
+import com.tzld.piaoquan.api.common.enums.wecom.ThirdPartWeComStaffStatusEnum;
 import com.tzld.piaoquan.api.component.WeComThirdPartyApiClient;
+import com.tzld.piaoquan.api.dao.mapper.wecom.thirdpart.ThirdPartWeComStaffMapper;
 import com.tzld.piaoquan.api.model.param.wecom.thirdpart.CommonResponse;
 import com.tzld.piaoquan.api.model.param.wecom.thirdpart.LoginInfo;
 import com.tzld.piaoquan.api.model.param.wecom.thirdpart.UuidRequest;
 import com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaff;
-import com.tzld.piaoquan.api.service.wecom.thirdparty.WeComThirdPartyService;
+import com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffExample;
 import com.tzld.piaoquan.growth.common.utils.LarkRobotUtil;
 import com.tzld.piaoquan.growth.common.utils.RedisUtils;
 import com.xxl.job.core.biz.model.ReturnT;
@@ -16,6 +18,7 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
+import java.util.Arrays;
 import java.util.List;
 import java.util.Objects;
 
@@ -24,7 +27,7 @@ import java.util.Objects;
 public class WeComAccountJob {
 
     @Autowired
-    WeComThirdPartyService weComThirdPartyService;
+    ThirdPartWeComStaffMapper thirdPartWeComStaffMapper;
     @Autowired
     WeComThirdPartyApiClient apiClient;
 
@@ -33,7 +36,7 @@ public class WeComAccountJob {
 
     @XxlJob("checkAccountOnline")
     public ReturnT<String> checkAccountOnline(String param) {
-        List<ThirdPartWeComStaff> activeStaffList = weComThirdPartyService.getActiveStaffList();
+        List<ThirdPartWeComStaff> activeStaffList = getCheckOnlineStaffList();
         for (ThirdPartWeComStaff staff : activeStaffList) {
             String uuid = staff.getThirdUuid();
             String offLineKey = "wecom:thirdpart:offline:" + uuid;
@@ -53,8 +56,20 @@ public class WeComAccountJob {
                                 "账号VID:" + staff.getThirdStaffId() + "\n" +
                                 "账号UUID:" + uuid + "\n" +
                                 "账号状态:已下线");
+                if (staff.getStatus() == ThirdPartWeComStaffStatusEnum.NORMAL.getVal()) {
+                    staff.setStatus(ThirdPartWeComStaffStatusEnum.OFFLINE.getVal());
+                    thirdPartWeComStaffMapper.updateByPrimaryKeySelective(staff);
+                }
             }
         }
         return ReturnT.SUCCESS;
     }
+
+    private List<ThirdPartWeComStaff> getCheckOnlineStaffList() {
+        List<Integer> statusList = Arrays.asList(ThirdPartWeComStaffStatusEnum.NORMAL.getVal(),
+                ThirdPartWeComStaffStatusEnum.OFFLINE.getVal());
+        ThirdPartWeComStaffExample example = new ThirdPartWeComStaffExample();
+        example.createCriteria().andStatusIn(statusList);
+        return thirdPartWeComStaffMapper.selectByExample(example);
+    }
 }

+ 34 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyAccountConfigParam.java

@@ -0,0 +1,34 @@
+package com.tzld.piaoquan.api.model.param.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class ThirdPartyAccountConfigParam {
+
+    @ApiModelProperty(value = "投放场景")
+    private String putScene;
+    @ApiModelProperty(value = "渠道")
+    private String channel;
+    @ApiModelProperty(value = "是否开启(0否,1是)")
+    private Integer switchFlag;
+    @ApiModelProperty(value = "推送触发人数")
+    private Integer openRoomSendSwitchNum;
+    @ApiModelProperty(value = "主推送人员")
+    private Long primaryThirdStaffId;
+    @ApiModelProperty(value = "主推送人员名称")
+    private String primaryThirdStaffName;
+    @ApiModelProperty(value = "次推送人员")
+    private Long secondThirdStaffId;
+    @ApiModelProperty(value = "次推送人员名称")
+    private String secondThirdStaffName;
+    @ApiModelProperty(value = "任务列表")
+    private List<ThirdPartyAccountConfigTaskParam> taskList;
+    @ApiModelProperty(value = "配置同步 0-仅对新建群生效 1-所有群 2-指定群生效")
+    private Integer configSync;
+    @ApiModelProperty(value = "指定群生效列表")
+    private List<Long> configSyncRoomIdList;
+
+}

+ 19 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyAccountConfigTaskContentParam.java

@@ -0,0 +1,19 @@
+package com.tzld.piaoquan.api.model.param.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class ThirdPartyAccountConfigTaskContentParam {
+
+    @ApiModelProperty(value = "类型 0-文案 1-小程序")
+    private Integer type;
+    @ApiModelProperty(value = "文案内容")
+    private String content;
+    @ApiModelProperty(value = "小程序来源 0-热榜 1-标签 2-账号")
+    private Integer source;
+    @ApiModelProperty(value = "小程序来源内容 (标签/账号id)")
+    private String sourceContent;
+    @ApiModelProperty(value = "顺序")
+    private Integer seq;
+}

+ 21 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyAccountConfigTaskParam.java

@@ -0,0 +1,21 @@
+package com.tzld.piaoquan.api.model.param.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class ThirdPartyAccountConfigTaskParam {
+
+    @ApiModelProperty(value = "投放场景")
+    private Integer switchFlag;
+    @ApiModelProperty(value = "发送时间")
+    private List<String> sendTime;
+    @ApiModelProperty(value = "随机浮动分钟")
+    private Integer randomMin;
+    @ApiModelProperty(value = "顺序")
+    private Integer seq;
+    @ApiModelProperty(value = "发送内容列表")
+    private List<ThirdPartyAccountConfigTaskContentParam> contentList;
+}

+ 15 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyAccountListParam.java

@@ -0,0 +1,15 @@
+package com.tzld.piaoquan.api.model.param.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class ThirdPartyAccountListParam {
+
+    @ApiModelProperty(value = "企微主体名称")
+    private String corpName;
+    @ApiModelProperty(value = "账号名称")
+    private String accountName;
+    @ApiModelProperty(value = "手机号")
+    private String mobile;
+}

+ 10 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyAccountLogOutParam.java

@@ -0,0 +1,10 @@
+package com.tzld.piaoquan.api.model.param.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class ThirdPartyAccountLogOutParam {
+    @ApiModelProperty(value = "账号id")
+    private String id;
+}

+ 10 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyConfigGetParam.java

@@ -0,0 +1,10 @@
+package com.tzld.piaoquan.api.model.param.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class ThirdPartyConfigGetParam {
+    @ApiModelProperty(value = "id")
+    private Long id;
+}

+ 30 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyRoomConfigParam.java

@@ -0,0 +1,30 @@
+package com.tzld.piaoquan.api.model.param.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class ThirdPartyRoomConfigParam {
+
+    @ApiModelProperty(value = "投放场景")
+    private String putScene;
+    @ApiModelProperty(value = "渠道")
+    private String channel;
+    @ApiModelProperty(value = "是否开启(0否,1是)")
+    private Integer switchFlag;
+    @ApiModelProperty(value = "推送触发人数")
+    private Integer openRoomSendSwitchNum;
+    @ApiModelProperty(value = "主推送人员")
+    private Long primaryThirdStaffId;
+    @ApiModelProperty(value = "主推送人员名称")
+    private String primaryThirdStaffName;
+    @ApiModelProperty(value = "次推送人员")
+    private Long secondThirdStaffId;
+    @ApiModelProperty(value = "次推送人员名称")
+    private String secondThirdStaffName;
+    @ApiModelProperty(value = "任务列表")
+    private List<ThirdPartyRoomConfigTaskParam> taskList;
+
+}

+ 19 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyRoomConfigTaskContentParam.java

@@ -0,0 +1,19 @@
+package com.tzld.piaoquan.api.model.param.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class ThirdPartyRoomConfigTaskContentParam {
+
+    @ApiModelProperty(value = "类型 0-文案 1-小程序")
+    private Integer type;
+    @ApiModelProperty(value = "文案内容")
+    private String content;
+    @ApiModelProperty(value = "小程序来源 0-热榜 1-标签 2-账号")
+    private Integer source;
+    @ApiModelProperty(value = "小程序来源内容 (标签/账号id)")
+    private String sourceContent;
+    @ApiModelProperty(value = "顺序")
+    private Integer seq;
+}

+ 21 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyRoomConfigTaskParam.java

@@ -0,0 +1,21 @@
+package com.tzld.piaoquan.api.model.param.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class ThirdPartyRoomConfigTaskParam {
+
+    @ApiModelProperty(value = "投放场景")
+    private Integer switchFlag;
+    @ApiModelProperty(value = "发送时间")
+    private List<String> sendTime;
+    @ApiModelProperty(value = "随机浮动分钟")
+    private Integer randomMin;
+    @ApiModelProperty(value = "顺序")
+    private Integer seq;
+    @ApiModelProperty(value = "发送内容列表")
+    private List<ThirdPartyRoomConfigTaskContentParam> contentList;
+}

+ 15 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/param/wecom/thirdpart/ThirdPartyRoomListParam.java

@@ -0,0 +1,15 @@
+package com.tzld.piaoquan.api.model.param.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class ThirdPartyRoomListParam {
+
+    @ApiModelProperty(value = "企微主体名称")
+    private String corpName;
+    @ApiModelProperty(value = "群主")
+    private String groupLeaderName;
+    @ApiModelProperty(value = "推送人员")
+    private String pushAccountName;
+}

+ 125 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComRoomConfig.java

@@ -0,0 +1,125 @@
+package com.tzld.piaoquan.api.model.po.wecom.thirdpart;
+
+import java.util.Date;
+
+public class ThirdPartWeComRoomConfig {
+    private String id;
+
+    private Long roomId;
+
+    private Integer accountConfigId;
+
+    private String putScene;
+
+    private String channel;
+
+    private Long primaryThirdStaffId;
+
+    private Long secondThirdStaffId;
+
+    private Integer status;
+
+    private Date createTime;
+
+    private Date updateTime;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public Long getRoomId() {
+        return roomId;
+    }
+
+    public void setRoomId(Long roomId) {
+        this.roomId = roomId;
+    }
+
+    public Integer getAccountConfigId() {
+        return accountConfigId;
+    }
+
+    public void setAccountConfigId(Integer accountConfigId) {
+        this.accountConfigId = accountConfigId;
+    }
+
+    public String getPutScene() {
+        return putScene;
+    }
+
+    public void setPutScene(String putScene) {
+        this.putScene = putScene;
+    }
+
+    public String getChannel() {
+        return channel;
+    }
+
+    public void setChannel(String channel) {
+        this.channel = channel;
+    }
+
+    public Long getPrimaryThirdStaffId() {
+        return primaryThirdStaffId;
+    }
+
+    public void setPrimaryThirdStaffId(Long primaryThirdStaffId) {
+        this.primaryThirdStaffId = primaryThirdStaffId;
+    }
+
+    public Long getSecondThirdStaffId() {
+        return secondThirdStaffId;
+    }
+
+    public void setSecondThirdStaffId(Long secondThirdStaffId) {
+        this.secondThirdStaffId = secondThirdStaffId;
+    }
+
+    public Integer getStatus() {
+        return status;
+    }
+
+    public void setStatus(Integer status) {
+        this.status = status;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", id=").append(id);
+        sb.append(", roomId=").append(roomId);
+        sb.append(", accountConfigId=").append(accountConfigId);
+        sb.append(", putScene=").append(putScene);
+        sb.append(", channel=").append(channel);
+        sb.append(", primaryThirdStaffId=").append(primaryThirdStaffId);
+        sb.append(", secondThirdStaffId=").append(secondThirdStaffId);
+        sb.append(", status=").append(status);
+        sb.append(", createTime=").append(createTime);
+        sb.append(", updateTime=").append(updateTime);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 842 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComRoomConfigExample.java

@@ -0,0 +1,842 @@
+package com.tzld.piaoquan.api.model.po.wecom.thirdpart;
+
+import com.tzld.piaoquan.growth.common.utils.page.Page;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+public class ThirdPartWeComRoomConfigExample {
+    protected String orderByClause;
+
+    protected boolean distinct;
+
+    protected List<Criteria> oredCriteria;
+
+    protected Page page;
+
+    public ThirdPartWeComRoomConfigExample() {
+        oredCriteria = new ArrayList<Criteria>();
+    }
+
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria();
+        return criteria;
+    }
+
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+    }
+
+    public void setPage(Page page) {
+        this.page=page;
+    }
+
+    public Page getPage() {
+        return page;
+    }
+
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<Criterion>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+
+        public Criteria andIdIsNull() {
+            addCriterion("id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIsNotNull() {
+            addCriterion("id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdEqualTo(String value) {
+            addCriterion("id =", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotEqualTo(String value) {
+            addCriterion("id <>", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThan(String value) {
+            addCriterion("id >", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThanOrEqualTo(String value) {
+            addCriterion("id >=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThan(String value) {
+            addCriterion("id <", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThanOrEqualTo(String value) {
+            addCriterion("id <=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLike(String value) {
+            addCriterion("id like", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotLike(String value) {
+            addCriterion("id not like", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIn(List<String> values) {
+            addCriterion("id in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotIn(List<String> values) {
+            addCriterion("id not in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdBetween(String value1, String value2) {
+            addCriterion("id between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotBetween(String value1, String value2) {
+            addCriterion("id not between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andRoomIdIsNull() {
+            addCriterion("room_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andRoomIdIsNotNull() {
+            addCriterion("room_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andRoomIdEqualTo(Long value) {
+            addCriterion("room_id =", value, "roomId");
+            return (Criteria) this;
+        }
+
+        public Criteria andRoomIdNotEqualTo(Long value) {
+            addCriterion("room_id <>", value, "roomId");
+            return (Criteria) this;
+        }
+
+        public Criteria andRoomIdGreaterThan(Long value) {
+            addCriterion("room_id >", value, "roomId");
+            return (Criteria) this;
+        }
+
+        public Criteria andRoomIdGreaterThanOrEqualTo(Long value) {
+            addCriterion("room_id >=", value, "roomId");
+            return (Criteria) this;
+        }
+
+        public Criteria andRoomIdLessThan(Long value) {
+            addCriterion("room_id <", value, "roomId");
+            return (Criteria) this;
+        }
+
+        public Criteria andRoomIdLessThanOrEqualTo(Long value) {
+            addCriterion("room_id <=", value, "roomId");
+            return (Criteria) this;
+        }
+
+        public Criteria andRoomIdIn(List<Long> values) {
+            addCriterion("room_id in", values, "roomId");
+            return (Criteria) this;
+        }
+
+        public Criteria andRoomIdNotIn(List<Long> values) {
+            addCriterion("room_id not in", values, "roomId");
+            return (Criteria) this;
+        }
+
+        public Criteria andRoomIdBetween(Long value1, Long value2) {
+            addCriterion("room_id between", value1, value2, "roomId");
+            return (Criteria) this;
+        }
+
+        public Criteria andRoomIdNotBetween(Long value1, Long value2) {
+            addCriterion("room_id not between", value1, value2, "roomId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAccountConfigIdIsNull() {
+            addCriterion("account_config_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andAccountConfigIdIsNotNull() {
+            addCriterion("account_config_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andAccountConfigIdEqualTo(Integer value) {
+            addCriterion("account_config_id =", value, "accountConfigId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAccountConfigIdNotEqualTo(Integer value) {
+            addCriterion("account_config_id <>", value, "accountConfigId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAccountConfigIdGreaterThan(Integer value) {
+            addCriterion("account_config_id >", value, "accountConfigId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAccountConfigIdGreaterThanOrEqualTo(Integer value) {
+            addCriterion("account_config_id >=", value, "accountConfigId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAccountConfigIdLessThan(Integer value) {
+            addCriterion("account_config_id <", value, "accountConfigId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAccountConfigIdLessThanOrEqualTo(Integer value) {
+            addCriterion("account_config_id <=", value, "accountConfigId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAccountConfigIdIn(List<Integer> values) {
+            addCriterion("account_config_id in", values, "accountConfigId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAccountConfigIdNotIn(List<Integer> values) {
+            addCriterion("account_config_id not in", values, "accountConfigId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAccountConfigIdBetween(Integer value1, Integer value2) {
+            addCriterion("account_config_id between", value1, value2, "accountConfigId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAccountConfigIdNotBetween(Integer value1, Integer value2) {
+            addCriterion("account_config_id not between", value1, value2, "accountConfigId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneIsNull() {
+            addCriterion("put_scene is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneIsNotNull() {
+            addCriterion("put_scene is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneEqualTo(String value) {
+            addCriterion("put_scene =", value, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneNotEqualTo(String value) {
+            addCriterion("put_scene <>", value, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneGreaterThan(String value) {
+            addCriterion("put_scene >", value, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneGreaterThanOrEqualTo(String value) {
+            addCriterion("put_scene >=", value, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneLessThan(String value) {
+            addCriterion("put_scene <", value, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneLessThanOrEqualTo(String value) {
+            addCriterion("put_scene <=", value, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneLike(String value) {
+            addCriterion("put_scene like", value, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneNotLike(String value) {
+            addCriterion("put_scene not like", value, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneIn(List<String> values) {
+            addCriterion("put_scene in", values, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneNotIn(List<String> values) {
+            addCriterion("put_scene not in", values, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneBetween(String value1, String value2) {
+            addCriterion("put_scene between", value1, value2, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneNotBetween(String value1, String value2) {
+            addCriterion("put_scene not between", value1, value2, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelIsNull() {
+            addCriterion("channel is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelIsNotNull() {
+            addCriterion("channel is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelEqualTo(String value) {
+            addCriterion("channel =", value, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelNotEqualTo(String value) {
+            addCriterion("channel <>", value, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelGreaterThan(String value) {
+            addCriterion("channel >", value, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelGreaterThanOrEqualTo(String value) {
+            addCriterion("channel >=", value, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelLessThan(String value) {
+            addCriterion("channel <", value, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelLessThanOrEqualTo(String value) {
+            addCriterion("channel <=", value, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelLike(String value) {
+            addCriterion("channel like", value, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelNotLike(String value) {
+            addCriterion("channel not like", value, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelIn(List<String> values) {
+            addCriterion("channel in", values, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelNotIn(List<String> values) {
+            addCriterion("channel not in", values, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelBetween(String value1, String value2) {
+            addCriterion("channel between", value1, value2, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelNotBetween(String value1, String value2) {
+            addCriterion("channel not between", value1, value2, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdIsNull() {
+            addCriterion("primary_third_staff_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdIsNotNull() {
+            addCriterion("primary_third_staff_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdEqualTo(Long value) {
+            addCriterion("primary_third_staff_id =", value, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdNotEqualTo(Long value) {
+            addCriterion("primary_third_staff_id <>", value, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdGreaterThan(Long value) {
+            addCriterion("primary_third_staff_id >", value, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdGreaterThanOrEqualTo(Long value) {
+            addCriterion("primary_third_staff_id >=", value, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdLessThan(Long value) {
+            addCriterion("primary_third_staff_id <", value, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdLessThanOrEqualTo(Long value) {
+            addCriterion("primary_third_staff_id <=", value, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdIn(List<Long> values) {
+            addCriterion("primary_third_staff_id in", values, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdNotIn(List<Long> values) {
+            addCriterion("primary_third_staff_id not in", values, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdBetween(Long value1, Long value2) {
+            addCriterion("primary_third_staff_id between", value1, value2, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdNotBetween(Long value1, Long value2) {
+            addCriterion("primary_third_staff_id not between", value1, value2, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdIsNull() {
+            addCriterion("second_third_staff_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdIsNotNull() {
+            addCriterion("second_third_staff_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdEqualTo(Long value) {
+            addCriterion("second_third_staff_id =", value, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdNotEqualTo(Long value) {
+            addCriterion("second_third_staff_id <>", value, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdGreaterThan(Long value) {
+            addCriterion("second_third_staff_id >", value, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdGreaterThanOrEqualTo(Long value) {
+            addCriterion("second_third_staff_id >=", value, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdLessThan(Long value) {
+            addCriterion("second_third_staff_id <", value, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdLessThanOrEqualTo(Long value) {
+            addCriterion("second_third_staff_id <=", value, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdIn(List<Long> values) {
+            addCriterion("second_third_staff_id in", values, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdNotIn(List<Long> values) {
+            addCriterion("second_third_staff_id not in", values, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdBetween(Long value1, Long value2) {
+            addCriterion("second_third_staff_id between", value1, value2, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdNotBetween(Long value1, Long value2) {
+            addCriterion("second_third_staff_id not between", value1, value2, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusIsNull() {
+            addCriterion("`status` is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusIsNotNull() {
+            addCriterion("`status` is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusEqualTo(Integer value) {
+            addCriterion("`status` =", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusNotEqualTo(Integer value) {
+            addCriterion("`status` <>", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusGreaterThan(Integer value) {
+            addCriterion("`status` >", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
+            addCriterion("`status` >=", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusLessThan(Integer value) {
+            addCriterion("`status` <", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusLessThanOrEqualTo(Integer value) {
+            addCriterion("`status` <=", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusIn(List<Integer> values) {
+            addCriterion("`status` in", values, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusNotIn(List<Integer> values) {
+            addCriterion("`status` not in", values, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusBetween(Integer value1, Integer value2) {
+            addCriterion("`status` between", value1, value2, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
+            addCriterion("`status` not between", value1, value2, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIsNull() {
+            addCriterion("create_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIsNotNull() {
+            addCriterion("create_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeEqualTo(Date value) {
+            addCriterion("create_time =", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotEqualTo(Date value) {
+            addCriterion("create_time <>", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeGreaterThan(Date value) {
+            addCriterion("create_time >", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
+            addCriterion("create_time >=", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeLessThan(Date value) {
+            addCriterion("create_time <", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
+            addCriterion("create_time <=", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIn(List<Date> values) {
+            addCriterion("create_time in", values, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotIn(List<Date> values) {
+            addCriterion("create_time not in", values, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeBetween(Date value1, Date value2) {
+            addCriterion("create_time between", value1, value2, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
+            addCriterion("create_time not between", value1, value2, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIsNull() {
+            addCriterion("update_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIsNotNull() {
+            addCriterion("update_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeEqualTo(Date value) {
+            addCriterion("update_time =", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotEqualTo(Date value) {
+            addCriterion("update_time <>", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeGreaterThan(Date value) {
+            addCriterion("update_time >", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
+            addCriterion("update_time >=", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeLessThan(Date value) {
+            addCriterion("update_time <", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
+            addCriterion("update_time <=", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIn(List<Date> values) {
+            addCriterion("update_time in", values, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotIn(List<Date> values) {
+            addCriterion("update_time not in", values, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
+            addCriterion("update_time between", value1, value2, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
+            addCriterion("update_time not between", value1, value2, "updateTime");
+            return (Criteria) this;
+        }
+    }
+
+    public static class Criteria extends GeneratedCriteria {
+
+        protected Criteria() {
+            super();
+        }
+    }
+
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+}

+ 103 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComRoomConfigTask.java

@@ -0,0 +1,103 @@
+package com.tzld.piaoquan.api.model.po.wecom.thirdpart;
+
+import java.util.Date;
+
+public class ThirdPartWeComRoomConfigTask {
+    private String id;
+
+    private String configId;
+
+    private Integer switchFlag;
+
+    private String sendTime;
+
+    private Integer randomMin;
+
+    private Integer seq;
+
+    private Date createTime;
+
+    private Date updateTime;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getConfigId() {
+        return configId;
+    }
+
+    public void setConfigId(String configId) {
+        this.configId = configId;
+    }
+
+    public Integer getSwitchFlag() {
+        return switchFlag;
+    }
+
+    public void setSwitchFlag(Integer switchFlag) {
+        this.switchFlag = switchFlag;
+    }
+
+    public String getSendTime() {
+        return sendTime;
+    }
+
+    public void setSendTime(String sendTime) {
+        this.sendTime = sendTime;
+    }
+
+    public Integer getRandomMin() {
+        return randomMin;
+    }
+
+    public void setRandomMin(Integer randomMin) {
+        this.randomMin = randomMin;
+    }
+
+    public Integer getSeq() {
+        return seq;
+    }
+
+    public void setSeq(Integer seq) {
+        this.seq = seq;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", id=").append(id);
+        sb.append(", configId=").append(configId);
+        sb.append(", switchFlag=").append(switchFlag);
+        sb.append(", sendTime=").append(sendTime);
+        sb.append(", randomMin=").append(randomMin);
+        sb.append(", seq=").append(seq);
+        sb.append(", createTime=").append(createTime);
+        sb.append(", updateTime=").append(updateTime);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 114 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComRoomConfigTaskContent.java

@@ -0,0 +1,114 @@
+package com.tzld.piaoquan.api.model.po.wecom.thirdpart;
+
+import java.util.Date;
+
+public class ThirdPartWeComRoomConfigTaskContent {
+    private String id;
+
+    private String taskId;
+
+    private Integer type;
+
+    private String content;
+
+    private Integer source;
+
+    private String sourceContent;
+
+    private Integer seq;
+
+    private Date createTime;
+
+    private Date updateTime;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getTaskId() {
+        return taskId;
+    }
+
+    public void setTaskId(String taskId) {
+        this.taskId = taskId;
+    }
+
+    public Integer getType() {
+        return type;
+    }
+
+    public void setType(Integer type) {
+        this.type = type;
+    }
+
+    public String getContent() {
+        return content;
+    }
+
+    public void setContent(String content) {
+        this.content = content;
+    }
+
+    public Integer getSource() {
+        return source;
+    }
+
+    public void setSource(Integer source) {
+        this.source = source;
+    }
+
+    public String getSourceContent() {
+        return sourceContent;
+    }
+
+    public void setSourceContent(String sourceContent) {
+        this.sourceContent = sourceContent;
+    }
+
+    public Integer getSeq() {
+        return seq;
+    }
+
+    public void setSeq(Integer seq) {
+        this.seq = seq;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", id=").append(id);
+        sb.append(", taskId=").append(taskId);
+        sb.append(", type=").append(type);
+        sb.append(", content=").append(content);
+        sb.append(", source=").append(source);
+        sb.append(", sourceContent=").append(sourceContent);
+        sb.append(", seq=").append(seq);
+        sb.append(", createTime=").append(createTime);
+        sb.append(", updateTime=").append(updateTime);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 792 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComRoomConfigTaskContentExample.java

@@ -0,0 +1,792 @@
+package com.tzld.piaoquan.api.model.po.wecom.thirdpart;
+
+import com.tzld.piaoquan.growth.common.utils.page.Page;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+public class ThirdPartWeComRoomConfigTaskContentExample {
+    protected String orderByClause;
+
+    protected boolean distinct;
+
+    protected List<Criteria> oredCriteria;
+
+    protected Page page;
+
+    public ThirdPartWeComRoomConfigTaskContentExample() {
+        oredCriteria = new ArrayList<Criteria>();
+    }
+
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria();
+        return criteria;
+    }
+
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+    }
+
+    public void setPage(Page page) {
+        this.page=page;
+    }
+
+    public Page getPage() {
+        return page;
+    }
+
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<Criterion>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+
+        public Criteria andIdIsNull() {
+            addCriterion("id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIsNotNull() {
+            addCriterion("id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdEqualTo(String value) {
+            addCriterion("id =", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotEqualTo(String value) {
+            addCriterion("id <>", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThan(String value) {
+            addCriterion("id >", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThanOrEqualTo(String value) {
+            addCriterion("id >=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThan(String value) {
+            addCriterion("id <", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThanOrEqualTo(String value) {
+            addCriterion("id <=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLike(String value) {
+            addCriterion("id like", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotLike(String value) {
+            addCriterion("id not like", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIn(List<String> values) {
+            addCriterion("id in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotIn(List<String> values) {
+            addCriterion("id not in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdBetween(String value1, String value2) {
+            addCriterion("id between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotBetween(String value1, String value2) {
+            addCriterion("id not between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdIsNull() {
+            addCriterion("task_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdIsNotNull() {
+            addCriterion("task_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdEqualTo(String value) {
+            addCriterion("task_id =", value, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdNotEqualTo(String value) {
+            addCriterion("task_id <>", value, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdGreaterThan(String value) {
+            addCriterion("task_id >", value, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdGreaterThanOrEqualTo(String value) {
+            addCriterion("task_id >=", value, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdLessThan(String value) {
+            addCriterion("task_id <", value, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdLessThanOrEqualTo(String value) {
+            addCriterion("task_id <=", value, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdLike(String value) {
+            addCriterion("task_id like", value, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdNotLike(String value) {
+            addCriterion("task_id not like", value, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdIn(List<String> values) {
+            addCriterion("task_id in", values, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdNotIn(List<String> values) {
+            addCriterion("task_id not in", values, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdBetween(String value1, String value2) {
+            addCriterion("task_id between", value1, value2, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdNotBetween(String value1, String value2) {
+            addCriterion("task_id not between", value1, value2, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeIsNull() {
+            addCriterion("`type` is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeIsNotNull() {
+            addCriterion("`type` is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeEqualTo(Integer value) {
+            addCriterion("`type` =", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeNotEqualTo(Integer value) {
+            addCriterion("`type` <>", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeGreaterThan(Integer value) {
+            addCriterion("`type` >", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeGreaterThanOrEqualTo(Integer value) {
+            addCriterion("`type` >=", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeLessThan(Integer value) {
+            addCriterion("`type` <", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeLessThanOrEqualTo(Integer value) {
+            addCriterion("`type` <=", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeIn(List<Integer> values) {
+            addCriterion("`type` in", values, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeNotIn(List<Integer> values) {
+            addCriterion("`type` not in", values, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeBetween(Integer value1, Integer value2) {
+            addCriterion("`type` between", value1, value2, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeNotBetween(Integer value1, Integer value2) {
+            addCriterion("`type` not between", value1, value2, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentIsNull() {
+            addCriterion("content is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentIsNotNull() {
+            addCriterion("content is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentEqualTo(String value) {
+            addCriterion("content =", value, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentNotEqualTo(String value) {
+            addCriterion("content <>", value, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentGreaterThan(String value) {
+            addCriterion("content >", value, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentGreaterThanOrEqualTo(String value) {
+            addCriterion("content >=", value, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentLessThan(String value) {
+            addCriterion("content <", value, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentLessThanOrEqualTo(String value) {
+            addCriterion("content <=", value, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentLike(String value) {
+            addCriterion("content like", value, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentNotLike(String value) {
+            addCriterion("content not like", value, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentIn(List<String> values) {
+            addCriterion("content in", values, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentNotIn(List<String> values) {
+            addCriterion("content not in", values, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentBetween(String value1, String value2) {
+            addCriterion("content between", value1, value2, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentNotBetween(String value1, String value2) {
+            addCriterion("content not between", value1, value2, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceIsNull() {
+            addCriterion("`source` is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceIsNotNull() {
+            addCriterion("`source` is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceEqualTo(Integer value) {
+            addCriterion("`source` =", value, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceNotEqualTo(Integer value) {
+            addCriterion("`source` <>", value, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceGreaterThan(Integer value) {
+            addCriterion("`source` >", value, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceGreaterThanOrEqualTo(Integer value) {
+            addCriterion("`source` >=", value, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceLessThan(Integer value) {
+            addCriterion("`source` <", value, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceLessThanOrEqualTo(Integer value) {
+            addCriterion("`source` <=", value, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceIn(List<Integer> values) {
+            addCriterion("`source` in", values, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceNotIn(List<Integer> values) {
+            addCriterion("`source` not in", values, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceBetween(Integer value1, Integer value2) {
+            addCriterion("`source` between", value1, value2, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceNotBetween(Integer value1, Integer value2) {
+            addCriterion("`source` not between", value1, value2, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentIsNull() {
+            addCriterion("source_content is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentIsNotNull() {
+            addCriterion("source_content is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentEqualTo(String value) {
+            addCriterion("source_content =", value, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentNotEqualTo(String value) {
+            addCriterion("source_content <>", value, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentGreaterThan(String value) {
+            addCriterion("source_content >", value, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentGreaterThanOrEqualTo(String value) {
+            addCriterion("source_content >=", value, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentLessThan(String value) {
+            addCriterion("source_content <", value, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentLessThanOrEqualTo(String value) {
+            addCriterion("source_content <=", value, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentLike(String value) {
+            addCriterion("source_content like", value, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentNotLike(String value) {
+            addCriterion("source_content not like", value, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentIn(List<String> values) {
+            addCriterion("source_content in", values, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentNotIn(List<String> values) {
+            addCriterion("source_content not in", values, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentBetween(String value1, String value2) {
+            addCriterion("source_content between", value1, value2, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentNotBetween(String value1, String value2) {
+            addCriterion("source_content not between", value1, value2, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqIsNull() {
+            addCriterion("seq is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqIsNotNull() {
+            addCriterion("seq is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqEqualTo(Integer value) {
+            addCriterion("seq =", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqNotEqualTo(Integer value) {
+            addCriterion("seq <>", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqGreaterThan(Integer value) {
+            addCriterion("seq >", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqGreaterThanOrEqualTo(Integer value) {
+            addCriterion("seq >=", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqLessThan(Integer value) {
+            addCriterion("seq <", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqLessThanOrEqualTo(Integer value) {
+            addCriterion("seq <=", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqIn(List<Integer> values) {
+            addCriterion("seq in", values, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqNotIn(List<Integer> values) {
+            addCriterion("seq not in", values, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqBetween(Integer value1, Integer value2) {
+            addCriterion("seq between", value1, value2, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqNotBetween(Integer value1, Integer value2) {
+            addCriterion("seq not between", value1, value2, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIsNull() {
+            addCriterion("create_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIsNotNull() {
+            addCriterion("create_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeEqualTo(Date value) {
+            addCriterion("create_time =", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotEqualTo(Date value) {
+            addCriterion("create_time <>", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeGreaterThan(Date value) {
+            addCriterion("create_time >", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
+            addCriterion("create_time >=", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeLessThan(Date value) {
+            addCriterion("create_time <", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
+            addCriterion("create_time <=", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIn(List<Date> values) {
+            addCriterion("create_time in", values, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotIn(List<Date> values) {
+            addCriterion("create_time not in", values, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeBetween(Date value1, Date value2) {
+            addCriterion("create_time between", value1, value2, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
+            addCriterion("create_time not between", value1, value2, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIsNull() {
+            addCriterion("update_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIsNotNull() {
+            addCriterion("update_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeEqualTo(Date value) {
+            addCriterion("update_time =", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotEqualTo(Date value) {
+            addCriterion("update_time <>", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeGreaterThan(Date value) {
+            addCriterion("update_time >", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
+            addCriterion("update_time >=", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeLessThan(Date value) {
+            addCriterion("update_time <", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
+            addCriterion("update_time <=", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIn(List<Date> values) {
+            addCriterion("update_time in", values, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotIn(List<Date> values) {
+            addCriterion("update_time not in", values, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
+            addCriterion("update_time between", value1, value2, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
+            addCriterion("update_time not between", value1, value2, "updateTime");
+            return (Criteria) this;
+        }
+    }
+
+    public static class Criteria extends GeneratedCriteria {
+
+        protected Criteria() {
+            super();
+        }
+    }
+
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+}

+ 722 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComRoomConfigTaskExample.java

@@ -0,0 +1,722 @@
+package com.tzld.piaoquan.api.model.po.wecom.thirdpart;
+
+import com.tzld.piaoquan.growth.common.utils.page.Page;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+public class ThirdPartWeComRoomConfigTaskExample {
+    protected String orderByClause;
+
+    protected boolean distinct;
+
+    protected List<Criteria> oredCriteria;
+
+    protected Page page;
+
+    public ThirdPartWeComRoomConfigTaskExample() {
+        oredCriteria = new ArrayList<Criteria>();
+    }
+
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria();
+        return criteria;
+    }
+
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+    }
+
+    public void setPage(Page page) {
+        this.page=page;
+    }
+
+    public Page getPage() {
+        return page;
+    }
+
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<Criterion>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+
+        public Criteria andIdIsNull() {
+            addCriterion("id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIsNotNull() {
+            addCriterion("id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdEqualTo(String value) {
+            addCriterion("id =", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotEqualTo(String value) {
+            addCriterion("id <>", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThan(String value) {
+            addCriterion("id >", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThanOrEqualTo(String value) {
+            addCriterion("id >=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThan(String value) {
+            addCriterion("id <", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThanOrEqualTo(String value) {
+            addCriterion("id <=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLike(String value) {
+            addCriterion("id like", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotLike(String value) {
+            addCriterion("id not like", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIn(List<String> values) {
+            addCriterion("id in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotIn(List<String> values) {
+            addCriterion("id not in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdBetween(String value1, String value2) {
+            addCriterion("id between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotBetween(String value1, String value2) {
+            addCriterion("id not between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdIsNull() {
+            addCriterion("config_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdIsNotNull() {
+            addCriterion("config_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdEqualTo(String value) {
+            addCriterion("config_id =", value, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdNotEqualTo(String value) {
+            addCriterion("config_id <>", value, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdGreaterThan(String value) {
+            addCriterion("config_id >", value, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdGreaterThanOrEqualTo(String value) {
+            addCriterion("config_id >=", value, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdLessThan(String value) {
+            addCriterion("config_id <", value, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdLessThanOrEqualTo(String value) {
+            addCriterion("config_id <=", value, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdLike(String value) {
+            addCriterion("config_id like", value, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdNotLike(String value) {
+            addCriterion("config_id not like", value, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdIn(List<String> values) {
+            addCriterion("config_id in", values, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdNotIn(List<String> values) {
+            addCriterion("config_id not in", values, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdBetween(String value1, String value2) {
+            addCriterion("config_id between", value1, value2, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdNotBetween(String value1, String value2) {
+            addCriterion("config_id not between", value1, value2, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagIsNull() {
+            addCriterion("switch_flag is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagIsNotNull() {
+            addCriterion("switch_flag is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagEqualTo(Integer value) {
+            addCriterion("switch_flag =", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagNotEqualTo(Integer value) {
+            addCriterion("switch_flag <>", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagGreaterThan(Integer value) {
+            addCriterion("switch_flag >", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagGreaterThanOrEqualTo(Integer value) {
+            addCriterion("switch_flag >=", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagLessThan(Integer value) {
+            addCriterion("switch_flag <", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagLessThanOrEqualTo(Integer value) {
+            addCriterion("switch_flag <=", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagIn(List<Integer> values) {
+            addCriterion("switch_flag in", values, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagNotIn(List<Integer> values) {
+            addCriterion("switch_flag not in", values, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagBetween(Integer value1, Integer value2) {
+            addCriterion("switch_flag between", value1, value2, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagNotBetween(Integer value1, Integer value2) {
+            addCriterion("switch_flag not between", value1, value2, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeIsNull() {
+            addCriterion("send_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeIsNotNull() {
+            addCriterion("send_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeEqualTo(String value) {
+            addCriterion("send_time =", value, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeNotEqualTo(String value) {
+            addCriterion("send_time <>", value, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeGreaterThan(String value) {
+            addCriterion("send_time >", value, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeGreaterThanOrEqualTo(String value) {
+            addCriterion("send_time >=", value, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeLessThan(String value) {
+            addCriterion("send_time <", value, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeLessThanOrEqualTo(String value) {
+            addCriterion("send_time <=", value, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeLike(String value) {
+            addCriterion("send_time like", value, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeNotLike(String value) {
+            addCriterion("send_time not like", value, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeIn(List<String> values) {
+            addCriterion("send_time in", values, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeNotIn(List<String> values) {
+            addCriterion("send_time not in", values, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeBetween(String value1, String value2) {
+            addCriterion("send_time between", value1, value2, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeNotBetween(String value1, String value2) {
+            addCriterion("send_time not between", value1, value2, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinIsNull() {
+            addCriterion("random_min is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinIsNotNull() {
+            addCriterion("random_min is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinEqualTo(Integer value) {
+            addCriterion("random_min =", value, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinNotEqualTo(Integer value) {
+            addCriterion("random_min <>", value, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinGreaterThan(Integer value) {
+            addCriterion("random_min >", value, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinGreaterThanOrEqualTo(Integer value) {
+            addCriterion("random_min >=", value, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinLessThan(Integer value) {
+            addCriterion("random_min <", value, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinLessThanOrEqualTo(Integer value) {
+            addCriterion("random_min <=", value, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinIn(List<Integer> values) {
+            addCriterion("random_min in", values, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinNotIn(List<Integer> values) {
+            addCriterion("random_min not in", values, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinBetween(Integer value1, Integer value2) {
+            addCriterion("random_min between", value1, value2, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinNotBetween(Integer value1, Integer value2) {
+            addCriterion("random_min not between", value1, value2, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqIsNull() {
+            addCriterion("seq is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqIsNotNull() {
+            addCriterion("seq is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqEqualTo(Integer value) {
+            addCriterion("seq =", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqNotEqualTo(Integer value) {
+            addCriterion("seq <>", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqGreaterThan(Integer value) {
+            addCriterion("seq >", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqGreaterThanOrEqualTo(Integer value) {
+            addCriterion("seq >=", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqLessThan(Integer value) {
+            addCriterion("seq <", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqLessThanOrEqualTo(Integer value) {
+            addCriterion("seq <=", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqIn(List<Integer> values) {
+            addCriterion("seq in", values, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqNotIn(List<Integer> values) {
+            addCriterion("seq not in", values, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqBetween(Integer value1, Integer value2) {
+            addCriterion("seq between", value1, value2, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqNotBetween(Integer value1, Integer value2) {
+            addCriterion("seq not between", value1, value2, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIsNull() {
+            addCriterion("create_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIsNotNull() {
+            addCriterion("create_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeEqualTo(Date value) {
+            addCriterion("create_time =", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotEqualTo(Date value) {
+            addCriterion("create_time <>", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeGreaterThan(Date value) {
+            addCriterion("create_time >", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
+            addCriterion("create_time >=", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeLessThan(Date value) {
+            addCriterion("create_time <", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
+            addCriterion("create_time <=", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIn(List<Date> values) {
+            addCriterion("create_time in", values, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotIn(List<Date> values) {
+            addCriterion("create_time not in", values, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeBetween(Date value1, Date value2) {
+            addCriterion("create_time between", value1, value2, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
+            addCriterion("create_time not between", value1, value2, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIsNull() {
+            addCriterion("update_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIsNotNull() {
+            addCriterion("update_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeEqualTo(Date value) {
+            addCriterion("update_time =", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotEqualTo(Date value) {
+            addCriterion("update_time <>", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeGreaterThan(Date value) {
+            addCriterion("update_time >", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
+            addCriterion("update_time >=", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeLessThan(Date value) {
+            addCriterion("update_time <", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
+            addCriterion("update_time <=", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIn(List<Date> values) {
+            addCriterion("update_time in", values, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotIn(List<Date> values) {
+            addCriterion("update_time not in", values, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
+            addCriterion("update_time between", value1, value2, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
+            addCriterion("update_time not between", value1, value2, "updateTime");
+            return (Criteria) this;
+        }
+    }
+
+    public static class Criteria extends GeneratedCriteria {
+
+        protected Criteria() {
+            super();
+        }
+    }
+
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+}

+ 136 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComStaffConfig.java

@@ -0,0 +1,136 @@
+package com.tzld.piaoquan.api.model.po.wecom.thirdpart;
+
+import java.util.Date;
+
+public class ThirdPartWeComStaffConfig {
+    private String id;
+
+    private Long staffId;
+
+    private String putScene;
+
+    private String channel;
+
+    private Integer switchFlag;
+
+    private Integer openRoomSendSwitchNum;
+
+    private Long primaryThirdStaffId;
+
+    private Long secondThirdStaffId;
+
+    private Integer status;
+
+    private Date createTime;
+
+    private Date updateTime;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public Long getStaffId() {
+        return staffId;
+    }
+
+    public void setStaffId(Long staffId) {
+        this.staffId = staffId;
+    }
+
+    public String getPutScene() {
+        return putScene;
+    }
+
+    public void setPutScene(String putScene) {
+        this.putScene = putScene;
+    }
+
+    public String getChannel() {
+        return channel;
+    }
+
+    public void setChannel(String channel) {
+        this.channel = channel;
+    }
+
+    public Integer getSwitchFlag() {
+        return switchFlag;
+    }
+
+    public void setSwitchFlag(Integer switchFlag) {
+        this.switchFlag = switchFlag;
+    }
+
+    public Integer getOpenRoomSendSwitchNum() {
+        return openRoomSendSwitchNum;
+    }
+
+    public void setOpenRoomSendSwitchNum(Integer openRoomSendSwitchNum) {
+        this.openRoomSendSwitchNum = openRoomSendSwitchNum;
+    }
+
+    public Long getPrimaryThirdStaffId() {
+        return primaryThirdStaffId;
+    }
+
+    public void setPrimaryThirdStaffId(Long primaryThirdStaffId) {
+        this.primaryThirdStaffId = primaryThirdStaffId;
+    }
+
+    public Long getSecondThirdStaffId() {
+        return secondThirdStaffId;
+    }
+
+    public void setSecondThirdStaffId(Long secondThirdStaffId) {
+        this.secondThirdStaffId = secondThirdStaffId;
+    }
+
+    public Integer getStatus() {
+        return status;
+    }
+
+    public void setStatus(Integer status) {
+        this.status = status;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", id=").append(id);
+        sb.append(", staffId=").append(staffId);
+        sb.append(", putScene=").append(putScene);
+        sb.append(", channel=").append(channel);
+        sb.append(", switchFlag=").append(switchFlag);
+        sb.append(", openRoomSendSwitchNum=").append(openRoomSendSwitchNum);
+        sb.append(", primaryThirdStaffId=").append(primaryThirdStaffId);
+        sb.append(", secondThirdStaffId=").append(secondThirdStaffId);
+        sb.append(", status=").append(status);
+        sb.append(", createTime=").append(createTime);
+        sb.append(", updateTime=").append(updateTime);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 902 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComStaffConfigExample.java

@@ -0,0 +1,902 @@
+package com.tzld.piaoquan.api.model.po.wecom.thirdpart;
+
+import com.tzld.piaoquan.growth.common.utils.page.Page;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+public class ThirdPartWeComStaffConfigExample {
+    protected String orderByClause;
+
+    protected boolean distinct;
+
+    protected List<Criteria> oredCriteria;
+
+    protected Page page;
+
+    public ThirdPartWeComStaffConfigExample() {
+        oredCriteria = new ArrayList<Criteria>();
+    }
+
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria();
+        return criteria;
+    }
+
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+    }
+
+    public void setPage(Page page) {
+        this.page=page;
+    }
+
+    public Page getPage() {
+        return page;
+    }
+
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<Criterion>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+
+        public Criteria andIdIsNull() {
+            addCriterion("id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIsNotNull() {
+            addCriterion("id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdEqualTo(String value) {
+            addCriterion("id =", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotEqualTo(String value) {
+            addCriterion("id <>", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThan(String value) {
+            addCriterion("id >", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThanOrEqualTo(String value) {
+            addCriterion("id >=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThan(String value) {
+            addCriterion("id <", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThanOrEqualTo(String value) {
+            addCriterion("id <=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLike(String value) {
+            addCriterion("id like", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotLike(String value) {
+            addCriterion("id not like", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIn(List<String> values) {
+            addCriterion("id in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotIn(List<String> values) {
+            addCriterion("id not in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdBetween(String value1, String value2) {
+            addCriterion("id between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotBetween(String value1, String value2) {
+            addCriterion("id not between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andStaffIdIsNull() {
+            addCriterion("staff_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStaffIdIsNotNull() {
+            addCriterion("staff_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStaffIdEqualTo(Long value) {
+            addCriterion("staff_id =", value, "staffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andStaffIdNotEqualTo(Long value) {
+            addCriterion("staff_id <>", value, "staffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andStaffIdGreaterThan(Long value) {
+            addCriterion("staff_id >", value, "staffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andStaffIdGreaterThanOrEqualTo(Long value) {
+            addCriterion("staff_id >=", value, "staffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andStaffIdLessThan(Long value) {
+            addCriterion("staff_id <", value, "staffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andStaffIdLessThanOrEqualTo(Long value) {
+            addCriterion("staff_id <=", value, "staffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andStaffIdIn(List<Long> values) {
+            addCriterion("staff_id in", values, "staffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andStaffIdNotIn(List<Long> values) {
+            addCriterion("staff_id not in", values, "staffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andStaffIdBetween(Long value1, Long value2) {
+            addCriterion("staff_id between", value1, value2, "staffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andStaffIdNotBetween(Long value1, Long value2) {
+            addCriterion("staff_id not between", value1, value2, "staffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneIsNull() {
+            addCriterion("put_scene is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneIsNotNull() {
+            addCriterion("put_scene is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneEqualTo(String value) {
+            addCriterion("put_scene =", value, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneNotEqualTo(String value) {
+            addCriterion("put_scene <>", value, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneGreaterThan(String value) {
+            addCriterion("put_scene >", value, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneGreaterThanOrEqualTo(String value) {
+            addCriterion("put_scene >=", value, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneLessThan(String value) {
+            addCriterion("put_scene <", value, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneLessThanOrEqualTo(String value) {
+            addCriterion("put_scene <=", value, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneLike(String value) {
+            addCriterion("put_scene like", value, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneNotLike(String value) {
+            addCriterion("put_scene not like", value, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneIn(List<String> values) {
+            addCriterion("put_scene in", values, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneNotIn(List<String> values) {
+            addCriterion("put_scene not in", values, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneBetween(String value1, String value2) {
+            addCriterion("put_scene between", value1, value2, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andPutSceneNotBetween(String value1, String value2) {
+            addCriterion("put_scene not between", value1, value2, "putScene");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelIsNull() {
+            addCriterion("channel is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelIsNotNull() {
+            addCriterion("channel is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelEqualTo(String value) {
+            addCriterion("channel =", value, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelNotEqualTo(String value) {
+            addCriterion("channel <>", value, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelGreaterThan(String value) {
+            addCriterion("channel >", value, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelGreaterThanOrEqualTo(String value) {
+            addCriterion("channel >=", value, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelLessThan(String value) {
+            addCriterion("channel <", value, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelLessThanOrEqualTo(String value) {
+            addCriterion("channel <=", value, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelLike(String value) {
+            addCriterion("channel like", value, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelNotLike(String value) {
+            addCriterion("channel not like", value, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelIn(List<String> values) {
+            addCriterion("channel in", values, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelNotIn(List<String> values) {
+            addCriterion("channel not in", values, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelBetween(String value1, String value2) {
+            addCriterion("channel between", value1, value2, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelNotBetween(String value1, String value2) {
+            addCriterion("channel not between", value1, value2, "channel");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagIsNull() {
+            addCriterion("switch_flag is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagIsNotNull() {
+            addCriterion("switch_flag is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagEqualTo(Integer value) {
+            addCriterion("switch_flag =", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagNotEqualTo(Integer value) {
+            addCriterion("switch_flag <>", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagGreaterThan(Integer value) {
+            addCriterion("switch_flag >", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagGreaterThanOrEqualTo(Integer value) {
+            addCriterion("switch_flag >=", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagLessThan(Integer value) {
+            addCriterion("switch_flag <", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagLessThanOrEqualTo(Integer value) {
+            addCriterion("switch_flag <=", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagIn(List<Integer> values) {
+            addCriterion("switch_flag in", values, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagNotIn(List<Integer> values) {
+            addCriterion("switch_flag not in", values, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagBetween(Integer value1, Integer value2) {
+            addCriterion("switch_flag between", value1, value2, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagNotBetween(Integer value1, Integer value2) {
+            addCriterion("switch_flag not between", value1, value2, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andOpenRoomSendSwitchNumIsNull() {
+            addCriterion("open_room_send_switch_num is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andOpenRoomSendSwitchNumIsNotNull() {
+            addCriterion("open_room_send_switch_num is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andOpenRoomSendSwitchNumEqualTo(Integer value) {
+            addCriterion("open_room_send_switch_num =", value, "openRoomSendSwitchNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOpenRoomSendSwitchNumNotEqualTo(Integer value) {
+            addCriterion("open_room_send_switch_num <>", value, "openRoomSendSwitchNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOpenRoomSendSwitchNumGreaterThan(Integer value) {
+            addCriterion("open_room_send_switch_num >", value, "openRoomSendSwitchNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOpenRoomSendSwitchNumGreaterThanOrEqualTo(Integer value) {
+            addCriterion("open_room_send_switch_num >=", value, "openRoomSendSwitchNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOpenRoomSendSwitchNumLessThan(Integer value) {
+            addCriterion("open_room_send_switch_num <", value, "openRoomSendSwitchNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOpenRoomSendSwitchNumLessThanOrEqualTo(Integer value) {
+            addCriterion("open_room_send_switch_num <=", value, "openRoomSendSwitchNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOpenRoomSendSwitchNumIn(List<Integer> values) {
+            addCriterion("open_room_send_switch_num in", values, "openRoomSendSwitchNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOpenRoomSendSwitchNumNotIn(List<Integer> values) {
+            addCriterion("open_room_send_switch_num not in", values, "openRoomSendSwitchNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOpenRoomSendSwitchNumBetween(Integer value1, Integer value2) {
+            addCriterion("open_room_send_switch_num between", value1, value2, "openRoomSendSwitchNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOpenRoomSendSwitchNumNotBetween(Integer value1, Integer value2) {
+            addCriterion("open_room_send_switch_num not between", value1, value2, "openRoomSendSwitchNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdIsNull() {
+            addCriterion("primary_third_staff_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdIsNotNull() {
+            addCriterion("primary_third_staff_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdEqualTo(Long value) {
+            addCriterion("primary_third_staff_id =", value, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdNotEqualTo(Long value) {
+            addCriterion("primary_third_staff_id <>", value, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdGreaterThan(Long value) {
+            addCriterion("primary_third_staff_id >", value, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdGreaterThanOrEqualTo(Long value) {
+            addCriterion("primary_third_staff_id >=", value, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdLessThan(Long value) {
+            addCriterion("primary_third_staff_id <", value, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdLessThanOrEqualTo(Long value) {
+            addCriterion("primary_third_staff_id <=", value, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdIn(List<Long> values) {
+            addCriterion("primary_third_staff_id in", values, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdNotIn(List<Long> values) {
+            addCriterion("primary_third_staff_id not in", values, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdBetween(Long value1, Long value2) {
+            addCriterion("primary_third_staff_id between", value1, value2, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPrimaryThirdStaffIdNotBetween(Long value1, Long value2) {
+            addCriterion("primary_third_staff_id not between", value1, value2, "primaryThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdIsNull() {
+            addCriterion("second_third_staff_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdIsNotNull() {
+            addCriterion("second_third_staff_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdEqualTo(Long value) {
+            addCriterion("second_third_staff_id =", value, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdNotEqualTo(Long value) {
+            addCriterion("second_third_staff_id <>", value, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdGreaterThan(Long value) {
+            addCriterion("second_third_staff_id >", value, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdGreaterThanOrEqualTo(Long value) {
+            addCriterion("second_third_staff_id >=", value, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdLessThan(Long value) {
+            addCriterion("second_third_staff_id <", value, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdLessThanOrEqualTo(Long value) {
+            addCriterion("second_third_staff_id <=", value, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdIn(List<Long> values) {
+            addCriterion("second_third_staff_id in", values, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdNotIn(List<Long> values) {
+            addCriterion("second_third_staff_id not in", values, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdBetween(Long value1, Long value2) {
+            addCriterion("second_third_staff_id between", value1, value2, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSecondThirdStaffIdNotBetween(Long value1, Long value2) {
+            addCriterion("second_third_staff_id not between", value1, value2, "secondThirdStaffId");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusIsNull() {
+            addCriterion("`status` is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusIsNotNull() {
+            addCriterion("`status` is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusEqualTo(Integer value) {
+            addCriterion("`status` =", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusNotEqualTo(Integer value) {
+            addCriterion("`status` <>", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusGreaterThan(Integer value) {
+            addCriterion("`status` >", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
+            addCriterion("`status` >=", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusLessThan(Integer value) {
+            addCriterion("`status` <", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusLessThanOrEqualTo(Integer value) {
+            addCriterion("`status` <=", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusIn(List<Integer> values) {
+            addCriterion("`status` in", values, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusNotIn(List<Integer> values) {
+            addCriterion("`status` not in", values, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusBetween(Integer value1, Integer value2) {
+            addCriterion("`status` between", value1, value2, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
+            addCriterion("`status` not between", value1, value2, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIsNull() {
+            addCriterion("create_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIsNotNull() {
+            addCriterion("create_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeEqualTo(Date value) {
+            addCriterion("create_time =", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotEqualTo(Date value) {
+            addCriterion("create_time <>", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeGreaterThan(Date value) {
+            addCriterion("create_time >", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
+            addCriterion("create_time >=", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeLessThan(Date value) {
+            addCriterion("create_time <", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
+            addCriterion("create_time <=", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIn(List<Date> values) {
+            addCriterion("create_time in", values, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotIn(List<Date> values) {
+            addCriterion("create_time not in", values, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeBetween(Date value1, Date value2) {
+            addCriterion("create_time between", value1, value2, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
+            addCriterion("create_time not between", value1, value2, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIsNull() {
+            addCriterion("update_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIsNotNull() {
+            addCriterion("update_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeEqualTo(Date value) {
+            addCriterion("update_time =", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotEqualTo(Date value) {
+            addCriterion("update_time <>", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeGreaterThan(Date value) {
+            addCriterion("update_time >", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
+            addCriterion("update_time >=", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeLessThan(Date value) {
+            addCriterion("update_time <", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
+            addCriterion("update_time <=", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIn(List<Date> values) {
+            addCriterion("update_time in", values, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotIn(List<Date> values) {
+            addCriterion("update_time not in", values, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
+            addCriterion("update_time between", value1, value2, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
+            addCriterion("update_time not between", value1, value2, "updateTime");
+            return (Criteria) this;
+        }
+    }
+
+    public static class Criteria extends GeneratedCriteria {
+
+        protected Criteria() {
+            super();
+        }
+    }
+
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+}

+ 103 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComStaffConfigTask.java

@@ -0,0 +1,103 @@
+package com.tzld.piaoquan.api.model.po.wecom.thirdpart;
+
+import java.util.Date;
+
+public class ThirdPartWeComStaffConfigTask {
+    private String id;
+
+    private String configId;
+
+    private Integer switchFlag;
+
+    private String sendTime;
+
+    private Integer randomMin;
+
+    private Integer seq;
+
+    private Date createTime;
+
+    private Date updateTime;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getConfigId() {
+        return configId;
+    }
+
+    public void setConfigId(String configId) {
+        this.configId = configId;
+    }
+
+    public Integer getSwitchFlag() {
+        return switchFlag;
+    }
+
+    public void setSwitchFlag(Integer switchFlag) {
+        this.switchFlag = switchFlag;
+    }
+
+    public String getSendTime() {
+        return sendTime;
+    }
+
+    public void setSendTime(String sendTime) {
+        this.sendTime = sendTime;
+    }
+
+    public Integer getRandomMin() {
+        return randomMin;
+    }
+
+    public void setRandomMin(Integer randomMin) {
+        this.randomMin = randomMin;
+    }
+
+    public Integer getSeq() {
+        return seq;
+    }
+
+    public void setSeq(Integer seq) {
+        this.seq = seq;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", id=").append(id);
+        sb.append(", configId=").append(configId);
+        sb.append(", switchFlag=").append(switchFlag);
+        sb.append(", sendTime=").append(sendTime);
+        sb.append(", randomMin=").append(randomMin);
+        sb.append(", seq=").append(seq);
+        sb.append(", createTime=").append(createTime);
+        sb.append(", updateTime=").append(updateTime);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 114 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComStaffConfigTaskContent.java

@@ -0,0 +1,114 @@
+package com.tzld.piaoquan.api.model.po.wecom.thirdpart;
+
+import java.util.Date;
+
+public class ThirdPartWeComStaffConfigTaskContent {
+    private String id;
+
+    private String taskId;
+
+    private Integer type;
+
+    private String content;
+
+    private Integer source;
+
+    private String sourceContent;
+
+    private Integer seq;
+
+    private Date createTime;
+
+    private Date updateTime;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getTaskId() {
+        return taskId;
+    }
+
+    public void setTaskId(String taskId) {
+        this.taskId = taskId;
+    }
+
+    public Integer getType() {
+        return type;
+    }
+
+    public void setType(Integer type) {
+        this.type = type;
+    }
+
+    public String getContent() {
+        return content;
+    }
+
+    public void setContent(String content) {
+        this.content = content;
+    }
+
+    public Integer getSource() {
+        return source;
+    }
+
+    public void setSource(Integer source) {
+        this.source = source;
+    }
+
+    public String getSourceContent() {
+        return sourceContent;
+    }
+
+    public void setSourceContent(String sourceContent) {
+        this.sourceContent = sourceContent;
+    }
+
+    public Integer getSeq() {
+        return seq;
+    }
+
+    public void setSeq(Integer seq) {
+        this.seq = seq;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", id=").append(id);
+        sb.append(", taskId=").append(taskId);
+        sb.append(", type=").append(type);
+        sb.append(", content=").append(content);
+        sb.append(", source=").append(source);
+        sb.append(", sourceContent=").append(sourceContent);
+        sb.append(", seq=").append(seq);
+        sb.append(", createTime=").append(createTime);
+        sb.append(", updateTime=").append(updateTime);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 792 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComStaffConfigTaskContentExample.java

@@ -0,0 +1,792 @@
+package com.tzld.piaoquan.api.model.po.wecom.thirdpart;
+
+import com.tzld.piaoquan.growth.common.utils.page.Page;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+public class ThirdPartWeComStaffConfigTaskContentExample {
+    protected String orderByClause;
+
+    protected boolean distinct;
+
+    protected List<Criteria> oredCriteria;
+
+    protected Page page;
+
+    public ThirdPartWeComStaffConfigTaskContentExample() {
+        oredCriteria = new ArrayList<Criteria>();
+    }
+
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria();
+        return criteria;
+    }
+
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+    }
+
+    public void setPage(Page page) {
+        this.page=page;
+    }
+
+    public Page getPage() {
+        return page;
+    }
+
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<Criterion>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+
+        public Criteria andIdIsNull() {
+            addCriterion("id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIsNotNull() {
+            addCriterion("id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdEqualTo(String value) {
+            addCriterion("id =", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotEqualTo(String value) {
+            addCriterion("id <>", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThan(String value) {
+            addCriterion("id >", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThanOrEqualTo(String value) {
+            addCriterion("id >=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThan(String value) {
+            addCriterion("id <", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThanOrEqualTo(String value) {
+            addCriterion("id <=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLike(String value) {
+            addCriterion("id like", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotLike(String value) {
+            addCriterion("id not like", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIn(List<String> values) {
+            addCriterion("id in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotIn(List<String> values) {
+            addCriterion("id not in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdBetween(String value1, String value2) {
+            addCriterion("id between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotBetween(String value1, String value2) {
+            addCriterion("id not between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdIsNull() {
+            addCriterion("task_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdIsNotNull() {
+            addCriterion("task_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdEqualTo(String value) {
+            addCriterion("task_id =", value, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdNotEqualTo(String value) {
+            addCriterion("task_id <>", value, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdGreaterThan(String value) {
+            addCriterion("task_id >", value, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdGreaterThanOrEqualTo(String value) {
+            addCriterion("task_id >=", value, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdLessThan(String value) {
+            addCriterion("task_id <", value, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdLessThanOrEqualTo(String value) {
+            addCriterion("task_id <=", value, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdLike(String value) {
+            addCriterion("task_id like", value, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdNotLike(String value) {
+            addCriterion("task_id not like", value, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdIn(List<String> values) {
+            addCriterion("task_id in", values, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdNotIn(List<String> values) {
+            addCriterion("task_id not in", values, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdBetween(String value1, String value2) {
+            addCriterion("task_id between", value1, value2, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTaskIdNotBetween(String value1, String value2) {
+            addCriterion("task_id not between", value1, value2, "taskId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeIsNull() {
+            addCriterion("`type` is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeIsNotNull() {
+            addCriterion("`type` is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeEqualTo(Integer value) {
+            addCriterion("`type` =", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeNotEqualTo(Integer value) {
+            addCriterion("`type` <>", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeGreaterThan(Integer value) {
+            addCriterion("`type` >", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeGreaterThanOrEqualTo(Integer value) {
+            addCriterion("`type` >=", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeLessThan(Integer value) {
+            addCriterion("`type` <", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeLessThanOrEqualTo(Integer value) {
+            addCriterion("`type` <=", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeIn(List<Integer> values) {
+            addCriterion("`type` in", values, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeNotIn(List<Integer> values) {
+            addCriterion("`type` not in", values, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeBetween(Integer value1, Integer value2) {
+            addCriterion("`type` between", value1, value2, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeNotBetween(Integer value1, Integer value2) {
+            addCriterion("`type` not between", value1, value2, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentIsNull() {
+            addCriterion("content is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentIsNotNull() {
+            addCriterion("content is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentEqualTo(String value) {
+            addCriterion("content =", value, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentNotEqualTo(String value) {
+            addCriterion("content <>", value, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentGreaterThan(String value) {
+            addCriterion("content >", value, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentGreaterThanOrEqualTo(String value) {
+            addCriterion("content >=", value, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentLessThan(String value) {
+            addCriterion("content <", value, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentLessThanOrEqualTo(String value) {
+            addCriterion("content <=", value, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentLike(String value) {
+            addCriterion("content like", value, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentNotLike(String value) {
+            addCriterion("content not like", value, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentIn(List<String> values) {
+            addCriterion("content in", values, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentNotIn(List<String> values) {
+            addCriterion("content not in", values, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentBetween(String value1, String value2) {
+            addCriterion("content between", value1, value2, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentNotBetween(String value1, String value2) {
+            addCriterion("content not between", value1, value2, "content");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceIsNull() {
+            addCriterion("`source` is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceIsNotNull() {
+            addCriterion("`source` is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceEqualTo(Integer value) {
+            addCriterion("`source` =", value, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceNotEqualTo(Integer value) {
+            addCriterion("`source` <>", value, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceGreaterThan(Integer value) {
+            addCriterion("`source` >", value, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceGreaterThanOrEqualTo(Integer value) {
+            addCriterion("`source` >=", value, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceLessThan(Integer value) {
+            addCriterion("`source` <", value, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceLessThanOrEqualTo(Integer value) {
+            addCriterion("`source` <=", value, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceIn(List<Integer> values) {
+            addCriterion("`source` in", values, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceNotIn(List<Integer> values) {
+            addCriterion("`source` not in", values, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceBetween(Integer value1, Integer value2) {
+            addCriterion("`source` between", value1, value2, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceNotBetween(Integer value1, Integer value2) {
+            addCriterion("`source` not between", value1, value2, "source");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentIsNull() {
+            addCriterion("source_content is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentIsNotNull() {
+            addCriterion("source_content is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentEqualTo(String value) {
+            addCriterion("source_content =", value, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentNotEqualTo(String value) {
+            addCriterion("source_content <>", value, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentGreaterThan(String value) {
+            addCriterion("source_content >", value, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentGreaterThanOrEqualTo(String value) {
+            addCriterion("source_content >=", value, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentLessThan(String value) {
+            addCriterion("source_content <", value, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentLessThanOrEqualTo(String value) {
+            addCriterion("source_content <=", value, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentLike(String value) {
+            addCriterion("source_content like", value, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentNotLike(String value) {
+            addCriterion("source_content not like", value, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentIn(List<String> values) {
+            addCriterion("source_content in", values, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentNotIn(List<String> values) {
+            addCriterion("source_content not in", values, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentBetween(String value1, String value2) {
+            addCriterion("source_content between", value1, value2, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceContentNotBetween(String value1, String value2) {
+            addCriterion("source_content not between", value1, value2, "sourceContent");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqIsNull() {
+            addCriterion("seq is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqIsNotNull() {
+            addCriterion("seq is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqEqualTo(Integer value) {
+            addCriterion("seq =", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqNotEqualTo(Integer value) {
+            addCriterion("seq <>", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqGreaterThan(Integer value) {
+            addCriterion("seq >", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqGreaterThanOrEqualTo(Integer value) {
+            addCriterion("seq >=", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqLessThan(Integer value) {
+            addCriterion("seq <", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqLessThanOrEqualTo(Integer value) {
+            addCriterion("seq <=", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqIn(List<Integer> values) {
+            addCriterion("seq in", values, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqNotIn(List<Integer> values) {
+            addCriterion("seq not in", values, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqBetween(Integer value1, Integer value2) {
+            addCriterion("seq between", value1, value2, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqNotBetween(Integer value1, Integer value2) {
+            addCriterion("seq not between", value1, value2, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIsNull() {
+            addCriterion("create_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIsNotNull() {
+            addCriterion("create_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeEqualTo(Date value) {
+            addCriterion("create_time =", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotEqualTo(Date value) {
+            addCriterion("create_time <>", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeGreaterThan(Date value) {
+            addCriterion("create_time >", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
+            addCriterion("create_time >=", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeLessThan(Date value) {
+            addCriterion("create_time <", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
+            addCriterion("create_time <=", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIn(List<Date> values) {
+            addCriterion("create_time in", values, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotIn(List<Date> values) {
+            addCriterion("create_time not in", values, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeBetween(Date value1, Date value2) {
+            addCriterion("create_time between", value1, value2, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
+            addCriterion("create_time not between", value1, value2, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIsNull() {
+            addCriterion("update_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIsNotNull() {
+            addCriterion("update_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeEqualTo(Date value) {
+            addCriterion("update_time =", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotEqualTo(Date value) {
+            addCriterion("update_time <>", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeGreaterThan(Date value) {
+            addCriterion("update_time >", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
+            addCriterion("update_time >=", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeLessThan(Date value) {
+            addCriterion("update_time <", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
+            addCriterion("update_time <=", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIn(List<Date> values) {
+            addCriterion("update_time in", values, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotIn(List<Date> values) {
+            addCriterion("update_time not in", values, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
+            addCriterion("update_time between", value1, value2, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
+            addCriterion("update_time not between", value1, value2, "updateTime");
+            return (Criteria) this;
+        }
+    }
+
+    public static class Criteria extends GeneratedCriteria {
+
+        protected Criteria() {
+            super();
+        }
+    }
+
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+}

+ 722 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/po/wecom/thirdpart/ThirdPartWeComStaffConfigTaskExample.java

@@ -0,0 +1,722 @@
+package com.tzld.piaoquan.api.model.po.wecom.thirdpart;
+
+import com.tzld.piaoquan.growth.common.utils.page.Page;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+public class ThirdPartWeComStaffConfigTaskExample {
+    protected String orderByClause;
+
+    protected boolean distinct;
+
+    protected List<Criteria> oredCriteria;
+
+    protected Page page;
+
+    public ThirdPartWeComStaffConfigTaskExample() {
+        oredCriteria = new ArrayList<Criteria>();
+    }
+
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria();
+        return criteria;
+    }
+
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+    }
+
+    public void setPage(Page page) {
+        this.page=page;
+    }
+
+    public Page getPage() {
+        return page;
+    }
+
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<Criterion>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+
+        public Criteria andIdIsNull() {
+            addCriterion("id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIsNotNull() {
+            addCriterion("id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdEqualTo(String value) {
+            addCriterion("id =", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotEqualTo(String value) {
+            addCriterion("id <>", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThan(String value) {
+            addCriterion("id >", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThanOrEqualTo(String value) {
+            addCriterion("id >=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThan(String value) {
+            addCriterion("id <", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThanOrEqualTo(String value) {
+            addCriterion("id <=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLike(String value) {
+            addCriterion("id like", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotLike(String value) {
+            addCriterion("id not like", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIn(List<String> values) {
+            addCriterion("id in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotIn(List<String> values) {
+            addCriterion("id not in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdBetween(String value1, String value2) {
+            addCriterion("id between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotBetween(String value1, String value2) {
+            addCriterion("id not between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdIsNull() {
+            addCriterion("config_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdIsNotNull() {
+            addCriterion("config_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdEqualTo(String value) {
+            addCriterion("config_id =", value, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdNotEqualTo(String value) {
+            addCriterion("config_id <>", value, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdGreaterThan(String value) {
+            addCriterion("config_id >", value, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdGreaterThanOrEqualTo(String value) {
+            addCriterion("config_id >=", value, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdLessThan(String value) {
+            addCriterion("config_id <", value, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdLessThanOrEqualTo(String value) {
+            addCriterion("config_id <=", value, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdLike(String value) {
+            addCriterion("config_id like", value, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdNotLike(String value) {
+            addCriterion("config_id not like", value, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdIn(List<String> values) {
+            addCriterion("config_id in", values, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdNotIn(List<String> values) {
+            addCriterion("config_id not in", values, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdBetween(String value1, String value2) {
+            addCriterion("config_id between", value1, value2, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andConfigIdNotBetween(String value1, String value2) {
+            addCriterion("config_id not between", value1, value2, "configId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagIsNull() {
+            addCriterion("switch_flag is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagIsNotNull() {
+            addCriterion("switch_flag is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagEqualTo(Integer value) {
+            addCriterion("switch_flag =", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagNotEqualTo(Integer value) {
+            addCriterion("switch_flag <>", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagGreaterThan(Integer value) {
+            addCriterion("switch_flag >", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagGreaterThanOrEqualTo(Integer value) {
+            addCriterion("switch_flag >=", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagLessThan(Integer value) {
+            addCriterion("switch_flag <", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagLessThanOrEqualTo(Integer value) {
+            addCriterion("switch_flag <=", value, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagIn(List<Integer> values) {
+            addCriterion("switch_flag in", values, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagNotIn(List<Integer> values) {
+            addCriterion("switch_flag not in", values, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagBetween(Integer value1, Integer value2) {
+            addCriterion("switch_flag between", value1, value2, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSwitchFlagNotBetween(Integer value1, Integer value2) {
+            addCriterion("switch_flag not between", value1, value2, "switchFlag");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeIsNull() {
+            addCriterion("send_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeIsNotNull() {
+            addCriterion("send_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeEqualTo(String value) {
+            addCriterion("send_time =", value, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeNotEqualTo(String value) {
+            addCriterion("send_time <>", value, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeGreaterThan(String value) {
+            addCriterion("send_time >", value, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeGreaterThanOrEqualTo(String value) {
+            addCriterion("send_time >=", value, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeLessThan(String value) {
+            addCriterion("send_time <", value, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeLessThanOrEqualTo(String value) {
+            addCriterion("send_time <=", value, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeLike(String value) {
+            addCriterion("send_time like", value, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeNotLike(String value) {
+            addCriterion("send_time not like", value, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeIn(List<String> values) {
+            addCriterion("send_time in", values, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeNotIn(List<String> values) {
+            addCriterion("send_time not in", values, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeBetween(String value1, String value2) {
+            addCriterion("send_time between", value1, value2, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andSendTimeNotBetween(String value1, String value2) {
+            addCriterion("send_time not between", value1, value2, "sendTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinIsNull() {
+            addCriterion("random_min is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinIsNotNull() {
+            addCriterion("random_min is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinEqualTo(Integer value) {
+            addCriterion("random_min =", value, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinNotEqualTo(Integer value) {
+            addCriterion("random_min <>", value, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinGreaterThan(Integer value) {
+            addCriterion("random_min >", value, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinGreaterThanOrEqualTo(Integer value) {
+            addCriterion("random_min >=", value, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinLessThan(Integer value) {
+            addCriterion("random_min <", value, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinLessThanOrEqualTo(Integer value) {
+            addCriterion("random_min <=", value, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinIn(List<Integer> values) {
+            addCriterion("random_min in", values, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinNotIn(List<Integer> values) {
+            addCriterion("random_min not in", values, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinBetween(Integer value1, Integer value2) {
+            addCriterion("random_min between", value1, value2, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andRandomMinNotBetween(Integer value1, Integer value2) {
+            addCriterion("random_min not between", value1, value2, "randomMin");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqIsNull() {
+            addCriterion("seq is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqIsNotNull() {
+            addCriterion("seq is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqEqualTo(Integer value) {
+            addCriterion("seq =", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqNotEqualTo(Integer value) {
+            addCriterion("seq <>", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqGreaterThan(Integer value) {
+            addCriterion("seq >", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqGreaterThanOrEqualTo(Integer value) {
+            addCriterion("seq >=", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqLessThan(Integer value) {
+            addCriterion("seq <", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqLessThanOrEqualTo(Integer value) {
+            addCriterion("seq <=", value, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqIn(List<Integer> values) {
+            addCriterion("seq in", values, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqNotIn(List<Integer> values) {
+            addCriterion("seq not in", values, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqBetween(Integer value1, Integer value2) {
+            addCriterion("seq between", value1, value2, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andSeqNotBetween(Integer value1, Integer value2) {
+            addCriterion("seq not between", value1, value2, "seq");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIsNull() {
+            addCriterion("create_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIsNotNull() {
+            addCriterion("create_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeEqualTo(Date value) {
+            addCriterion("create_time =", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotEqualTo(Date value) {
+            addCriterion("create_time <>", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeGreaterThan(Date value) {
+            addCriterion("create_time >", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
+            addCriterion("create_time >=", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeLessThan(Date value) {
+            addCriterion("create_time <", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
+            addCriterion("create_time <=", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIn(List<Date> values) {
+            addCriterion("create_time in", values, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotIn(List<Date> values) {
+            addCriterion("create_time not in", values, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeBetween(Date value1, Date value2) {
+            addCriterion("create_time between", value1, value2, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
+            addCriterion("create_time not between", value1, value2, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIsNull() {
+            addCriterion("update_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIsNotNull() {
+            addCriterion("update_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeEqualTo(Date value) {
+            addCriterion("update_time =", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotEqualTo(Date value) {
+            addCriterion("update_time <>", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeGreaterThan(Date value) {
+            addCriterion("update_time >", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
+            addCriterion("update_time >=", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeLessThan(Date value) {
+            addCriterion("update_time <", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
+            addCriterion("update_time <=", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIn(List<Date> values) {
+            addCriterion("update_time in", values, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotIn(List<Date> values) {
+            addCriterion("update_time not in", values, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
+            addCriterion("update_time between", value1, value2, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
+            addCriterion("update_time not between", value1, value2, "updateTime");
+            return (Criteria) this;
+        }
+    }
+
+    public static class Criteria extends GeneratedCriteria {
+
+        protected Criteria() {
+            super();
+        }
+    }
+
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+}

+ 19 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/vo/IdNameVO.java

@@ -0,0 +1,19 @@
+package com.tzld.piaoquan.api.model.vo;
+
+import lombok.Data;
+
+import java.util.Objects;
+
+@Data
+public class IdNameVO<T> {
+    private T id;
+    private String name;
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (o == null || getClass() != o.getClass()) return false;
+        IdNameVO<?> idNameVO = (IdNameVO<?>) o;
+        return Objects.equals(id, idNameVO.id);
+    }
+}

+ 16 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/vo/contentplatform/AccountQrCodeVO.java

@@ -0,0 +1,16 @@
+package com.tzld.piaoquan.api.model.vo.contentplatform;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class AccountQrCodeVO {
+    @ApiModelProperty(value = "uuid")
+    private String uuid;
+    @ApiModelProperty(value = "登录二维码")
+    private String qrcode;
+    @ApiModelProperty(value = "登录二维码key")
+    private String Key;
+    @ApiModelProperty(value = "过期时间")
+    private Long Ttl;
+}

+ 19 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/vo/wecom/thirdpart/ThirdPartyAccountConfigTaskContentVO.java

@@ -0,0 +1,19 @@
+package com.tzld.piaoquan.api.model.vo.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class ThirdPartyAccountConfigTaskContentVO {
+
+    @ApiModelProperty(value = "类型 0-文案 1-小程序")
+    private Integer type;
+    @ApiModelProperty(value = "文案内容")
+    private String content;
+    @ApiModelProperty(value = "小程序来源 0-热榜 1-标签 2-账号")
+    private Integer source;
+    @ApiModelProperty(value = "小程序来源内容 (标签/账号id)")
+    private String sourceContent;
+    @ApiModelProperty(value = "顺序")
+    private Integer seq;
+}

+ 21 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/vo/wecom/thirdpart/ThirdPartyAccountConfigTaskVO.java

@@ -0,0 +1,21 @@
+package com.tzld.piaoquan.api.model.vo.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class ThirdPartyAccountConfigTaskVO {
+
+    @ApiModelProperty(value = "投放场景")
+    private Integer switchFlag;
+    @ApiModelProperty(value = "发送时间")
+    private List<String> sendTime;
+    @ApiModelProperty(value = "随机浮动分钟")
+    private Integer randomMin;
+    @ApiModelProperty(value = "顺序")
+    private Integer seq;
+    @ApiModelProperty(value = "发送内容列表")
+    private List<ThirdPartyAccountConfigTaskContentVO> contentList;
+}

+ 30 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/vo/wecom/thirdpart/ThirdPartyAccountConfigVO.java

@@ -0,0 +1,30 @@
+package com.tzld.piaoquan.api.model.vo.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class ThirdPartyAccountConfigVO {
+
+    @ApiModelProperty(value = "投放场景")
+    private String putScene;
+    @ApiModelProperty(value = "渠道")
+    private String channel;
+    @ApiModelProperty(value = "是否开启(0否,1是)")
+    private Integer switchFlag;
+    @ApiModelProperty(value = "推送触发人数")
+    private Integer openRoomSendSwitchNum;
+    @ApiModelProperty(value = "主推送人员")
+    private Long primaryThirdStaffId;
+    @ApiModelProperty(value = "主推送人员名称")
+    private String primaryThirdStaffName;
+    @ApiModelProperty(value = "次推送人员")
+    private Long secondThirdStaffId;
+    @ApiModelProperty(value = "次推送人员名称")
+    private String secondThirdStaffName;
+    @ApiModelProperty(value = "任务列表")
+    private List<ThirdPartyAccountConfigTaskVO> taskList;
+
+}

+ 31 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/vo/wecom/thirdpart/ThirdPartyAccountVO.java

@@ -0,0 +1,31 @@
+package com.tzld.piaoquan.api.model.vo.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class ThirdPartyAccountVO {
+
+    @ApiModelProperty(value = "ID")
+    private Long id;
+    @ApiModelProperty(value = "企业名称")
+    private String corpName;
+    @ApiModelProperty(value = "账号名称")
+    private String accountName;
+    @ApiModelProperty(value = "账号实名人")
+    private String realName;
+    @ApiModelProperty(value = "手机号")
+    private String mobile;
+    @ApiModelProperty(value = "账号状态(0正常,1掉线,2离线)")
+    private Integer status;
+    @ApiModelProperty(value = "名片")
+    private String qrImage;
+
+    @ApiModelProperty(value = "三方用户id")
+    private Long thirdStaffId;
+    @ApiModelProperty(value = "三方uuid")
+    private String thirdUuid;
+    @ApiModelProperty(value = "头像")
+    private String avatar;
+
+}

+ 19 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/vo/wecom/thirdpart/ThirdPartyRoomConfigTaskContentVO.java

@@ -0,0 +1,19 @@
+package com.tzld.piaoquan.api.model.vo.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class ThirdPartyRoomConfigTaskContentVO {
+
+    @ApiModelProperty(value = "类型 0-文案 1-小程序")
+    private Integer type;
+    @ApiModelProperty(value = "文案内容")
+    private String content;
+    @ApiModelProperty(value = "小程序来源 0-热榜 1-标签 2-账号")
+    private Integer source;
+    @ApiModelProperty(value = "小程序来源内容 (标签/账号id)")
+    private String sourceContent;
+    @ApiModelProperty(value = "顺序")
+    private Integer seq;
+}

+ 21 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/vo/wecom/thirdpart/ThirdPartyRoomConfigTaskVO.java

@@ -0,0 +1,21 @@
+package com.tzld.piaoquan.api.model.vo.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class ThirdPartyRoomConfigTaskVO {
+
+    @ApiModelProperty(value = "投放场景")
+    private Integer switchFlag;
+    @ApiModelProperty(value = "发送时间")
+    private List<String> sendTime;
+    @ApiModelProperty(value = "随机浮动分钟")
+    private Integer randomMin;
+    @ApiModelProperty(value = "顺序")
+    private Integer seq;
+    @ApiModelProperty(value = "发送内容列表")
+    private List<ThirdPartyRoomConfigTaskContentVO> contentList;
+}

+ 30 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/vo/wecom/thirdpart/ThirdPartyRoomConfigVO.java

@@ -0,0 +1,30 @@
+package com.tzld.piaoquan.api.model.vo.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class ThirdPartyRoomConfigVO {
+
+    @ApiModelProperty(value = "投放场景")
+    private String putScene;
+    @ApiModelProperty(value = "渠道")
+    private String channel;
+    @ApiModelProperty(value = "是否开启(0否,1是)")
+    private Integer switchFlag;
+    @ApiModelProperty(value = "推送触发人数")
+    private Integer openRoomSendSwitchNum;
+    @ApiModelProperty(value = "主推送人员")
+    private Long primaryThirdStaffId;
+    @ApiModelProperty(value = "主推送人员名称")
+    private String primaryThirdStaffName;
+    @ApiModelProperty(value = "次推送人员")
+    private Long secondThirdStaffId;
+    @ApiModelProperty(value = "次推送人员名称")
+    private String secondThirdStaffName;
+    @ApiModelProperty(value = "任务列表")
+    private List<ThirdPartyRoomConfigTaskVO> taskList;
+
+}

+ 24 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/vo/wecom/thirdpart/ThirdPartyRoomVO.java

@@ -0,0 +1,24 @@
+package com.tzld.piaoquan.api.model.vo.wecom.thirdpart;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class ThirdPartyRoomVO {
+
+    @ApiModelProperty(value = "ID")
+    private Long id;
+    @ApiModelProperty(value = "企业名称")
+    private String corpName;
+    @ApiModelProperty(value = "群名称")
+    private String roomName;
+    @ApiModelProperty(value = "群主")
+    private String groupLeaderName;
+    @ApiModelProperty(value = "推送人员")
+    private List<String> pushAccountNameList;
+    @ApiModelProperty(value = "群人数")
+    private Integer memberCount;
+
+}

+ 29 - 0
api-module/src/main/java/com/tzld/piaoquan/api/service/wecom/thirdparty/WeComThirdPartyAccountService.java

@@ -0,0 +1,29 @@
+package com.tzld.piaoquan.api.service.wecom.thirdparty;
+
+import com.tzld.piaoquan.api.model.param.wecom.thirdpart.*;
+import com.tzld.piaoquan.api.model.vo.IdNameVO;
+import com.tzld.piaoquan.api.model.vo.contentplatform.AccountQrCodeVO;
+import com.tzld.piaoquan.api.model.vo.wecom.thirdpart.ThirdPartyAccountConfigVO;
+import com.tzld.piaoquan.api.model.vo.wecom.thirdpart.ThirdPartyAccountVO;
+import com.tzld.piaoquan.growth.common.utils.page.Page;
+
+import java.util.List;
+
+public interface WeComThirdPartyAccountService {
+
+    AccountQrCodeVO getQrCode(String id);
+
+    Boolean getNeedCheckCode(String uuid);
+
+    void setCheckCode(CheckCodeRequest param);
+
+    Page<ThirdPartyAccountVO> list(ThirdPartyAccountListParam param);
+
+    List<IdNameVO<Long>> getPushAccountList(Long accountId, String name);
+
+    ThirdPartyAccountConfigVO getAccountConfig(ThirdPartyConfigGetParam param);
+
+    void saveAccountConfig(ThirdPartyAccountConfigParam param);
+
+    void logout(ThirdPartyAccountLogOutParam param);
+}

+ 22 - 0
api-module/src/main/java/com/tzld/piaoquan/api/service/wecom/thirdparty/WeComThirdPartyRoomService.java

@@ -0,0 +1,22 @@
+package com.tzld.piaoquan.api.service.wecom.thirdparty;
+
+import com.tzld.piaoquan.api.model.param.wecom.thirdpart.ThirdPartyConfigGetParam;
+import com.tzld.piaoquan.api.model.param.wecom.thirdpart.ThirdPartyRoomConfigParam;
+import com.tzld.piaoquan.api.model.param.wecom.thirdpart.ThirdPartyRoomListParam;
+import com.tzld.piaoquan.api.model.vo.IdNameVO;
+import com.tzld.piaoquan.api.model.vo.wecom.thirdpart.ThirdPartyRoomConfigVO;
+import com.tzld.piaoquan.api.model.vo.wecom.thirdpart.ThirdPartyRoomVO;
+import com.tzld.piaoquan.growth.common.utils.page.Page;
+
+import java.util.List;
+
+public interface WeComThirdPartyRoomService {
+
+    Page<ThirdPartyRoomVO> list(ThirdPartyRoomListParam param);
+
+    List<IdNameVO<Long>> getPushAccountList(Long roomId, String name);
+
+    ThirdPartyRoomConfigVO getRoomConfig(ThirdPartyConfigGetParam param);
+
+    void saveRoomConfig(ThirdPartyRoomConfigParam param);
+}

+ 72 - 0
api-module/src/main/java/com/tzld/piaoquan/api/service/wecom/thirdparty/impl/WeComThirdPartyAccountServiceImpl.java

@@ -0,0 +1,72 @@
+package com.tzld.piaoquan.api.service.wecom.thirdparty.impl;
+
+import com.tzld.piaoquan.api.component.WeComThirdPartyApiClient;
+import com.tzld.piaoquan.api.model.param.wecom.thirdpart.*;
+import com.tzld.piaoquan.api.model.vo.IdNameVO;
+import com.tzld.piaoquan.api.model.vo.contentplatform.AccountQrCodeVO;
+import com.tzld.piaoquan.api.model.vo.wecom.thirdpart.ThirdPartyAccountConfigVO;
+import com.tzld.piaoquan.api.model.vo.wecom.thirdpart.ThirdPartyAccountVO;
+import com.tzld.piaoquan.api.service.wecom.thirdparty.WeComThirdPartyAccountService;
+import com.tzld.piaoquan.api.service.wecom.thirdparty.WeComThirdPartyService;
+import com.tzld.piaoquan.growth.common.utils.RedisUtils;
+import com.tzld.piaoquan.growth.common.utils.page.Page;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Slf4j
+@Service
+public class WeComThirdPartyAccountServiceImpl implements WeComThirdPartyAccountService {
+
+    @Autowired
+    private WeComThirdPartyApiClient apiClient;
+    @Autowired
+    private WeComThirdPartyService weComThirdPartyService;
+
+    @Autowired
+    private RedisUtils redisUtils;
+
+    @Override
+    public AccountQrCodeVO getQrCode(String id) {
+        return null;
+    }
+
+    @Override
+    public Boolean getNeedCheckCode(String uuid) {
+        return null;
+    }
+
+    @Override
+    public void setCheckCode(CheckCodeRequest param) {
+
+    }
+
+    @Override
+    public Page<ThirdPartyAccountVO> list(ThirdPartyAccountListParam param) {
+        return null;
+    }
+
+    @Override
+    public List<IdNameVO<Long>> getPushAccountList(Long accountId, String name) {
+        return null;
+    }
+
+    @Override
+    public ThirdPartyAccountConfigVO getAccountConfig(ThirdPartyConfigGetParam param) {
+        return null;
+    }
+
+    @Override
+    public void saveAccountConfig(ThirdPartyAccountConfigParam param) {
+
+    }
+
+    @Override
+    public void logout(ThirdPartyAccountLogOutParam param) {
+
+    }
+
+
+}

+ 51 - 0
api-module/src/main/java/com/tzld/piaoquan/api/service/wecom/thirdparty/impl/WeComThirdPartyRoomServiceImpl.java

@@ -0,0 +1,51 @@
+package com.tzld.piaoquan.api.service.wecom.thirdparty.impl;
+
+import com.tzld.piaoquan.api.component.WeComThirdPartyApiClient;
+import com.tzld.piaoquan.api.model.param.wecom.thirdpart.ThirdPartyConfigGetParam;
+import com.tzld.piaoquan.api.model.param.wecom.thirdpart.ThirdPartyRoomConfigParam;
+import com.tzld.piaoquan.api.model.param.wecom.thirdpart.ThirdPartyRoomListParam;
+import com.tzld.piaoquan.api.model.vo.IdNameVO;
+import com.tzld.piaoquan.api.model.vo.wecom.thirdpart.ThirdPartyRoomConfigVO;
+import com.tzld.piaoquan.api.model.vo.wecom.thirdpart.ThirdPartyRoomVO;
+import com.tzld.piaoquan.api.service.wecom.thirdparty.WeComThirdPartyRoomService;
+import com.tzld.piaoquan.api.service.wecom.thirdparty.WeComThirdPartyService;
+import com.tzld.piaoquan.growth.common.utils.RedisUtils;
+import com.tzld.piaoquan.growth.common.utils.page.Page;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Slf4j
+@Service
+public class WeComThirdPartyRoomServiceImpl implements WeComThirdPartyRoomService {
+
+    @Autowired
+    private WeComThirdPartyApiClient apiClient;
+    @Autowired
+    private WeComThirdPartyService weComThirdPartyService;
+
+    @Autowired
+    private RedisUtils redisUtils;
+
+    @Override
+    public Page<ThirdPartyRoomVO> list(ThirdPartyRoomListParam param) {
+        return null;
+    }
+
+    @Override
+    public List<IdNameVO<Long>> getPushAccountList(Long roomId, String name) {
+        return null;
+    }
+
+    @Override
+    public ThirdPartyRoomConfigVO getRoomConfig(ThirdPartyConfigGetParam param) {
+        return null;
+    }
+
+    @Override
+    public void saveRoomConfig(ThirdPartyRoomConfigParam param) {
+
+    }
+}

+ 3 - 2
api-module/src/main/java/com/tzld/piaoquan/api/service/wecom/thirdparty/impl/WeComThirdPartyServiceImpl.java

@@ -5,6 +5,7 @@ import com.alibaba.fastjson.TypeReference;
 import com.stuuudy.commons.external.filestorage.enums.EnumFileType;
 import com.stuuudy.commons.external.filestorage.enums.EnumPublicBuckets;
 import com.tzld.piaoquan.api.common.enums.ExceptionEnum;
+import com.tzld.piaoquan.api.common.enums.wecom.ThirdPartWeComStaffStatusEnum;
 import com.tzld.piaoquan.api.common.exception.CommonException;
 import com.tzld.piaoquan.api.component.WeComThirdPartyApiClient;
 import com.tzld.piaoquan.api.dao.mapper.wecom.thirdpart.ThirdPartWeComCorpMapper;
@@ -163,7 +164,7 @@ public class WeComThirdPartyServiceImpl implements WeComThirdPartyService {
             existStaff.setMobile(userObject.getMobile());
             existStaff.setAvatar(userObject.getAvatar());
             existStaff.setThirdUuid(uuid);
-            existStaff.setStatus(0);
+            existStaff.setStatus(ThirdPartWeComStaffStatusEnum.NORMAL.getVal());
             existStaff.setUpdateTime(new Date());
             thirdPartWeComStaffMapper.updateByPrimaryKeySelective(existStaff);
         }
@@ -337,7 +338,7 @@ public class WeComThirdPartyServiceImpl implements WeComThirdPartyService {
     @Override
     public List<ThirdPartWeComStaff> getActiveStaffList() {
         ThirdPartWeComStaffExample example = new ThirdPartWeComStaffExample();
-        example.createCriteria().andStatusEqualTo(0);
+        example.createCriteria().andStatusEqualTo(ThirdPartWeComStaffStatusEnum.NORMAL.getVal());
         return thirdPartWeComStaffMapper.selectByExample(example);
     }
 

+ 294 - 0
api-module/src/main/resources/mapper/wecom/thirdpart/ThirdPartWeComRoomConfigMapper.xml

@@ -0,0 +1,294 @@
+<?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="com.tzld.piaoquan.api.dao.mapper.wecom.thirdpart.ThirdPartWeComRoomConfigMapper">
+  <resultMap id="BaseResultMap" type="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfig">
+    <id column="id" jdbcType="VARCHAR" property="id" />
+    <result column="room_id" jdbcType="BIGINT" property="roomId" />
+    <result column="account_config_id" jdbcType="INTEGER" property="accountConfigId" />
+    <result column="put_scene" jdbcType="VARCHAR" property="putScene" />
+    <result column="channel" jdbcType="VARCHAR" property="channel" />
+    <result column="primary_third_staff_id" jdbcType="BIGINT" property="primaryThirdStaffId" />
+    <result column="second_third_staff_id" jdbcType="BIGINT" property="secondThirdStaffId" />
+    <result column="status" jdbcType="INTEGER" property="status" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List">
+    id, room_id, account_config_id, put_scene, channel, primary_third_staff_id, second_third_staff_id, 
+    `status`, create_time, update_time
+  </sql>
+  <select id="selectByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigExample" resultMap="BaseResultMap">
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from third_part_we_com_room_config
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+    <if test="page != null">
+      limit #{page.offset} , #{page.pageSize}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
+    select 
+    <include refid="Base_Column_List" />
+    from third_part_we_com_room_config
+    where id = #{id,jdbcType=VARCHAR}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
+    delete from third_part_we_com_room_config
+    where id = #{id,jdbcType=VARCHAR}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigExample">
+    delete from third_part_we_com_room_config
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfig">
+    insert into third_part_we_com_room_config (id, room_id, account_config_id, 
+      put_scene, channel, primary_third_staff_id, 
+      second_third_staff_id, `status`, create_time, 
+      update_time)
+    values (#{id,jdbcType=VARCHAR}, #{roomId,jdbcType=BIGINT}, #{accountConfigId,jdbcType=INTEGER}, 
+      #{putScene,jdbcType=VARCHAR}, #{channel,jdbcType=VARCHAR}, #{primaryThirdStaffId,jdbcType=BIGINT}, 
+      #{secondThirdStaffId,jdbcType=BIGINT}, #{status,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, 
+      #{updateTime,jdbcType=TIMESTAMP})
+  </insert>
+  <insert id="insertSelective" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfig">
+    insert into third_part_we_com_room_config
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        id,
+      </if>
+      <if test="roomId != null">
+        room_id,
+      </if>
+      <if test="accountConfigId != null">
+        account_config_id,
+      </if>
+      <if test="putScene != null">
+        put_scene,
+      </if>
+      <if test="channel != null">
+        channel,
+      </if>
+      <if test="primaryThirdStaffId != null">
+        primary_third_staff_id,
+      </if>
+      <if test="secondThirdStaffId != null">
+        second_third_staff_id,
+      </if>
+      <if test="status != null">
+        `status`,
+      </if>
+      <if test="createTime != null">
+        create_time,
+      </if>
+      <if test="updateTime != null">
+        update_time,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        #{id,jdbcType=VARCHAR},
+      </if>
+      <if test="roomId != null">
+        #{roomId,jdbcType=BIGINT},
+      </if>
+      <if test="accountConfigId != null">
+        #{accountConfigId,jdbcType=INTEGER},
+      </if>
+      <if test="putScene != null">
+        #{putScene,jdbcType=VARCHAR},
+      </if>
+      <if test="channel != null">
+        #{channel,jdbcType=VARCHAR},
+      </if>
+      <if test="primaryThirdStaffId != null">
+        #{primaryThirdStaffId,jdbcType=BIGINT},
+      </if>
+      <if test="secondThirdStaffId != null">
+        #{secondThirdStaffId,jdbcType=BIGINT},
+      </if>
+      <if test="status != null">
+        #{status,jdbcType=INTEGER},
+      </if>
+      <if test="createTime != null">
+        #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateTime != null">
+        #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigExample" resultType="java.lang.Long">
+    select count(*) from third_part_we_com_room_config
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map">
+    update third_part_we_com_room_config
+    <set>
+      <if test="record.id != null">
+        id = #{record.id,jdbcType=VARCHAR},
+      </if>
+      <if test="record.roomId != null">
+        room_id = #{record.roomId,jdbcType=BIGINT},
+      </if>
+      <if test="record.accountConfigId != null">
+        account_config_id = #{record.accountConfigId,jdbcType=INTEGER},
+      </if>
+      <if test="record.putScene != null">
+        put_scene = #{record.putScene,jdbcType=VARCHAR},
+      </if>
+      <if test="record.channel != null">
+        channel = #{record.channel,jdbcType=VARCHAR},
+      </if>
+      <if test="record.primaryThirdStaffId != null">
+        primary_third_staff_id = #{record.primaryThirdStaffId,jdbcType=BIGINT},
+      </if>
+      <if test="record.secondThirdStaffId != null">
+        second_third_staff_id = #{record.secondThirdStaffId,jdbcType=BIGINT},
+      </if>
+      <if test="record.status != null">
+        `status` = #{record.status,jdbcType=INTEGER},
+      </if>
+      <if test="record.createTime != null">
+        create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.updateTime != null">
+        update_time = #{record.updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </set>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map">
+    update third_part_we_com_room_config
+    set id = #{record.id,jdbcType=VARCHAR},
+      room_id = #{record.roomId,jdbcType=BIGINT},
+      account_config_id = #{record.accountConfigId,jdbcType=INTEGER},
+      put_scene = #{record.putScene,jdbcType=VARCHAR},
+      channel = #{record.channel,jdbcType=VARCHAR},
+      primary_third_staff_id = #{record.primaryThirdStaffId,jdbcType=BIGINT},
+      second_third_staff_id = #{record.secondThirdStaffId,jdbcType=BIGINT},
+      `status` = #{record.status,jdbcType=INTEGER},
+      create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      update_time = #{record.updateTime,jdbcType=TIMESTAMP}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfig">
+    update third_part_we_com_room_config
+    <set>
+      <if test="roomId != null">
+        room_id = #{roomId,jdbcType=BIGINT},
+      </if>
+      <if test="accountConfigId != null">
+        account_config_id = #{accountConfigId,jdbcType=INTEGER},
+      </if>
+      <if test="putScene != null">
+        put_scene = #{putScene,jdbcType=VARCHAR},
+      </if>
+      <if test="channel != null">
+        channel = #{channel,jdbcType=VARCHAR},
+      </if>
+      <if test="primaryThirdStaffId != null">
+        primary_third_staff_id = #{primaryThirdStaffId,jdbcType=BIGINT},
+      </if>
+      <if test="secondThirdStaffId != null">
+        second_third_staff_id = #{secondThirdStaffId,jdbcType=BIGINT},
+      </if>
+      <if test="status != null">
+        `status` = #{status,jdbcType=INTEGER},
+      </if>
+      <if test="createTime != null">
+        create_time = #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateTime != null">
+        update_time = #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </set>
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfig">
+    update third_part_we_com_room_config
+    set room_id = #{roomId,jdbcType=BIGINT},
+      account_config_id = #{accountConfigId,jdbcType=INTEGER},
+      put_scene = #{putScene,jdbcType=VARCHAR},
+      channel = #{channel,jdbcType=VARCHAR},
+      primary_third_staff_id = #{primaryThirdStaffId,jdbcType=BIGINT},
+      second_third_staff_id = #{secondThirdStaffId,jdbcType=BIGINT},
+      `status` = #{status,jdbcType=INTEGER},
+      create_time = #{createTime,jdbcType=TIMESTAMP},
+      update_time = #{updateTime,jdbcType=TIMESTAMP}
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+</mapper>

+ 278 - 0
api-module/src/main/resources/mapper/wecom/thirdpart/ThirdPartWeComRoomConfigTaskContentMapper.xml

@@ -0,0 +1,278 @@
+<?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="com.tzld.piaoquan.api.dao.mapper.wecom.thirdpart.ThirdPartWeComRoomConfigTaskContentMapper">
+  <resultMap id="BaseResultMap" type="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTaskContent">
+    <id column="id" jdbcType="VARCHAR" property="id" />
+    <result column="task_id" jdbcType="VARCHAR" property="taskId" />
+    <result column="type" jdbcType="INTEGER" property="type" />
+    <result column="content" jdbcType="VARCHAR" property="content" />
+    <result column="source" jdbcType="INTEGER" property="source" />
+    <result column="source_content" jdbcType="VARCHAR" property="sourceContent" />
+    <result column="seq" jdbcType="INTEGER" property="seq" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List">
+    id, task_id, `type`, content, `source`, source_content, seq, create_time, update_time
+  </sql>
+  <select id="selectByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTaskContentExample" resultMap="BaseResultMap">
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from third_part_we_com_room_config_task_content
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+    <if test="page != null">
+      limit #{page.offset} , #{page.pageSize}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
+    select 
+    <include refid="Base_Column_List" />
+    from third_part_we_com_room_config_task_content
+    where id = #{id,jdbcType=VARCHAR}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
+    delete from third_part_we_com_room_config_task_content
+    where id = #{id,jdbcType=VARCHAR}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTaskContentExample">
+    delete from third_part_we_com_room_config_task_content
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTaskContent">
+    insert into third_part_we_com_room_config_task_content (id, task_id, `type`, 
+      content, `source`, source_content, 
+      seq, create_time, update_time
+      )
+    values (#{id,jdbcType=VARCHAR}, #{taskId,jdbcType=VARCHAR}, #{type,jdbcType=INTEGER}, 
+      #{content,jdbcType=VARCHAR}, #{source,jdbcType=INTEGER}, #{sourceContent,jdbcType=VARCHAR}, 
+      #{seq,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP}
+      )
+  </insert>
+  <insert id="insertSelective" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTaskContent">
+    insert into third_part_we_com_room_config_task_content
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        id,
+      </if>
+      <if test="taskId != null">
+        task_id,
+      </if>
+      <if test="type != null">
+        `type`,
+      </if>
+      <if test="content != null">
+        content,
+      </if>
+      <if test="source != null">
+        `source`,
+      </if>
+      <if test="sourceContent != null">
+        source_content,
+      </if>
+      <if test="seq != null">
+        seq,
+      </if>
+      <if test="createTime != null">
+        create_time,
+      </if>
+      <if test="updateTime != null">
+        update_time,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        #{id,jdbcType=VARCHAR},
+      </if>
+      <if test="taskId != null">
+        #{taskId,jdbcType=VARCHAR},
+      </if>
+      <if test="type != null">
+        #{type,jdbcType=INTEGER},
+      </if>
+      <if test="content != null">
+        #{content,jdbcType=VARCHAR},
+      </if>
+      <if test="source != null">
+        #{source,jdbcType=INTEGER},
+      </if>
+      <if test="sourceContent != null">
+        #{sourceContent,jdbcType=VARCHAR},
+      </if>
+      <if test="seq != null">
+        #{seq,jdbcType=INTEGER},
+      </if>
+      <if test="createTime != null">
+        #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateTime != null">
+        #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTaskContentExample" resultType="java.lang.Long">
+    select count(*) from third_part_we_com_room_config_task_content
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map">
+    update third_part_we_com_room_config_task_content
+    <set>
+      <if test="record.id != null">
+        id = #{record.id,jdbcType=VARCHAR},
+      </if>
+      <if test="record.taskId != null">
+        task_id = #{record.taskId,jdbcType=VARCHAR},
+      </if>
+      <if test="record.type != null">
+        `type` = #{record.type,jdbcType=INTEGER},
+      </if>
+      <if test="record.content != null">
+        content = #{record.content,jdbcType=VARCHAR},
+      </if>
+      <if test="record.source != null">
+        `source` = #{record.source,jdbcType=INTEGER},
+      </if>
+      <if test="record.sourceContent != null">
+        source_content = #{record.sourceContent,jdbcType=VARCHAR},
+      </if>
+      <if test="record.seq != null">
+        seq = #{record.seq,jdbcType=INTEGER},
+      </if>
+      <if test="record.createTime != null">
+        create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.updateTime != null">
+        update_time = #{record.updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </set>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map">
+    update third_part_we_com_room_config_task_content
+    set id = #{record.id,jdbcType=VARCHAR},
+      task_id = #{record.taskId,jdbcType=VARCHAR},
+      `type` = #{record.type,jdbcType=INTEGER},
+      content = #{record.content,jdbcType=VARCHAR},
+      `source` = #{record.source,jdbcType=INTEGER},
+      source_content = #{record.sourceContent,jdbcType=VARCHAR},
+      seq = #{record.seq,jdbcType=INTEGER},
+      create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      update_time = #{record.updateTime,jdbcType=TIMESTAMP}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTaskContent">
+    update third_part_we_com_room_config_task_content
+    <set>
+      <if test="taskId != null">
+        task_id = #{taskId,jdbcType=VARCHAR},
+      </if>
+      <if test="type != null">
+        `type` = #{type,jdbcType=INTEGER},
+      </if>
+      <if test="content != null">
+        content = #{content,jdbcType=VARCHAR},
+      </if>
+      <if test="source != null">
+        `source` = #{source,jdbcType=INTEGER},
+      </if>
+      <if test="sourceContent != null">
+        source_content = #{sourceContent,jdbcType=VARCHAR},
+      </if>
+      <if test="seq != null">
+        seq = #{seq,jdbcType=INTEGER},
+      </if>
+      <if test="createTime != null">
+        create_time = #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateTime != null">
+        update_time = #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </set>
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTaskContent">
+    update third_part_we_com_room_config_task_content
+    set task_id = #{taskId,jdbcType=VARCHAR},
+      `type` = #{type,jdbcType=INTEGER},
+      content = #{content,jdbcType=VARCHAR},
+      `source` = #{source,jdbcType=INTEGER},
+      source_content = #{sourceContent,jdbcType=VARCHAR},
+      seq = #{seq,jdbcType=INTEGER},
+      create_time = #{createTime,jdbcType=TIMESTAMP},
+      update_time = #{updateTime,jdbcType=TIMESTAMP}
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+</mapper>

+ 261 - 0
api-module/src/main/resources/mapper/wecom/thirdpart/ThirdPartWeComRoomConfigTaskMapper.xml

@@ -0,0 +1,261 @@
+<?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="com.tzld.piaoquan.api.dao.mapper.wecom.thirdpart.ThirdPartWeComRoomConfigTaskMapper">
+  <resultMap id="BaseResultMap" type="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTask">
+    <id column="id" jdbcType="VARCHAR" property="id" />
+    <result column="config_id" jdbcType="VARCHAR" property="configId" />
+    <result column="switch_flag" jdbcType="INTEGER" property="switchFlag" />
+    <result column="send_time" jdbcType="VARCHAR" property="sendTime" />
+    <result column="random_min" jdbcType="INTEGER" property="randomMin" />
+    <result column="seq" jdbcType="INTEGER" property="seq" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List">
+    id, config_id, switch_flag, send_time, random_min, seq, create_time, update_time
+  </sql>
+  <select id="selectByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTaskExample" resultMap="BaseResultMap">
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from third_part_we_com_room_config_task
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+    <if test="page != null">
+      limit #{page.offset} , #{page.pageSize}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
+    select 
+    <include refid="Base_Column_List" />
+    from third_part_we_com_room_config_task
+    where id = #{id,jdbcType=VARCHAR}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
+    delete from third_part_we_com_room_config_task
+    where id = #{id,jdbcType=VARCHAR}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTaskExample">
+    delete from third_part_we_com_room_config_task
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTask">
+    insert into third_part_we_com_room_config_task (id, config_id, switch_flag, 
+      send_time, random_min, seq, 
+      create_time, update_time)
+    values (#{id,jdbcType=VARCHAR}, #{configId,jdbcType=VARCHAR}, #{switchFlag,jdbcType=INTEGER}, 
+      #{sendTime,jdbcType=VARCHAR}, #{randomMin,jdbcType=INTEGER}, #{seq,jdbcType=INTEGER}, 
+      #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP})
+  </insert>
+  <insert id="insertSelective" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTask">
+    insert into third_part_we_com_room_config_task
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        id,
+      </if>
+      <if test="configId != null">
+        config_id,
+      </if>
+      <if test="switchFlag != null">
+        switch_flag,
+      </if>
+      <if test="sendTime != null">
+        send_time,
+      </if>
+      <if test="randomMin != null">
+        random_min,
+      </if>
+      <if test="seq != null">
+        seq,
+      </if>
+      <if test="createTime != null">
+        create_time,
+      </if>
+      <if test="updateTime != null">
+        update_time,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        #{id,jdbcType=VARCHAR},
+      </if>
+      <if test="configId != null">
+        #{configId,jdbcType=VARCHAR},
+      </if>
+      <if test="switchFlag != null">
+        #{switchFlag,jdbcType=INTEGER},
+      </if>
+      <if test="sendTime != null">
+        #{sendTime,jdbcType=VARCHAR},
+      </if>
+      <if test="randomMin != null">
+        #{randomMin,jdbcType=INTEGER},
+      </if>
+      <if test="seq != null">
+        #{seq,jdbcType=INTEGER},
+      </if>
+      <if test="createTime != null">
+        #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateTime != null">
+        #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTaskExample" resultType="java.lang.Long">
+    select count(*) from third_part_we_com_room_config_task
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map">
+    update third_part_we_com_room_config_task
+    <set>
+      <if test="record.id != null">
+        id = #{record.id,jdbcType=VARCHAR},
+      </if>
+      <if test="record.configId != null">
+        config_id = #{record.configId,jdbcType=VARCHAR},
+      </if>
+      <if test="record.switchFlag != null">
+        switch_flag = #{record.switchFlag,jdbcType=INTEGER},
+      </if>
+      <if test="record.sendTime != null">
+        send_time = #{record.sendTime,jdbcType=VARCHAR},
+      </if>
+      <if test="record.randomMin != null">
+        random_min = #{record.randomMin,jdbcType=INTEGER},
+      </if>
+      <if test="record.seq != null">
+        seq = #{record.seq,jdbcType=INTEGER},
+      </if>
+      <if test="record.createTime != null">
+        create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.updateTime != null">
+        update_time = #{record.updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </set>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map">
+    update third_part_we_com_room_config_task
+    set id = #{record.id,jdbcType=VARCHAR},
+      config_id = #{record.configId,jdbcType=VARCHAR},
+      switch_flag = #{record.switchFlag,jdbcType=INTEGER},
+      send_time = #{record.sendTime,jdbcType=VARCHAR},
+      random_min = #{record.randomMin,jdbcType=INTEGER},
+      seq = #{record.seq,jdbcType=INTEGER},
+      create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      update_time = #{record.updateTime,jdbcType=TIMESTAMP}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTask">
+    update third_part_we_com_room_config_task
+    <set>
+      <if test="configId != null">
+        config_id = #{configId,jdbcType=VARCHAR},
+      </if>
+      <if test="switchFlag != null">
+        switch_flag = #{switchFlag,jdbcType=INTEGER},
+      </if>
+      <if test="sendTime != null">
+        send_time = #{sendTime,jdbcType=VARCHAR},
+      </if>
+      <if test="randomMin != null">
+        random_min = #{randomMin,jdbcType=INTEGER},
+      </if>
+      <if test="seq != null">
+        seq = #{seq,jdbcType=INTEGER},
+      </if>
+      <if test="createTime != null">
+        create_time = #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateTime != null">
+        update_time = #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </set>
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComRoomConfigTask">
+    update third_part_we_com_room_config_task
+    set config_id = #{configId,jdbcType=VARCHAR},
+      switch_flag = #{switchFlag,jdbcType=INTEGER},
+      send_time = #{sendTime,jdbcType=VARCHAR},
+      random_min = #{randomMin,jdbcType=INTEGER},
+      seq = #{seq,jdbcType=INTEGER},
+      create_time = #{createTime,jdbcType=TIMESTAMP},
+      update_time = #{updateTime,jdbcType=TIMESTAMP}
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+</mapper>

+ 311 - 0
api-module/src/main/resources/mapper/wecom/thirdpart/ThirdPartWeComStaffConfigMapper.xml

@@ -0,0 +1,311 @@
+<?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="com.tzld.piaoquan.api.dao.mapper.wecom.thirdpart.ThirdPartWeComStaffConfigMapper">
+  <resultMap id="BaseResultMap" type="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfig">
+    <id column="id" jdbcType="VARCHAR" property="id" />
+    <result column="staff_id" jdbcType="BIGINT" property="staffId" />
+    <result column="put_scene" jdbcType="VARCHAR" property="putScene" />
+    <result column="channel" jdbcType="VARCHAR" property="channel" />
+    <result column="switch_flag" jdbcType="INTEGER" property="switchFlag" />
+    <result column="open_room_send_switch_num" jdbcType="INTEGER" property="openRoomSendSwitchNum" />
+    <result column="primary_third_staff_id" jdbcType="BIGINT" property="primaryThirdStaffId" />
+    <result column="second_third_staff_id" jdbcType="BIGINT" property="secondThirdStaffId" />
+    <result column="status" jdbcType="INTEGER" property="status" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List">
+    id, staff_id, put_scene, channel, switch_flag, open_room_send_switch_num, primary_third_staff_id, 
+    second_third_staff_id, `status`, create_time, update_time
+  </sql>
+  <select id="selectByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigExample" resultMap="BaseResultMap">
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from third_part_we_com_staff_config
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+    <if test="page != null">
+      limit #{page.offset} , #{page.pageSize}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
+    select 
+    <include refid="Base_Column_List" />
+    from third_part_we_com_staff_config
+    where id = #{id,jdbcType=VARCHAR}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
+    delete from third_part_we_com_staff_config
+    where id = #{id,jdbcType=VARCHAR}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigExample">
+    delete from third_part_we_com_staff_config
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfig">
+    insert into third_part_we_com_staff_config (id, staff_id, put_scene, 
+      channel, switch_flag, open_room_send_switch_num, 
+      primary_third_staff_id, second_third_staff_id, 
+      `status`, create_time, update_time
+      )
+    values (#{id,jdbcType=VARCHAR}, #{staffId,jdbcType=BIGINT}, #{putScene,jdbcType=VARCHAR}, 
+      #{channel,jdbcType=VARCHAR}, #{switchFlag,jdbcType=INTEGER}, #{openRoomSendSwitchNum,jdbcType=INTEGER}, 
+      #{primaryThirdStaffId,jdbcType=BIGINT}, #{secondThirdStaffId,jdbcType=BIGINT}, 
+      #{status,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP}
+      )
+  </insert>
+  <insert id="insertSelective" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfig">
+    insert into third_part_we_com_staff_config
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        id,
+      </if>
+      <if test="staffId != null">
+        staff_id,
+      </if>
+      <if test="putScene != null">
+        put_scene,
+      </if>
+      <if test="channel != null">
+        channel,
+      </if>
+      <if test="switchFlag != null">
+        switch_flag,
+      </if>
+      <if test="openRoomSendSwitchNum != null">
+        open_room_send_switch_num,
+      </if>
+      <if test="primaryThirdStaffId != null">
+        primary_third_staff_id,
+      </if>
+      <if test="secondThirdStaffId != null">
+        second_third_staff_id,
+      </if>
+      <if test="status != null">
+        `status`,
+      </if>
+      <if test="createTime != null">
+        create_time,
+      </if>
+      <if test="updateTime != null">
+        update_time,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        #{id,jdbcType=VARCHAR},
+      </if>
+      <if test="staffId != null">
+        #{staffId,jdbcType=BIGINT},
+      </if>
+      <if test="putScene != null">
+        #{putScene,jdbcType=VARCHAR},
+      </if>
+      <if test="channel != null">
+        #{channel,jdbcType=VARCHAR},
+      </if>
+      <if test="switchFlag != null">
+        #{switchFlag,jdbcType=INTEGER},
+      </if>
+      <if test="openRoomSendSwitchNum != null">
+        #{openRoomSendSwitchNum,jdbcType=INTEGER},
+      </if>
+      <if test="primaryThirdStaffId != null">
+        #{primaryThirdStaffId,jdbcType=BIGINT},
+      </if>
+      <if test="secondThirdStaffId != null">
+        #{secondThirdStaffId,jdbcType=BIGINT},
+      </if>
+      <if test="status != null">
+        #{status,jdbcType=INTEGER},
+      </if>
+      <if test="createTime != null">
+        #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateTime != null">
+        #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigExample" resultType="java.lang.Long">
+    select count(*) from third_part_we_com_staff_config
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map">
+    update third_part_we_com_staff_config
+    <set>
+      <if test="record.id != null">
+        id = #{record.id,jdbcType=VARCHAR},
+      </if>
+      <if test="record.staffId != null">
+        staff_id = #{record.staffId,jdbcType=BIGINT},
+      </if>
+      <if test="record.putScene != null">
+        put_scene = #{record.putScene,jdbcType=VARCHAR},
+      </if>
+      <if test="record.channel != null">
+        channel = #{record.channel,jdbcType=VARCHAR},
+      </if>
+      <if test="record.switchFlag != null">
+        switch_flag = #{record.switchFlag,jdbcType=INTEGER},
+      </if>
+      <if test="record.openRoomSendSwitchNum != null">
+        open_room_send_switch_num = #{record.openRoomSendSwitchNum,jdbcType=INTEGER},
+      </if>
+      <if test="record.primaryThirdStaffId != null">
+        primary_third_staff_id = #{record.primaryThirdStaffId,jdbcType=BIGINT},
+      </if>
+      <if test="record.secondThirdStaffId != null">
+        second_third_staff_id = #{record.secondThirdStaffId,jdbcType=BIGINT},
+      </if>
+      <if test="record.status != null">
+        `status` = #{record.status,jdbcType=INTEGER},
+      </if>
+      <if test="record.createTime != null">
+        create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.updateTime != null">
+        update_time = #{record.updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </set>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map">
+    update third_part_we_com_staff_config
+    set id = #{record.id,jdbcType=VARCHAR},
+      staff_id = #{record.staffId,jdbcType=BIGINT},
+      put_scene = #{record.putScene,jdbcType=VARCHAR},
+      channel = #{record.channel,jdbcType=VARCHAR},
+      switch_flag = #{record.switchFlag,jdbcType=INTEGER},
+      open_room_send_switch_num = #{record.openRoomSendSwitchNum,jdbcType=INTEGER},
+      primary_third_staff_id = #{record.primaryThirdStaffId,jdbcType=BIGINT},
+      second_third_staff_id = #{record.secondThirdStaffId,jdbcType=BIGINT},
+      `status` = #{record.status,jdbcType=INTEGER},
+      create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      update_time = #{record.updateTime,jdbcType=TIMESTAMP}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfig">
+    update third_part_we_com_staff_config
+    <set>
+      <if test="staffId != null">
+        staff_id = #{staffId,jdbcType=BIGINT},
+      </if>
+      <if test="putScene != null">
+        put_scene = #{putScene,jdbcType=VARCHAR},
+      </if>
+      <if test="channel != null">
+        channel = #{channel,jdbcType=VARCHAR},
+      </if>
+      <if test="switchFlag != null">
+        switch_flag = #{switchFlag,jdbcType=INTEGER},
+      </if>
+      <if test="openRoomSendSwitchNum != null">
+        open_room_send_switch_num = #{openRoomSendSwitchNum,jdbcType=INTEGER},
+      </if>
+      <if test="primaryThirdStaffId != null">
+        primary_third_staff_id = #{primaryThirdStaffId,jdbcType=BIGINT},
+      </if>
+      <if test="secondThirdStaffId != null">
+        second_third_staff_id = #{secondThirdStaffId,jdbcType=BIGINT},
+      </if>
+      <if test="status != null">
+        `status` = #{status,jdbcType=INTEGER},
+      </if>
+      <if test="createTime != null">
+        create_time = #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateTime != null">
+        update_time = #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </set>
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfig">
+    update third_part_we_com_staff_config
+    set staff_id = #{staffId,jdbcType=BIGINT},
+      put_scene = #{putScene,jdbcType=VARCHAR},
+      channel = #{channel,jdbcType=VARCHAR},
+      switch_flag = #{switchFlag,jdbcType=INTEGER},
+      open_room_send_switch_num = #{openRoomSendSwitchNum,jdbcType=INTEGER},
+      primary_third_staff_id = #{primaryThirdStaffId,jdbcType=BIGINT},
+      second_third_staff_id = #{secondThirdStaffId,jdbcType=BIGINT},
+      `status` = #{status,jdbcType=INTEGER},
+      create_time = #{createTime,jdbcType=TIMESTAMP},
+      update_time = #{updateTime,jdbcType=TIMESTAMP}
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+</mapper>

+ 278 - 0
api-module/src/main/resources/mapper/wecom/thirdpart/ThirdPartWeComStaffConfigTaskContentMapper.xml

@@ -0,0 +1,278 @@
+<?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="com.tzld.piaoquan.api.dao.mapper.wecom.thirdpart.ThirdPartWeComStaffConfigTaskContentMapper">
+  <resultMap id="BaseResultMap" type="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTaskContent">
+    <id column="id" jdbcType="VARCHAR" property="id" />
+    <result column="task_id" jdbcType="VARCHAR" property="taskId" />
+    <result column="type" jdbcType="INTEGER" property="type" />
+    <result column="content" jdbcType="VARCHAR" property="content" />
+    <result column="source" jdbcType="INTEGER" property="source" />
+    <result column="source_content" jdbcType="VARCHAR" property="sourceContent" />
+    <result column="seq" jdbcType="INTEGER" property="seq" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List">
+    id, task_id, `type`, content, `source`, source_content, seq, create_time, update_time
+  </sql>
+  <select id="selectByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTaskContentExample" resultMap="BaseResultMap">
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from third_part_we_com_staff_config_task_content
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+    <if test="page != null">
+      limit #{page.offset} , #{page.pageSize}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
+    select 
+    <include refid="Base_Column_List" />
+    from third_part_we_com_staff_config_task_content
+    where id = #{id,jdbcType=VARCHAR}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
+    delete from third_part_we_com_staff_config_task_content
+    where id = #{id,jdbcType=VARCHAR}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTaskContentExample">
+    delete from third_part_we_com_staff_config_task_content
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTaskContent">
+    insert into third_part_we_com_staff_config_task_content (id, task_id, `type`, 
+      content, `source`, source_content, 
+      seq, create_time, update_time
+      )
+    values (#{id,jdbcType=VARCHAR}, #{taskId,jdbcType=VARCHAR}, #{type,jdbcType=INTEGER}, 
+      #{content,jdbcType=VARCHAR}, #{source,jdbcType=INTEGER}, #{sourceContent,jdbcType=VARCHAR}, 
+      #{seq,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP}
+      )
+  </insert>
+  <insert id="insertSelective" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTaskContent">
+    insert into third_part_we_com_staff_config_task_content
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        id,
+      </if>
+      <if test="taskId != null">
+        task_id,
+      </if>
+      <if test="type != null">
+        `type`,
+      </if>
+      <if test="content != null">
+        content,
+      </if>
+      <if test="source != null">
+        `source`,
+      </if>
+      <if test="sourceContent != null">
+        source_content,
+      </if>
+      <if test="seq != null">
+        seq,
+      </if>
+      <if test="createTime != null">
+        create_time,
+      </if>
+      <if test="updateTime != null">
+        update_time,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        #{id,jdbcType=VARCHAR},
+      </if>
+      <if test="taskId != null">
+        #{taskId,jdbcType=VARCHAR},
+      </if>
+      <if test="type != null">
+        #{type,jdbcType=INTEGER},
+      </if>
+      <if test="content != null">
+        #{content,jdbcType=VARCHAR},
+      </if>
+      <if test="source != null">
+        #{source,jdbcType=INTEGER},
+      </if>
+      <if test="sourceContent != null">
+        #{sourceContent,jdbcType=VARCHAR},
+      </if>
+      <if test="seq != null">
+        #{seq,jdbcType=INTEGER},
+      </if>
+      <if test="createTime != null">
+        #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateTime != null">
+        #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTaskContentExample" resultType="java.lang.Long">
+    select count(*) from third_part_we_com_staff_config_task_content
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map">
+    update third_part_we_com_staff_config_task_content
+    <set>
+      <if test="record.id != null">
+        id = #{record.id,jdbcType=VARCHAR},
+      </if>
+      <if test="record.taskId != null">
+        task_id = #{record.taskId,jdbcType=VARCHAR},
+      </if>
+      <if test="record.type != null">
+        `type` = #{record.type,jdbcType=INTEGER},
+      </if>
+      <if test="record.content != null">
+        content = #{record.content,jdbcType=VARCHAR},
+      </if>
+      <if test="record.source != null">
+        `source` = #{record.source,jdbcType=INTEGER},
+      </if>
+      <if test="record.sourceContent != null">
+        source_content = #{record.sourceContent,jdbcType=VARCHAR},
+      </if>
+      <if test="record.seq != null">
+        seq = #{record.seq,jdbcType=INTEGER},
+      </if>
+      <if test="record.createTime != null">
+        create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.updateTime != null">
+        update_time = #{record.updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </set>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map">
+    update third_part_we_com_staff_config_task_content
+    set id = #{record.id,jdbcType=VARCHAR},
+      task_id = #{record.taskId,jdbcType=VARCHAR},
+      `type` = #{record.type,jdbcType=INTEGER},
+      content = #{record.content,jdbcType=VARCHAR},
+      `source` = #{record.source,jdbcType=INTEGER},
+      source_content = #{record.sourceContent,jdbcType=VARCHAR},
+      seq = #{record.seq,jdbcType=INTEGER},
+      create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      update_time = #{record.updateTime,jdbcType=TIMESTAMP}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTaskContent">
+    update third_part_we_com_staff_config_task_content
+    <set>
+      <if test="taskId != null">
+        task_id = #{taskId,jdbcType=VARCHAR},
+      </if>
+      <if test="type != null">
+        `type` = #{type,jdbcType=INTEGER},
+      </if>
+      <if test="content != null">
+        content = #{content,jdbcType=VARCHAR},
+      </if>
+      <if test="source != null">
+        `source` = #{source,jdbcType=INTEGER},
+      </if>
+      <if test="sourceContent != null">
+        source_content = #{sourceContent,jdbcType=VARCHAR},
+      </if>
+      <if test="seq != null">
+        seq = #{seq,jdbcType=INTEGER},
+      </if>
+      <if test="createTime != null">
+        create_time = #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateTime != null">
+        update_time = #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </set>
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTaskContent">
+    update third_part_we_com_staff_config_task_content
+    set task_id = #{taskId,jdbcType=VARCHAR},
+      `type` = #{type,jdbcType=INTEGER},
+      content = #{content,jdbcType=VARCHAR},
+      `source` = #{source,jdbcType=INTEGER},
+      source_content = #{sourceContent,jdbcType=VARCHAR},
+      seq = #{seq,jdbcType=INTEGER},
+      create_time = #{createTime,jdbcType=TIMESTAMP},
+      update_time = #{updateTime,jdbcType=TIMESTAMP}
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+</mapper>

+ 261 - 0
api-module/src/main/resources/mapper/wecom/thirdpart/ThirdPartWeComStaffConfigTaskMapper.xml

@@ -0,0 +1,261 @@
+<?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="com.tzld.piaoquan.api.dao.mapper.wecom.thirdpart.ThirdPartWeComStaffConfigTaskMapper">
+  <resultMap id="BaseResultMap" type="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTask">
+    <id column="id" jdbcType="VARCHAR" property="id" />
+    <result column="config_id" jdbcType="VARCHAR" property="configId" />
+    <result column="switch_flag" jdbcType="INTEGER" property="switchFlag" />
+    <result column="send_time" jdbcType="VARCHAR" property="sendTime" />
+    <result column="random_min" jdbcType="INTEGER" property="randomMin" />
+    <result column="seq" jdbcType="INTEGER" property="seq" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List">
+    id, config_id, switch_flag, send_time, random_min, seq, create_time, update_time
+  </sql>
+  <select id="selectByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTaskExample" resultMap="BaseResultMap">
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from third_part_we_com_staff_config_task
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+    <if test="page != null">
+      limit #{page.offset} , #{page.pageSize}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
+    select 
+    <include refid="Base_Column_List" />
+    from third_part_we_com_staff_config_task
+    where id = #{id,jdbcType=VARCHAR}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
+    delete from third_part_we_com_staff_config_task
+    where id = #{id,jdbcType=VARCHAR}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTaskExample">
+    delete from third_part_we_com_staff_config_task
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTask">
+    insert into third_part_we_com_staff_config_task (id, config_id, switch_flag, 
+      send_time, random_min, seq, 
+      create_time, update_time)
+    values (#{id,jdbcType=VARCHAR}, #{configId,jdbcType=VARCHAR}, #{switchFlag,jdbcType=INTEGER}, 
+      #{sendTime,jdbcType=VARCHAR}, #{randomMin,jdbcType=INTEGER}, #{seq,jdbcType=INTEGER}, 
+      #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP})
+  </insert>
+  <insert id="insertSelective" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTask">
+    insert into third_part_we_com_staff_config_task
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        id,
+      </if>
+      <if test="configId != null">
+        config_id,
+      </if>
+      <if test="switchFlag != null">
+        switch_flag,
+      </if>
+      <if test="sendTime != null">
+        send_time,
+      </if>
+      <if test="randomMin != null">
+        random_min,
+      </if>
+      <if test="seq != null">
+        seq,
+      </if>
+      <if test="createTime != null">
+        create_time,
+      </if>
+      <if test="updateTime != null">
+        update_time,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        #{id,jdbcType=VARCHAR},
+      </if>
+      <if test="configId != null">
+        #{configId,jdbcType=VARCHAR},
+      </if>
+      <if test="switchFlag != null">
+        #{switchFlag,jdbcType=INTEGER},
+      </if>
+      <if test="sendTime != null">
+        #{sendTime,jdbcType=VARCHAR},
+      </if>
+      <if test="randomMin != null">
+        #{randomMin,jdbcType=INTEGER},
+      </if>
+      <if test="seq != null">
+        #{seq,jdbcType=INTEGER},
+      </if>
+      <if test="createTime != null">
+        #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateTime != null">
+        #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTaskExample" resultType="java.lang.Long">
+    select count(*) from third_part_we_com_staff_config_task
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map">
+    update third_part_we_com_staff_config_task
+    <set>
+      <if test="record.id != null">
+        id = #{record.id,jdbcType=VARCHAR},
+      </if>
+      <if test="record.configId != null">
+        config_id = #{record.configId,jdbcType=VARCHAR},
+      </if>
+      <if test="record.switchFlag != null">
+        switch_flag = #{record.switchFlag,jdbcType=INTEGER},
+      </if>
+      <if test="record.sendTime != null">
+        send_time = #{record.sendTime,jdbcType=VARCHAR},
+      </if>
+      <if test="record.randomMin != null">
+        random_min = #{record.randomMin,jdbcType=INTEGER},
+      </if>
+      <if test="record.seq != null">
+        seq = #{record.seq,jdbcType=INTEGER},
+      </if>
+      <if test="record.createTime != null">
+        create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.updateTime != null">
+        update_time = #{record.updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </set>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map">
+    update third_part_we_com_staff_config_task
+    set id = #{record.id,jdbcType=VARCHAR},
+      config_id = #{record.configId,jdbcType=VARCHAR},
+      switch_flag = #{record.switchFlag,jdbcType=INTEGER},
+      send_time = #{record.sendTime,jdbcType=VARCHAR},
+      random_min = #{record.randomMin,jdbcType=INTEGER},
+      seq = #{record.seq,jdbcType=INTEGER},
+      create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      update_time = #{record.updateTime,jdbcType=TIMESTAMP}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTask">
+    update third_part_we_com_staff_config_task
+    <set>
+      <if test="configId != null">
+        config_id = #{configId,jdbcType=VARCHAR},
+      </if>
+      <if test="switchFlag != null">
+        switch_flag = #{switchFlag,jdbcType=INTEGER},
+      </if>
+      <if test="sendTime != null">
+        send_time = #{sendTime,jdbcType=VARCHAR},
+      </if>
+      <if test="randomMin != null">
+        random_min = #{randomMin,jdbcType=INTEGER},
+      </if>
+      <if test="seq != null">
+        seq = #{seq,jdbcType=INTEGER},
+      </if>
+      <if test="createTime != null">
+        create_time = #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateTime != null">
+        update_time = #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+    </set>
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.tzld.piaoquan.api.model.po.wecom.thirdpart.ThirdPartWeComStaffConfigTask">
+    update third_part_we_com_staff_config_task
+    set config_id = #{configId,jdbcType=VARCHAR},
+      switch_flag = #{switchFlag,jdbcType=INTEGER},
+      send_time = #{sendTime,jdbcType=VARCHAR},
+      random_min = #{randomMin,jdbcType=INTEGER},
+      seq = #{seq,jdbcType=INTEGER},
+      create_time = #{createTime,jdbcType=TIMESTAMP},
+      update_time = #{updateTime,jdbcType=TIMESTAMP}
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+</mapper>

+ 7 - 1
api-module/src/main/resources/mybatis-api-wecomThirdpart-generator-config.xml

@@ -53,9 +53,15 @@
 <!--        <table tableName="third_part_we_com_corp" domainObjectName="ThirdPartWeComCorp" alias=""/>-->
 <!--        <table tableName="third_part_we_com_room" domainObjectName="ThirdPartWeComRoom" alias=""/>-->
 <!--        <table tableName="third_part_we_com_room_user" domainObjectName="ThirdPartWeComRoomUser" alias=""/>-->
+        <table tableName="third_part_we_com_room_config" domainObjectName="ThirdPartWeComRoomConfig" alias=""/>
+        <table tableName="third_part_we_com_room_config_task" domainObjectName="ThirdPartWeComRoomConfigTask" alias=""/>
+        <table tableName="third_part_we_com_room_config_task_content" domainObjectName="ThirdPartWeComRoomConfigTaskContent" alias=""/>
 <!--        <table tableName="third_part_we_com_staff" domainObjectName="ThirdPartWeComStaff" alias=""/>-->
 <!--        <table tableName="third_part_we_com_staff_user" domainObjectName="ThirdPartWeComStaffUser" alias=""/>-->
-        <table tableName="third_part_we_com_msg" domainObjectName="ThirdPartWeComMsg" alias=""/>
+        <table tableName="third_part_we_com_staff_config" domainObjectName="ThirdPartWeComStaffConfig" alias=""/>
+        <table tableName="third_part_we_com_staff_config_task" domainObjectName="ThirdPartWeComStaffConfigTask" alias=""/>
+        <table tableName="third_part_we_com_staff_config_task_content" domainObjectName="ThirdPartWeComStaffConfigTaskContent" alias=""/>
+<!--        <table tableName="third_part_we_com_msg" domainObjectName="ThirdPartWeComMsg" alias=""/>-->
     </context>
 
 </generatorConfiguration>

+ 23 - 0
common-module/src/main/java/com/tzld/piaoquan/growth/common/utils/DistributedIdGenerator.java

@@ -0,0 +1,23 @@
+package com.tzld.piaoquan.growth.common.utils;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.Random;
+
+public abstract class DistributedIdGenerator {
+    /**
+     * 生成一个
+     *
+     * @return
+     */
+    public static String generate() {
+        StringBuilder builder = new StringBuilder();
+        builder.append(new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date()));
+        builder.append(new Random().nextInt(899999) + 100000);
+        return builder.toString();
+    }
+
+    public static void main(String[] args) {
+        System.out.println(generate());
+    }
+}