101captain
2022-04-19 00a59b93c16b24e7be77c6f1ce4866c75a2e0431
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java
@@ -2,16 +2,17 @@
import static java.util.stream.Collectors.toList;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.*;
import javax.annotation.Resource;
import com.panzhihua.common.model.dtos.property.CommonPage;
import com.panzhihua.common.model.vos.LoginUserInfoVO;
import com.panzhihua.common.model.vos.community.ComActActivityTypeVO;
import com.panzhihua.common.model.vos.community.volunteer.ComMngVolunteerExcelVO;
import com.panzhihua.common.model.vos.user.SysTemplateConfigVO;
import com.panzhihua.service_community.dao.ComActActEvaluateDAO;
import com.panzhihua.service_community.model.dos.*;
import com.panzhihua.service_community.service.*;
@@ -19,14 +20,7 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
@@ -279,10 +273,12 @@
                    }
                    comActActivityVO1.setComActActPrizeVOList(comActActPrizeVOList);
                    Integer volunteerMax = comActActivityVO1.getVolunteerMax();
                    if (volunteerMax.intValue() != 0) {
                        comActActivityVO1.setType(1);
                    } else {
                        comActActivityVO1.setType(2);
                    if(comActActivityVO1.getType()==null){
                        if (volunteerMax.intValue() != 0) {
                            comActActivityVO1.setType(1);
                        } else {
                            comActActivityVO1.setType(2);
                        }
                    }
                    fillActivitySignList(id, comActActivityVO1);
                });
@@ -295,7 +291,7 @@
    /**
     * 社区后台分页查询社区活动
     *
     *
     * @param comActActivityVO
     *            查询参数
     * @return 返回结果
@@ -362,6 +358,23 @@
        comActActivityVO.setComActActEvaluateVOList(comActActEvaluatePage.getRecords());
        //活动评价总数
        comActActivityVO.setEvaluateAmount(comActActEvaluatePage.getTotal());
        List<ComActActEvaluateDO> comActActEvaluateList = comActActEvaluateDAO
                .selectList(new QueryWrapper<ComActActEvaluateDO>().lambda().eq(ComActActEvaluateDO::getActivityId, id));
        if (comActActEvaluateList != null && comActActEvaluateList.size() > 0) {
            BigDecimal starNum = BigDecimal.ZERO;
            //总星级
            for (ComActActEvaluateDO evaluate:comActActEvaluateList) {
                starNum = starNum.add(BigDecimal.valueOf(evaluate.getStarLevel()==null?0:evaluate.getStarLevel()));
            }
            //评分星级(如果无评分默认5分)=总星级/总评价人数
            if(starNum.compareTo(BigDecimal.ZERO) == 0){
                comActActivityVO.setEvaluateLevel(BigDecimal.valueOf(5));
            }else{
                comActActivityVO.setEvaluateLevel(starNum.divide(BigDecimal.valueOf(comActActEvaluateList.size()),2, RoundingMode.HALF_UP));
            }
        }else{
            comActActivityVO.setEvaluateLevel(BigDecimal.valueOf(5));
        }
        //当前用户对活动的评分
        ComActActEvaluateVO userActEvaluateVO = comActActEvaluateDAO.getEvaluateListByUserId(id,userId);
        if(userActEvaluateVO != null){
@@ -886,7 +899,7 @@
    /**
     * 查询随手拍是否有活动
     *
     *
     * @return 活动详情
     */
    @PostMapping("getEasyPhotoActivity")
@@ -1177,7 +1190,7 @@
    /**
     * 查询所有建筑类型
     *
     *
     * @return 类型列表
     */
    @PostMapping("listbuildtype")
@@ -1187,7 +1200,7 @@
    /**
     * 分页查询 其他建筑
     *
     *
     * @param comMngStructOtherBuildVO
     *            分页查询参数
     * @return 查询结果
@@ -1199,19 +1212,28 @@
    /**
     * 增加志愿者
     *
     *
     * @param comMngVolunteerMngVO
     *            志愿者信息
     * @return 增加结果
     */
    @PostMapping("addvolunteer")
    R addVolunteer(@RequestBody ComMngVolunteerMngVO comMngVolunteerMngVO) {
        Long submitUserId = comMngVolunteerMngVO.getSubmitUserId();
        if (Objects.nonNull(submitUserId)) {
            //获取小程序用户信息
            R<LoginUserInfoVO> userInfoR = userService.getUserInfoByUserId(submitUserId.toString());
            LoginUserInfoVO userInfo = userInfoR.getData();
            if (Objects.nonNull(userInfo)) {
                comMngVolunteerMngVO.setIdCard(userInfo.getIdCard());
            }
        }
        return comMngVolunteerMngService.addVolunteer(comMngVolunteerMngVO);
    }
    /**
     * 获取志愿者详情
     *
     *
     * @param id
     * @return
     */
