Browse Source

社会组织改版

master
Jackwang 4 years ago
parent
commit
f4e1513125
  1. 11
      epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/feign/UserInfoFeignClient.java
  2. 5
      epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/feign/fallback/UserInfoFeignClientFallback.java
  3. 12
      epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/controller/VactOrgTypeController.java
  4. 6
      epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/controller/VolunteerOrgController.java
  5. 9
      epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/dao/VactOrgTypeDao.java
  6. 9
      epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/dao/VolunteerOrgRelationDao.java
  7. 10
      epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/entity/VolunteerOrgEntity.java
  8. 5
      epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/entity/VolunteerOrgRelationEntity.java
  9. 10
      epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/service/VactOrgTypeService.java
  10. 4
      epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/service/VolunteerOrgService.java
  11. 7
      epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/service/impl/VactOrgTypeServiceImpl.java
  12. 36
      epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/service/impl/VolunteerOrgServiceImpl.java
  13. 5
      epdc-cloud-heart/src/main/resources/mapper/volunteer/VactOrgTypeDao.xml
  14. 23
      epdc-cloud-heart/src/main/resources/mapper/volunteer/VolunteerOrgDao.xml
  15. 6
      epdc-cloud-heart/src/main/resources/mapper/volunteer/VolunteerOrgRelationDao.xml

11
epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/feign/UserInfoFeignClient.java

@ -12,6 +12,7 @@ import org.springframework.http.MediaType;
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.RequestParam;
/**
*
@ -79,4 +80,14 @@ public interface UserInfoFeignClient {
*/
@PostMapping(value = "app-user/volunteerinfo/addKindnessTime", consumes = MediaType.APPLICATION_JSON_VALUE)
Result addKindnessTime(EpdcVolunteerKindnessTimeFormDTO formDto);
/**
* @describe: 通过手机号获取用户信息
* @author wangtong
* @date 2021/9/23 16:46
* @params [dto]
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.UserDTO>
*/
@GetMapping(value = "app-user/user/getUserByMobile", consumes = MediaType.APPLICATION_JSON_VALUE)
Result getUserByMobile(@RequestParam("mobile") String mobile);
}

5
epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/feign/fallback/UserInfoFeignClientFallback.java

@ -45,4 +45,9 @@ public class UserInfoFeignClientFallback implements UserInfoFeignClient {
return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "addKindnessTime", formDto);
}
@Override
public Result getUserByMobile(String mobile) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "getUserByMobile", mobile);
}
}

12
epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/controller/VactOrgTypeController.java

@ -91,4 +91,16 @@ public class VactOrgTypeController {
ExcelUtils.exportExcelToTarget(response, null, list, VactOrgTypeExcel.class);
}
/**
* @describe: 获取组织类型列表
* @author wangtong
* @date 2021/9/23 14:10
* @params []
* @return com.elink.esua.epdc.commons.tools.utils.Result
*/
@GetMapping("getOrgTypeList")
public Result getOrgTypeList(){
return vactOrgTypeService.getOrgTypeList();
}
}

6
epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/controller/VolunteerOrgController.java

@ -69,16 +69,14 @@ public class VolunteerOrgController {
public Result save(@RequestBody VolunteerOrgDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
volunteerOrgService.save(dto);
return new Result();
return volunteerOrgService.save(dto);
}
@PutMapping
public Result update(@RequestBody VolunteerOrgDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
volunteerOrgService.update(dto);
return new Result();
return volunteerOrgService.update(dto);
}
@DeleteMapping

9
epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/dao/VactOrgTypeDao.java

@ -35,4 +35,13 @@ import java.util.Map;
public interface VactOrgTypeDao extends BaseDao<VactOrgTypeEntity> {
List<VactOrgTypeDTO> getPageList(Map<String, Object> params);
/**
* @describe: 获取组织类型列表
* @author wangtong
* @date 2021/9/23 14:10
* @params []
* @return com.elink.esua.epdc.commons.tools.utils.Result
*/
List<VactOrgTypeEntity> getOrgTypeList();
}

9
epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/dao/VolunteerOrgRelationDao.java

@ -43,4 +43,13 @@ public interface VolunteerOrgRelationDao extends BaseDao<VolunteerOrgRelationEnt
* @return java.util.List<java.lang.Long>
*/
List<Long> selectOrgIdByVolunteerId(@Param("volunteerId") String volunteerId);
/**
* @describe: 删除社会组织管理员
* @author wangtong
* @date 2021/9/23 17:35
* @params [orgId]
* @return void
*/
void deleteAdminUserForOrg(@Param("orgId") Long orgId);
}

