Commit 176ddcd1 by 徐高华

Merge remote-tracking branch 'origin/feature/202310月零散迭代' into feature/202310月零散迭代

parents 4b976a84 70e59060
......@@ -15,6 +15,25 @@ public class ChatDataSearchQDTO extends PageQo implements Serializable {
private Date endDate;
private List<String> staffIdList;
private String sortType = "desc" ;
private String sortColumn = "chatTotal" ;
public String getSortType() {
return sortType;
}
public void setSortType(String sortType) {
this.sortType = sortType;
}
public String getSortColumn() {
return sortColumn;
}
public void setSortColumn(String sortColumn) {
this.sortColumn = sortColumn;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
......
......@@ -39,4 +39,6 @@ public interface GroupChatPlanMapper {
@Param("successChatCount") int successChatCount, @Param("failChatCount") int failChatCount);
public void updateRemark(GroupChatPlanDTO dto);
public void updateStaffCount(@Param("planId") Long planId,@Param("staffCount") int staffCount) ;
}
\ No newline at end of file
......@@ -53,6 +53,17 @@ public class GroupChatPlanBO implements Serializable{
* 关联素材来源1好办素材2内容中心
*/
private Integer materialFrom;
// 是否发送全部
private int sendAllFlag ;
public int getSendAllFlag() {
return sendAllFlag;
}
public void setSendAllFlag(int sendAllFlag) {
this.sendAllFlag = sendAllFlag;
}
public Integer getSendFlag() {
return sendFlag;
......
......@@ -341,6 +341,7 @@ public class GroupChatPlanServiceImpl implements GroupChatPlanService {
if(sendAlFlag==1) {
int ownerPageNo = 0;
int ownerPageSize = 500 ;
int totalCount = 0 ;
List<GroupChatOwnerDTO> list = null;
while (true) {
list = this.groupChatOwnerMapper.listOwnerForStatistic(wxEnterpriseId, ownerPageNo * ownerPageSize, ownerPageSize);
......@@ -350,8 +351,10 @@ public class GroupChatPlanServiceImpl implements GroupChatPlanService {
logger.info("全部,群主数={},{}", wxEnterpriseId,list.size());
ownerPageNo++;
String staffIds = list.stream().map(o->o.getStaffId()).collect(Collectors.joining(",")) ;
totalCount = totalCount + list.size() ;
this.groupChatPlanOwnerLogService.batchAdd(staffIds, plan);
}
this.groupChatPlanMapper.updateStaffCount(planId,totalCount);
}
while (true) {
ownerList = this.groupChatPlanOwnerLogMapper.listForDoPlan(planId, pageNum * pageSize, pageSize);
......
......@@ -107,7 +107,7 @@ public class StaffClerkRelationServiceImpl implements StaffClerkRelationService
public boolean delBind(String oldClerkId, String optStaffId, int channelCode, String newClerkId, String wxEnterpriseId) {
boolean changeClerkFlag = StringUtils.isNotEmpty(newClerkId) ;
logger.info("导购解绑/换导购={},oldClerkId={},optStaffId={}",changeClerkFlag,oldClerkId,optStaffId);
if(StringUtils.isNotEmpty(optStaffId) && "-1".equals(optStaffId)) {
if(StringUtils.isNotEmpty(optStaffId) && !"-1".equals(optStaffId)) {
TabHaobanStaff staff = this.staffService.selectById(optStaffId) ;
if(null != staff) {
wxEnterpriseId = staff.getWxEnterpriseId() ;
......
......@@ -395,7 +395,7 @@ public class MessageApiServiceImpl implements MessageApiService {
.listByStaffId(wxEnterpriseId, staffId);
if (CollectionUtils.isNotEmpty(staffClerkRelationDTOS)) {
for (StaffClerkRelationDTO staffClerkRelationDTO : staffClerkRelationDTOS) {
staffClerkRelationApiService.unbindByStaffAndClerkId(staffId, staffClerkRelationDTO.getClerkId(),
staffClerkRelationApiService.unbindByStaffAndClerkId("-1", staffClerkRelationDTO.getClerkId(),
ChannelCodeEnum.QW_DEL_UNBIND.getCode(), wxEnterpriseId);
}
}
......
......@@ -22,6 +22,7 @@ import com.gic.haoban.manage.api.enums.ChannelCodeEnum;
import com.gic.haoban.manage.api.service.AuditApiService;
import com.gic.haoban.manage.api.service.StaffClerkRelationApiService;
import com.gic.haoban.manage.service.config.Config;
import com.gic.haoban.manage.service.dao.mapper.StaffMapper;
import com.gic.haoban.manage.service.dao.mapper.TabHaobanStaffClerkRelationMapper;
import com.gic.haoban.manage.service.entity.MemberClerkChatConfig;
import com.gic.haoban.manage.service.entity.TabHaobanStaff;
......@@ -76,6 +77,8 @@ public class StaffClerkRelationApiServiceImpl implements StaffClerkRelationApiSe
private HmQrcodeService hmQrcodeService;
@Autowired
private StoreRangeService storeRangeService;
@Autowired
private StaffMapper staffMapper ;
@Override
public void bindLogMq(String params) {
......@@ -355,7 +358,7 @@ public class StaffClerkRelationApiServiceImpl implements StaffClerkRelationApiSe
Page<StaffClerkBindLogDetailDTO> retList = staffClerkBindLogService.pageBindLog(wxEnterpriseId, enterpriseId, optType, search, pageInfo);
if (CollectionUtils.isNotEmpty(retList.getResult())) {
retList.getResult().forEach(item -> {
TabHaobanStaff haobanStaff = staffService.selectById(item.getStaffId());
TabHaobanStaff haobanStaff = staffMapper.selectByPrimaryKeyNoStatus(item.getStaffId());
if (null != haobanStaff) {
item.setStaffName(haobanStaff.getStaffName());
item.setWxUserId(haobanStaff.getWxUserId());
......
......@@ -147,7 +147,7 @@
</foreach>
</if>
ORDER BY a.date DESC
) tb GROUP BY staffId
) tb GROUP BY staffId ORDER BY ${sortColumn} ${sortType}
</select>
......
......@@ -204,4 +204,8 @@
update tab_haoban_group_chat_plan set send_count = send_count+ #{sendCount} , success_chat_count=success_chat_count+#{successChatCount} , fail_chat_count = fail_chat_count+#{failChatCount} ,
update_time =now() where plan_id = #{planId}
</update>
<update id="updateStaffCount">
update tab_haoban_group_chat_plan set staff_count = #{staffCount} , update_time =now() where plan_id = #{planId}
</update>
</mapper>
\ No newline at end of file
......@@ -70,7 +70,7 @@ public class GroupChatPlanController {
@RequestMapping("add")
@GicLogRecord(value = "${#logValue}", category = GicLogRecordCategoryEnum.HB_QQF, optType = GicLogRecordOptTypeEnum.HB_1000_01, userFunc = LogRecordUserServiceImpl.class, optPage = "客户群群发")
public RestResponse<Object> save(@RequestBody GroupChatPlanDTO dto) {
if (StringUtils.isBlank(dto.getStaffIdList())) {
if (dto.getSendAllFlag() == 0 && StringUtils.isBlank(dto.getStaffIdList())) {
GicLogRecordEvaluationContext.noWriteLog();
return RestResponse.failure("9999", "请选择群主");
}
......
......@@ -60,8 +60,19 @@ public class GroupChatPlanVO implements Serializable{
* 关联素材来源1好办素材2内容中心
*/
private Integer materialFrom;
public List<ChatOwnerVO> getOwnerList() {
// 是否发送全部
private int sendAllFlag ;
public int getSendAllFlag() {
return sendAllFlag;
}
public void setSendAllFlag(int sendAllFlag) {
this.sendAllFlag = sendAllFlag;
}
public List<ChatOwnerVO> getOwnerList() {
return ownerList;
}
......
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