记得上下班打卡 | git大法好,push需谨慎

Commit a5d88d93 authored by 胡佳晨's avatar 胡佳晨

志愿者需求完成

parent 6b0f9c1e
......@@ -61,6 +61,15 @@ public class SmileVolunteersController extends BaseController {
return prefix + "/project/list";
}
/**
* 活动审核列表
*/
@GetMapping("/project/userList/{projectId}")
public String listProjectUser(@PathVariable("projectId") String projectId, ModelMap mmap) {
mmap.put("projectId", projectId);
return prefix + "/list";
}
/**
* 志愿者列表
*/
......
......@@ -10,10 +10,14 @@
<form id="formId">
<div class="select-list">
<ul>
<li>
<li th:if="${projectId==null}">
<label>活动名称:</label>
<input type="text" name="title"/>
</li>
<li style="display:none">
<label>活动id:</label>
<input type="text" name="projectId" th:value="${projectId}"/>
</li>
<li>
<label>用户名称:</label>
<input type="text" name="name"/>
......@@ -56,7 +60,6 @@
<th:block th:include="include :: footer"/>
<script th:inline="javascript">
var prefix = ctx + "smile/volunteers";
$(function () {
var options = {
url: prefix + "/list",
......@@ -73,10 +76,10 @@
field: 'mid',
title: '序号'
},
{
field: 'uid',
title: '用户id'
},
// {
// field: 'uid',
// title: '用户id'
// },
{
field: 'name',
title: '姓名'
......@@ -101,6 +104,30 @@
}
}
},
{
field: 'phone',
title: '手机号'
},
{
field: 'school',
title: '学校'
},
{
field: 'schoolAddress',
title: '学校地址'
},
{
field: 'team1',
title: '申请职责'
},
{
field: 'team2',
title: '申请职责2'
},
{
field: 'team3',
title: '申请职责3'
},
{
field: 'status',
title: '状态',
......@@ -114,19 +141,6 @@
}
}
},
{
field: 'school',
title: '学校'
},
{
field: 'phone',
title: '手机号'
},
{
field: 'createdAt',
title: '创建时间'
},
{
title: '操作',
align: 'center',
......
......@@ -43,6 +43,7 @@
url: smilePrefix + "/project/list",
createUrl: smilePrefix + "/project/add",
updateUrl: smilePrefix + "/project/details/{id}",
detailUrl: smilePrefix + "/project/userList/{id}",
// sortName: "sort",
modalName: "活动",
orderSc: "desc",
......@@ -91,6 +92,7 @@
} else {
actions.push('<a class="btn btn-warning btn-xs " href="javascript:void(0)" onclick="f(\'' + row.projectId + '\',1)"><i class="fa fa-remove"></i>上线</a>');
}
actions.push('<a class="btn btn-success btn-xs " href="javascript:void(0)" onclick="$.operate.detailTab(\'' + row.projectId + '\')"><i class="fa fa-edit"></i>审核列表</a> ');
return actions.join('');
}
}]
......
......@@ -21,6 +21,8 @@ public class SmileVSParam {
private Integer status;
@ApiModelProperty(value = "职责组名称", example = "")
private String team;
@ApiModelProperty(value = "活动id", example = "")
private String projectId;
@ApiModelProperty(value = "页数", example = "1")
@NotNull(message = "页数不能为空")
......
......@@ -8,6 +8,7 @@ import com.liquidnet.client.admin.zhengzai.smile.dto.VolunteersExportVo;
import com.liquidnet.service.goblin.dto.vo.SmileVolunteersDetailsVo;
import com.liquidnet.service.smile.entity.SmileVolunteers;
import com.baomidou.mybatisplus.extension.service.IService;
import com.liquidnet.service.smile.entity.dto.VolunteersExportDto;
import java.util.List;
......@@ -22,7 +23,7 @@ import java.util.List;
public interface ISmileVolunteersService extends IService<SmileVolunteers> {
//志愿者列表
List<SmileVolunteers> list(SmileVSParam param);
List<VolunteersExportDto> list(SmileVSParam param);
//志愿者审核
AjaxResult audit(String projectId, String uid, String teamId, Integer status);
......
......@@ -41,39 +41,48 @@ public class SmileVolunteersServiceImpl extends ServiceImpl<SmileVolunteersMappe
@Override
public List<SmileVolunteers> list(SmileVSParam param) {
public List<VolunteersExportDto> list(SmileVSParam param) {
try {
LambdaQueryWrapper<SmileVolunteers> wrappers = Wrappers.lambdaQuery(SmileVolunteers.class);
if (param.getTitle() != null && !param.getTitle().equals("")) {
List<String> projectIdArray = volunteersProjectMapper.selectList(Wrappers.lambdaQuery(SmileVolunteersProject.class).like(SmileVolunteersProject::getTitle, param.getTitle())).stream().map(SmileVolunteersProject::getProjectId).collect(Collectors.toList());
if(projectIdArray.size()>0) {
wrappers.in(SmileVolunteers::getProjectId, projectIdArray);
}else{
wrappers.in(SmileVolunteers::getProjectId, 0);
}
}
if (param.getTeam() != null && !param.getTeam().equals("")) {
SmileVolunteersTeam smileVolunteersTeam = volunteersTeamMapper.selectOne(Wrappers.lambdaQuery(SmileVolunteersTeam.class).eq(SmileVolunteersTeam::getName, param.getTeam()));
if (smileVolunteersTeam != null) {
wrappers.and(
i -> i.eq(SmileVolunteers::getTeamId1, smileVolunteersTeam.getTeamId())
.or().eq(SmileVolunteers::getTeamId2, smileVolunteersTeam.getTeamId())
.or().eq(SmileVolunteers::getTeamId3, smileVolunteersTeam.getTeamId())
);
}
}
if (param.getName() != null && !param.getName().equals("")) {
wrappers.eq(SmileVolunteers::getName, param.getName());
}
if (param.getPhone() != null && !param.getPhone().equals("")) {
wrappers.eq(SmileVolunteers::getPhone, param.getPhone());
}
if (param.getStatus() != null && !param.getStatus().equals(-1)) {
wrappers.eq(SmileVolunteers::getStatus, param.getStatus());
}
List<SmileVolunteers> data = volunteersMapper.selectList(wrappers.orderByDesc(SmileVolunteers::getCreatedAt));
return data;
// LambdaQueryWrapper<SmileVolunteers> wrappers = Wrappers.lambdaQuery(SmileVolunteers.class);
// if (param.getTitle() != null && !param.getTitle().equals("")) {
// List<String> projectIdArray = volunteersProjectMapper.selectList(Wrappers.lambdaQuery(SmileVolunteersProject.class).like(SmileVolunteersProject::getTitle, param.getTitle())).stream().map(SmileVolunteersProject::getProjectId).collect(Collectors.toList());
// if(projectIdArray.size()>0) {
// wrappers.in(SmileVolunteers::getProjectId, projectIdArray);
// }else{
// wrappers.in(SmileVolunteers::getProjectId, 0);
// }
// }
// if (param.getTeam() != null && !param.getTeam().equals("")) {
// SmileVolunteersTeam smileVolunteersTeam = volunteersTeamMapper.selectOne(Wrappers.lambdaQuery(SmileVolunteersTeam.class).eq(SmileVolunteersTeam::getName, param.getTeam()));
// if (smileVolunteersTeam != null) {
// wrappers.and(
// i -> i.eq(SmileVolunteers::getTeamId1, smileVolunteersTeam.getTeamId())
// .or().eq(SmileVolunteers::getTeamId2, smileVolunteersTeam.getTeamId())
// .or().eq(SmileVolunteers::getTeamId3, smileVolunteersTeam.getTeamId())
// );
// }
// }
// if (param.getName() != null && !param.getName().equals("")) {
// wrappers.eq(SmileVolunteers::getName, param.getName());
// }
// if (param.getPhone() != null && !param.getPhone().equals("")) {
// wrappers.eq(SmileVolunteers::getPhone, param.getPhone());
// }
// if (param.getStatus() != null && !param.getStatus().equals(-1)) {
// wrappers.eq(SmileVolunteers::getStatus, param.getStatus());
// }
//
// List<SmileVolunteers> data = volunteersMapper.selectList(wrappers.orderByDesc(SmileVolunteers::getCreatedAt));
// return data;
HashMap<String, String> map = CollectionUtil.mapStringString();
map.put("name", param.getName());
map.put("phone", param.getPhone());
map.put("team", param.getTeam());
map.put("title", param.getTitle() == null ? "" : param.getTitle());
map.put("status", param.getStatus() + "");
map.put("projectId", param.getProjectId());
List<VolunteersExportDto> dtoList = volunteersMapper.expertVolunteer(map);
return dtoList;
} catch (Exception e) {
e.printStackTrace();
return null;
......
......@@ -6,7 +6,9 @@ import java.io.Serializable;
import java.time.LocalDateTime;
@Data
public class VolunteersExportDto implements Serializable, Cloneable{
public class VolunteersExportDto implements Serializable, Cloneable {
private String mid;
private String img;
private String name;
private String idCard;
private String sex;
......
......@@ -4,6 +4,8 @@
<resultMap id="volunteersExportDto" type="com.liquidnet.service.smile.entity.dto.VolunteersExportDto">
<result column="img" property="img"/>
<result column="mid" property="mid"/>
<result column="name" property="name"/>
<result column="id_card" property="idCard"/>
<result column="sex" property="sex"/>
......@@ -22,7 +24,10 @@
</resultMap>
<select id="expertVolunteer" parameterType="java.util.Map" resultMap="volunteersExportDto">
select sv.name,
select
sv.mid,
sv.img,
sv.name,
id_card,
(CASE
WHEN sex = 0 THEN '未知'
......@@ -54,9 +59,14 @@
<if test="title!=''">
AND svp.title like concat('%',#{title},'%')
</if>
<if test="projectId!=''">
AND svp.project_id = #{projectId}
</if>
<if test="name!=''">
AND sv.name like concat('%',#{name},'%')
</if>
<if test="phone!=''">
AND phone like concat('%',#{phone},'%')
</if>
......@@ -66,8 +76,8 @@
<if test="team!=''">
AND (svt1.name = #{team} OR svt2.name = #{team} OR svt3.name = #{team})
</if>
</where>
ORDER BY sv.created_at desc
</select>
</mapper>
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