Commit 591bc844 by 徐高华

朋友圈

parent e4e333bf
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;
......@@ -13,139 +15,140 @@ import java.util.List;
* @Modify
* @CopyRight 杭州
*/
public class QwMomentPlanQDTO implements Serializable {
public class QwMomentPlanQDTO extends BasePageInfo {
private static final long serialVersionUID = 67027585759300L;
private String wxEnterpriseId ;
private String enterpriseId ;
/**
* 名称
*/
private String title;
/**
* 描述
*/
private String remark;
/**
* 几天后失效
* 活动名称或id
*/
private int expireDays;
private String nameParams ;
private String nameParamsLike ;
/**
* 执行方式 0企微1好办小程序
* 执行方式
*/
private int execType;
private Integer execType ;
/**
* 1立即发布2定时发布
* 1进行中 2终止 0未开始 3 已结束
*/
private Integer publishType;
private Integer statusFlag ;
/**
* 发布时间
* 开始时间
*/
private Date publishTime;
private Date startTime ;
/**
* 0全部导购 1部分导购
* 结束时间
*/
private Integer planClerkType;
private Date endTime ;
/**
* 0自主上传 1内容
* 创建人
*/
private Integer mediaType;
private List<String> creatorIdList ;
/**
* 素材json
* 排序字段 完成率:exec_rate 点赞:total_like_count 评论:total_comment_count
*/
private String mediaInfo;
private String sortColumn ;
/**
* 素材回显内容
* desc / asc
*/
private String mediaInfoShow;
// 选择的导购id列表
private List<String> selectClerkIdList ;
private String sortType ;
public List<String> getSelectClerkIdList() {
return selectClerkIdList;
public List<String> getCreatorIdList() {
return creatorIdList;
}
public void setSelectClerkIdList(List<String> selectClerkIdList) {
this.selectClerkIdList = selectClerkIdList;
public void setCreatorIdList(List<String> creatorIdList) {
this.creatorIdList = creatorIdList;
}
public String getTitle() {
return title;
public String getNameParamsLike() {
return nameParamsLike;
}
public void setTitle(String title) {
this.title = title;
public void setNameParamsLike(String nameParamsLike) {
this.nameParamsLike = nameParamsLike;
}
public String getRemark() {
return remark;
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setRemark(String remark) {
this.remark = remark;
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public int getExpireDays() {
return expireDays;
public String getEnterpriseId() {
return enterpriseId;
}
public void setExpireDays(int expireDays) {
this.expireDays = expireDays;
public void setEnterpriseId(String enterpriseId) {
this.enterpriseId = enterpriseId;
}
public int getExecType() {
return execType;
public String getSortColumn() {
return sortColumn;
}
public void setExecType(int execType) {
this.execType = execType;
public void setSortColumn(String sortColumn) {
this.sortColumn = sortColumn;
}
public Integer getPublishType() {
return publishType;
public String getSortType() {
return sortType;
}
public void setPublishType(Integer publishType) {
this.publishType = publishType;
public void setSortType(String sortType) {
this.sortType = sortType;
}
public Date getPublishTime() {
return publishTime;
public String getNameParams() {
return nameParams;
}
public void setPublishTime(Date publishTime) {
this.publishTime = publishTime;
public void setNameParams(String nameParams) {
this.nameParams = nameParams;
}
public Integer getPlanClerkType() {
return planClerkType;
public Integer getExecType() {
return execType;
}
public void setPlanClerkType(Integer planClerkType) {
this.planClerkType = planClerkType;
public void setExecType(Integer execType) {
this.execType = execType;
}
public Integer getMediaType() {
return mediaType;
public Integer getStatusFlag() {
return statusFlag;
}
public void setMediaType(Integer mediaType) {
this.mediaType = mediaType;
public void setStatusFlag(Integer statusFlag) {
this.statusFlag = statusFlag;
}
public String getMediaInfo() {
return mediaInfo;
public Date getStartTime() {
return startTime;
}
public void setMediaInfo(String mediaInfo) {
this.mediaInfo = mediaInfo;
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
public String getMediaInfoShow() {
return mediaInfoShow;
public Date getEndTime() {
return endTime;
}
public void setMediaInfoShow(String mediaInfoShow) {
this.mediaInfoShow = mediaInfoShow;
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
}
\ No newline at end of file
package com.gic.haoban.manage.service.dao.mapper.moment;
import com.gic.haoban.manage.api.dto.moment.QwMomentPlanDTO;
import com.gic.haoban.manage.api.qdto.moment.QwMomentPlanQDTO;
import com.gic.haoban.manage.service.entity.moment.TabQwMomentPlan;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface QwMomentPlanMapper {
void insert(TabQwMomentPlan tab) ;
......@@ -15,4 +18,7 @@ public interface QwMomentPlanMapper {
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);
}
......@@ -194,6 +194,41 @@
select <include refid="Base_Column_List" /> from tab_haoban_qw_moment_plan where plan_id =#{planId} and delete_flag = 0
</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}
<if test="statusFlag ==0">
and ( status_flag = 1 and begin_date <![CDATA[ > ]]> DATE_FORMAT(NOW(),'%Y-%m-%d') )
</if>
<if test="statusFlag ==1">
and ( status_flag = 1 and end_date <![CDATA[ >= ]]> DATE_FORMAT(NOW(),'%Y-%m-%d') and begin_date <![CDATA[ <= ]]> now() )
</if>
<if test="statusFlag ==2">
and ( status_flag = 2 )
</if>
<if test="statusFlag ==3">
and ( status_flag = 1 and end_date <![CDATA[ < ]]> DATE_FORMAT(NOW(),'%Y-%m-%d') )
</if>
<if test="null != startTime" >
and create_time >= #{startTime} and create_time <![CDATA[ <= ]]> #{endTime}
</if>
<if test="null != nameParamsLike" >
and ( title like #{nameParamsLike} or plan_id = #{nameParamsLike} )
</if>
<if test="null != execType">
and exec_type = #{execType}
</if>
<if test="null != creatorIdList and creatorIdList.size()>0">
AND creator_id IN
<foreach collection="creatorIdList" separator="," open="(" close=")" item="item">
#{item}
</foreach>
</if>
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>
......@@ -202,4 +237,20 @@
update tab_haoban_qw_moment_plan set status_flag = 2 where plan_id = #{planId}
</update>
<update id="updateClerkNum">
update tab_haoban_qw_moment_plan <set>
<if test="-1 != totalNum">
total_num = #{totalNum} ,
</if>
<if test="-1 != taskClerkNum">
task_clerk_num = #{taskClerkNum} ,
</if>
<if test="-1 != doneNum">
done_num = #{doneNum} ,
</if>
</set>
where plan_id = #{planId}
</update>
</mapper>
\ No newline at end of file
......@@ -3,6 +3,7 @@ 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.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.service.service.chat.GroupChatPlanService;
import com.gic.haoban.manage.service.service.content.impl.GroupMessageServiceImpl;
......@@ -37,18 +38,32 @@ public class MomentTest {
dto.setEnterpriseId("123");
dto.setExecType(1);
dto.setExpireDays(10);
dto.setPlanClerkType(1);
dto.setPlanId(770643491869106177L);
// ,"b2ef17cce11f476b996d0b27ebadf7fb"
List<String> clerkIds = Arrays.asList("a02065ae51594fb9832e4199d4e3a1b0","753a367d709d40a38b17ed25847d3b4b") ;
dto.setSelectClerkIdList(clerkIds);
this.qwMomentApiService.save(dto) ;
}
this.qwMomentApiService.save(dto) ;
@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) ;
}
}
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -7,6 +7,8 @@ import com.gic.clerk.api.dto.AuthorizedUser;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.util.PageHelperUtils;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.haoban.base.api.common.pojo.dto.WebLoginDTO;
import com.gic.haoban.common.utils.AuthWebRequestUtil;
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;
......@@ -19,6 +21,7 @@ import com.gic.haoban.manage.web.qo.moment.PlanClerkListQO;
import com.gic.haoban.manage.web.qo.moment.PlanDataListQO;
import com.gic.haoban.manage.web.qo.moment.PlanListQO;
import com.gic.haoban.manage.web.qo.moment.QwMomentPlanQO;
import com.gic.haoban.manage.web.utils.CreatorUtils;
import com.gic.haoban.manage.web.vo.moment.HaobanQwMomentPlanVO;
import com.gic.haoban.manage.web.vo.moment.QwMomentPlanAttendVO;
import com.gic.haoban.manage.web.vo.moment.QwMomentPlanDataVO;
......@@ -54,8 +57,14 @@ public class QwMomentController {
@ResponseBody
public RestResponse<String> add(@RequestBody QwMomentPlanQO qo){
logger.info("新建任务={}", JSONObject.toJSONString(qo));
AuthorizedUser loginUser = SessionContextUtils.getLoginUser() ;
return null ;
QwMomentPlanDTO plan = EntityUtil.changeEntityByJSON(QwMomentPlanDTO.class,qo) ;
WebLoginDTO loginUser = AuthWebRequestUtil.getLoginUser();
plan.setEnterpriseId(loginUser.getEnterpriseId());
plan.setWxEnterpriseId(loginUser.getWxEnterpriseId());
plan.setCreatorId(loginUser.getClerkId());
plan.setCreatorName(loginUser.getClerkName());
ServiceResponse<QwMomentPlanDTO> resp = this.qwMomentApiService.save(plan) ;
return RestResponse.successResult(resp.getResult().getPlanId()+"") ;
}
......@@ -64,10 +73,20 @@ public class QwMomentController {
*/
@RequestMapping("update")
@ResponseBody
@GicLogRecord(value = "${#logValue}", category = GicLogRecordCategoryEnum.CLERKTASK, optType = GicLogRecordOptTypeEnum.CLERKTASK_EIDT, userFunc = LogRecordUserServiceImpl.class, optPage = "营销-导购任务")
// @GicLogRecord(value = "${#logValue}", category = GicLogRecordCategoryEnum.CLERKTASK, optType = GicLogRecordOptTypeEnum.CLERKTASK_EIDT, userFunc = LogRecordUserServiceImpl.class, optPage = "营销-导购任务")
public RestResponse<String> update(@RequestBody QwMomentPlanQO qo) {
return null ;
logger.info("更新任务={}", JSONObject.toJSONString(qo));
if(null == qo.getPlanId()) {
return RestResponse.failure("9999","活动id为空") ;
}
QwMomentPlanDTO plan = EntityUtil.changeEntityByJSON(QwMomentPlanDTO.class,qo) ;
WebLoginDTO loginUser = AuthWebRequestUtil.getLoginUser();
plan.setEnterpriseId(loginUser.getEnterpriseId());
plan.setWxEnterpriseId(loginUser.getWxEnterpriseId());
plan.setCreatorId(loginUser.getClerkId());
plan.setCreatorName(loginUser.getClerkName());
ServiceResponse<QwMomentPlanDTO> resp = this.qwMomentApiService.save(plan) ;
return RestResponse.successResult(resp.getResult().getPlanId()+"") ;
}
/**
......@@ -76,7 +95,7 @@ public class QwMomentController {
*/
@RequestMapping("del")
@ResponseBody
@GicLogRecord(value = "${#logValue}", category = GicLogRecordCategoryEnum.CLERKTASK, optType = GicLogRecordOptTypeEnum.CLERKTASK_DEL, userFunc = LogRecordUserServiceImpl.class, optPage = "营销-导购任务")
//@GicLogRecord(value = "${#logValue}", category = GicLogRecordCategoryEnum.CLERKTASK, optType = GicLogRecordOptTypeEnum.CLERKTASK_DEL, userFunc = LogRecordUserServiceImpl.class, optPage = "营销-导购任务")
public RestResponse<Void> del(Long planId){
ServiceResponse<QwMomentPlanDTO> resp = this.qwMomentApiService.detail(planId) ;
if(null == resp.getResult()) {
......@@ -95,7 +114,7 @@ public class QwMomentController {
*/
@RequestMapping("stop")
@ResponseBody
@GicLogRecord(value = "${#logValue}", category = GicLogRecordCategoryEnum.CLERKTASK, optType = GicLogRecordOptTypeEnum.CLERKTASK_STOP, userFunc = LogRecordUserServiceImpl.class, optPage = "营销-导购任务")
//@GicLogRecord(value = "${#logValue}", category = GicLogRecordCategoryEnum.CLERKTASK, optType = GicLogRecordOptTypeEnum.CLERKTASK_STOP, userFunc = LogRecordUserServiceImpl.class, optPage = "营销-导购任务")
public RestResponse<Void> stop(Long planId){
ServiceResponse<QwMomentPlanDTO> resp = this.qwMomentApiService.detail(planId) ;
if(null == resp.getResult()) {
......@@ -136,7 +155,8 @@ public class QwMomentController {
*/
@RequestMapping("plan-list")
public RestResponse<Page<HaobanQwMomentPlanVO>> planList(@RequestBody PlanListQO qo) {
QwMomentPlanQDTO qdto = new QwMomentPlanQDTO() ;
QwMomentPlanQDTO qdto = EntityUtil.changeEntityByJSON(QwMomentPlanQDTO.class,qo) ;
qdto.setCreatorIdList(CreatorUtils.getCreatorIdList(qo.getShowSelfFlag()));
ServiceResponse<Page<QwMomentPlanDTO>> resp = this.qwMomentApiService.planList(qdto) ;
Page<HaobanQwMomentPlanVO> retPage = PageHelperUtils.changePageToCurrentPage(resp.getResult(), HaobanQwMomentPlanVO.class);
return RestResponse.successResult(retPage);
......
......@@ -17,6 +17,8 @@ public class QwMomentPlanQO implements Serializable {
private static final long serialVersionUID = 67027585759300L;
private Long planId ;
/**
* 名称
*/
......@@ -61,6 +63,14 @@ public class QwMomentPlanQO implements Serializable {
// 选择的导购id列表
private List<String> selectClerkIdList ;
public Long getPlanId() {
return planId;
}
public void setPlanId(Long planId) {
this.planId = planId;
}
public List<String> getSelectClerkIdList() {
return selectClerkIdList;
}
......
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