提交 6be9e090 作者: 刘明祎

统计每周用户向客服咨询的次数

上级 017700ae
流水线 #9133 已通过 于阶段
in 2 分 28 秒
......@@ -163,4 +163,11 @@ public class CompanyController extends BaseController {
public ResultBody updateAliasImgByUid(@RequestBody AliasAndImgVo aliasAndImgVo) {
return companyService.updateAliasImgByUid(aliasAndImgVo);
}
@ApiOperation(value = "统计每周用户咨询客服次数")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CompanyInfoVO.class)})
@GetMapping("consultUserMessageNum")
public ResultBody consultUserMessageNum(@RequestParam Integer companyInfoId) {
return companyService.consultUserMessageNum(companyInfoId);
}
}
......@@ -122,4 +122,6 @@ public interface MessageDao {
Integer getUserMessageNum();
Integer getUserAndUserMessageNum();
List<UserMessageDO> selectMessageByCompanyInfoId(Integer companyInfoId);
}
......@@ -190,4 +190,6 @@ public interface CompanyService {
Integer getCompanyBindUserId(Integer userId1,Integer userId2,Integer backUserId);
ResultBody updateAliasImgByUid(AliasAndImgVo aliasAndImgVo);
ResultBody consultUserMessageNum(Integer companyInfoId);
}
......@@ -4,10 +4,7 @@ import com.mmc.iuav.page.PageResult;
import com.mmc.iuav.response.ResultBody;
import com.mmc.iuav.response.ResultEnum;
import com.mmc.iuav.user.client.PmsClient;
import com.mmc.iuav.user.dao.BackUserAccountDao;
import com.mmc.iuav.user.dao.CompanyDao;
import com.mmc.iuav.user.dao.CooperationDao;
import com.mmc.iuav.user.dao.UserServiceDao;
import com.mmc.iuav.user.dao.*;
import com.mmc.iuav.user.entity.*;
import com.mmc.iuav.user.model.dto.LoginSuccessDTO;
import com.mmc.iuav.user.model.qo.CompanyInfoQO;
......@@ -23,6 +20,7 @@ import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
/**
......@@ -47,6 +45,9 @@ public class CompanyServiceImpl implements CompanyService {
@Autowired
private CooperationDao cooperationDao;
@Autowired
private MessageDao messageDao;
@Override
public ResultBody addCompanyInfo(CompanyInfoVO companyInfo) {
int count = companyDao.countCompanyNames(companyInfo.getId(), companyInfo.getCompanyName());
......@@ -383,4 +384,19 @@ public class CompanyServiceImpl implements CompanyService {
return ResultBody.success();
}
@Override
public ResultBody consultUserMessageNum(Integer companyInfoId) {
int count = 0;
List<CompanyMemberDO> companyMemberDOS = companyDao.selectUserAndRoleList(companyInfoId);
//查询公司单位 客服id集合
Set<Integer> userAccountIds = companyMemberDOS.stream().map(CompanyMemberDO::getUserAccountId).collect(Collectors.toSet());
List<UserMessageDO> userMessageDOS = messageDao.selectMessageByCompanyInfoId(companyInfoId);
for (UserMessageDO message : userMessageDOS) {
if (userAccountIds.contains(message.getReceiverUserId())) {
count++;
}
}
return ResultBody.success(count);
}
}
......@@ -134,6 +134,14 @@ ORDER BY create_time desc
WHERE DATE (create_time) = CURDATE() AND back_user_id IS NULL ) AS distinct_pairs
</select>
<select id="selectMessageByCompanyInfoId" resultType="com.mmc.iuav.user.entity.UserMessageDO">
SELECT DISTINCT sender_user_id, receiver_user_id
FROM user_message
WHERE back_user_id = 1
AND create_time &gt;= CURDATE() - INTERVAL 7 DAY
AND create_time &lt; CURDATE();
</select>
<insert id="insertSystemMessage">
insert into message
<trim prefix="(" suffix=")" suffixOverrides=",">
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论