Commit 6ec9d372 by 徐高华

朋友圈

parent 858e5dfc
......@@ -3,15 +3,6 @@ package com.gic.haoban.manage.api.dto.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 QwMomentPlanAttendDTO implements Serializable{
private static final long serialVersionUID = 85681326319600L;
......
......@@ -4,15 +4,6 @@ import java.io.Serializable ;
import java.util.Date;
import java.util.List;
/**
*
* @ClassName: TabHaobanQwMomentPlan
* @Description: TODO
* @Author 徐高华
* @Date 2025年03月05日 15:46:30
* @Modify
* @CopyRight 杭州
*/
public class QwMomentPlanDTO implements Serializable{
private static final long serialVersionUID = 85646353131100L;
......
......@@ -3,15 +3,7 @@ package com.gic.haoban.manage.api.dto.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 QwMomentPlanDataDTO implements Serializable{
private static final long serialVersionUID = 69664410786500L;
......
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 linkCount ;
/**
* 评论数
*/
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 getLinkCount() {
return linkCount;
}
public void setLinkCount(int linkCount) {
this.linkCount = linkCount;
}
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 String clerkId ;
/**
* 执行导购名称
*/
private String clerkName ;
/**
* 任务名称
*/
private String name ;
/**
* 任务描述
*/
private String remark ;
/**
* 开始时间
*/
private Date startTime ;
/**
* 结束时间
*/
private Date endTime ;
/**
* 点赞数
*/
private int linkCount ;
/**
* 评论数
*/
private int commentCount ;
/**任务执行完成时间*/
private Date sendTime ;
/**
* 执行方式 0企微1好办小程序
*/
private int execType ;
/**
* 数据更新时间
*/
private Date qwDataTime ;
// 0已失效1待执行 2已执行
private Integer taskStatus ;
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 getLinkCount() {
return linkCount;
}
public void setLinkCount(int linkCount) {
this.linkCount = linkCount;
}
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 linkCount ;
/**
* 评论数
*/
private int commentCount ;
// 0已失效1待执行 2已执行
private Integer taskStatus ;
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 getLinkCount() {
return linkCount;
}
public void setLinkCount(int linkCount) {
this.linkCount = linkCount;
}
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.qdto.moment;
import java.io.Serializable;
public class PlanListWxaQDTO implements Serializable {
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 java.io.Serializable;
public class TaskListWxaQDTO implements Serializable {
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;
}
}
......@@ -2,12 +2,8 @@ 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.QwMomentPlanAttendDTO;
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.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.dto.moment.*;
import com.gic.haoban.manage.api.qdto.moment.*;
public interface QwMomentApiService {
......@@ -38,4 +34,33 @@ public interface QwMomentApiService {
*/
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);
}
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 org.apache.ibatis.annotations.Param;
......@@ -11,8 +14,6 @@ public interface QwMomentPlanAttendMapper {
void batchInsert(List<TabQwMomentPlanAttend> list) ;
void update(TabQwMomentPlanAttend dto) ;
/**
* 查询已经存在的导购
* @param planId
......@@ -32,4 +33,8 @@ public interface QwMomentPlanAttendMapper {
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);
List<TaskListWxaDTO> taskListWxa(TaskListWxaQDTO qdto);
}
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.service.entity.moment.TabQwMomentPlan;
import org.apache.ibatis.annotations.Param;
......@@ -22,4 +24,6 @@ public interface QwMomentPlanMapper {
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);
}
......@@ -3,7 +3,10 @@ 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.TaskListWxaQDTO;
import java.util.List;
......@@ -18,4 +21,7 @@ public interface QwMomentPlanAttendService {
*/
void saveClerk(String enterpriseId, Long planId , List<String> clerkIdList) ;
ServiceResponse<TaskDetailDTO> taskDetail(Long planId, String execClerkId);
ServiceResponse<Page<TaskListWxaDTO>> taskListWxa(TaskListWxaQDTO qdto);
}
......@@ -3,7 +3,10 @@ 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;
public interface QwMomentPlanService {
......@@ -20,4 +23,7 @@ public interface QwMomentPlanService {
void initTaskClerk(String params);
void sendPlanNoticeTimer(String params);
ServiceResponse<Integer> getTaskNum(TaskNumQDTO qdto);
ServiceResponse<Page<QwMomentPlanWxaDTO>> planListWxa(PlanListWxaQDTO qdto);
}
......@@ -7,10 +7,11 @@ import com.gic.clerk.api.service.ClerkService;
import com.gic.commons.util.PageHelperUtils;
import com.gic.commons.util.UniqueIdUtils;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanAttendDTO;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanDTO;
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.dao.mapper.moment.QwMomentPlanAttendMapper;
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.moment.QwMomentPlanAttendService;
import com.github.pagehelper.PageHelper;
......@@ -20,7 +21,6 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
......@@ -76,6 +76,7 @@ public class QwMomentPlanAttendServiceImpl implements QwMomentPlanAttendService
attend.setClerkId(clerkId);
attend.setClerkCode(clerkDTO.getClerkCode());
attend.setClerkName(clerkDTO.getClerkName());
attend.setStoreId(clerkDTO.getStoreId());
list.add(attend) ;
}
}
......@@ -83,4 +84,17 @@ public class QwMomentPlanAttendServiceImpl implements QwMomentPlanAttendService
}
@Override
public ServiceResponse<TaskDetailDTO> taskDetail(Long planId, String execClerkId) {
TaskDetailDTO dto = this.qwMomentPlanAttendMapper.taskDetail(planId,execClerkId) ;
return ServiceResponse.success(dto);
}
@Override
public ServiceResponse<Page<TaskListWxaDTO>> taskListWxa(TaskListWxaQDTO qdto) {
PageHelper.startPage(qdto);
List<TaskListWxaDTO> list = this.qwMomentPlanAttendMapper.taskListWxa(qdto);
Page<TaskListWxaDTO> retPage = PageHelperUtils.changePageHelperToCurrentPage(list, TaskListWxaDTO.class);
return ServiceResponse.success(retPage);
}
}
......@@ -17,7 +17,10 @@ import com.gic.haoban.manage.api.dto.StaffClerkRelationDTO;
import com.gic.haoban.manage.api.dto.WxEnterpriseQwDTO;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanAttendDTO;
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.api.service.StaffClerkRelationApiService;
import com.gic.haoban.manage.service.dao.mapper.moment.QwMomentPlanAttendMapper;
import com.gic.haoban.manage.service.dao.mapper.moment.QwMomentPlanMapper;
......@@ -91,6 +94,18 @@ public class QwMomentPlanServiceImpl implements QwMomentPlanService {
return ServiceResponse.success(retPage);
}
@Override
public ServiceResponse<Page<QwMomentPlanWxaDTO>> planListWxa(PlanListWxaQDTO qdto) {
PageHelper.startPage(qdto);
if(StringUtils.isNotEmpty(qdto.getName())) {
qdto.setNameLike("%"+qdto.getName()+"%");
}
List<QwMomentPlanWxaDTO> list = this.qwMomentPlanMapper.planListWxa(qdto);
Page<QwMomentPlanWxaDTO> retPage = PageHelperUtils.changePageHelperToCurrentPage(list, QwMomentPlanWxaDTO.class);
return ServiceResponse.success(retPage);
}
@Override
public ServiceResponse<QwMomentPlanDTO> save(QwMomentPlanDTO dto) {
logger.info("保存朋友圈活动={}", JSONObject.toJSONString(dto));
......@@ -318,6 +333,10 @@ public class QwMomentPlanServiceImpl implements QwMomentPlanService {
qwDTO.getSelf3thSecret(), jobId,qwDTO.isSelf(),qwDTO.getUrlHost()) ;
logger.info("获取moment_id={}",JSONObject.toJSONString(resp2));
String moment_id = resp2.getResult().toString() ;
}
@Override
public ServiceResponse<Integer> getTaskNum(TaskNumQDTO qdto) {
return null;
}
}
......@@ -2,12 +2,8 @@ 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.QwMomentPlanAttendDTO;
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.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.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;
......@@ -68,4 +64,25 @@ public class QwMomentApiServiceImpl implements QwMomentApiService {
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) ;
}
}
......@@ -90,6 +90,57 @@
and delete_flag = 0
</select>
<select id="taskDetail" resultType="com.gic.haoban.manage.api.dto.moment.TaskDetailDTO">
select
b.title name ,
b.remark remark ,
b.exec_type execType ,
b.begin_date startTime ,
b.end_date endTime ,
a.plan_id planId ,
a.clerk_id clerkId ,
a.clerk_name clerkName ,
a.send_time sendTime ,
a.like_count likeCount ,
a.comment_count commentCount ,
a.qw_data_time qwDataTime ,
a.task_status taskStatus
from tab_haoban_qw_moment_plan_attend a left join tab_haoban_qw_moment_plan b on a.plan_id = b.plan_id
where a.plan_id = #{planId} and a.clerk_id = #{clerkId} and a.delete_flag = 0 and a.status_flag = 1
</select>
<select id="taskListWxa" resultType="com.gic.haoban.manage.api.dto.moment.TaskListWxaDTO"
parameterType="com.gic.haoban.manage.api.qdto.moment.TaskListWxaQDTO">
select
b.title name ,
b.remark remark ,
b.exec_type execType ,
b.begin_date startTime ,
b.end_date endTime ,
a.plan_id planId ,
a.clerk_id clerkId ,
a.clerk_name clerkName ,
a.send_time sendTime ,
a.like_count likeCount ,
a.comment_count commentCount ,
a.qw_data_time qwDataTime ,
a.task_status taskStatus
from tab_haoban_qw_moment_plan_attend a left join tab_haoban_qw_moment_plan b on a.plan_id = b.plan_id
where a.plan_id = #{planId} and a.store_id = #{storeId}
<if test="null != execClerkId">
and a.clerk_id = #{execClerkId}
</if>
<if test="null != taskStatus and taskStatus==0">
and a.task_status = 1 and b.end_date <![CDATA[ <= ]]> now()
</if>
<if test="null != taskStatus and taskStatus==1">
and a.task_status = 1 and b.end_date > now()
</if>
<if test="null != taskStatus and taskStatus==2">
and a.task_status = 2
</if>
</select>
<update id="delClerks">
update tab_haoban_qw_moment_plan_attend set delete_flag = 1 , update_time=now() where plan_id = #{planId}
<if test="null != list">
......@@ -144,64 +195,4 @@
</insert>
<update id="update" parameterType="com.gic.haoban.manage.service.entity.moment.TabQwMomentPlanAttend">
<![CDATA[
UPDATE tab_haoban_qw_moment_plan_attend SET
<if test="null != attendId">
attend_id=#{attendId},
</if>
<if test="null != planId">
plan_id=#{planId},
</if>
<if test="null != wxEnterpriseId">
wx_enterprise_id=#{wxEnterpriseId},
</if>
<if test="null != enterpriseId">
enterprise_id=#{enterpriseId},
</if>
<if test="null != staffId">
staff_id=#{staffId},
</if>
<if test="null != clerkId">
clerk_id=#{clerkId},
</if>
<if test="null != clerkCode">
clerk_code=#{clerkCode},
</if>
<if test="null != clerkName">
clerk_name=#{clerkName},
</if>
<if test="null != createTime">
create_time=#{createTime},
</if>
<if test="null != updateTime">
update_time=#{updateTime},
</if>
<if test="null != deleteFlag">
delete_flag=#{deleteFlag},
</if>
<if test="null != commentCount">
comment_count=#{commentCount},
</if>
<if test="null != likeCount">
like_count=#{likeCount},
</if>
<if test="null != taskStatus">
task_status=#{taskStatus},
</if>
<if test="null != sendTime">
send_time=#{sendTime},
</if>
<if test="null != momentId">
moment_id=#{momentId},
</if>
<if test="null != qwDataTime">
qw_data_time=#{qwDataTime},
</if>
<if test="null != storeId">
store_id=#{storeId}
</if>
]]>
</update>
</mapper>
\ No newline at end of file
......@@ -192,6 +192,35 @@
select <include refid="Base_Column_List" /> from tab_haoban_qw_moment_plan where plan_id =#{planId} and delete_flag = 0
</select>
<select id="planListWxa" resultType="com.gic.haoban.manage.api.dto.moment.QwMomentPlanWxaDTO"
parameterType="com.gic.haoban.manage.api.qdto.moment.PlanListWxaQDTO">
select a.plan_id planId ,
a.title title ,
a.begin_date startTime ,
a.end_date endTime ,
sum(ifnull(a.total_like_count,0)) likeCount ,
sum(ifnull(a.total_comment_count,0)) commentCount ,
count(1) totalNum,
sum(IF(b.task_status = 2, 1, 0 )) AS execNum,
SUM(IF(b.task_status = 1 AND end_date >= NOW() , 1, 0 )) AS notExecNum
from tab_haoban_qw_moment_plan a left join tab_haoban_qw_moment_plan_attend b on a.plan_id = b.plan_id
where a.wx_enterprise_id=#{wxEnterpriseId} and a.enterprise_id=#{enterpriseId} and b.store_id=#{storeId}
and b.status_flag = 1
<if test="null != clerkId">and b.clerk_id = #{clerkId}
</if>
<if test="null != nameLike">
and a.name like #{nameLike}
</if>
group by a.plan_id
<if test="planStatus==0">
having notExecNum > 0
</if>
<if test="planStatus==1">
having notExecNum = 0
</if>
</select>
<select id="list" resultMap="result-map-tabHaobanQwMomentPlan"
parameterType="com.gic.haoban.manage.api.qdto.moment.QwMomentPlanQDTO">
select <include refid="Base_Column_List"/> from tab_haoban_qw_moment_plan where wx_enterprise_id=#{wxEnterpriseId} and enterprise_id = #{enterpriseId}
......@@ -227,6 +256,7 @@
and delete_flag = 0 order by ${sortColumn} ${sortType}
</select>
<update id="del" parameterType="java.lang.Long">
update tab_haoban_qw_moment_plan set delete_flag = 1 where plan_id = #{planId}
</update>
......
package com.gic.haoban.manage.web.controller.moment;
import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.clerk.api.dto.ClerkDTO;
import com.gic.clerk.api.service.ClerkService;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.util.PageHelperUtils;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanWxaDTO;
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.PlanListWxaQDTO;
import com.gic.haoban.manage.api.qdto.moment.TaskListWxaQDTO;
import com.gic.haoban.manage.api.qdto.moment.TaskNumQDTO;
import com.gic.haoban.manage.api.service.moment.QwMomentApiService;
import com.gic.haoban.manage.web.qo.moment.PlanClerkListQO;
import com.gic.haoban.manage.web.qo.moment.PlanListQO;
import com.gic.haoban.manage.web.vo.moment.PlanClerkListVO;
import com.gic.haoban.manage.web.vo.moment.PlanDetailVO;
import com.gic.haoban.manage.web.vo.moment.PlanListVO;
import com.gic.haoban.manage.web.vo.moment.TaskDetailVO;
import com.gic.haoban.manage.web.vo.moment.TaskMaterialVO;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
......@@ -26,6 +38,8 @@ public class QwMomentController {
@Autowired
private QwMomentApiService qwMomentApiService ;
@Autowired
private ClerkService clerkService ;
/**
* 获取任务数
......@@ -33,6 +47,15 @@ public class QwMomentController {
@RequestMapping("get-task-num")
@ResponseBody
public RestResponse<Integer> getTaskNum(String wxEnterpriseId , String enterpriseId , String storeId , String clerkId , String staffId) {
TaskNumQDTO qdto = new TaskNumQDTO() ;
qdto.setWxEnterpriseId(wxEnterpriseId);
qdto.setEnterpriseId(enterpriseId);
qdto.setStoreId(storeId);
ClerkDTO clerk = this.clerkService.getclerkById(clerkId) ;
if(0 == clerk.getClerkType()) {
qdto.setClerkId(clerkId);
}
this.qwMomentApiService.getTaskNum(qdto) ;
return RestResponse.successResult(0) ;
}
......@@ -41,7 +64,15 @@ public class QwMomentController {
*/
@RequestMapping("plan-list")
public RestResponse<Page<PlanListVO>> planList(@RequestBody PlanListQO qo) {
return null ;
logger.info("查询活动列表={}", JSONObject.toJSONString(qo));
PlanListWxaQDTO qdto = EntityUtil.changeEntityByJSON(PlanListWxaQDTO.class,qo) ;
ClerkDTO clerk = this.clerkService.getclerkById(qo.getClerkId()) ;
if(0 != clerk.getClerkType()) {
qdto.setClerkId(null);
}
ServiceResponse<Page<QwMomentPlanWxaDTO>> pageResp = this.qwMomentApiService.planListWxa(qdto) ;
Page<PlanListVO> retPage = PageHelperUtils.changePageToCurrentPage(pageResp.getResult(), PlanListVO.class);
return RestResponse.successResult(retPage) ;
}
/**
......@@ -49,15 +80,28 @@ public class QwMomentController {
*/
@RequestMapping("task-list")
public RestResponse<Page<PlanClerkListVO>> taskList(@RequestBody PlanClerkListQO qo) {
return null ;
logger.info("活动下任务列表={}", JSONObject.toJSONString(qo));
TaskListWxaQDTO qdto = EntityUtil.changeEntityByJSON(TaskListWxaQDTO.class,qo) ;
ClerkDTO clerk = this.clerkService.getclerkById(qo.getClerkId()) ;
if(0 != clerk.getClerkType()) {
qdto.setClerkId(null);
}
ServiceResponse<Page<TaskListWxaDTO>> pageResp = this.qwMomentApiService.taskListWxa(qdto) ;
Page<PlanClerkListVO> retPage = PageHelperUtils.changePageToCurrentPage(pageResp.getResult(), PlanClerkListVO.class);
return RestResponse.successResult(retPage) ;
}
/**
* 活动任务详情
*/
@RequestMapping("detail")
public RestResponse<PlanDetailVO> detail(Long planId , String execClerkId) {
return null ;
public RestResponse<TaskDetailVO> detail(Long planId , String execClerkId) {
ServiceResponse<TaskDetailDTO> detailResp = this.qwMomentApiService.taskDetail(planId , execClerkId) ;
if(detailResp.isSuccess()) {
TaskDetailVO vo = EntityUtil.changeEntityByJSON(TaskDetailVO.class,detailResp.getResult()) ;
return RestResponse.successResult(vo) ;
}
return RestResponse.failure("9999",detailResp.getMessage()) ;
}
/**
......@@ -77,5 +121,4 @@ public class QwMomentController {
logger.info("完成任务={}") ;
return null ;
}
}
......@@ -3,7 +3,7 @@ package com.gic.haoban.manage.web.vo.moment;
import java.io.Serializable;
import java.util.Date;
public class PlanDetailVO implements Serializable {
public class TaskDetailVO implements Serializable {
private Long planId ;
......@@ -57,6 +57,11 @@ public class PlanDetailVO implements Serializable {
*/
private Date qwDataTime ;
// 0已失效1待执行 2已执行
private Integer taskStatus ;
public Long getPlanId() {
return planId;
}
......
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