@@ -1389,8 +1411,8 @@
     */
    @PostMapping("listactivity")
    public R listActivity(@RequestParam("userId") Long userId,
                          @RequestParam(value = "status", required = false) Integer status) {
        return comActActivityService.listActivity(userId, status);
                          @RequestParam(value = "status", required = false) Integer status,@RequestParam(value = "type", required = false) Integer type) {
        return comActActivityService.listActivity(userId, status,type);
    }
    /**
@@ -1496,8 +1518,8 @@
     * @return 社区集合 按照创建顺序倒序排列
     */
    @PostMapping("listcommunityall")
    public R listCommunityAll() {
        return comActService.listCommunityAll();
    public R listCommunityAll(@RequestParam("areaCode") String areaCode) {
        return comActService.listCommunityAll(areaCode);
    }
    /**
@@ -2221,10 +2243,11 @@
                String openid = map.get("openid");
                try {
                    WxXCXTempSend util = new WxXCXTempSend();
                    R<SysTemplateConfigVO> sysTemplateConfigVO=userService.selectTemplate(eldersAuthFeedbackAddDTO.getAreaCode(),5);
                    String accessToken = util.getAppAccessToken();
                    WxUtil.sendSubscribeRZSH(openid, accessToken, "高龄认证",
                        DateUtils.format(eldersAuthDO.getCreateAt(), DateUtils.ymdhms_format),
                        eldersAuthFeedbackAddDTO.getFeedBack());
                        eldersAuthFeedbackAddDTO.getFeedBack(),sysTemplateConfigVO.getData().getTemplateId());
                } catch (Exception e) {
                    log.error("推送审核状态订阅消息失败,失败原因:" + e.getMessage());
                }
@@ -2296,8 +2319,8 @@
     * @return 社区列表
     */
    @GetMapping("/eventgrid/community/westList")
    public R getWestCommunityLists() {
        return comActService.getWestCommunityLists();
    public R getWestCommunityLists(@RequestParam("areaCode")String areaCode) {
        return comActService.getWestCommunityLists(areaCode);
    }
    /**
@@ -2522,4 +2545,62 @@
    public R listMyActivityEvaluate(@RequestParam("userId") Long userId, @RequestParam("activityId") Long activityId) {
        return comActActEvaluateService.listMyActivityEvaluate(userId, activityId);
    }
    /**
     * 志愿者导入
     *
     * @param list        志愿者数据列表
     * @param communityId 社区id
     * @param userId      用户id
     * @return 导入结果
     */
    @PostMapping("/volunteer/import/admin")
    public R importVolunteerAdmin(@RequestBody List<ComMngVolunteerExcelVO> list,
                                  @RequestParam(value = "communityId") Long communityId, @RequestParam(value = "userId") Long userId) {
        return comMngVolunteerMngService.importVolunteerAdmin(list,communityId,userId);
    }
    /**
     * [方法描述] 根据社区ID查询所属城市所在区区域代码,
     *
     * @param communityId
     *            社区ID
     * @return String 区域code
     * @author manailin
     * @date 2022/2/17 10:09
     */
    @GetMapping("act/getActBelongRegionCode")
    public String getActBelongRegionCode(@RequestParam("communityId") Long communityId) {
        return comActActivityService.getActBelongRegionCode(communityId);
    }
    /**
     * 党员活动统计
     * @param communityId
     * @param year
     * @return
     */
    @GetMapping("activity/partyMemberCount")
    public R partyMemberCount(@RequestParam("communityId")Long communityId,@RequestParam("year")String year){
        return comActActivityService.partyMemberCount(communityId,year);
    }
    /**
     * 党员活动详情数据
     * @return
     */
    @PostMapping("activity/partyMemberDetail")
    public R partyMemberDetail(@RequestBody CommonPage commonPage){
        return comActActivityService.partyMemberDetail(commonPage);
    }
    /**
     * 导出党员活动详情数据
     * @return
     */
    @PostMapping("activity/exportPartyMemberDetail")
    public R exportPartyMemberDetail(@RequestBody CommonPage commonPage){
        return comActActivityService.exportPartyMemberDetail(commonPage);
    }
}