Commit 01d111ef by 徐高华

Merge branch 'feature/xgh/2502朋友圈' into 'master'

Feature/xgh/2502朋友圈

See merge request !2655
parents 3dbbffb9 eb5a4f53
package com.gic.haoban.manage.api.dto.moment;
import java.io.Serializable ;
import java.util.Date;
public class QwMomentPlanAttendDTO implements Serializable{
private static final long serialVersionUID = 85681326319600L;
/**id*/
private Long attendId;
/**计划id*/
private Long planId;
/**企微企业id*/
private String wxEnterpriseId;
/**企业id*/
private String enterpriseId;
/**staff*/
private String staffId;
private String staffName;
/**导购*/
private String clerkId;
/**导购code*/
private String clerkCode;
/**导购名称*/
private String clerkName;
/**创建时间*/
private java.util.Date createTime;
/**更新时间*/
private java.util.Date updateTime;
/**是否删除*/
private Integer deleteFlag;
/**评论数*/
private Integer commentCount;
/**点赞数*/
private Integer likeCount;
/**1待执行 2已执行*/
private Integer taskStatus;
/**任务执行时间*/
private java.util.Date sendTime;
/**企微朋友圈id*/
private String momentId;
/**企微获取数据时间*/
private java.util.Date qwDataTime;
/**门店id*/
private String storeId;
// 0待下发 1已下发
private Integer statusFlag ;
private String reason ;
public String getReason() {
return reason;
}
public void setReason(String reason) {
this.reason = reason;
}
public String getStaffName() {
return staffName;
}
public void setStaffName(String staffName) {
this.staffName = staffName;
}
public Integer getStatusFlag() {
return statusFlag;
}
public void setStatusFlag(Integer statusFlag) {
this.statusFlag = statusFlag;
}
public Long getAttendId() {
return attendId;
}
public void setAttendId(Long attendId) {
this.attendId = attendId;
}
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(String enterpriseId) {
this.enterpriseId = enterpriseId;
}
public String getStaffId() {
return staffId;
}
public void setStaffId(String staffId) {
this.staffId = staffId;
}
public String getClerkId() {
return clerkId;
}
public void setClerkId(String clerkId) {
this.clerkId = clerkId;
}
public String getClerkCode() {
return clerkCode;
}
public void setClerkCode(String clerkCode) {
this.clerkCode = clerkCode;
}
public String getClerkName() {
return clerkName;
}
public void setClerkName(String clerkName) {
this.clerkName = clerkName;
}
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;
}
public Integer getDeleteFlag() {
return deleteFlag;
}
public void setDeleteFlag(Integer deleteFlag) {
this.deleteFlag = deleteFlag;
}
public Integer getCommentCount() {
return commentCount;
}
public void setCommentCount(Integer commentCount) {
this.commentCount = commentCount;
}
public Integer getLikeCount() {
return likeCount;
}
public void setLikeCount(Integer likeCount) {
this.likeCount = likeCount;
}
public Integer getTaskStatus() {
return taskStatus;
}
public void setTaskStatus(Integer taskStatus) {
this.taskStatus = taskStatus;
}
public Date getSendTime() {
return sendTime;
}
public void setSendTime(Date sendTime) {
this.sendTime = sendTime;
}
public String getMomentId() {
return momentId;
}
public void setMomentId(String momentId) {
this.momentId = momentId;
}
public Date getQwDataTime() {
return qwDataTime;
}
public void setQwDataTime(Date qwDataTime) {
this.qwDataTime = qwDataTime;
}
public String getStoreId() {
return storeId;
}
public void setStoreId(String storeId) {
this.storeId = storeId;
}
}
\ No newline at end of file
package com.gic.haoban.manage.api.dto.moment;
import java.io.Serializable ;
import java.util.Date;
import java.util.List;
public class QwMomentPlanDTO implements Serializable{
private static final long serialVersionUID = 85646353131100L;
/**活动id*/
private Long planId;
/**名称*/
private String title;
/**描述*/
private String remark;
/**开始日期*/
private java.util.Date beginDate;
/**结束日期*/
private java.util.Date endDate;
/**几天后失效*/
private Integer expireDays;
/**执行方式 0企微1好办小程序*/
private Integer execType;
/**企微id*/
private String wxEnterpriseId;
/**企业id*/
private String enterpriseId;
/**创建人*/
private String creatorId;
/**创建人*/
private String creatorName;
/**1有效 2终止*/
private Integer statusFlag;
/**1删0有效*/
private Integer deleteFlag;
/**1立即发布2定时发布*/
private Integer publishType;
/**发布时间*/
private java.util.Date publishTime;
/**0全部导购 1部分导购*/
private Integer planClerkType;
/**总任务数*/
private Integer totalNum;
private Integer taskClerkNum ;
/**执行任务数*/
private Integer doneNum;
/**终止时间*/
private java.util.Date stopTime;
/**0自主上传 1内容*/
private Integer mediaType;
/**素材json*/
private String mediaInfo;
/**素材回显内容*/
private String mediaInfoShow;
/**创建时间*/
private java.util.Date createTime;
/**更新时间*/
private java.util.Date updateTime;
/**总点赞数*/
private Integer totalLikeCount;
/**总评论数*/
private Integer totalCommentCount;
/**企微jobid*/
private String qwJobid;
/**完成率*/
private Integer execRate;
// 选择的导购id列表
private List<String> selectClerkIdList ;
/**
* 链接开关
*/
private Integer mediaLinkFlag ;
/**
* 参与导购列表
*/
private List<QwMomentPlanAttendDTO> clerkList ;
public Integer getMediaLinkFlag() {
return mediaLinkFlag;
}
public void setMediaLinkFlag(Integer mediaLinkFlag) {
this.mediaLinkFlag = mediaLinkFlag;
}
public List<QwMomentPlanAttendDTO> getClerkList() {
return clerkList;
}
public void setClerkList(List<QwMomentPlanAttendDTO> clerkList) {
this.clerkList = clerkList;
}
public Integer getTaskClerkNum() {
return taskClerkNum;
}
public void setTaskClerkNum(Integer taskClerkNum) {
this.taskClerkNum = taskClerkNum;
}
public List<String> getSelectClerkIdList() {
return selectClerkIdList;
}
public void setSelectClerkIdList(List<String> selectClerkIdList) {
this.selectClerkIdList = selectClerkIdList;
}
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public Date getBeginDate() {
return beginDate;
}
public void setBeginDate(Date beginDate) {
this.beginDate = beginDate;
}
public Date getEndDate() {
return endDate;
}
public void setEndDate(Date endDate) {
this.endDate = endDate;
}
public Integer getExpireDays() {
return expireDays;
}
public void setExpireDays(Integer expireDays) {
this.expireDays = expireDays;
}
public Integer getExecType() {
return execType;
}
public void setExecType(Integer execType) {
this.execType = execType;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(String enterpriseId) {
this.enterpriseId = enterpriseId;
}
public String getCreatorId() {
return creatorId;
}
public void setCreatorId(String creatorId) {
this.creatorId = creatorId;
}
public String getCreatorName() {
return creatorName;
}
public void setCreatorName(String creatorName) {
this.creatorName = creatorName;
}
public Integer getStatusFlag() {
return statusFlag;
}
public void setStatusFlag(Integer statusFlag) {
this.statusFlag = statusFlag;
}
public Integer getDeleteFlag() {
return deleteFlag;
}
public void setDeleteFlag(Integer deleteFlag) {
this.deleteFlag = deleteFlag;
}
public Integer getPublishType() {
return publishType;
}
public void setPublishType(Integer publishType) {
this.publishType = publishType;
}
public Date getPublishTime() {
return publishTime;
}
public void setPublishTime(Date publishTime) {
this.publishTime = publishTime;
}
public Integer getPlanClerkType() {
return planClerkType;
}
public void setPlanClerkType(Integer planClerkType) {
this.planClerkType = planClerkType;
}
public Integer getTotalNum() {
return totalNum;
}
public void setTotalNum(Integer totalNum) {
this.totalNum = totalNum;
}
public Integer getDoneNum() {
return doneNum;
}
public void setDoneNum(Integer doneNum) {
this.doneNum = doneNum;
}
public Date getStopTime() {
return stopTime;
}
public void setStopTime(Date stopTime) {
this.stopTime = stopTime;
}
public Integer getMediaType() {
return mediaType;
}
public void setMediaType(Integer mediaType) {
this.mediaType = mediaType;
}
public String getMediaInfo() {
return mediaInfo;
}
public void setMediaInfo(String mediaInfo) {
this.mediaInfo = mediaInfo;
}
public String getMediaInfoShow() {
return mediaInfoShow;
}
public void setMediaInfoShow(String mediaInfoShow) {
this.mediaInfoShow = mediaInfoShow;
}
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;
}
public Integer getTotalLikeCount() {
return totalLikeCount;
}
public void setTotalLikeCount(Integer totalLikeCount) {
this.totalLikeCount = totalLikeCount;
}
public Integer getTotalCommentCount() {
return totalCommentCount;
}
public void setTotalCommentCount(Integer totalCommentCount) {
this.totalCommentCount = totalCommentCount;
}
public String getQwJobid() {
return qwJobid;
}
public void setQwJobid(String qwJobid) {
this.qwJobid = qwJobid;
}
public Integer getExecRate() {
return execRate;
}
public void setExecRate(Integer execRate) {
this.execRate = execRate;
}
}
\ No newline at end of file
package com.gic.haoban.manage.api.dto.moment;
import java.io.Serializable ;
import java.util.Date;
public class QwMomentPlanDataDTO implements Serializable{
private static final long serialVersionUID = 69664410786500L;
/**id*/
private Long dataId;
/**计划id*/
private Long planId;
/**企微企业id*/
private String wxEnterpriseId;
/**企业id*/
private String enterpriseId;
/**staff*/
private String staffId;
private String staffName ;
/**导购*/
private String clerkId;
/**门店id*/
private String storeId;
/**客户id*/
private String memberId;
/**创建时间*/
private java.util.Date createTime;
/**更新时间*/
private java.util.Date updateTime;
/**是否删除*/
private Integer deleteFlag;
/**评论时间*/
private java.util.Date commentTime;
/**点赞时间*/
private java.util.Date likeTime;
/**是否评论*/
private Integer commentFlag;
/**是否点赞*/
private Integer likeFlag;
private String clerkCode ;
private String clerkName ;
public String getClerkCode() {
return clerkCode;
}
public void setClerkCode(String clerkCode) {
this.clerkCode = clerkCode;
}
public String getClerkName() {
return clerkName;
}
public void setClerkName(String clerkName) {
this.clerkName = clerkName;
}
public String getStaffName() {
return staffName;
}
public void setStaffName(String staffName) {
this.staffName = staffName;
}
public Long getDataId() {
return dataId;
}
public void setDataId(Long dataId) {
this.dataId = dataId;
}
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(String enterpriseId) {
this.enterpriseId = enterpriseId;
}
public String getStaffId() {
return staffId;
}
public void setStaffId(String staffId) {
this.staffId = staffId;
}
public String getClerkId() {
return clerkId;
}
public void setClerkId(String clerkId) {
this.clerkId = clerkId;
}
public String getStoreId() {
return storeId;
}
public void setStoreId(String storeId) {
this.storeId = storeId;
}
public String getMemberId() {
return memberId;
}
public void setMemberId(String memberId) {
this.memberId = memberId;
}
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;
}
public Integer getDeleteFlag() {
return deleteFlag;
}
public void setDeleteFlag(Integer deleteFlag) {
this.deleteFlag = deleteFlag;
}
public Date getCommentTime() {
return commentTime;
}
public void setCommentTime(Date commentTime) {
this.commentTime = commentTime;
}
public Date getLikeTime() {
return likeTime;
}
public void setLikeTime(Date likeTime) {
this.likeTime = likeTime;
}
public Integer getCommentFlag() {
return commentFlag;
}
public void setCommentFlag(Integer commentFlag) {
this.commentFlag = commentFlag;
}
public Integer getLikeFlag() {
return likeFlag;
}
public void setLikeFlag(Integer likeFlag) {
this.likeFlag = likeFlag;
}
}
\ No newline at end of file
package com.gic.haoban.manage.api.dto.moment;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
public class QwMomentPlanWxaDTO implements Serializable {
private Long planId ;
/**
* 计划名称
*/
private String name ;
/**
* 任务总数
*/
private int totalNum ;
/**
* 已完成
*/
private int execNum ;
/**
* 未完成
*/
private int notExecNum ;
/**
* 开始时间
*/
private Date startTime ;
/**
* 结束时间
*/
private Date endTime ;
/**
* 点赞数
*/
private int likeCount ;
/**
* 评论数
*/
private int commentCount ;
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getTotalNum() {
return totalNum;
}
public void setTotalNum(int totalNum) {
this.totalNum = totalNum;
}
public int getExecNum() {
return execNum;
}
public void setExecNum(int execNum) {
this.execNum = execNum;
}
public int getNotExecNum() {
return notExecNum;
}
public void setNotExecNum(int notExecNum) {
this.notExecNum = notExecNum;
}
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
public Date getEndTime() {
return endTime;
}
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
public int getLikeCount() {
return likeCount;
}
public void setLikeCount(int likeCount) {
this.likeCount = likeCount;
}
public int getCommentCount() {
return commentCount;
}
public void setCommentCount(int commentCount) {
this.commentCount = commentCount;
}
}
\ No newline at end of file
package com.gic.haoban.manage.api.dto.moment;
import java.io.Serializable;
import java.util.Date;
public class TaskDetailDTO implements Serializable {
private Long planId ;
private Long attendId ;
private String clerkId ;
/**
* 执行导购名称
*/
private String clerkName ;
/**
* 任务名称
*/
private String name ;
/**
* 任务描述
*/
private String remark ;
/**
* 开始时间
*/
private Date startTime ;
/**
* 结束时间
*/
private Date endTime ;
/**
* 点赞数
*/
private int likeCount ;
/**
* 评论数
*/
private int commentCount ;
/**任务执行完成时间*/
private Date sendTime ;
/**
* 执行方式 0企微1好办小程序
*/
private int execType ;
/**
* 数据更新时间
*/
private Date qwDataTime ;
// 0已失效1待执行 2已执行
private Integer taskStatus ;
// 1内容
private Integer mediaType ;
public Integer getMediaType() {
return mediaType;
}
public void setMediaType(Integer mediaType) {
this.mediaType = mediaType;
}
public Long getAttendId() {
return attendId;
}
public void setAttendId(Long attendId) {
this.attendId = attendId;
}
public Integer getTaskStatus() {
return taskStatus;
}
public void setTaskStatus(Integer taskStatus) {
this.taskStatus = taskStatus;
}
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public String getClerkId() {
return clerkId;
}
public void setClerkId(String clerkId) {
this.clerkId = clerkId;
}
public String getClerkName() {
return clerkName;
}
public void setClerkName(String clerkName) {
this.clerkName = clerkName;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
public Date getEndTime() {
return endTime;
}
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
public int getLikeCount() {
return likeCount;
}
public void setLikeCount(int likeCount) {
this.likeCount = likeCount;
}
public int getCommentCount() {
return commentCount;
}
public void setCommentCount(int commentCount) {
this.commentCount = commentCount;
}
public Date getSendTime() {
return sendTime;
}
public void setSendTime(Date sendTime) {
this.sendTime = sendTime;
}
public int getExecType() {
return execType;
}
public void setExecType(int execType) {
this.execType = execType;
}
public Date getQwDataTime() {
return qwDataTime;
}
public void setQwDataTime(Date qwDataTime) {
this.qwDataTime = qwDataTime;
}
}
package com.gic.haoban.manage.api.dto.moment;
import java.io.Serializable;
import java.util.Date;
public class TaskListWxaDTO implements Serializable {
private Long planId ;
/**
* 计划名称
*/
private String name ;
/**
* 任务总数
*/
private int totalNum ;
/**
* 已完成
*/
private int execNum ;
/**
* 未完成
*/
private int notExecNum ;
/**
* 开始时间
*/
private Date startTime ;
/**
* 结束时间
*/
private Date endTime ;
/**
* 点赞数
*/
private int likeCount ;
/**
* 评论数
*/
private int commentCount ;
// 0已失效1待执行 2已执行
private Integer taskStatus ;
private String clerkName ;
private String clerkId ;
private Date sendTime ;
public Date getSendTime() {
return sendTime;
}
public void setSendTime(Date sendTime) {
this.sendTime = sendTime;
}
public String getClerkName() {
return clerkName;
}
public void setClerkName(String clerkName) {
this.clerkName = clerkName;
}
public String getClerkId() {
return clerkId;
}
public void setClerkId(String clerkId) {
this.clerkId = clerkId;
}
public Integer getTaskStatus() {
return taskStatus;
}
public void setTaskStatus(Integer taskStatus) {
this.taskStatus = taskStatus;
}
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getTotalNum() {
return totalNum;
}
public void setTotalNum(int totalNum) {
this.totalNum = totalNum;
}
public int getExecNum() {
return execNum;
}
public void setExecNum(int execNum) {
this.execNum = execNum;
}
public int getNotExecNum() {
return notExecNum;
}
public void setNotExecNum(int notExecNum) {
this.notExecNum = notExecNum;
}
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
public Date getEndTime() {
return endTime;
}
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
public int getLikeCount() {
return likeCount;
}
public void setLikeCount(int likeCount) {
this.likeCount = likeCount;
}
public int getCommentCount() {
return commentCount;
}
public void setCommentCount(int commentCount) {
this.commentCount = commentCount;
}
}
\ No newline at end of file
......@@ -13,6 +13,7 @@ public class GroupChatPlanSearchQDTO implements Serializable {
private String wxEnterpriseId;
private String enterpriseId;
private String searchParams;
private String searchParamsLike ;
// 1进行中、2未开始、3已结束
private Integer status;
// 群主 0发送失败 1待发送 2已发送 3放弃 30(失败+放弃)
......@@ -31,6 +32,14 @@ public class GroupChatPlanSearchQDTO implements Serializable {
// clerkTaskStatus 1待处理 2已处理/已失效
private int clerkTaskStatus ;
public String getSearchParamsLike() {
return searchParamsLike;
}
public void setSearchParamsLike(String searchParamsLike) {
this.searchParamsLike = searchParamsLike;
}
public int getClerkTaskStatus() {
return clerkTaskStatus;
}
......
......@@ -40,7 +40,8 @@ public enum NoticeMessageTypeEnum {
TEL_TASK_CANVAS(2017, "话务任务通知", NoticeMessageCategoryTypeEnum.TASK.getType(), "haobanTelTaskCanvas", "/pages/route/index?pageType=", "hbapp_canvas_task", "haobanTelTaskCanvas", "haobanNotice"),
HB_TASK_TO_DO_LIST_NOTICE(2018, "任务执行提醒", NoticeMessageCategoryTypeEnum.TASK.getType(), "haobanTaskTodoNotice", "/pages/route/index?pageType=", "", "haobanTaskTodoNotice", "haobanNotice"),
hbapp_canvas_friend_circle_task(2019, "朋友圈活动-任务详情", NoticeMessageCategoryTypeEnum.TASK.getType(), "qwMomentPlanDetail", "/pages/route/index?pageType=", "hbapp_canvas_friend_circle_task", "qwMomentPlanDetail", "haobanNotice"),
hbapp_canvas_friend_circle_list(2020, "朋友圈-活动列表", NoticeMessageCategoryTypeEnum.TASK.getType(), "qwMomentPlanList", "/pages/route/index?pageType=", "hbapp_canvas_friend_circle_list", "qwMomentPlanList", "haobanNotice"),
STORE_ACCOUNT(3001, "账号申请", NoticeMessageCategoryTypeEnum.OTHER.getType(), "store_account", "/pages/route/index?pageType=", "store_relate_store_record_list", "accountApplication", "haobanNotice"),
//
......
......@@ -11,6 +11,7 @@ public enum PendingTaskTypeEnum {
GROUP_TASK(3, "客户群发", "您收到了新的企微群发任务【{}】,赶紧到企业微信-消息-群发助手中执行吧~"),
ACTIVITY(4, "活动", "您报名的{}活动已经开始啦,快去转发赚佣金吧~"),
GROUP_CHAT(5, "社群群发", "您收到了新的社群群发任务【{}】,赶紧到企业微信-消息-群发助手中执行吧~"),
QYWX_MOMENT(6, "企微朋友圈", "您收到了新的企微朋友圈发布任务【{}】,快去执行吧~"),
;
private int type;
private String name;
......
package com.gic.haoban.manage.api.qdto.moment;
import com.gic.api.base.commons.BasePageInfo;
import java.util.Date;
public class PlanClerkListQDTO extends BasePageInfo {
private String wxEnterpriseId ;
private String enterpriseId ;
private Long planId ;
/**
* 成员名称
*/
private String staffName ;
private String staffNameLike ;
/**
* 导购条件
*/
private String clerkParams ;
private String clerkParamsLike ;
/**
* 0已失效 1待完成 2已完成
*/
private Integer sendStatus ;
private Date startTime ;
private Date endTime ;
/**
* 排序字段 完成率:exec_rate 点赞:like_count 评论:comment_count
*/
private String sortColumn ;
/**
* desc / asc
*/
private String sortType ;
private Integer statusFlag ;
public Integer getStatusFlag() {
return statusFlag;
}
public void setStatusFlag(Integer statusFlag) {
this.statusFlag = statusFlag;
}
public String getStaffNameLike() {
return staffNameLike;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(String enterpriseId) {
this.enterpriseId = enterpriseId;
}
public void setStaffNameLike(String staffNameLike) {
this.staffNameLike = staffNameLike;
}
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public String getClerkParamsLike() {
return clerkParamsLike;
}
public void setClerkParamsLike(String clerkParamsLike) {
this.clerkParamsLike = clerkParamsLike;
}
public String getSortColumn() {
return sortColumn;
}
public void setSortColumn(String sortColumn) {
this.sortColumn = sortColumn;
}
public String getSortType() {
return sortType;
}
public void setSortType(String sortType) {
this.sortType = sortType;
}
public String getStaffName() {
return staffName;
}
public void setStaffName(String staffName) {
this.staffName = staffName;
}
public String getClerkParams() {
return clerkParams;
}
public void setClerkParams(String clerkParams) {
this.clerkParams = clerkParams;
}
public Integer getSendStatus() {
return sendStatus;
}
public void setSendStatus(Integer sendStatus) {
this.sendStatus = sendStatus;
}
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
public Date getEndTime() {
return endTime;
}
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
}
package com.gic.haoban.manage.api.qdto.moment;
import com.gic.api.base.commons.BasePageInfo;
import java.util.Date;
public class PlanDataListQDTO extends BasePageInfo {
private String wxEnterpriseId ;
private String enterpriseId ;
private Long planId ;
/**
* 成员名称
*/
private String staffName ;
private String staffNameLike ;
/**
* 导购条件
*/
private String clerkParams ;
private String clerkParamsLike ;
/**
* 1点赞 2评论
*/
private Integer type ;
private Date startTime ;
private Date endTime ;
/**
* 排序字段 完成率:exec_rate 点赞:total_like_count 评论:total_comment_count
*/
private String sortColumn ;
/**
* desc / asc
*/
private String sortType ;
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(String enterpriseId) {
this.enterpriseId = enterpriseId;
}
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public String getStaffNameLike() {
return staffNameLike;
}
public void setStaffNameLike(String staffNameLike) {
this.staffNameLike = staffNameLike;
}
public String getSortColumn() {
return sortColumn;
}
public void setSortColumn(String sortColumn) {
this.sortColumn = sortColumn;
}
public String getSortType() {
return sortType;
}
public void setSortType(String sortType) {
this.sortType = sortType;
}
public String getClerkParamsLike() {
return clerkParamsLike;
}
public void setClerkParamsLike(String clerkParamsLike) {
this.clerkParamsLike = clerkParamsLike;
}
public Integer getType() {
return type;
}
public void setType(Integer type) {
this.type = type;
}
public String getStaffName() {
return staffName;
}
public void setStaffName(String staffName) {
this.staffName = staffName;
}
public String getClerkParams() {
return clerkParams;
}
public void setClerkParams(String clerkParams) {
this.clerkParams = clerkParams;
}
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
public Date getEndTime() {
return endTime;
}
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
}
package com.gic.haoban.manage.api.qdto.moment;
import com.gic.api.base.commons.BasePageInfo;
import java.io.Serializable;
public class PlanListWxaQDTO extends BasePageInfo {
private String wxEnterpriseId ;
private String enterpriseId ;
private String storeId ;
private String staffId ;
private String clerkId ;
/**
* 0未完成 1已完成或已失效
*/
private Integer planStatus ;
/**
* 活动名称
*/
private String name ;
private String nameLike ;
public String getNameLike() {
return nameLike;
}
public void setNameLike(String nameLike) {
this.nameLike = nameLike;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(String enterpriseId) {
this.enterpriseId = enterpriseId;
}
public String getStoreId() {
return storeId;
}
public void setStoreId(String storeId) {
this.storeId = storeId;
}
public String getStaffId() {
return staffId;
}
public void setStaffId(String staffId) {
this.staffId = staffId;
}
public String getClerkId() {
return clerkId;
}
public void setClerkId(String clerkId) {
this.clerkId = clerkId;
}
public Integer getPlanStatus() {
return planStatus;
}
public void setPlanStatus(Integer planStatus) {
this.planStatus = planStatus;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
package com.gic.haoban.manage.api.qdto.moment;
import com.gic.api.base.commons.BasePageInfo;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
*
* @ClassName: TabHaobanQwMomentPlan
* @Description: TODO
* @Author 徐高华
* @Date 2025年03月05日 10:27:20
* @Modify
* @CopyRight 杭州
*/
public class QwMomentPlanQDTO extends BasePageInfo {
private String wxEnterpriseId ;
private String enterpriseId ;
/**
* 活动名称或id
*/
private String nameParams ;
private String nameParamsLike ;
/**
* 执行方式
*/
private Integer execType ;
/**
* 1进行中 2终止 0未开始 3 已结束
*/
private Integer statusFlag ;
/**
* 开始时间
*/
private Date startTime ;
/**
* 结束时间
*/
private Date endTime ;
/**
* 创建人
*/
private List<String> creatorIdList ;
/**
* 排序字段 完成率:exec_rate 点赞:total_like_count 评论:total_comment_count
*/
private String sortColumn ;
/**
* desc / asc
*/
private String sortType ;
public List<String> getCreatorIdList() {
return creatorIdList;
}
public void setCreatorIdList(List<String> creatorIdList) {
this.creatorIdList = creatorIdList;
}
public String getNameParamsLike() {
return nameParamsLike;
}
public void setNameParamsLike(String nameParamsLike) {
this.nameParamsLike = nameParamsLike;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(String enterpriseId) {
this.enterpriseId = enterpriseId;
}
public String getSortColumn() {
return sortColumn;
}
public void setSortColumn(String sortColumn) {
this.sortColumn = sortColumn;
}
public String getSortType() {
return sortType;
}
public void setSortType(String sortType) {
this.sortType = sortType;
}
public String getNameParams() {
return nameParams;
}
public void setNameParams(String nameParams) {
this.nameParams = nameParams;
}
public Integer getExecType() {
return execType;
}
public void setExecType(Integer execType) {
this.execType = execType;
}
public Integer getStatusFlag() {
return statusFlag;
}
public void setStatusFlag(Integer statusFlag) {
this.statusFlag = statusFlag;
}
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
public Date getEndTime() {
return endTime;
}
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
}
\ No newline at end of file
package com.gic.haoban.manage.api.qdto.moment;
import java.io.Serializable;
import java.util.Date;
public class SendResultQDTO implements Serializable {
private String wxEnterpriseId ;
private String staffId ;
private String clerkId ;
private Long planId ;
/**
* 发送时间
*/
private Date sendTime ;
public String getClerkId() {
return clerkId;
}
public void setClerkId(String clerkId) {
this.clerkId = clerkId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getStaffId() {
return staffId;
}
public void setStaffId(String staffId) {
this.staffId = staffId;
}
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public Date getSendTime() {
return sendTime;
}
public void setSendTime(Date sendTime) {
this.sendTime = sendTime;
}
}
package com.gic.haoban.manage.api.qdto.moment;
import com.gic.api.base.commons.BasePageInfo;
import java.io.Serializable;
public class TaskListWxaQDTO extends BasePageInfo {
private String wxEnterpriseId ;
private String enterpriseId ;
private String storeId ;
private String staffId ;
private String clerkId ;
/**
* 指定查询的导购ID
*/
private String execClerkId ;
/**
* 0已失效 1未完成 2已完成
*/
private Integer taskStatus ;
private Long planId ;
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(String enterpriseId) {
this.enterpriseId = enterpriseId;
}
public String getStoreId() {
return storeId;
}
public void setStoreId(String storeId) {
this.storeId = storeId;
}
public String getStaffId() {
return staffId;
}
public void setStaffId(String staffId) {
this.staffId = staffId;
}
public String getClerkId() {
return clerkId;
}
public void setClerkId(String clerkId) {
this.clerkId = clerkId;
}
public String getExecClerkId() {
return execClerkId;
}
public void setExecClerkId(String execClerkId) {
this.execClerkId = execClerkId;
}
public Integer getTaskStatus() {
return taskStatus;
}
public void setTaskStatus(Integer taskStatus) {
this.taskStatus = taskStatus;
}
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
}
package com.gic.haoban.manage.api.qdto.moment;
import java.io.Serializable;
public class TaskNumQDTO implements Serializable {
private String wxEnterpriseId ;
private String enterpriseId ;
private String storeId ;
private String clerkId ;
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(String enterpriseId) {
this.enterpriseId = enterpriseId;
}
public String getStoreId() {
return storeId;
}
public void setStoreId(String storeId) {
this.storeId = storeId;
}
public String getClerkId() {
return clerkId;
}
public void setClerkId(String clerkId) {
this.clerkId = clerkId;
}
}
package com.gic.haoban.manage.api.service.moment;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.haoban.manage.api.dto.moment.*;
import com.gic.haoban.manage.api.qdto.moment.*;
public interface QwMomentApiService {
ServiceResponse<QwMomentPlanDTO> save(QwMomentPlanDTO plan) ;
ServiceResponse<Void> del(Long planId) ;
ServiceResponse<Void> stop(Long planId) ;
ServiceResponse<QwMomentPlanDTO> detail(Long planId) ;
ServiceResponse<Page<QwMomentPlanDTO>> planList(QwMomentPlanQDTO qdto) ;
ServiceResponse<Page<QwMomentPlanAttendDTO>> attendList(PlanClerkListQDTO qdto) ;
ServiceResponse<Page<QwMomentPlanDataDTO>> dataList(PlanDataListQDTO qdto) ;
/**
* 立即发送朋友圈
* @param params
*/
void initTaskClerk(String params) ;
/**
* 定时发送任务创建通知/执行
* @param params
*/
void sendPlanNoticeTimer(String params) ;
/**
* 好办小程序-活动数
* @param qdto
* @return
*/
ServiceResponse<Integer> getTaskNum(TaskNumQDTO qdto) ;
/**
* 好办小程序活动列表
* @param qdto
* @return
*/
ServiceResponse<Page<QwMomentPlanWxaDTO>> planListWxa(PlanListWxaQDTO qdto) ;
/**
* 好办小程序活动任务列表
* @param qdto
* @return
*/
ServiceResponse<Page<TaskListWxaDTO>> taskListWxa(TaskListWxaQDTO qdto) ;
/**
* 好办任务详情
* @param planId
* @param execClerkId
* @return
*/
ServiceResponse<TaskDetailDTO> taskDetail(Long planId, String execClerkId);
/**
* 完成任务
* @param qdto
* @return
*/
ServiceResponse<Void> finishTask(SendResultQDTO qdto);
/**
* 定时拉取企微数据
* @param params
* @return
*/
ServiceResponse<Void> qwDataTimer(String params) ;
}
......@@ -10,29 +10,13 @@ import java.util.List;
public interface QywxTagRelationMapper {
/**
*/
int deleteByPrimaryKey(String qywxTagRelationId);
/**
*/
int insert(TabQywxTagRelation record);
/**
*/
int insertSelective(TabQywxTagRelation record);
/**
*/
// TabQywxTagRelation selectByPrimaryKey(String qywxTagRelationId);
/**
*/
int updateByPrimaryKeySelective(TabQywxTagRelation record);
/**
*/
int updateByPrimaryKey(TabQywxTagRelation record);
/**
* 查询企业下所有同步的
*
* @param wxEnterpriseId
......
......@@ -74,7 +74,5 @@ public interface GroupChatPlanOwnerLogMapper {
int getInvalidTask(@Param("enterpriseId")String enterpriseId , @Param("clerkId")String clerkId , @Param("time")Date time ) ;
int getOverdueTask(@Param("enterpriseId")String enterpriseId , @Param("clerkId")String clerkId , @Param("time")Date time ) ;
int getTaskNum(@Param("enterpriseId")String enterpriseId, @Param("clerkId")String clerkId, @Param("storeId")String storeId, @Param("staffId")String staffId);
}
\ No newline at end of file
package com.gic.haoban.manage.service.dao.mapper.moment;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanAttendDTO;
import com.gic.haoban.manage.api.dto.moment.TaskDetailDTO;
import com.gic.haoban.manage.api.dto.moment.TaskListWxaDTO;
import com.gic.haoban.manage.api.qdto.moment.PlanClerkListQDTO;
import com.gic.haoban.manage.api.qdto.moment.TaskListWxaQDTO;
import com.gic.haoban.manage.service.entity.moment.TabQwMomentPlanAttend;
import com.gic.haoban.manage.service.pojo.bo.moment.CountBO;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
public interface QwMomentPlanAttendMapper {
TabQwMomentPlanAttend getById(Long attendId) ;
void batchInsert(List<TabQwMomentPlanAttend> list) ;
/**
* 查询已经存在的导购
* @param planId
* @param clerkIdList
* @return
*/
List<String> listExistClerkIds(@Param("planId") Long planId , @Param("list") List<String> clerkIdList) ;
List<QwMomentPlanAttendDTO> listClerk(@Param("planId")Long planId , @Param("statusFlag")Integer statusFlag);
List<TabQwMomentPlanAttend> listForData(@Param("planId")Long planId);
/**
* 删除
* @param planId
* @param clerkIdList
*/
void delClerks(@Param("planId") Long planId , @Param("list") List<String> clerkIdList) ;
List<QwMomentPlanAttendDTO> list(PlanClerkListQDTO qdto);
TaskDetailDTO taskDetail(@Param("planId") Long planId, @Param("clerkId") String execClerkId);
TabQwMomentPlanAttend getByStaff(@Param("planId") Long planId, @Param("staffId") String staffId);
List<TaskListWxaDTO> taskListWxa(TaskListWxaQDTO qdto);
void finishTask(@Param("attendId")Long attendId, @Param("sendTime")Date sendTime );
void updateMomentId(@Param("id") Long id, @Param("momentId") String jobId);
void updateFail(@Param("planId") Long planId, @Param("list") List<String> clerkIdList , @Param("reason") String reason) ;
void updateSuccess(@Param("planId") Long planId, @Param("list") List<String> clerkIdList) ;
void updateSuccessStaff(@Param("planId") Long planId, @Param("clerkId") String clerkId , @Param("staffId") String staffId) ;
void updateQwData(@Param("planId") Long planId, @Param("clerkId") String clerkId, @Param("likeCount")int likeCount, @Param("commentCount")int commentCount);
CountBO getQwCount(@Param("planId")Long planId);
int getTotalTask(@Param("enterpriseId")String enterpriseId , @Param("clerkId")String clerkId , @Param("time")Date time ) ;
int getInvalidTask(@Param("enterpriseId")String enterpriseId , @Param("clerkId")String clerkId , @Param("time")Date time ) ;
}
package com.gic.haoban.manage.service.dao.mapper.moment;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanDataDTO;
import com.gic.haoban.manage.api.qdto.moment.PlanDataListQDTO;
import com.gic.haoban.manage.service.entity.moment.TabQwMomentPlanData;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface QwMomentPlanDataMapper {
void batchInsert(List<TabQwMomentPlanData> list) ;
List<QwMomentPlanDataDTO> list(PlanDataListQDTO qdto);
void delAll(@Param("planId") Long planId, @Param("clerkId")String clerkId);
}
package com.gic.haoban.manage.service.dao.mapper.moment;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanDTO;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanWxaDTO;
import com.gic.haoban.manage.api.qdto.moment.PlanListWxaQDTO;
import com.gic.haoban.manage.api.qdto.moment.QwMomentPlanQDTO;
import com.gic.haoban.manage.api.qdto.moment.TaskNumQDTO;
import com.gic.haoban.manage.service.entity.moment.TabQwMomentPlan;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
public interface QwMomentPlanMapper {
void insert(TabQwMomentPlan tab) ;
void update(TabQwMomentPlan tab) ;
void del(@Param("planId") Long planId) ;
void stop(@Param("planId") Long planId) ;
TabQwMomentPlan getById(@Param("planId") Long planId) ;
void updateClerkNum(@Param("planId")Long planId, @Param("totalNum")int totalNum , @Param("taskClerkNum")int taskClerkNum , @Param("doneNum")int doneNum);
List<TabQwMomentPlan> list(QwMomentPlanQDTO qdto);
List<QwMomentPlanWxaDTO> planListWxa(PlanListWxaQDTO qdto);
int getTaskNum(TaskNumQDTO qdto);
void updateJobid(@Param("planId") Long planId, @Param("jobId") String jobId);
void updateMomentId(@Param("planId") Long planId, @Param("momentId") String jobId);
void updateQwData(@Param("planId") Long planId, @Param("like") int like, @Param("comment") int comment);
List<Long> listForData(@Param("type")int type);
List<TabQwMomentPlan> listForStop(@Param("time")Date time);
}
package com.gic.haoban.manage.service.entity.moment;
import java.io.Serializable;
import java.util.Date;
/**
*
* @ClassName: TabHaobanQwMomentPlan
* @Description: TODO
* @Author 徐高华
* @Date 2025年03月05日 15:46:30
* @Modify
* @CopyRight 杭州
*/
public class TabQwMomentPlan implements Serializable{
private static final long serialVersionUID = 85646353131100L;
/**活动id*/
private Long planId;
/**名称*/
private String title;
/**描述*/
private String remark;
/**开始日期*/
private Date beginDate;
/**结束日期*/
private Date endDate;
/**几天后失效*/
private Integer expireDays;
/**执行方式 0企微1好办小程序*/
private Integer execType;
/**企微id*/
private String wxEnterpriseId;
/**企业id*/
private String enterpriseId;
/**创建人*/
private String creatorId;
/**创建人*/
private String creatorName;
/**1有效 2终止*/
private Integer statusFlag;
/**1删0有效*/
private Integer deleteFlag;
/**1立即发布2定时发布*/
private Integer publishType;
/**发布时间*/
private Date publishTime;
/**0全部导购 1部分导购*/
private Integer planClerkType;
/**总任务数*/
private Integer totalNum;
/**执行任务数*/
private Integer doneNum;
/**终止时间*/
private Date stopTime;
/**0自主上传 1内容*/
private Integer mediaType;
/**素材json*/
private String mediaInfo;
/**素材回显内容*/
private String mediaInfoShow;
/**创建时间*/
private Date createTime;
/**更新时间*/
private Date updateTime;
/**总点赞数*/
private Integer totalLikeCount;
/**总评论数*/
private Integer totalCommentCount;
/**企微jobid*/
private String qwJobid;
/**朋友圈id */
private String momentId ;
/**完成率*/
private Integer execRate;
private Integer taskClerkNum ;
/**
* 链接开关
*/
private Integer mediaLinkFlag ;
public Integer getMediaLinkFlag() {
return mediaLinkFlag;
}
public void setMediaLinkFlag(Integer mediaLinkFlag) {
this.mediaLinkFlag = mediaLinkFlag;
}
public Integer getTaskClerkNum() {
return taskClerkNum;
}
public void setTaskClerkNum(Integer taskClerkNum) {
this.taskClerkNum = taskClerkNum;
}
public String getMomentId() {
return momentId;
}
public void setMomentId(String momentId) {
this.momentId = momentId;
}
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public Date getBeginDate() {
return beginDate;
}
public void setBeginDate(Date beginDate) {
this.beginDate = beginDate;
}
public Date getEndDate() {
return endDate;
}
public void setEndDate(Date endDate) {
this.endDate = endDate;
}
public Integer getExpireDays() {
return expireDays;
}
public void setExpireDays(Integer expireDays) {
this.expireDays = expireDays;
}
public Integer getExecType() {
return execType;
}
public void setExecType(Integer execType) {
this.execType = execType;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(String enterpriseId) {
this.enterpriseId = enterpriseId;
}
public String getCreatorId() {
return creatorId;
}
public void setCreatorId(String creatorId) {
this.creatorId = creatorId;
}
public String getCreatorName() {
return creatorName;
}
public void setCreatorName(String creatorName) {
this.creatorName = creatorName;
}
public Integer getStatusFlag() {
return statusFlag;
}
public void setStatusFlag(Integer statusFlag) {
this.statusFlag = statusFlag;
}
public Integer getDeleteFlag() {
return deleteFlag;
}
public void setDeleteFlag(Integer deleteFlag) {
this.deleteFlag = deleteFlag;
}
public Integer getPublishType() {
return publishType;
}
public void setPublishType(Integer publishType) {
this.publishType = publishType;
}
public Date getPublishTime() {
return publishTime;
}
public void setPublishTime(Date publishTime) {
this.publishTime = publishTime;
}
public Integer getPlanClerkType() {
return planClerkType;
}
public void setPlanClerkType(Integer planClerkType) {
this.planClerkType = planClerkType;
}
public Integer getTotalNum() {
return totalNum;
}
public void setTotalNum(Integer totalNum) {
this.totalNum = totalNum;
}
public Integer getDoneNum() {
return doneNum;
}
public void setDoneNum(Integer doneNum) {
this.doneNum = doneNum;
}
public Date getStopTime() {
return stopTime;
}
public void setStopTime(Date stopTime) {
this.stopTime = stopTime;
}
public Integer getMediaType() {
return mediaType;
}
public void setMediaType(Integer mediaType) {
this.mediaType = mediaType;
}
public String getMediaInfo() {
return mediaInfo;
}
public void setMediaInfo(String mediaInfo) {
this.mediaInfo = mediaInfo;
}
public String getMediaInfoShow() {
return mediaInfoShow;
}
public void setMediaInfoShow(String mediaInfoShow) {
this.mediaInfoShow = mediaInfoShow;
}
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;
}
public Integer getTotalLikeCount() {
return totalLikeCount;
}
public void setTotalLikeCount(Integer totalLikeCount) {
this.totalLikeCount = totalLikeCount;
}
public Integer getTotalCommentCount() {
return totalCommentCount;
}
public void setTotalCommentCount(Integer totalCommentCount) {
this.totalCommentCount = totalCommentCount;
}
public String getQwJobid() {
return qwJobid;
}
public void setQwJobid(String qwJobid) {
this.qwJobid = qwJobid;
}
public Integer getExecRate() {
return execRate;
}
public void setExecRate(Integer execRate) {
this.execRate = execRate;
}
}
\ No newline at end of file
package com.gic.haoban.manage.service.entity.moment;
import java.io.Serializable;
import java.util.Date;
/**
*
* @ClassName: TabHaobanQwMomentPlanAttend
* @Description: TODO
* @Author 徐高华
* @Date 2025年03月05日 15:21:31
* @Modify
* @CopyRight 杭州
*/
public class TabQwMomentPlanAttend implements Serializable{
private static final long serialVersionUID = 85681326319600L;
/**id*/
private Long attendId;
/**计划id*/
private Long planId;
/**企微企业id*/
private String wxEnterpriseId;
/**企业id*/
private String enterpriseId;
/**staff*/
private String staffId;
/**导购*/
private String clerkId;
/**导购code*/
private String clerkCode;
/**导购名称*/
private String clerkName;
/**创建时间*/
private Date createTime;
/**更新时间*/
private Date updateTime;
/**是否删除*/
private Integer deleteFlag;
/**评论数*/
private Integer commentCount;
/**点赞数*/
private Integer likeCount;
/**1待执行 2已执行*/
private Integer taskStatus;
/**任务执行时间*/
private Date sendTime;
/**企微朋友圈id*/
private String momentId;
/**企微获取数据时间*/
private Date qwDataTime;
/**门店id*/
private String storeId;
// 0待下发 1已下发
private Integer statusFlag ;
public Integer getStatusFlag() {
return statusFlag;
}
public void setStatusFlag(Integer statusFlag) {
this.statusFlag = statusFlag;
}
public Long getAttendId() {
return attendId;
}
public void setAttendId(Long attendId) {
this.attendId = attendId;
}
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(String enterpriseId) {
this.enterpriseId = enterpriseId;
}
public String getStaffId() {
return staffId;
}
public void setStaffId(String staffId) {
this.staffId = staffId;
}
public String getClerkId() {
return clerkId;
}
public void setClerkId(String clerkId) {
this.clerkId = clerkId;
}
public String getClerkCode() {
return clerkCode;
}
public void setClerkCode(String clerkCode) {
this.clerkCode = clerkCode;
}
public String getClerkName() {
return clerkName;
}
public void setClerkName(String clerkName) {
this.clerkName = clerkName;
}
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;
}
public Integer getDeleteFlag() {
return deleteFlag;
}
public void setDeleteFlag(Integer deleteFlag) {
this.deleteFlag = deleteFlag;
}
public Integer getCommentCount() {
return commentCount;
}
public void setCommentCount(Integer commentCount) {
this.commentCount = commentCount;
}
public Integer getLikeCount() {
return likeCount;
}
public void setLikeCount(Integer likeCount) {
this.likeCount = likeCount;
}
public Integer getTaskStatus() {
return taskStatus;
}
public void setTaskStatus(Integer taskStatus) {
this.taskStatus = taskStatus;
}
public Date getSendTime() {
return sendTime;
}
public void setSendTime(Date sendTime) {
this.sendTime = sendTime;
}
public String getMomentId() {
return momentId;
}
public void setMomentId(String momentId) {
this.momentId = momentId;
}
public Date getQwDataTime() {
return qwDataTime;
}
public void setQwDataTime(Date qwDataTime) {
this.qwDataTime = qwDataTime;
}
public String getStoreId() {
return storeId;
}
public void setStoreId(String storeId) {
this.storeId = storeId;
}
}
\ No newline at end of file
package com.gic.haoban.manage.service.entity.moment;
import java.io.Serializable;
import java.util.Date;
/**
*
* @ClassName: TabHaobanQwMomentPlanData
* @Description: TODO
* @Author 徐高华
* @Date 2025年03月05日 11:24:04
* @Modify
* @CopyRight 杭州
*/
public class TabQwMomentPlanData implements Serializable{
private static final long serialVersionUID = 69664410786500L;
/**id*/
private Long dataId;
/**计划id*/
private Long planId;
/**企微企业id*/
private String wxEnterpriseId;
/**企业id*/
private String enterpriseId;
/**staff*/
private String staffId;
/**导购*/
private String clerkId;
private String clerkCode ;
private String clerkName ;
/**门店id*/
private String storeId;
/**客户id*/
private String memberId;
/**创建时间*/
private Date createTime;
/**更新时间*/
private Date updateTime;
/**是否删除*/
private Integer deleteFlag;
/**评论时间*/
private Date commentTime;
/**点赞时间*/
private Date likeTime;
/**是否评论*/
private Integer commentFlag;
/**是否点赞*/
private Integer likeFlag;
public String getClerkCode() {
return clerkCode;
}
public void setClerkCode(String clerkCode) {
this.clerkCode = clerkCode;
}
public String getClerkName() {
return clerkName;
}
public void setClerkName(String clerkName) {
this.clerkName = clerkName;
}
public Long getDataId() {
return dataId;
}
public void setDataId(Long dataId) {
this.dataId = dataId;
}
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(String enterpriseId) {
this.enterpriseId = enterpriseId;
}
public String getStaffId() {
return staffId;
}
public void setStaffId(String staffId) {
this.staffId = staffId;
}
public String getClerkId() {
return clerkId;
}
public void setClerkId(String clerkId) {
this.clerkId = clerkId;
}
public String getStoreId() {
return storeId;
}
public void setStoreId(String storeId) {
this.storeId = storeId;
}
public String getMemberId() {
return memberId;
}
public void setMemberId(String memberId) {
this.memberId = memberId;
}
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;
}
public Integer getDeleteFlag() {
return deleteFlag;
}
public void setDeleteFlag(Integer deleteFlag) {
this.deleteFlag = deleteFlag;
}
public Date getCommentTime() {
return commentTime;
}
public void setCommentTime(Date commentTime) {
this.commentTime = commentTime;
}
public Date getLikeTime() {
return likeTime;
}
public void setLikeTime(Date likeTime) {
this.likeTime = likeTime;
}
public Integer getCommentFlag() {
return commentFlag;
}
public void setCommentFlag(Integer commentFlag) {
this.commentFlag = commentFlag;
}
public Integer getLikeFlag() {
return likeFlag;
}
public void setLikeFlag(Integer likeFlag) {
this.likeFlag = likeFlag;
}
}
\ No newline at end of file
package com.gic.haoban.manage.service.pojo;
import java.io.Serializable;
public class ClerkStaffBO implements Serializable {
private String clerkId ;
private String staffId ;
// 0成功 1导购已删除 2未绑定成员
private int code ;
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getClerkId() {
return clerkId;
}
public void setClerkId(String clerkId) {
this.clerkId = clerkId;
}
public String getStaffId() {
return staffId;
}
public void setStaffId(String staffId) {
this.staffId = staffId;
}
}
package com.gic.haoban.manage.service.pojo.bo.moment;
public class CountBO {
private Integer likeCount ;
private Integer commentCount ;
public Integer getLikeCount() {
return likeCount;
}
public void setLikeCount(Integer likeCount) {
this.likeCount = likeCount;
}
public Integer getCommentCount() {
return commentCount;
}
public void setCommentCount(Integer commentCount) {
this.commentCount = commentCount;
}
}
package com.gic.haoban.manage.service.pojo.bo.moment;
public class StaffClerkBO {
private String staffId ;
private String clerkId ;
public String getStaffId() {
return staffId;
}
public void setStaffId(String staffId) {
this.staffId = staffId;
}
public String getClerkId() {
return clerkId;
}
public void setClerkId(String clerkId) {
this.clerkId = clerkId;
}
}
......@@ -233,6 +233,14 @@ public class GroupChatPlanOwnerLogServiceImpl implements GroupChatPlanOwnerLogSe
qdto.setClerkId(qdto.getSearchClerkId());
}
}
if(clerkType > 1) {
storeId = qdto.getStoreId();
clerkId = null;
qdto.setClerkId(null);
if (StringUtils.isNotBlank(qdto.getSearchClerkId())) {
qdto.setClerkId(qdto.getSearchClerkId());
}
}
qdto.setStoreId(storeId);
List<GroupChatPlanOwnerLogDTO> list = this.groupChatPlanOwnerLogMapper.listOwnerLogPageForWxa(qdto);
if (CollectionUtils.isNotEmpty(list)) {
......
......@@ -23,6 +23,7 @@ import com.gic.haoban.manage.api.util.notify.NoticeMessageUtil;
import com.gic.haoban.manage.service.dao.mapper.TabHaobanStaffClerkRelationMapper;
import com.gic.haoban.manage.service.dao.mapper.WxEnterpriseRelatedMapper;
import com.gic.haoban.manage.service.dao.mapper.chat.*;
import com.gic.haoban.manage.service.dao.mapper.moment.QwMomentPlanAttendMapper;
import com.gic.haoban.manage.service.service.StaffClerkRelationService;
import com.gic.haoban.manage.service.service.content.impl.GroupMessageServiceImpl;
import com.gic.haoban.manage.service.util.StreamUtils;
......@@ -139,6 +140,8 @@ public class GroupChatPlanServiceImpl implements GroupChatPlanService {
private StaffClerkRelationService staffClerkRelationService ;
@Autowired
private SettingApiService settingApiService ;
@Autowired
private QwMomentPlanAttendMapper qwMomentPlanAttendMapper ;
private static GicMQClient mqClient = GICMQClientUtil.getClientInstance();
......@@ -303,7 +306,7 @@ public class GroupChatPlanServiceImpl implements GroupChatPlanService {
public Page<GroupChatPlanBO> listPage(GroupChatPlanSearchQDTO qdto, BasePageInfo basePageInfo) {
if (StringUtils.isNotBlank(qdto.getSearchParams())) {
String params = qdto.getSearchParams();
qdto.setSearchParams("%" + params + "%");
qdto.setSearchParamsLike("%" + params + "%");
}
PageHelper.startPage(basePageInfo);
List<TabGroupChatPlan> list = this.groupChatPlanMapper.list(qdto);
......@@ -951,8 +954,13 @@ public class GroupChatPlanServiceImpl implements GroupChatPlanService {
logger.info("clerkId={}",total);
if(total > 0) {
int invalid = this.groupChatPlanOwnerLogMapper.getInvalidTask(enterpriseId,clerkId,date) ;
int overdue = this.groupChatPlanOwnerLogMapper.getOverdueTask(enterpriseId,clerkId,date) ;
this.qywxGroupSendCanvasApiService.saveNoticeLog(enterpriseId,clerkId,total,overdue,invalid,"chat") ;
this.qywxGroupSendCanvasApiService.saveNoticeLog(enterpriseId,clerkId,total,0,invalid,"chat") ;
}
// 朋友圈
int momentTotal = this.qwMomentPlanAttendMapper.getTotalTask(enterpriseId,clerkId,date) ;
if(momentTotal > 0) {
int invalid = this.qwMomentPlanAttendMapper.getInvalidTask(enterpriseId,clerkId,date) ;
this.qywxGroupSendCanvasApiService.saveNoticeLog(enterpriseId,clerkId,momentTotal,0,invalid,"moment") ;
}
}
}
......
......@@ -149,7 +149,7 @@ public class MaterialServiceImpl implements MaterialService {
Integer materialType = materialDTO.getMaterialType();
String madiaId = materialDTO.getMediaId();
//需要上传的类型
List<Integer> typeList = Arrays.asList(2, 4, 5, 6 , 7);
List<Integer> typeList = Arrays.asList(2, 3, 4, 5, 6 , 7);
if (typeList.contains(materialType)) {
madiaId = this.reUpdalodMetail(materialId,from);
}
......@@ -202,6 +202,10 @@ public class MaterialServiceImpl implements MaterialService {
fileType = QywxMediaTypeEnum.IMAGE;
url = old.getImgUrl();
}
if (type ==3) {
fileType = QywxMediaTypeEnum.IMAGE;
url = old.getImgUrl();
}
if (type == 4) {
fileType = QywxMediaTypeEnum.VIDEO;
url = old.getLink();
......
......@@ -230,8 +230,12 @@ public class QywxSendServiceImpl implements QywxSendService {
QywxLinkMaterialDTO linkMaterialDTO = new QywxLinkMaterialDTO();
linkMaterialDTO.setTitle(material.getMaterialTitle());
linkMaterialDTO.setPicUrl(material.getWxImgUrl());
if(StringUtils.isNotBlank(linkMaterialDTO.getPicUrl())) {
linkMaterialDTO.setPicUrl(material.getImgUrl());
}
linkMaterialDTO.setDesc(material.getMaterialDesc());
linkMaterialDTO.setUrl(material.getLink());
linkMaterialDTO.setMedia_id(maerialId);
dto.setMsgType(QywxMediaTypeEnum.LINK.getName());
dto.setLink(linkMaterialDTO);
} else if (materialType == 4) {
......
package com.gic.haoban.manage.service.service.moment;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanAttendDTO;
import com.gic.haoban.manage.api.dto.moment.TaskDetailDTO;
import com.gic.haoban.manage.api.dto.moment.TaskListWxaDTO;
import com.gic.haoban.manage.api.qdto.moment.PlanClerkListQDTO;
import com.gic.haoban.manage.api.qdto.moment.SendResultQDTO;
import com.gic.haoban.manage.api.qdto.moment.TaskListWxaQDTO;
import com.gic.haoban.manage.service.entity.moment.TabQwMomentPlan;
import com.gic.haoban.manage.service.pojo.ClerkStaffBO;
import java.util.Date;
import java.util.List;
public interface QwMomentPlanAttendService {
ServiceResponse<Page<QwMomentPlanAttendDTO>> attendList(PlanClerkListQDTO qdto) ;
/**
* 导购
* @param enterpriseId
* @param planId
*/
void saveClerk(String wxEnterpriseId , String enterpriseId, Long planId , List<ClerkStaffBO> clerkStaffList , int statusFlag) ;
ServiceResponse<TaskDetailDTO> taskDetail(Long planId, String execClerkId);
ServiceResponse<Page<TaskListWxaDTO>> taskListWxa(TaskListWxaQDTO qdto);
ServiceResponse<Void> finishTask(SendResultQDTO qdto);
void updateMomentId(Long attendId, int times) ;
void updateStatusFlag(TabQwMomentPlan plan) ;
void finishTaskUpdateData(Long attendId , Long planId , Date sendDate) ;
}
package com.gic.haoban.manage.service.service.moment;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanDataDTO;
import com.gic.haoban.manage.api.qdto.moment.PlanDataListQDTO;
import com.gic.haoban.manage.service.entity.moment.TabQwMomentPlanAttend;
import com.gic.wechat.api.dto.qywx.moment.MomentResultDTO;
public interface QwMomentPlanDataService {
ServiceResponse<Page<QwMomentPlanDataDTO>> dataList(PlanDataListQDTO qdto) ;
ServiceResponse<Void> save(TabQwMomentPlanAttend task , MomentResultDTO dto) ;
}
package com.gic.haoban.manage.service.service.moment;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanDTO;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanWxaDTO;
import com.gic.haoban.manage.api.qdto.moment.PlanListWxaQDTO;
import com.gic.haoban.manage.api.qdto.moment.QwMomentPlanQDTO;
import com.gic.haoban.manage.api.qdto.moment.TaskNumQDTO;
import com.gic.haoban.manage.service.entity.moment.TabQwMomentPlan;
import com.gic.haoban.manage.service.entity.moment.TabQwMomentPlanAttend;
public interface QwMomentPlanService {
ServiceResponse<QwMomentPlanDTO> save(QwMomentPlanDTO plan) ;
ServiceResponse<Void> del(Long planId) ;
ServiceResponse<Void> stop(Long planId) ;
ServiceResponse<QwMomentPlanDTO> detail(Long planId) ;
ServiceResponse<Page<QwMomentPlanDTO>> planList(QwMomentPlanQDTO qdto) ;
void initTaskClerk(String params);
void sendPlanNoticeTimer(String params);
ServiceResponse<Integer> getTaskNum(TaskNumQDTO qdto);
ServiceResponse<Page<QwMomentPlanWxaDTO>> planListWxa(PlanListWxaQDTO qdto);
void getQwData(Long planId) ;
/**
* 拉取企微点赞、评论
* @param task
*/
void getQwData(TabQwMomentPlanAttend task , int type, String planMomentId) ;
void getMomentId(Long planId) ;
void sendToQiwei(TabQwMomentPlan plan) ;
/**
* 是否已发布
* @param planId
*/
void getQwPublishData(Long planId , String cursor) ;
void qwDataTimer(String params);
}
package com.gic.haoban.manage.service.service.moment.impl;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.PageHelperUtils;
import com.gic.commons.util.UniqueIdUtils;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanDataDTO;
import com.gic.haoban.manage.api.qdto.moment.PlanDataListQDTO;
import com.gic.haoban.manage.service.dao.mapper.moment.QwMomentPlanAttendMapper;
import com.gic.haoban.manage.service.dao.mapper.moment.QwMomentPlanDataMapper;
import com.gic.haoban.manage.service.entity.moment.TabQwMomentPlanAttend;
import com.gic.haoban.manage.service.entity.moment.TabQwMomentPlanData;
import com.gic.haoban.manage.service.service.ExternalClerkRelatedService;
import com.gic.haoban.manage.service.service.moment.QwMomentPlanAttendService;
import com.gic.haoban.manage.service.service.moment.QwMomentPlanDataService;
import com.gic.wechat.api.dto.qywx.moment.MomentComments;
import com.gic.wechat.api.dto.qywx.moment.MomentResultDTO;
import com.github.pagehelper.PageHelper;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.*;
@Service("qwMomentPlanDataService")
public class QwMomentPlanDataServiceImpl implements QwMomentPlanDataService {
@Autowired
private QwMomentPlanDataMapper qwMomentPlanDataMapper ;
@Autowired
private ExternalClerkRelatedService externalClerkRelatedService ;
@Autowired
private QwMomentPlanAttendMapper qwMomentPlanAttendMapper ;
@Autowired
private QwMomentPlanAttendService qwMomentPlanAttendService ;
@Override
public ServiceResponse<Page<QwMomentPlanDataDTO>> dataList(PlanDataListQDTO qdto) {
PageHelper.startPage(qdto);
if(StringUtils.isNotEmpty(qdto.getClerkParams())) {
qdto.setClerkParamsLike("%"+qdto.getClerkParams()+"%");
}
if(StringUtils.isNotBlank(qdto.getStaffName())) {
qdto.setStaffNameLike("%"+qdto.getStaffName()+"%");
}
if(StringUtils.isBlank(qdto.getSortColumn())) {
qdto.setSortColumn("create_time");
}
if(StringUtils.isBlank(qdto.getSortType())) {
qdto.setSortType("desc");
}
List<QwMomentPlanDataDTO> list = this.qwMomentPlanDataMapper.list(qdto);
Page<QwMomentPlanDataDTO> retPage = PageHelperUtils.changePageHelperToCurrentPage(list, QwMomentPlanDataDTO.class);
return ServiceResponse.success(retPage);
}
@Override
public ServiceResponse<Void> save(TabQwMomentPlanAttend task, MomentResultDTO dto) {
Set<String> set = new HashSet<>() ;
Map<String,TabQwMomentPlanData> map = new HashMap<>() ;
this.qwMomentPlanDataMapper.delAll(task.getPlanId(),task.getClerkId()) ;
List<MomentComments> likeList = dto.getLikeList() ;
int likeCount = 0 ;
int commentCount = 0 ;
if(CollectionUtils.isNotEmpty(likeList)) {
for(MomentComments item : likeList) {
String externalUserid = item.getExternal_userid() ;
String memberId = this.externalClerkRelatedService.getMemberIdByExternalId(task.getWxEnterpriseId(),externalUserid) ;
if(StringUtils.isBlank(memberId)) {
set.add(externalUserid) ;
continue;
}
TabQwMomentPlanData data = new TabQwMomentPlanData() ;
data.setMemberId(memberId);
data.setLikeFlag(1);
likeCount = likeCount+1 ;
data.setLikeTime(new Date(item.getCreate_time()*1000));
map.put(externalUserid,data) ;
}
}
List<MomentComments> commentList = dto.getCommentList() ;
if(CollectionUtils.isNotEmpty(commentList)) {
for(MomentComments item : commentList) {
String externalUserid = item.getExternal_userid() ;
if(set.contains(externalUserid)) {
continue;
}
TabQwMomentPlanData data = map.get(externalUserid) ;
if(null != data) {
commentCount = commentCount + 1 ;
data.setCommentFlag(1);
data.setCommentTime(new Date(item.getCreate_time()*1000));
}else {
String memberId = this.externalClerkRelatedService.getMemberIdByExternalId(task.getWxEnterpriseId(),externalUserid) ;
if(StringUtils.isBlank(memberId)) {
continue;
}
data = new TabQwMomentPlanData() ;
data.setMemberId(memberId);
data.setCommentFlag(1);
commentCount = commentCount + 1 ;
data.setCommentTime(new Date(item.getCreate_time()*1000));
map.put(externalUserid,data) ;
}
}
}
List<TabQwMomentPlanData> addList = new ArrayList<>() ;
Set<String> keySet = map.keySet() ;
Iterator<String> it = keySet.iterator() ;
while (it.hasNext()) {
String key = it.next() ;
TabQwMomentPlanData value = map.get(key) ;
if(null != value) {
value.setDataId(UniqueIdUtils.uniqueLong());
value.setPlanId(task.getPlanId());
value.setEnterpriseId(task.getEnterpriseId());
value.setStaffId(task.getStaffId());
value.setClerkId(task.getClerkId());
value.setStoreId(task.getStoreId());
value.setWxEnterpriseId(task.getWxEnterpriseId());
value.setClerkCode(task.getClerkCode());
value.setClerkName(task.getClerkName());
addList.add(value);
}
}
if(CollectionUtils.isNotEmpty(addList)) {
this.qwMomentPlanDataMapper.batchInsert(addList);
}
this.qwMomentPlanAttendMapper.updateQwData(task.getPlanId(),task.getClerkId(),likeCount,commentCount) ;
if((likeCount > 0 || commentCount > 0) && task.getTaskStatus()==1) {
this.qwMomentPlanAttendService.finishTaskUpdateData(task.getAttendId(), task.getPlanId() , new Date());
}
return ServiceResponse.success();
}
}
......@@ -463,6 +463,8 @@ public class NoticeMessageApiServiceImpl implements NoticeMessageApiService {
mid.setPageType("hbapp_canvas_custom_send_list");
}else if("tel".equals(relationId)) {
mid.setPageType("hbapp_canvas_task_list");
}else if("moment".equals(relationId)) {
mid.setPageType("hbapp_canvas_friend_circle_list");
}else {
mid.setPageType("workbench");
}
......
......@@ -12,6 +12,8 @@ import com.gic.commons.util.StringUtil;
import com.gic.haoban.manage.api.dto.MemberUnionidWechatAccountQDTO;
import com.gic.haoban.manage.api.service.ExternalClerkRelatedApiService;
import com.gic.haoban.manage.service.service.chat.GroupChatPlanService;
import com.gic.haoban.manage.service.service.moment.QwMomentPlanAttendService;
import com.gic.haoban.manage.service.service.moment.QwMomentPlanService;
import com.gic.haoban.manage.service.service.role.HaobanMenuService;
import com.gic.haoban.manage.service.util.EventUtils;
import com.gic.member.api.dto.MemberInfoChangeNotifyDTO;
......@@ -59,6 +61,10 @@ public class HaobanCommonMQApiServiceImpl implements HaobanCommonMQApiService {
private TabHaobanExternalClerkRelatedMapper externalClerkRelatedMapper ;
@Autowired
private GroupChatPlanService groupChatPlanService ;
@Autowired
private QwMomentPlanService qwMomentPlanService ;
@Autowired
private QwMomentPlanAttendService qwMomentPlanAttendService;
@Override
public void putCommonMessage(CommonMQDTO dto) {
......@@ -151,6 +157,15 @@ public class HaobanCommonMQApiServiceImpl implements HaobanCommonMQApiService {
Long ownerLogId = Long.valueOf(map.get("ownerLogId")) ;
this.groupChatPlanService.doPlanSendInfo(ownerLogId);
break;
case 6 :
Long momentPlanId = Long.valueOf(map.get("planId")) ;
this.qwMomentPlanService.getMomentId(momentPlanId);
break;
case 7 :
Long attendId = Long.valueOf(map.get("attendId")) ;
int times = Integer.valueOf(map.get("times")) ;
this.qwMomentPlanAttendService.updateMomentId(attendId,times);
break;
default:
break;
}
......
package com.gic.haoban.manage.service.service.out.impl.moment;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.haoban.manage.api.dto.moment.*;
import com.gic.haoban.manage.api.qdto.moment.*;
import com.gic.haoban.manage.api.service.moment.QwMomentApiService;
import com.gic.haoban.manage.service.service.moment.QwMomentPlanAttendService;
import com.gic.haoban.manage.service.service.moment.QwMomentPlanDataService;
import com.gic.haoban.manage.service.service.moment.QwMomentPlanService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service("qwMomentApiService")
public class QwMomentApiServiceImpl implements QwMomentApiService {
@Autowired
private QwMomentPlanService qwMomentPlanService ;
@Autowired
private QwMomentPlanAttendService qwMomentPlanAttendService ;
@Autowired
private QwMomentPlanDataService qwMomentPlanDataService ;
@Override
public ServiceResponse<QwMomentPlanDTO> save(QwMomentPlanDTO plan) {
return this.qwMomentPlanService.save(plan);
}
@Override
public ServiceResponse<Void> del(Long planId) {
return this.qwMomentPlanService.del(planId);
}
@Override
public ServiceResponse<Void> stop(Long planId) {
return this.qwMomentPlanService.stop(planId);
}
@Override
public ServiceResponse<QwMomentPlanDTO> detail(Long planId) {
return this.qwMomentPlanService.detail(planId) ;
}
@Override
public ServiceResponse<Page<QwMomentPlanDTO>> planList(QwMomentPlanQDTO qdto) {
return this.qwMomentPlanService.planList(qdto) ;
}
@Override
public ServiceResponse<Page<QwMomentPlanAttendDTO>> attendList(PlanClerkListQDTO qdto) {
return this.qwMomentPlanAttendService.attendList(qdto) ;
}
@Override
public ServiceResponse<Page<QwMomentPlanDataDTO>> dataList(PlanDataListQDTO qdto) {
return this.qwMomentPlanDataService.dataList(qdto) ;
}
@Override
public void initTaskClerk(String params) {
this.qwMomentPlanService.initTaskClerk(params) ;
}
@Override
public void sendPlanNoticeTimer(String params) {
this.qwMomentPlanService.sendPlanNoticeTimer(params) ;
}
@Override
public ServiceResponse<Integer> getTaskNum(TaskNumQDTO qdto) {
return this.qwMomentPlanService.getTaskNum(qdto) ;
}
@Override
public ServiceResponse<Page<QwMomentPlanWxaDTO>> planListWxa(PlanListWxaQDTO qdto) {
return this.qwMomentPlanService.planListWxa(qdto) ;
}
@Override
public ServiceResponse<Page<TaskListWxaDTO>> taskListWxa(TaskListWxaQDTO qdto) {
return this.qwMomentPlanAttendService.taskListWxa(qdto) ;
}
@Override
public ServiceResponse<TaskDetailDTO> taskDetail(Long planId, String execClerkId) {
return this.qwMomentPlanAttendService.taskDetail(planId,execClerkId) ;
}
@Override
public ServiceResponse<Void> finishTask(SendResultQDTO qdto) {
return this.qwMomentPlanAttendService.finishTask(qdto) ;
}
@Override
public ServiceResponse<Void> qwDataTimer(String params) {
this.qwMomentPlanService.qwDataTimer(params) ;
return null;
}
}
......@@ -237,7 +237,7 @@
<dubbo:reference interface="com.gic.business.order.service.ordermanage.WebOrderManageApiService" id="webOrderManageApiService" timeout="10000" retries="0" check="false"/>
<dubbo:reference interface="com.gic.operating.api.service.HaobanWxEnterpriseApiService" id="haobanWxEnterpriseApiService" timeout="10000" retries="0" check="false"/>
<dubbo:service interface="com.gic.haoban.manage.api.service.moment.QwMomentApiService" ref="qwMomentApiService" timeout="10000" />
<dubbo:service interface="com.gic.haoban.manage.api.service.content.task.CommissionTaskApiService"
ref="commissionTaskApiService" timeout="10000" />
<dubbo:reference id="memberOrderReadApiService" interface="com.gic.order.api.service.member.MemberOrderReadApiService" timeout="10000" retries="0" check="false" />
......
......@@ -21,16 +21,6 @@
relation_type, sync_flag, `order`, qywx_tag_id, qywx_tag_item_id, status_flag, create_time,
update_time
</sql>
<!-- <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">-->
<!-- select-->
<!-- <include refid="Base_Column_List"/>-->
<!-- from tab_haoban_qywx_tag_relation-->
<!-- where qywx_tag_relation_id = #{qywxTagRelationId,jdbcType=VARCHAR}-->
<!-- </select>-->
<update id="deleteByPrimaryKey" parameterType="java.lang.String">
update tab_haoban_qywx_tag_relation set status_flag = 0 , update_time =now()
where qywx_tag_relation_id = #{qywxTagRelationId,jdbcType=VARCHAR}
</update>
<insert id="insert" parameterType="com.gic.haoban.manage.service.entity.TabQywxTagRelation">
insert into tab_haoban_qywx_tag_relation (qywx_tag_relation_id, wx_enterprise_id,
......@@ -44,91 +34,6 @@
#{qywxTagId,jdbcType=VARCHAR}, #{qywxTagItemId,jdbcType=VARCHAR}, #{statusFlag,jdbcType=INTEGER},
#{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP})
</insert>
<insert id="insertSelective" parameterType="com.gic.haoban.manage.service.entity.TabQywxTagRelation">
insert into tab_haoban_qywx_tag_relation
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="qywxTagRelationId != null">
qywx_tag_relation_id,
</if>
<if test="wxEnterpriseId != null">
wx_enterprise_id,
</if>
<if test="enterpriseId != null">
enterprise_id,
</if>
<if test="memberTagId != null">
member_tag_id,
</if>
<if test="tagItemId != null">
tag_item_id,
</if>
<if test="relationType != null">
relation_type,
</if>
<if test="syncFlag != null">
sync_flag,
</if>
<if test="order != null">
`order`,
</if>
<if test="qywxTagId != null">
qywx_tag_id,
</if>
<if test="qywxTagItemId != null">
qywx_tag_item_id,
</if>
<if test="statusFlag != null">
status_flag,
</if>
<if test="createTime != null">
create_time,
</if>
<if test="updateTime != null">
update_time,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="qywxTagRelationId != null">
#{qywxTagRelationId,jdbcType=VARCHAR},
</if>
<if test="wxEnterpriseId != null">
#{wxEnterpriseId,jdbcType=VARCHAR},
</if>
<if test="enterpriseId != null">
#{enterpriseId,jdbcType=VARCHAR},
</if>
<if test="memberTagId != null">
#{memberTagId,jdbcType=VARCHAR},
</if>
<if test="tagItemId != null">
#{tagItemId,jdbcType=VARCHAR},
</if>
<if test="relationType != null">
#{relationType,jdbcType=INTEGER},
</if>
<if test="syncFlag != null">
#{syncFlag,jdbcType=INTEGER},
</if>
<if test="order != null">
#{order,jdbcType=BIGINT},
</if>
<if test="qywxTagId != null">
#{qywxTagId,jdbcType=VARCHAR},
</if>
<if test="qywxTagItemId != null">
#{qywxTagItemId,jdbcType=VARCHAR},
</if>
<if test="statusFlag != null">
#{statusFlag,jdbcType=INTEGER},
</if>
<if test="createTime != null">
#{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateTime != null">
#{updateTime,jdbcType=TIMESTAMP},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.gic.haoban.manage.service.entity.TabQywxTagRelation">
update tab_haoban_qywx_tag_relation
<set>
......@@ -171,22 +76,6 @@
</set>
where qywx_tag_relation_id = #{qywxTagRelationId,jdbcType=VARCHAR}
</update>
<update id="updateByPrimaryKey" parameterType="com.gic.haoban.manage.service.entity.TabQywxTagRelation">
update tab_haoban_qywx_tag_relation
set wx_enterprise_id = #{wxEnterpriseId,jdbcType=VARCHAR},
enterprise_id = #{enterpriseId,jdbcType=VARCHAR},
member_tag_id = #{memberTagId,jdbcType=VARCHAR},
tag_item_id = #{tagItemId,jdbcType=VARCHAR},
relation_type = #{relationType,jdbcType=INTEGER},
sync_flag = #{syncFlag,jdbcType=INTEGER},
`order` = #{order,jdbcType=BIGINT},
qywx_tag_id = #{qywxTagId,jdbcType=VARCHAR},
qywx_tag_item_id = #{qywxTagItemId,jdbcType=VARCHAR},
status_flag = #{statusFlag,jdbcType=INTEGER},
create_time = #{createTime,jdbcType=TIMESTAMP},
update_time = #{updateTime,jdbcType=TIMESTAMP}
where qywx_tag_relation_id = #{qywxTagRelationId,jdbcType=VARCHAR}
</update>
<select id="listBySyncStatus" parameterType="java.lang.String" resultMap="BaseResultMap">
select
......
......@@ -178,8 +178,11 @@
<select id="list" parameterType="com.gic.haoban.manage.api.dto.qdto.chat.GroupChatPlanSearchQDTO" resultMap="result-map-tabHaobanGroupChatPlan">
select
<include refid="Base_Column_List" />
from tab_haoban_group_chat_plan where wx_enterprise_id=#{wxEnterpriseId}
and enterprise_id = #{enterpriseId} and delete_flag = 0
from tab_haoban_group_chat_plan where
enterprise_id = #{enterpriseId} and delete_flag = 0
<if test="null != wxEnterpriseId">
and wx_enterprise_id=#{wxEnterpriseId}
</if>
<if test="null != startDate">
and create_time <![CDATA[>=]]> #{startDate} and create_time <![CDATA[<=]]> #{endDate}
</if>
......@@ -193,7 +196,7 @@
and end_time <![CDATA[<]]> now()
</if>
<if test="null != searchParams and '' != searchParams">
and name like #{searchParams}
and ( name like #{searchParamsLike} or plan_id=#{searchParams} )
</if>
<if test="null !=creatorIdList and creatorIdList.size>0">
and creator_id in
......
......@@ -309,19 +309,13 @@
</select>
<!-- 查询逾期任务数-->
<!-- 查询失效任务数-->
<select id="getInvalidTask" resultType="int">
select count(1) from tab_haoban_group_chat_plan_owner_log a LEFT JOIN tab_haoban_group_chat_plan b ON a.plan_id = b.plan_id
where a.enterprise_id = #{enterpriseId} and b.end_time = #{time}
AND a.clerk_id = #{clerkId} AND a.send_status = 1 and a.delete_flag = 0
</select>
<!-- 查询失效任务数-->
<select id="getOverdueTask" resultType="int">
select count(1) from tab_haoban_group_chat_plan_owner_log a LEFT JOIN tab_haoban_group_chat_plan b ON a.plan_id = b.plan_id
where a.enterprise_id = #{enterpriseId} and b.end_time = now()
AND a.clerk_id = #{clerkId} AND a.send_status = 1 and a.delete_flag = 0
</select>
<select id="getTaskNum" resultType="java.lang.Integer">
select count(1) from (
select a.plan_id from tab_haoban_group_chat_plan_owner_log a LEFT JOIN tab_haoban_group_chat_plan b ON a.plan_id = b.plan_id
......
<?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.gic.haoban.manage.service.dao.mapper.moment.QwMomentPlanDataMapper">
<resultMap type="com.gic.haoban.manage.service.entity.moment.TabQwMomentPlanData" id="result-map-tabHaobanQwMomentPlanData">
<result column="data_id" javaType="long" jdbcType="BIGINT" property="dataId"/>
<result column="plan_id" javaType="long" jdbcType="BIGINT" property="planId"/>
<result column="wx_enterprise_id" javaType="String" jdbcType="CHAR" property="wxEnterpriseId"/>
<result column="enterprise_id" javaType="String" jdbcType="CHAR" property="enterpriseId"/>
<result column="staff_id" javaType="String" jdbcType="CHAR" property="staffId"/>
<result column="clerk_id" javaType="String" jdbcType="CHAR" property="clerkId"/>
<result column="store_id" javaType="String" jdbcType="CHAR" property="storeId"/>
<result column="member_id" javaType="String" jdbcType="CHAR" property="memberId"/>
<result column="create_time" javaType="java.util.Date" jdbcType="TIMESTAMP" property="createTime"/>
<result column="update_time" javaType="java.util.Date" jdbcType="TIMESTAMP" property="updateTime"/>
<result column="delete_flag" javaType="int" jdbcType="INTEGER" property="deleteFlag"/>
<result column="comment_time" javaType="java.util.Date" jdbcType="TIMESTAMP" property="commentTime"/>
<result column="like_time" javaType="java.util.Date" jdbcType="TIMESTAMP" property="likeTime"/>
<result column="comment_flag" javaType="int" jdbcType="INTEGER" property="commentFlag"/>
<result column="like_flag" javaType="int" jdbcType="INTEGER" property="likeFlag"/>
</resultMap>
<sql id="Base_Column_List">
data_id,
plan_id,
wx_enterprise_id,
enterprise_id,
staff_id,
clerk_id,
store_id,
member_id,
create_time,
update_time,
delete_flag,
comment_time,
like_time,
comment_flag,
like_flag
</sql>
<update id="delAll">
update tab_haoban_qw_moment_plan_data set delete_flag = 1 where plan_id=#{planId} and clerk_id=#{clerkId} and delete_flag = 0
</update>
<!-- ===================== 新增 ======================== -->
<select id="list" resultType="com.gic.haoban.manage.api.dto.moment.QwMomentPlanDataDTO"
parameterType="com.gic.haoban.manage.api.qdto.moment.PlanDataListQDTO">
select
b.staff_name staffName ,
a.data_id dataId,
a.plan_id planId ,
a.staff_id staffId ,
a.clerk_id clerkId ,
a.store_id storeId ,
a.member_id memberId ,
a.create_time createTime ,
a.update_time updateTime ,
a.comment_time commentTime ,
a.like_time likeTime ,
a.comment_flag commentFlag ,
a.like_flag likeFlag ,
a.clerk_code clerkCode ,
a.clerk_name clerkName
from tab_haoban_qw_moment_plan_data a left join tab_haoban_staff b on a.staff_id = b.staff_id where a.plan_id=#{planId} and a.delete_flag = 0
<if test="null != staffNameLike">
and b.staff_name like #{staffNameLike}
</if>
<if test="null != clerkParamsLike">
and (a.clerk_code like #{clerkParamsLike} or a.clerk_name like #{clerkParamsLike})
</if>
<if test="type==1">
and a.like_flag = 1
<if test="null != startTime">
and ( a.like_time >= #{startTime} and a.like_time <![CDATA[ <= ]]> #{endTime} )
</if>
order by a.like_time desc
</if>
<if test="type==2">
and a.comment_flag = 1
<if test="null != startTime">
and ( a.comment_time >= #{startTime} and a.comment_time <![CDATA[ <= ]]> #{endTime} )
</if>
order by a.comment_time desc
</if>
</select>
<update id="batchInsert">
INSERT INTO tab_haoban_qw_moment_plan_data(
data_id,
plan_id,
wx_enterprise_id,
enterprise_id,
staff_id,
clerk_id,
clerk_code ,
clerk_name,
store_id,
member_id,
comment_time,
like_time,
comment_flag,
like_flag
)VALUES
<foreach collection="list" item="item" separator="," index="index">
( #{item.dataId,jdbcType=BIGINT},
#{item.planId,jdbcType=BIGINT},
#{item.wxEnterpriseId,jdbcType=CHAR},
#{item.enterpriseId,jdbcType=CHAR},
#{item.staffId,jdbcType=CHAR},
#{item.clerkId,jdbcType=CHAR},
#{item.clerkCode},
#{item.clerkName},
#{item.storeId,jdbcType=CHAR},
#{item.memberId,jdbcType=CHAR},
#{item.commentTime,jdbcType=TIMESTAMP},
#{item.likeTime,jdbcType=TIMESTAMP},
#{item.commentFlag,jdbcType=INTEGER},
#{item.likeFlag,jdbcType=INTEGER} )
</foreach>
</update>
</mapper>
\ No newline at end of file
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.gic.haoban.manage.api.service.OpenStaffApiService;
import com.gic.member.api.dto.es.MemberDataDTO;
import com.gic.member.api.service.MemberApiService;
import com.gic.search.engine.api.constant.OperateEnum;
import com.gic.search.engine.api.dto.ESResponseQueryBatch;
import com.gic.search.engine.api.dto.dynamic.DynamicSearchDTO;
import com.gic.search.engine.api.filter.NewNodeAddUtil;
import com.gic.search.engine.api.service.dynamic.ESDataDynamicOperationApiService;
import org.apache.commons.collections.CollectionUtils;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"classpath:applicationContext-conf.xml"})
public class ChaHuiyuanTest {
@Autowired
private ESDataDynamicOperationApiService esDataDynamicOperationApiService ;
String eid = "ff8080816deed97e016df22b567a1e2b";
@Test
public void tt() {
List<String> list = FileUtils3.getText();
this.getMemberMap(eid,list) ;
}
public void getMemberMap(String enterpriseId, List<String> memberIdList) {
String returnFields = "memberId,mainStoreId,mainClerkId,openStoreId,openClerkId,name,nickName,phoneNumber,photoUrl,cardNo";
List<JSONObject> esList = this.queryDataBatch(enterpriseId, memberIdList, returnFields);
List<MemberDataDTO> list = JSONArray.parseArray(JSONArray.toJSONString(esList),MemberDataDTO.class);
for(MemberDataDTO m : list) {
System.out.println(m.getMemberId()+","+m.getCardNo());
}
}
public List<JSONObject> queryDataBatch(String enterpriseId, List<String> memberIdList, String returnFields) {
DynamicSearchDTO search = new DynamicSearchDTO();
search.setEnterpriseId(enterpriseId);
search.setColumnCategoryCode("member");
String memberIds = String.join(" ", memberIdList);
JSONObject searchObj = new JSONObject();
searchObj = NewNodeAddUtil.addNewNodeForAnd("memberId", OperateEnum.OPERATE_CONTAIN.getValue(), memberIds,
searchObj);
search.setSearchJson(searchObj);
search.setReturnFileds(returnFields);
search.setSortJson(NewNodeAddUtil.createSortNode("memberId", NewNodeAddUtil.SORT_RULE_ASC));
search.setBegin(0);
search.setRecordNumber(memberIdList.size());
ESResponseQueryBatch response = this.esDataDynamicOperationApiService.queryDataBatch(search, Boolean.FALSE,
null);
return response.getRes();
}
}
......@@ -128,6 +128,9 @@ public class ChatTest {
@Autowired
private QywxExternalUserService qywxExternalUserService;
public static void main(String[] args) {
System.out.println("ff80808191282eee019146b628d82460".hashCode()%10);
}
@Test
public void test() {
......
......@@ -17,7 +17,7 @@ public class FileUtils3 {
public static List<String> getText(){
List<String> list = new ArrayList<>();
try {
BufferedReader bw = new BufferedReader(new FileReader(new File("c:\\b.txt"))) ;
BufferedReader bw = new BufferedReader(new FileReader(new File("d:\\json.txt"))) ;
StringBuilder sb = new StringBuilder() ;
while(true) {
String s = bw.readLine() ;
......
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.content.api.qdto.activity.ContentActivityQDTO;
import com.gic.haoban.manage.api.dto.WxEnterpriseQwDTO;
import com.gic.haoban.manage.api.dto.chat.GroupChatActivityHmDTO;
import com.gic.haoban.manage.api.dto.chat.GroupChatActivityRewardDTO;
import com.gic.haoban.manage.api.dto.chat.GroupChatActivityRewardDetailDTO;
......@@ -12,9 +14,12 @@ import com.gic.haoban.manage.api.service.chat.GroupChatActivityApiService;
import com.gic.haoban.manage.api.service.chat.GroupChatActivityShareApiService;
import com.gic.haoban.manage.service.pojo.bo.chat.GroupChatActivityBaseContext;
import com.gic.haoban.manage.service.pojo.bo.chat.GroupChatActivityContext;
import com.gic.haoban.manage.service.service.WxEnterpriseService;
import com.gic.haoban.manage.service.service.chat.GroupChatActivityInviteLogService;
import com.gic.haoban.manage.service.service.chat.GroupChatActivityRewardLogService;
import com.gic.haoban.manage.service.service.chat.GroupChatActivityService;
import com.gic.wechat.api.dto.qywx.chat.GroupChatListDTO;
import com.gic.wechat.api.service.qywx.QywxChatApiService;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.slf4j.Logger;
......@@ -39,6 +44,21 @@ public class GroupChatTest {
private GroupChatActivityShareApiService groupChatActivityShareApiService;
@Autowired
private GroupChatActivityInviteLogService groupChatActivityInviteLogService;
@Autowired
private WxEnterpriseService wxEnterpriseService ;
@Autowired
private QywxChatApiService qywxChatApiService ;
@Test
public void test() {
String wxEnterpriseId = "4b18675afa7e4dfaa7b9c66b11ca6474";
WxEnterpriseQwDTO qwDTO = this.wxEnterpriseService.getQwInfo(wxEnterpriseId);
ServiceResponse<GroupChatListDTO> resp = this.qywxChatApiService.groupchatList(qwDTO.getThirdCorpid(),
qwDTO.getSelf3thSecret() , Arrays.asList("15277046187","17703215186"), 1, null , qwDTO.isSelf(), qwDTO.getUrlHost());
System.out.println("*****************同步群列表"+JSON.toJSONString(resp));
}
@Test
public void saveActivity() throws Exception{
......
......@@ -151,7 +151,7 @@ public class HmPageServiceTest {
@Test
public void groupNameCheckTest(){
ServiceResponse<List<HmGroupDTO>> ms = groupService.queryGroupListByName("", "ff8080815dacd3a2015dacd3ef5c0000", "测试006");
ServiceResponse<List<HmGroupDTO>> ms = groupService.queryGroupListByName("", "ff8080815dacd3a2015dacd3ef5c0000", "测试006\uD83E\uDD51");
System.out.println(JSON.toJSONString(ms));
}
......
import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.DateUtil;
import com.gic.haoban.manage.api.dto.ContentMaterialDTO;
import com.gic.haoban.manage.api.dto.StaffClerkRelationDTO;
import com.gic.haoban.manage.api.dto.WxEnterpriseQwDTO;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanDTO;
import com.gic.haoban.manage.api.qdto.moment.PlanClerkListQDTO;
import com.gic.haoban.manage.api.qdto.moment.PlanDataListQDTO;
import com.gic.haoban.manage.api.qdto.moment.QwMomentPlanQDTO;
import com.gic.haoban.manage.api.qdto.moment.SendResultQDTO;
import com.gic.haoban.manage.api.service.moment.QwMomentApiService;
import com.gic.haoban.manage.service.dao.mapper.StaffMapper;
import com.gic.haoban.manage.service.dao.mapper.moment.QwMomentPlanAttendMapper;
import com.gic.haoban.manage.service.dao.mapper.moment.QwMomentPlanMapper;
import com.gic.haoban.manage.service.entity.TabHaobanStaff;
import com.gic.haoban.manage.service.entity.moment.TabQwMomentPlan;
import com.gic.haoban.manage.service.entity.moment.TabQwMomentPlanAttend;
import com.gic.haoban.manage.service.service.WxEnterpriseService;
import com.gic.haoban.manage.service.service.chat.GroupChatPlanService;
import com.gic.haoban.manage.service.service.content.impl.GroupMessageServiceImpl;
import com.gic.haoban.manage.service.service.moment.QwMomentPlanService;
import com.gic.wechat.api.dto.qdto.group.QywxMomentInfoQDTO;
import com.gic.wechat.api.dto.qywx.group.QywxMomentRespDTO;
import com.gic.wechat.api.service.qywx.QywxExternalUserService;
import com.gic.wechat.api.service.qywx.QywxSuiteApiService;
import org.apache.commons.collections.CollectionUtils;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import java.util.*;
import java.util.stream.Collectors;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"classpath:applicationContext-conf.xml"})
public class MomentTest {
@Autowired
private QwMomentApiService qwMomentApiService ;
@Autowired
private WxEnterpriseService wxEnterpriseService ;
@Autowired
private QywxExternalUserService qywxExternalUserService ;
@Autowired
private QwMomentPlanService qwMomentPlanService ;
@Autowired
private QwMomentPlanMapper qwMomentPlanMapper ;
@Autowired
private QwMomentPlanAttendMapper qwMomentPlanAttendMapper ;
@Test
public void ddd() {
/* QwMomentPlanDTO dto = new QwMomentPlanDTO() ;
dto.setPublishType(1);
dto.setPublishTime(new Date());
dto.setWxEnterpriseId("ca66a01b79474c40b3e7c7f93daf1a3b");
dto.setCreatorId("fefd1c81641711e69d0818c58a146fd2");
dto.setCreatorName("达摩管理");
dto.setEnterpriseId("ff8080815dacd3a2015dacd3ef5c0000");
dto.setExecType(1);
dto.setExpireDays(10);
dto.setPlanClerkType(1);
// ,"b2ef17cce11f476b996d0b27ebadf7fb"
List<String> clerkIds = Arrays.asList("b2ef17cce11f476b996d0b27ebadf7fb","753a367d709d40a38b17ed25847d3b4b") ;
dto.setSelectClerkIdList(clerkIds);
this.qwMomentApiService.save(dto) ;*/
Long planId = 772924621895778364L ;
TabQwMomentPlan plan = this.qwMomentPlanMapper.getById(planId) ;
this.qwMomentPlanService.sendToQiwei(plan);
}
@Test
public void page() {
QwMomentPlanQDTO qdto = new QwMomentPlanQDTO();
qdto.setEnterpriseId("123");
qdto.setWxEnterpriseId("123");
qdto.setExecType(1);
qdto.setStatusFlag(1);
qdto.setStartTime(new Date());
qdto.setEndTime(new Date());
qdto.setNameParams("123");
qdto.setPageNum(1);
qdto.setPageSize(2);
this.qwMomentApiService.planList(qdto) ;
}
@Test
public void dataPage() {
PlanDataListQDTO qdto = new PlanDataListQDTO();
qdto.setPlanId(1111l);
qdto.setPageNum(1);
qdto.setPageSize(2);
qdto.setStaffName("111");
qdto.setClerkParams("2222");
qdto.setType(1);
this.qwMomentApiService.dataList(qdto) ;
}
@Test
public void clerkPage() {
PlanClerkListQDTO qdto = new PlanClerkListQDTO();
qdto.setPlanId(1111l);
qdto.setPageNum(1);
qdto.setPageSize(2);
qdto.setStaffName("111");
qdto.setClerkParams("2222");
this.qwMomentApiService.attendList(qdto) ;
}
@Test
public void getmomentid() {
String wxEnterpriseId = "ca66a01b79474c40b3e7c7f93daf1a3b";
String jobId = "kyy1q5PYkElEGL6BISXVKkKZPD-Lpq76iGKEn8Z1nU4OBh9487Ni70dA638plHpD";
WxEnterpriseQwDTO qwDTO = this.wxEnterpriseService.getQwInfo(wxEnterpriseId);
ServiceResponse<Object> resp2 = this.qywxExternalUserService.getMomentTaskResult(qwDTO.getThirdCorpid(),
qwDTO.getSelf3thSecret(), jobId, qwDTO.isSelf(),qwDTO.getUrlHost()) ;
System.out.println(JSONObject.toJSONString(resp2));
}
@Test
public void data() {
Long planId = 773211358316478465L ;
// this.qwMomentPlanService.getQwData(planId);
this.qwMomentPlanService.getQwPublishData(planId,null);
}
@Autowired
private StaffMapper staffMapper ;
@Autowired
private QywxSuiteApiService qywxSuiteApiService ;
@Test
public void finish() {
/*SendResultQDTO q = new SendResultQDTO() ;
q.setClerkId("2dd543ad1f2e4feab2e5a5c767197858");
q.setWxEnterpriseId("ca66a01b79474c40b3e7c7f93daf1a3b");
q.setStaffId("2c0d179610a04016bf8971ac0f158442");
q.setPlanId(772845323461615680L);
q.setSendTime(new Date(1741760727397l));
this.qwMomentApiService.finishTask(q) ;*/
String staffId = "92a1edc7147e411c9b13ba9e815a6efb";
Date sendTime = DateUtil.strToDate("2025-03-24 13:47:29","yyyy-MM-dd HH:mm:ss") ;
Date startTime = DateUtil.addNumForSecond(sendTime,-10) ;
Date endTime = DateUtil.addNumForMinute(sendTime,1) ;
TabHaobanStaff staff = this.staffMapper.selectByPrimaryKey(staffId) ;
String wxEnterpriseId = staff.getWxEnterpriseId() ;
WxEnterpriseQwDTO qwDTO = this.wxEnterpriseService.getQwInfo(wxEnterpriseId) ;
String wxUserId = staff.getWxUserId() ;
if(qwDTO.needOpenUserId3th()) {
wxUserId = staff.getWxOpenUseId() ;
}
QywxMomentInfoQDTO qywxMomentInfoQDTO = new QywxMomentInfoQDTO();
qywxMomentInfoQDTO.setCorpid(qwDTO.getThirdCorpid());
qywxMomentInfoQDTO.setSuiteid(qwDTO.getSelf3thSecret());
qywxMomentInfoQDTO.setStartTime(startTime.getTime() / 1000);
qywxMomentInfoQDTO.setEndTime(endTime.getTime() / 1000);
qywxMomentInfoQDTO.setCreatorId(wxUserId);
qywxMomentInfoQDTO.setPageSize(1);
ServiceResponse<QywxMomentRespDTO> serviceResponse = qywxSuiteApiService.queryQywxMomentList(qywxMomentInfoQDTO,qwDTO.isSelf(),qwDTO.getUrlHost());
System.out.println(JSONObject.toJSONString(serviceResponse));
}
}
This source diff could not be displayed because it is too large. You can view the blob instead.
package com.gic.haoban.manage.web.controller.moment;
import com.alibaba.fastjson.JSON;
import com.gic.api.base.commons.BasePageInfo;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.DateUtil;
import com.gic.commons.util.EntityUtil;
import com.gic.enterprise.api.dto.EnterpriseDTO;
import com.gic.enterprise.api.dto.StoreDTO;
import com.gic.enterprise.api.service.StoreService;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanAttendDTO;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanDTO;
import com.gic.haoban.manage.api.qdto.moment.PlanClerkListQDTO;
import com.gic.haoban.manage.api.qdto.moment.PlanDataListQDTO;
import com.gic.haoban.manage.api.qdto.moment.QwMomentPlanQDTO;
import com.gic.haoban.manage.api.service.moment.QwMomentApiService;
import com.gic.haoban.manage.web.vo.moment.MomentClerkExcelVO;
import com.gic.haoban.manage.web.vo.moment.MomentPlanExcelVO;
import com.gic.web.common.download.DownloadHandlerAbstract;
import com.gic.web.common.download.context.Context;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.*;
@Service
public class MomentClerkExcelHandler extends DownloadHandlerAbstract<MomentClerkExcelVO> {
@Autowired
private QwMomentApiService qwMomentApiService ;
@Autowired
private StoreService storeService ;
@Override
public List<MomentClerkExcelVO> getData(Context context, String json, Integer currentPage) {
PlanClerkListQDTO qdto = JSON.parseObject(json, PlanClerkListQDTO.class);
BasePageInfo pageInfo = new BasePageInfo() ;
pageInfo.setPageSize(this.getPageSize());
pageInfo.setPageNum(currentPage);
ServiceResponse<QwMomentPlanDTO> detaiResp = this.qwMomentApiService.detail(qdto.getPlanId()) ;
boolean isEnd = detaiResp.getResult().getStatusFlag()==2 || detaiResp.getResult().getEndDate().getTime()<System.currentTimeMillis() ;
ServiceResponse<Page<QwMomentPlanAttendDTO>> pageResp = this.qwMomentApiService.attendList(qdto);
List<MomentClerkExcelVO> voList = new ArrayList<>();
if (null != pageResp && CollectionUtils.isNotEmpty(pageResp.getResult().getResult())) {
for(QwMomentPlanAttendDTO item : pageResp.getResult().getResult()) {
MomentClerkExcelVO vo = EntityUtil.changeEntityByJSON(MomentClerkExcelVO.class,item) ;
if(StringUtils.isNotBlank(vo.getStoreId())) {
StoreDTO store = this.storeService.getStore(vo.getStoreId());
vo.setStoreName(store.getStoreName());
vo.setStoreCode(store.getStoreCode());
}
Date sendTime = vo.getSendTime() ;
if(null != sendTime) {
vo.setSendTimeExcel(DateUtil.dateToStr(sendTime,"yyyy-MM-dd HH:mm:ss"));
}
int taskStatus = vo.getTaskStatus();
String taskStatusExcel = "未完成" ;
if(taskStatus==2) {
taskStatusExcel = "已完成" ;
}else {
if(isEnd) {
taskStatusExcel = "已失效" ;
}
}
vo.setTaskStatusExcel(taskStatusExcel);
voList.add(vo) ;
}
}
return voList;
}
@Override
public List<String> getColumnNames() {
return Arrays.asList();
}
@Override
public List<String> getColumnNames(Context context) {
String json = context.getDownloadReportDTO().getSearchDataParams();
PlanClerkListQDTO qdto = JSON.parseObject(json, PlanClerkListQDTO.class);
if(qdto.getStatusFlag()==1) {
return Arrays.asList("员工姓名", "员工id" , "导购名称", "导购code","所属门店名称", "门店code","完成情况","发布时间","点赞数","评论数");
}else {
return Arrays.asList("员工姓名", "员工id" , "导购名称", "导购code","所属门店名称", "门店code","下发失败原因");
}
}
@Override
public List<String> getColumns(Context context) {
String json = context.getDownloadReportDTO().getSearchDataParams();
PlanClerkListQDTO qdto = JSON.parseObject(json, PlanClerkListQDTO.class);
if(qdto.getStatusFlag()==1) {
return Arrays.asList("staffName", "staffId", "clerkName", "clerkCode","storeName", "storeCode","taskStatusExcel","sendTimeExcel","likeCount","commentCount");
}else {
return Arrays.asList("staffName", "staffId", "clerkName", "clerkCode","storeName", "storeCode","reason");
}
}
@Override
public LinkedHashMap<String, List<String>> doubleColumnNames() {
return null;
}
@Override
public List<String> getColumns() {
return Arrays.asList();
}
}
package com.gic.haoban.manage.web.controller.moment;
import com.alibaba.fastjson.JSON;
import com.gic.api.base.commons.BasePageInfo;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.DateUtil;
import com.gic.commons.util.EntityUtil;
import com.gic.enterprise.api.dto.EnterpriseDTO;
import com.gic.enterprise.api.dto.StoreDTO;
import com.gic.enterprise.api.service.StoreService;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanDTO;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanDataDTO;
import com.gic.haoban.manage.api.qdto.moment.PlanDataListQDTO;
import com.gic.haoban.manage.api.qdto.moment.QwMomentPlanQDTO;
import com.gic.haoban.manage.api.service.moment.QwMomentApiService;
import com.gic.haoban.manage.web.vo.moment.MomentDataExcelVO;
import com.gic.haoban.manage.web.vo.moment.MomentPlanExcelVO;
import com.gic.haoban.manage.web.vo.moment.QwMomentPlanDataVO;
import com.gic.member.api.dto.es.MemberDataDTO;
import com.gic.web.common.download.DownloadHandlerAbstract;
import com.gic.web.common.download.context.Context;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.*;
import java.util.stream.Collectors;
@Service
public class MomentDataExcelHandler extends DownloadHandlerAbstract<MomentDataExcelVO> {
@Autowired
private QwMomentApiService qwMomentApiService ;
@Autowired
private StoreService storeService ;
@Autowired
private QwMomentController qwMomentController ;
@Override
public List<MomentDataExcelVO> getData(Context context, String json, Integer currentPage) {
PlanDataListQDTO qdto = JSON.parseObject(json, PlanDataListQDTO.class);
BasePageInfo pageInfo = new BasePageInfo() ;
pageInfo.setPageSize(this.getPageSize());
pageInfo.setPageNum(currentPage);
ServiceResponse<Page<QwMomentPlanDataDTO>> pageResp = this.qwMomentApiService.dataList(qdto);
List<MomentDataExcelVO> voList = new ArrayList<>();
if (null != pageResp && CollectionUtils.isNotEmpty(pageResp.getResult().getResult())) {
for(QwMomentPlanDataDTO item : pageResp.getResult().getResult()) {
MomentDataExcelVO vo = EntityUtil.changeEntityByJSON(MomentDataExcelVO.class,item) ;
if(qdto.getType()==1 && null != vo.getLikeTime()) {
vo.setTimeExcel(DateUtil.dateToStr(vo.getLikeTime(),"yyyy-MM-dd HH:mm:ss"));
}
if(qdto.getType()==2 && null != vo.getCommentTime()) {
vo.setTimeExcel(DateUtil.dateToStr(vo.getCommentTime(),"yyyy-MM-dd HH:mm:ss"));
}
if(StringUtils.isNotBlank(vo.getStoreId())) {
StoreDTO store = this.storeService.getStore(vo.getStoreId());
vo.setStoreName(store.getStoreName());
vo.setStoreCode(store.getStoreCode());
}
voList.add(vo) ;
}
List<String> memberIdList = voList.stream().map(o->o.getMemberId()).collect(Collectors.toList());
Map<String, MemberDataDTO> map = this.qwMomentController.getMemberMap(qdto.getEnterpriseId(),memberIdList) ;
for (MomentDataExcelVO vo : voList) {
String memberId = vo.getMemberId() ;
if(null == map.get(memberId)) {
vo.setMemberScene(2);
}else {
MemberDataDTO data = map.get(memberId) ;
vo.setMemberName(data.getName());
vo.setMemberNick(data.getNickName());
vo.setMemberCard(data.getCardNo());
vo.setMemberImage(data.getPhotoUrl());
vo.setMemberPhone(data.getPhoneNumber());
vo.setMemberScene(3);
}
}
}
return voList;
}
@Override
public List<String> getColumnNames() {
return new ArrayList<>() ;
}
@Override
public List<String> getColumnNames(Context context) {
String json = context.getDownloadReportDTO().getSearchDataParams();
PlanDataListQDTO qdto = JSON.parseObject(json, PlanDataListQDTO.class);
if(qdto.getType()==1) {
return Arrays.asList("员工姓名", "导购名称", "导购code","所属门店名称", "门店code","客户姓名","客户手机号","点赞时间");
}else {
return Arrays.asList("员工姓名", "导购名称", "导购code","所属门店名称", "门店code","客户姓名","客户手机号","评论时间");
}
}
@Override
public LinkedHashMap<String, List<String>> doubleColumnNames() {
return null;
}
@Override
public List<String> getColumns() {
return Arrays.asList("staffName", "clerkName", "clerkCode","storeName", "storeCode","memberName","memberPhone","timeExcel");
}
}
package com.gic.haoban.manage.web.controller.moment;
import com.alibaba.fastjson.JSON;
import com.gic.api.base.commons.BasePageInfo;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.EntityUtil;
import com.gic.enterprise.api.dto.EnterpriseDTO;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanDTO;
import com.gic.haoban.manage.api.qdto.moment.QwMomentPlanQDTO;
import com.gic.haoban.manage.api.service.moment.QwMomentApiService;
import com.gic.haoban.manage.web.vo.moment.MomentPlanExcelVO;
import com.gic.web.common.download.DownloadHandlerAbstract;
import com.gic.web.common.download.context.Context;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.LinkedHashMap;
import java.util.List;
@Service
public class MomentPlanExcelHandler extends DownloadHandlerAbstract<MomentPlanExcelVO> {
@Autowired
private QwMomentApiService qwMomentApiService ;
@Override
public List<MomentPlanExcelVO> getData(Context context, String json, Integer currentPage) {
QwMomentPlanQDTO qdto = JSON.parseObject(json, QwMomentPlanQDTO.class);
BasePageInfo pageInfo = new BasePageInfo() ;
pageInfo.setPageSize(this.getPageSize());
pageInfo.setPageNum(currentPage);
ServiceResponse<Page<QwMomentPlanDTO>> pageResp = this.qwMomentApiService.planList(qdto);
List<MomentPlanExcelVO> voList = new ArrayList<>();
if (null != pageResp && CollectionUtils.isNotEmpty(pageResp.getResult().getResult())) {
for(QwMomentPlanDTO item : pageResp.getResult().getResult()) {
MomentPlanExcelVO vo = EntityUtil.changeEntityByJSON(MomentPlanExcelVO.class,item) ;
int execType = vo.getExecType() ;
String execTypeExcel = "企业快捷发布" ;
if(execType==1) {
execTypeExcel = "好办小程序发布" ;
}
vo.setExecTypeExcel(execTypeExcel);
int statusFlag = vo.getStatusFlag() ;
String statusFlagExcel = "进行中" ;
if(statusFlag==2) {
statusFlagExcel = "已终止" ;
}else {
if (vo.getBeginDate().getTime() > System.currentTimeMillis()) {
statusFlagExcel = "未开始" ;
}else if(vo.getEndDate().getTime() < System.currentTimeMillis()) {
statusFlagExcel = "已结束" ;
}
}
if(null != vo.getExecRate() && vo.getExecRate() > 0) {
vo.setExecRateFloat(BigDecimal.valueOf(vo.getExecRate()).divide(BigDecimal.valueOf(100),2,2).doubleValue());
}
vo.setStatusFlagExcel(statusFlagExcel);
voList.add(vo) ;
}
}
return voList;
}
@Override
public List<String> getColumnNames() {
return Arrays.asList("活动信息", "执行方式","活动状态","下发任务数","完成任务数","完成率","点赞数","评论数");
}
@Override
public LinkedHashMap<String, List<String>> doubleColumnNames() {
return null;
}
@Override
public List<String> getColumns() {
return Arrays.asList("title", "execTypeExcel", "statusFlagExcel","taskClerkNum", "doneNum","execRateFloat","totalLikeCount","totalCommentCount");
}
}
package com.gic.haoban.manage.web.qo.moment;
import com.gic.api.base.commons.BasePageInfo;
import java.util.Date;
public class PlanClerkListQO extends BasePageInfo {
private Long planId ;
/**
* 成员名称
*/
private String staffName ;
/**
* 导购条件
*/
private String clerkParams ;
/**
* 0已失效 1待完成 2已完成
*/
private Integer sendStatus ;
private Date startTime ;
private Date endTime ;
/**
* 排序字段 完成率:exec_rate 点赞:like_count 评论:comment_count
*/
private String sortColumn ;
/**
* desc / asc
*/
private String sortType ;
/**
* 0待下发 1已下发 2下发失败
*/
private String statusFlag ;
public String getStatusFlag() {
return statusFlag;
}
public void setStatusFlag(String statusFlag) {
this.statusFlag = statusFlag;
}
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public String getSortColumn() {
return sortColumn;
}
public void setSortColumn(String sortColumn) {
this.sortColumn = sortColumn;
}
public String getSortType() {
return sortType;
}
public void setSortType(String sortType) {
this.sortType = sortType;
}
public String getStaffName() {
return staffName;
}
public void setStaffName(String staffName) {
this.staffName = staffName;
}
public String getClerkParams() {
return clerkParams;
}
public void setClerkParams(String clerkParams) {
this.clerkParams = clerkParams;
}
public Integer getSendStatus() {
return sendStatus;
}
public void setSendStatus(Integer sendStatus) {
this.sendStatus = sendStatus;
}
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
public Date getEndTime() {
return endTime;
}
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
}
package com.gic.haoban.manage.web.qo.moment;
import com.gic.api.base.commons.BasePageInfo;
import java.util.Date;
public class PlanDataListQO extends BasePageInfo {
private Long planId ;
/**
* 成员名称
*/
private String staffName ;
/**
* 导购条件
*/
private String clerkParams ;
/**
* 1点赞 2评论
*/
private Integer type ;
private Date startTime ;
private Date endTime ;
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public Integer getType() {
return type;
}
public void setType(Integer type) {
this.type = type;
}
public String getStaffName() {
return staffName;
}
public void setStaffName(String staffName) {
this.staffName = staffName;
}
public String getClerkParams() {
return clerkParams;
}
public void setClerkParams(String clerkParams) {
this.clerkParams = clerkParams;
}
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
public Date getEndTime() {
return endTime;
}
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
}
package com.gic.haoban.manage.web.qo.moment;
import com.gic.api.base.commons.BasePageInfo;
import java.util.Date;
public class PlanListQO extends BasePageInfo {
/**
* 活动名称或id
*/
private String nameParams ;
/**
* 执行方式
*/
private Integer execType ;
/**
* 1进行中 2终止 0未开始 3 已结束
*/
private Integer statusFlag ;
/**
* 开始时间
*/
private Date startTime ;
/**
* 结束时间
*/
private Date endTime ;
// 仅看自己 1是0否
private int showSelfFlag ;
/**
* 排序字段 完成率:exec_rate 点赞:total_like_count 评论:total_comment_count
*/
private String sortColumn ;
/**
* desc / asc
*/
private String sortType ;
public String getSortColumn() {
return sortColumn;
}
public void setSortColumn(String sortColumn) {
this.sortColumn = sortColumn;
}
public String getSortType() {
return sortType;
}
public void setSortType(String sortType) {
this.sortType = sortType;
}
public String getNameParams() {
return nameParams;
}
public void setNameParams(String nameParams) {
this.nameParams = nameParams;
}
public Integer getExecType() {
return execType;
}
public void setExecType(Integer execType) {
this.execType = execType;
}
public Integer getStatusFlag() {
return statusFlag;
}
public void setStatusFlag(Integer statusFlag) {
this.statusFlag = statusFlag;
}
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
public Date getEndTime() {
return endTime;
}
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
public int getShowSelfFlag() {
return showSelfFlag;
}
public void setShowSelfFlag(int showSelfFlag) {
this.showSelfFlag = showSelfFlag;
}
}
package com.gic.haoban.manage.web.qo.moment;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
*
* @ClassName: TabHaobanQwMomentPlan
* @Description: TODO
* @Author 徐高华
* @Date 2025年03月05日 10:27:20
* @Modify
* @CopyRight 杭州
*/
public class QwMomentPlanQO implements Serializable {
private static final long serialVersionUID = 67027585759300L;
private Long planId ;
/**
* 名称
*/
private String title;
/**
* 描述
*/
private String remark;
/**
* 几天后失效
*/
private int expireDays;
/**
* 执行方式 0企微1好办小程序
*/
private int execType;
/**
* 1立即发布2定时发布
*/
private Integer publishType;
/**
* 发布时间
*/
private Date publishTime;
/**
* 0全部导购 1部分导购
*/
private Integer planClerkType;
/**
* 0自主上传 1内容
*/
private Integer mediaType;
/**
* 素材json
*/
private String mediaInfo;
/**
* 素材回显内容
*/
private String mediaInfoShow;
// 选择的导购id列表
private List<String> selectClerkIdList ;
/**
* 链接开关
*/
private Integer mediaLinkFlag ;
public Integer getMediaLinkFlag() {
return mediaLinkFlag;
}
public void setMediaLinkFlag(Integer mediaLinkFlag) {
this.mediaLinkFlag = mediaLinkFlag;
}
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public List<String> getSelectClerkIdList() {
return selectClerkIdList;
}
public void setSelectClerkIdList(List<String> selectClerkIdList) {
this.selectClerkIdList = selectClerkIdList;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public int getExpireDays() {
return expireDays;
}
public void setExpireDays(int expireDays) {
this.expireDays = expireDays;
}
public int getExecType() {
return execType;
}
public void setExecType(int execType) {
this.execType = execType;
}
public Integer getPublishType() {
return publishType;
}
public void setPublishType(Integer publishType) {
this.publishType = publishType;
}
public Date getPublishTime() {
return publishTime;
}
public void setPublishTime(Date publishTime) {
this.publishTime = publishTime;
}
public Integer getPlanClerkType() {
return planClerkType;
}
public void setPlanClerkType(Integer planClerkType) {
this.planClerkType = planClerkType;
}
public Integer getMediaType() {
return mediaType;
}
public void setMediaType(Integer mediaType) {
this.mediaType = mediaType;
}
public String getMediaInfo() {
return mediaInfo;
}
public void setMediaInfo(String mediaInfo) {
this.mediaInfo = mediaInfo;
}
public String getMediaInfoShow() {
return mediaInfoShow;
}
public void setMediaInfoShow(String mediaInfoShow) {
this.mediaInfoShow = mediaInfoShow;
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment