Browse Source

小程序志愿活动开发

master
Jackwang 4 years ago
parent
commit
7e1b64c473
  1. 38
      epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/controller/VactInfoController.java
  2. 22
      epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/dao/VactInfoDao.java
  3. 29
      epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/service/VactInfoService.java
  4. 37
      epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/service/impl/VactInfoServiceImpl.java
  5. 41
      epdc-cloud-heart/src/main/resources/mapper/volunteer/VactInfoDao.xml

38
epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/controller/VactInfoController.java

@ -28,6 +28,8 @@ import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup;
import com.elink.esua.epdc.modules.volunteer.dao.VactInfoDao; import com.elink.esua.epdc.modules.volunteer.dao.VactInfoDao;
import com.elink.esua.epdc.modules.volunteer.excel.VactInfoExcel; import com.elink.esua.epdc.modules.volunteer.excel.VactInfoExcel;
import com.elink.esua.epdc.modules.volunteer.service.VactInfoService; import com.elink.esua.epdc.modules.volunteer.service.VactInfoService;
import com.elink.esua.epdc.volunteer.AppPageParamsDTO;
import com.elink.esua.epdc.volunteer.AppVactApplyDTO;
import com.elink.esua.epdc.volunteer.VactInfoDTO; import com.elink.esua.epdc.volunteer.VactInfoDTO;
import com.elink.esua.epdc.volunteer.VactPageInfoDTO; import com.elink.esua.epdc.volunteer.VactPageInfoDTO;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -108,4 +110,40 @@ public class VactInfoController {
return vactInfoService.handleApply(dto); return vactInfoService.handleApply(dto);
} }
/**
* @describe: 志愿活动-申请新增修改
* @author wangtong
* @date 2021/9/3 9:48
* @params [userDetail, formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
*/
@PostMapping("applyActivity")
public Result applyActivity(@RequestBody AppVactApplyDTO formDto) {
return vactInfoService.applyActivity(formDto);
}
/**
* @describe: 志愿活动-活动列表
* @author wangtong
* @date 2021/9/3 9:56
* @params [userDetail, dto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
*/
@GetMapping("getActivityList")
public Result getActivityList(@RequestBody AppPageParamsDTO dto) {
return vactInfoService.getActivityList(dto);
}
/**
* @describe: 志愿活动-详情
* @author wangtong
* @date 2021/9/3 9:57
* @params [userDetail, vactId]
* @return com.elink.esua.epdc.commons.tools.utils.Result
*/
@GetMapping("getActivityDetail")
public Result getActivityDetail(@RequestBody String vactId) {
return vactInfoService.getActivityDetail(vactId);
}
} }

22
epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/dao/VactInfoDao.java

@ -19,8 +19,12 @@ package com.elink.esua.epdc.modules.volunteer.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.modules.volunteer.entity.VactInfoEntity; import com.elink.esua.epdc.modules.volunteer.entity.VactInfoEntity;
import com.elink.esua.epdc.volunteer.AppPageParamsDTO;
import com.elink.esua.epdc.volunteer.AppVactDetailDTO;
import com.elink.esua.epdc.volunteer.AppVactPageListDTO;
import com.elink.esua.epdc.volunteer.VactPageInfoDTO; import com.elink.esua.epdc.volunteer.VactPageInfoDTO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -42,4 +46,22 @@ public interface VactInfoDao extends BaseDao<VactInfoEntity> {
* @return java.util.List<com.elink.esua.epdc.volunteer.VactPageInfoDTO> * @return java.util.List<com.elink.esua.epdc.volunteer.VactPageInfoDTO>
*/ */
List<VactPageInfoDTO> getPageList(Map<String, Object> params); List<VactPageInfoDTO> getPageList(Map<String, Object> params);
/**
* @describe: 志愿活动-活动列表
* @author wangtong
* @date 2021/9/3 10:59
* @params [dto]
* @return java.util.List<com.elink.esua.epdc.volunteer.AppVactPageListDTO>
*/
List<AppVactPageListDTO> getActivityList(AppPageParamsDTO dto);
/**
* @describe: 志愿活动-详情
* @author wangtong
* @date 2021/9/3 11:02
* @params [vactId]
* @return com.elink.esua.epdc.volunteer.AppVactDetailDTO
*/
AppVactDetailDTO getActivityDetail(@Param("vactId") String vactId);
} }

29
epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/service/VactInfoService.java