10
epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/entity/VolunteerOrgEntity.java

@ -50,6 +50,16 @@ public class VolunteerOrgEntity extends BaseEntity {
*/
private String volunteerOrgCode;
/**
* 组织类型id
*/
private String orgType;
/**
* 组织LOG
*/
private String imgUrl;
/**
* 是否启用0启用 1禁用
*/

5
epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/entity/VolunteerOrgRelationEntity.java

@ -45,4 +45,9 @@ public class VolunteerOrgRelationEntity extends BaseEpdcEntity {
*/
private Long volunteerOrgId;
/**
* 管理员标识0否1是
*/
private Integer adminFlag;
}

10
epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/service/VactOrgTypeService.java

@ -20,6 +20,7 @@ package com.elink.esua.epdc.modules.volunteer.service;
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.utils.Result;
import com.elink.esua.epdc.modules.volunteer.entity.VactOrgTypeEntity;
import com.elink.esua.epdc.volunteer.VactOrgTypeDTO;
@ -93,4 +94,13 @@ public interface VactOrgTypeService extends BaseService<VactOrgTypeEntity> {
* @date 2021-09-23
*/
void delete(String[] ids);
/**
* @describe: 获取组织类型列表
* @author wangtong
* @date 2021/9/23 14:10
* @params []
* @return com.elink.esua.epdc.commons.tools.utils.Result
*/
Result getOrgTypeList();
}

4
epdc-cloud-heart/src/main/java/com/elink/esua/epdc/modules/volunteer/service/VolunteerOrgService.java

@ -73,7 +73,7 @@ public interface VolunteerOrgService extends BaseService<VolunteerOrgEntity> {
* @author generator
* @date 2021-08-28
*/
void save(VolunteerOrgDTO dto);
Result save(VolunteerOrgDTO dto);
/**
* 默认更新
@ -83,7 +83,7 @@ public interface VolunteerOrgService extends BaseService<VolunteerOrgEntity> {
* @author generator
* @date 2021-08-28
*/
void update(VolunteerOrgDTO dto);
Result update(VolunteerOrgDTO dto);
/**
* 批量删除

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

@ -24,6 +24,7 @@ import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
import com.elink.esua.epdc.commons.tools.exception.RenException;
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.Result;
import com.elink.esua.epdc.modules.volunteer.dao.VactOrgTypeDao;
import com.elink.esua.epdc.modules.volunteer.entity.VactOrgTypeEntity;
import com.elink.esua.epdc.modules.volunteer.redis.VactOrgTypeRedis;
@ -123,4 +124,10 @@ public class VactOrgTypeServiceImpl extends BaseServiceImpl<VactOrgTypeDao, Vact
baseDao.deleteBatchIds(Arrays.asList(ids));
}
@Override
public Result getOrgTypeList() {
List<VactOrgTypeEntity> result = baseDao.getOrgTypeList();
return new Result().ok(result);
}
}

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

@ -17,6 +17,7 @@
package com.elink.esua.epdc.modules.volunteer.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
@ -25,8 +26,12 @@ import com.elink.esua.epdc.commons.tools.exception.RenException;
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.Result;
import com.elink.esua.epdc.dto.UserDTO;
import com.elink.esua.epdc.modules.feign.UserInfoFeignClient;
import com.elink.esua.epdc.modules.volunteer.dao.VolunteerOrgDao;
import com.elink.esua.epdc.modules.volunteer.dao.VolunteerOrgRelationDao;
import com.elink.esua.epdc.modules.volunteer.entity.VolunteerOrgEntity;
import com.elink.esua.epdc.modules.volunteer.entity.VolunteerOrgRelationEntity;
import com.elink.esua.epdc.modules.volunteer.redis.VolunteerOrgRedis;
import com.elink.esua.epdc.modules.volunteer.service.VolunteerOrgService;
import com.elink.esua.epdc.volunteer.VolunteerOrgDTO;
@ -51,6 +56,12 @@ public class VolunteerOrgServiceImpl extends BaseServiceImpl<VolunteerOrgDao, Vo
@Autowired
private VolunteerOrgRedis volunteerOrgRedis;
@Autowired
private UserInfoFeignClient userInfoFeignClient;
@Autowired
private VolunteerOrgRelationDao volunteerOrgRelationDao;
@Override
public PageData<VolunteerOrgDTO> page(Map<String, Object> params) {
// IPage<VolunteerOrgEntity> page = baseDao.selectPage(
@ -88,24 +99,45 @@ public class VolunteerOrgServiceImpl extends BaseServiceImpl<VolunteerOrgDao, Vo
@Override
@Transactional(rollbackFor = Exception.class)
public void save(VolunteerOrgDTO dto) {
public Result save(VolunteerOrgDTO dto) {
VolunteerOrgEntity isHave = baseDao.selectByName(dto.getVolunteerOrgName(),null);
if(isHave != null){
throw new RenException("已存在此组织名称,请更换后重试");
}
VolunteerOrgEntity entity = ConvertUtils.sourceToTarget(dto, VolunteerOrgEntity.class);
insert(entity);
return setAdminUserForOrg(dto,entity.getId());
}
private Result setAdminUserForOrg(VolunteerOrgDTO dto,Long orgId){
Result userResult = userInfoFeignClient.getUserByMobile(dto.getMobile());
if (!userResult.success()) {
throw new RenException("获取用户信息失败");
} else if (userResult.getData() == null){
return new Result().ok("管理员手机号未关联到居民端用户,请检查管理员手机号或提醒该手机号用户在居民端注册。");
}else{
VolunteerOrgRelationEntity relationEntity = new VolunteerOrgRelationEntity();
UserDTO userInfo = JSONObject.parseObject(userResult.getData().toString(), UserDTO.class);
relationEntity.setVolunteerId(userInfo.getId());
relationEntity.setVolunteerOrgId(orgId);
relationEntity.setAdminFlag(1);
volunteerOrgRelationDao.insert(relationEntity);
return new Result().ok("管理员手机号已成功关联居民端用户,该手机号居民端用户已被设置为该组织管理员。");
}
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(VolunteerOrgDTO dto) {
public Result update(VolunteerOrgDTO dto) {
VolunteerOrgEntity isHave = baseDao.selectByName(dto.getVolunteerOrgName(),dto.getId());
if(isHave != null){
throw new RenException("已存在此组织名称,请更换后重试");
}
VolunteerOrgEntity entity = ConvertUtils.sourceToTarget(dto, VolunteerOrgEntity.class);
updateById(entity);
//删除原先的管理员,重新设置
volunteerOrgRelationDao.deleteAdminUserForOrg(entity.getId());
return setAdminUserForOrg(dto,entity.getId());
}
@Override

5
epdc-cloud-heart/src/main/resources/mapper/volunteer/VactOrgTypeDao.xml

@ -20,6 +20,11 @@
where del_flag='0'
order by create_date desc
</select>
<select id="getOrgTypeList" resultMap="vactOrgTypeMap">
select * from epdc_vact_org_type
where del_flag='0'
order by create_date desc
</select>
</mapper>

23
epdc-cloud-heart/src/main/resources/mapper/volunteer/VolunteerOrgDao.xml

@ -28,12 +28,27 @@
</if>
</select>
<select id="getPageList" resultType="com.elink.esua.epdc.volunteer.VolunteerOrgDTO">
select * from epdc_volunteer_org
where del_flag='0'
select ot.type_name as orgTypeName,
if(r.id is null,'未关联','已关联') as associatedStates,
v.*
from epdc_volunteer_org v
left join epdc_vact_org_type ot on ot.id=v.org_type
left join epdc_volunteer_org_relation r on r.VOLUNTEER_ORG_ID=v.id
and r.admin_flag=1 and r.DEL_FLAG='0'
where v.del_flag='0'
<if test="volunteerOrgName != null and volunteerOrgName!=''">
and volunteer_org_name like '%${volunteerOrgName}%'
and v.volunteer_org_name like '%${volunteerOrgName}%'
</if>
<if test="orgType != null and orgType!=''">
and v.org_type=#{orgType}
</if>
<if test="headName != null and headName!=''">
and v.head_name like '%${headName}%'
</if>
<if test="mobile != null and mobile!=''">
and v.mobile like '%${mobile}%'
</if>
order by create_date desc
order by v.create_date desc
</select>
<select id="getVolunteerOrgList" resultType="com.elink.esua.epdc.volunteer.VolunteerOrgDTO">
select * from epdc_volunteer_org

6
epdc-cloud-heart/src/main/resources/mapper/volunteer/VolunteerOrgRelationDao.xml

@ -25,6 +25,12 @@
where del_flag='0'
and VOLUNTEER_ID=#{volunteerId}
</select>
<update id="deleteAdminUserForOrg">
update `epdc_volunteer_org_relation`
set del_flag='1'
where VOLUNTEER_ORG_ID=#{orgId}
and admin_flag='1'
</update>
</mapper>
Loading…
Cancel
Save