Quellcode durchsuchen

后台查询志愿者数量bug修复

LiRong vor 3 Monaten
Ursprung
Commit
d9ed620979

+ 6 - 5
leromro-core/src/main/java/com/leromro/core/controller/VolunteerInfoController.java

@@ -19,6 +19,7 @@ import com.leromro.core.domain.dto.VolunteerListDTO;
 import com.leromro.core.domain.vo.BusinessManagementVO;
 import com.leromro.core.domain.vo.VolunteerInfoDetailVO;
 import com.leromro.core.domain.vo.VolunteerInfoVO;
+import com.leromro.core.domain.vo.VolunteerInfoWebVO;
 import com.leromro.core.service.IConversationRecordService;
 import com.leromro.core.service.IVolunteerFaceRecordService;
 import com.leromro.core.service.IVolunteerInfoService;
@@ -110,18 +111,18 @@ public class VolunteerInfoController extends BaseController {
      * 已测试
      */
     @ApiOperation(value = "(后台)查询志愿者信息列表", notes = "传入进行分类的字段,根据分类字段查询,返回List 集合")
-    @ApiImplicitParams(value = {
+/*    @ApiImplicitParams(value = {
             @ApiImplicitParam(name = "appStatus", value = "审批传1,管理传2", required = true)
-    })
+    })*/
     @GetMapping("/web/list")
-    public TableDataInfo<VolunteerInfo> webList(VolunteerInfoDTO dto) {
-        startPage();
+    public TableDataInfo<VolunteerInfoWebVO> webList(VolunteerInfoDTO dto) {
         SysUser sysUser = sysUserMapper.selectUserById(SecurityUtils.getUserId());
         if (Objects.equals(sysUser.getAreaType(), "4")) {
             //如果是服务中心,那就把服务中心id传进去,查的时候联查
             dto.setServiceCenterId(SecurityUtils.getDeptId());
         }
-        List<VolunteerInfo> list = volunteerInfoService.webList(dto);
+        startPage();
+        List<VolunteerInfoWebVO> list = volunteerInfoService.webList(dto);
         return getDataTable(list);
     }
 

+ 150 - 0
leromro-core/src/main/java/com/leromro/core/domain/vo/VolunteerInfoWebVO.java

@@ -0,0 +1,150 @@
+package com.leromro.core.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.leromro.common.config.serializer.BigDecimalSerializer;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+public class VolunteerInfoWebVO {
+    @ApiModelProperty(value = "主键id")
+    @TableId(value = "volunteer_info_id", type = IdType.AUTO)
+    private Long volunteerInfoId;
+
+    @ApiModelProperty(value = "用户id")
+    private Long volunteerId;
+    @NotNull(message = "志愿者姓名不能为空")
+    @ApiModelProperty(value = "志愿者姓名")
+    private String name;
+
+    //    @Sensitive(desensitizedType = DesensitizedType.ID_CARD)
+    @ApiModelProperty(value = "身份证号")
+    private String idCard;
+
+    @ApiModelProperty(value = "身份证人像面照片")
+    private String idCardPictureFront;
+
+    @ApiModelProperty(value = "身份证国徽面照片")
+    private String idCardPictureBack;
+
+    @ApiModelProperty(value = "评分")
+    private Double score;
+
+    @ApiModelProperty(value = "大类别")
+    private Long serviceCategory;
+
+
+    @ApiModelProperty(value = "技能描述")
+    private String skillDescribe;
+
+    //    @Sensitive(desensitizedType = DesensitizedType.PHONE)
+    @ApiModelProperty(value = "联系电话")
+    private String phonenumber;
+
+    @ApiModelProperty(value = "性别 0女 1男")
+    private Integer sex;
+
+    @ApiModelProperty(value = "年龄")
+    private Integer age;
+
+    @ApiModelProperty(value = "状态 0 不接单  1 正在接单")
+    private Integer status;
+
+    @ApiModelProperty(value = "证书图片")
+    private String certificationPicture;
+
+    @ApiModelProperty(value = "志愿者照片")
+    private String volunteerPicture;
+
+
+    @ApiModelProperty(value = "地区")
+    private String city;
+
+    @ApiModelProperty(value = "详细地址")
+    private String address;
+
+    @ApiModelProperty(value = "业务id")
+    private Long businessManagementId;
+
+    @ApiModelProperty(value = "审批状态 1待审批2已通过3已驳回")
+    private String appStatus;
+
+    @ApiModelProperty(value = "驳回原因")
+    private String rejectReason;
+
+    @TableField("project_name")
+    @ApiModelProperty("服务项目名称")
+    private String projectName;
+
+    @TableField("project_type_name")
+    @ApiModelProperty("项目类别名称")
+    private String  projectTypeName;
+
+    @ApiModelProperty("科目名称")
+    private String serviceSubjectName;
+
+    @ApiModelProperty("业务层级名称")
+    private String businessTierName;
+
+    @ApiModelProperty("业务价格")
+    @JsonSerialize(using = BigDecimalSerializer.class)
+    private BigDecimal businessPrice;
+
+    @ApiModelProperty("业务时长(整数分钟)")
+    private Integer businessDuration;
+
+    @TableField("min_quantity")
+    @ApiModelProperty("最少购买数量")
+    private Long minQuantity;
+
+    @TableField("business_unit")
+    @ApiModelProperty("购买单位")
+    private String  businessUnit;
+
+    @TableField("business_describe")
+    @ApiModelProperty("服务描述")
+    private String businessDescribe;
+
+    @TableField("province_code")
+    @ApiModelProperty("省级区划编号")
+    private String provinceCode;
+
+    @TableField("province_name")
+    @ApiModelProperty("省级名称")
+    private String provinceName;
+
+    @TableField("city_code")
+    @ApiModelProperty("市级编号")
+    private String cityCode;
+
+    @TableField("city_name")
+    @ApiModelProperty("市级名称")
+    private String cityName;
+
+    @TableField("district_code")
+    @ApiModelProperty("区级区划编号")
+    private String districtCode;
+
+    @TableField("district_name")
+    @ApiModelProperty("区级名称")
+    private String districtName;
+
+    /** 创建时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @TableField(fill = FieldFill.INSERT)
+    private Date createTime;
+
+    /** 更新时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @TableField(fill = FieldFill.UPDATE)
+    private Date updateTime;
+}

+ 2 - 1
leromro-core/src/main/java/com/leromro/core/mapper/VolunteerInfoMapper.java

@@ -9,6 +9,7 @@ import com.leromro.core.domain.dto.VolunteerInfoDTO;
 import com.leromro.core.domain.dto.VolunteerListDTO;
 import com.leromro.core.domain.vo.BusinessManagementVO;
 import com.leromro.core.domain.vo.VolunteerInfoVO;
+import com.leromro.core.domain.vo.VolunteerInfoWebVO;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -24,7 +25,7 @@ import java.util.List;
 public interface VolunteerInfoMapper extends BaseMapper<VolunteerInfo> {
 
 
-    List<VolunteerInfo> webList(ListPermission listPermission,@Param("dto") VolunteerInfoDTO dto);
+    List<VolunteerInfoWebVO> webList(ListPermission listPermission, @Param("dto") VolunteerInfoDTO dto);
 
     List<VolunteerInfoVO> selectVolunteerInfoSimple(@Param("info") VolunteerListDTO volunteerInfo);
 

+ 2 - 1
leromro-core/src/main/java/com/leromro/core/service/IVolunteerInfoService.java

@@ -10,6 +10,7 @@ import com.leromro.core.domain.dto.VolunteerListDTO;
 import com.leromro.core.domain.vo.BusinessManagementVO;
 import com.leromro.core.domain.vo.VolunteerInfoDetailVO;
 import com.leromro.core.domain.vo.VolunteerInfoVO;
+import com.leromro.core.domain.vo.VolunteerInfoWebVO;
 
 import java.util.List;
 
@@ -27,7 +28,7 @@ public interface IVolunteerInfoService extends IService<VolunteerInfo> {
 
     R<VolunteerInfo> selectByUserID(Long serviceCategory, Long userId);
 
-    List<VolunteerInfo> webList(VolunteerInfoDTO dto);
+    List<VolunteerInfoWebVO> webList(VolunteerInfoDTO dto);
 
     VolunteerInfoDetailVO selectLVolunteerInfoByVolunteerId(VolunteerInfo volunteerInfo);
 

+ 5 - 3
leromro-core/src/main/java/com/leromro/core/service/impl/VolunteerInfoServiceImpl.java

@@ -27,6 +27,7 @@ import com.leromro.core.domain.dto.VolunteerListDTO;
 import com.leromro.core.domain.vo.BusinessManagementVO;
 import com.leromro.core.domain.vo.VolunteerInfoDetailVO;
 import com.leromro.core.domain.vo.VolunteerInfoVO;
+import com.leromro.core.domain.vo.VolunteerInfoWebVO;
 import com.leromro.core.mapper.VolunteerInfoMapper;
 import com.leromro.core.service.*;
 import com.leromro.core.utils.DateTimeUtil;
@@ -45,6 +46,7 @@ import org.springframework.transaction.annotation.Transactional;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 import java.util.stream.Collectors;
 
 /**
@@ -174,8 +176,8 @@ public class VolunteerInfoServiceImpl extends ServiceImpl<VolunteerInfoMapper, V
      * @return
      */
     @Override
-    public List<VolunteerInfo> webList(VolunteerInfoDTO dto) {
-        List<VolunteerInfo> infos = volunteerInfoMapper.webList(new ListPermission(VolunteerInfo.class, CommonConstants.CHECK_PROVINCE_CITY_DISTRICT),dto);
+    public List<VolunteerInfoWebVO> webList(VolunteerInfoDTO dto) {
+        List<VolunteerInfoWebVO> infos = volunteerInfoMapper.webList(new ListPermission(VolunteerInfo.class, CommonConstants.CHECK_PROVINCE_CITY_DISTRICT),dto);
         return infos;
     }
 
@@ -245,7 +247,7 @@ public class VolunteerInfoServiceImpl extends ServiceImpl<VolunteerInfoMapper, V
      */
     @Override
     public List<VolunteerInfo> selectVolunteerGroupByUserId(SysUser sysUser) {
-        return volunteerInfoMapper.selectVolunteerGroupByUserId(new ListPermission(SysUser.class, CommonConstants.CHECK_PROVINCE_CITY_DISTRICT),sysUser);
+        return volunteerInfoMapper.selectVolunteerGroupByUserId(new ListPermission(VolunteerInfo.class, CommonConstants.CHECK_PROVINCE_CITY_DISTRICT),sysUser);
     }
 
     /**

+ 7 - 8
leromro-core/src/main/resources/mapper/core/VolunteerInfoMapper.xml

@@ -35,8 +35,8 @@
 
 
 
-    <select id="webList" resultType="com.leromro.core.domain.VolunteerInfo"
-            parameterType="com.leromro.core.domain.VolunteerInfo">
+    <select id="webList" resultType="com.leromro.core.domain.vo.VolunteerInfoWebVO"
+            parameterType="com.leromro.core.domain.vo.VolunteerInfoWebVO">
         select * from l_volunteer_info lvi left join sys_user su on lvi.volunteer_id = su.user_id
         <where>
             <if test="dto.serviceCategory != null "> and lvi.service_category = #{dto.serviceCategory}</if>
@@ -55,12 +55,12 @@
         from l_volunteer_info lvi
         <where> app_status = 2
 
-        AND EXISTS (
+       /* AND EXISTS (
         SELECT 1
         FROM l_volunteer_work_date lvw
         WHERE lvw.volunteer_id = lvi.volunteer_id
         and lvw.work_date &gt;= curdate()
-        )
+        )*/
         and lvi.business_management_id in (select lbm.business_management_id from l_business_management lbm
             where find_in_set(#{info.businessManagementId},lbm.ancestors) or lbm.business_management_id = #{info.businessManagementId})
         <if test="info.name != null  and info.name != ''"> and lvi.name like concat('%', #{info.name}, '%')</if>
@@ -83,12 +83,11 @@
         where app_status = 2
     </select>
     <select id="selectVolunteerGroupByUserId" resultType="com.leromro.core.domain.VolunteerInfo">
-        select lvi.volunteer_id ,s.create_time  from sys_user s left join l_volunteer_info lvi on s.user_id = lvi.volunteer_id
+        select lvi.volunteer_id ,lvi.create_time   from l_volunteer_info lvi left join sys_user s on  lvi.volunteer_id  =  s.user_id
         <where>
-            s.del_flag = 0 and s.user_platform = 0 and lvi.volunteer_id
-            <if test="user.serviceCentreId != null ">s.service_centre_id = #{user.serviceCentreId}</if>
+            s.del_flag = 0 and s.user_platform = 0
+            <if test="user.deptId != null "> and s.service_centre_id = #{user.deptId}</if>
         </where>
-        group by lvi.volunteer_id
     </select>
     <select id="selectVolunteerPictureList" resultType="java.lang.String" parameterType="java.lang.Long">
         select volunteer_picture from l_volunteer_info where volunteer_id = #{userId}