@ -22,6 +22,8 @@ import com.elink.esua.epdc.commons.mybatis.service.BaseService;
import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.modules.volunteer.entity.VactInfoEntity; import com.elink.esua.epdc.modules.volunteer.entity.VactInfoEntity;
import com.elink.esua.epdc.volunteer.AppPageParamsDTO;
import com.elink.esua.epdc.volunteer.AppVactApplyDTO;
import com.elink.esua.epdc.volunteer.VactInfoDTO; import com.elink.esua.epdc.volunteer.VactInfoDTO;
import com.elink.esua.epdc.volunteer.VactPageInfoDTO; import com.elink.esua.epdc.volunteer.VactPageInfoDTO;
@ -113,4 +115,31 @@ public interface VactInfoService extends BaseService<VactInfoEntity> {
* @return void * @return void
*/ */
void updateVactState(String vactId); void updateVactState(String vactId);
/**
* @describe: 志愿活动-申请新增修改
* @author wangtong
* @date 2021/9/3 9:48
* @params [userDetail, formDto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
*/
Result applyActivity(AppVactApplyDTO formDto);
/**
* @describe: 志愿活动-活动列表
* @author wangtong
* @date 2021/9/3 9:56
* @params [userDetail, dto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
*/
Result getActivityList(AppPageParamsDTO dto);
/**
* @describe: 志愿活动-详情
* @author wangtong
* @date 2021/9/3 9:57
* @params [userDetail, vactId]
* @return com.elink.esua.epdc.commons.tools.utils.Result
*/
Result getActivityDetail(String vactId);
} }

37
epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/service/impl/VactInfoServiceImpl.java

@ -21,6 +21,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl; import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.FieldConstant; import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils; import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.utils.Result;
@ -28,8 +29,8 @@ import com.elink.esua.epdc.modules.volunteer.dao.VactInfoDao;
import com.elink.esua.epdc.modules.volunteer.entity.VactInfoEntity; import com.elink.esua.epdc.modules.volunteer.entity.VactInfoEntity;
import com.elink.esua.epdc.modules.volunteer.redis.VactInfoRedis; import com.elink.esua.epdc.modules.volunteer.redis.VactInfoRedis;
import com.elink.esua.epdc.modules.volunteer.service.VactInfoService; import com.elink.esua.epdc.modules.volunteer.service.VactInfoService;
import com.elink.esua.epdc.volunteer.VactInfoDTO; import com.elink.esua.epdc.volunteer.*;
import com.elink.esua.epdc.volunteer.VactPageInfoDTO; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -45,6 +46,7 @@ import java.util.Map;
* @author qu qu@elink-cn.com * @author qu qu@elink-cn.com
* @since v1.0.0 2021-09-01 * @since v1.0.0 2021-09-01
*/ */
@Slf4j
@Service @Service
public class VactInfoServiceImpl extends BaseServiceImpl<VactInfoDao, VactInfoEntity> implements VactInfoService { public class VactInfoServiceImpl extends BaseServiceImpl<VactInfoDao, VactInfoEntity> implements VactInfoService {
@ -123,4 +125,35 @@ public class VactInfoServiceImpl extends BaseServiceImpl<VactInfoDao, VactInfoEn
updateById(entity); updateById(entity);
} }
@Override
public Result applyActivity(AppVactApplyDTO formDto) {
log.info("dto:"+formDto);
VactInfoEntity entity = ConvertUtils.sourceToTarget(formDto, VactInfoEntity.class);
entity.setState("0");
//新增
if(StringUtils.isBlank(formDto.getId())){
insert(entity);
}else{//修改
entity.setReason("");
updateById(entity);
}
return new Result().ok("提交成功");
}
@Override
public Result getActivityList(AppPageParamsDTO dto) {
log.info("dto:"+dto);
int pageIndex = (dto.getPageIndex() - NumConstant.ONE) * dto.getPageSize();
dto.setPageIndex(pageIndex);
List<AppVactPageListDTO> result = baseDao.getActivityList(dto);
return new Result().ok(result);
}
@Override
public Result getActivityDetail(String vactId) {
log.info("vactId:"+vactId);
AppVactDetailDTO result = baseDao.getActivityDetail(vactId);
return new Result().ok(result);
}
} }

41
epdc-cloud-heart/src/main/resources/mapper/volunteer/VactInfoDao.xml

@ -66,6 +66,47 @@
group by v.id group by v.id
order by v.CREATED_TIME desc order by v.CREATED_TIME desc
</select> </select>
<select id="getActivityList" resultType="com.elink.esua.epdc.volunteer.AppVactPageListDTO">
SELECT id,
title,
state,
CASE state
WHEN '0' THEN '审核中'
WHEN '5' THEN '未通过'
WHEN '10' THEN '待发布'
WHEN '15' THEN '已发布'
else '' end as stateName,
DATE_FORMAT(CREATED_TIME,'%Y.%m.%d') as createdTime
FROM `epdc_vact_info`
where DEL_FLAG='0'
order by CREATED_TIME desc
LIMIT #{pageIndex},#{pageSize}
</select>
<select id="getActivityDetail" resultType="com.elink.esua.epdc.volunteer.AppVactDetailDTO">
SELECT id,
title,
ACT_START_TIME,
ACT_END_TIME,
ACT_ADDRESS,
HEAD_PIC,
REQUIREMENT,
ACT_CONTENT,
VOLUNTEER_FLAG,
CONTACTS,
TEL,
state,
CASE state
WHEN '0' THEN '审核中'
WHEN '5' THEN '未通过'
WHEN '10' THEN '待发布'
WHEN '15' THEN '已发布'
else '' end as stateName,
REASON
FROM `epdc_vact_info`
where DEL_FLAG='0' AND ID=#{vactId}
order by CREATED_TIME desc
</select>
</mapper> </mapper>
Loading…
Cancel
Save