39 changed files with 1673 additions and 107 deletions
@ -0,0 +1,37 @@ |
|||
package com.elink.esua.epdc.modules.api.controller; |
|||
|
|||
import com.elink.esua.epdc.commons.tools.utils.Result; |
|||
import com.elink.esua.epdc.dto.result.ResidentConfigResultDTO; |
|||
import com.elink.esua.epdc.modules.api.service.ResidentConfigService; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.GetMapping; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* APP 获取居民端配置 |
|||
* |
|||
* @author zhangyong |
|||
* @date 2020/05/27 18:30 |
|||
*/ |
|||
@RestController |
|||
@RequestMapping("residentConfig") |
|||
public class ApiResidentConfigController { |
|||
|
|||
@Autowired |
|||
private ResidentConfigService residentConfigService; |
|||
|
|||
/** |
|||
* @Description 获取居民端配置 |
|||
* @Author songyunpeng |
|||
* @Date 2020/6/9 |
|||
* @Param [residentType] |
|||
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.ResidentConfigResultDTO>> |
|||
**/ |
|||
@GetMapping("getResidentConfig") |
|||
public Result<List<ResidentConfigResultDTO>> getImgUrlList(String residentType){ |
|||
return residentConfigService.listResidentConfig(residentType); |
|||
} |
|||
} |
@ -0,0 +1,37 @@ |
|||
package com.elink.esua.epdc.modules.api.controller; |
|||
|
|||
import com.elink.esua.epdc.commons.tools.utils.Result; |
|||
import com.elink.esua.epdc.dto.result.ResidentConfigResultDTO; |
|||
import com.elink.esua.epdc.modules.api.service.ResidentConfigService; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.GetMapping; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* APP 获取居民端配置 |
|||
* |
|||
* @author zhangyong |
|||
* @date 2020/05/27 18:30 |
|||
*/ |
|||
@RestController |
|||
@RequestMapping("work/residentConfig") |
|||
public class ApiWorkResidentConfigController { |
|||
|
|||
@Autowired |
|||
private ResidentConfigService residentConfigService; |
|||
|
|||
/** |
|||
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.result.ResidentConfigResultDTO>> |
|||
* @Description 获取小程序端配置 |
|||
* @Author songyunpeng |
|||
* @Date 2020/6/9 |
|||
* @Param [residentType] |
|||
**/ |
|||
@GetMapping("swagger/getResidentConfig") |
|||
public Result<List<ResidentConfigResultDTO>> getImgUrlList(String residentType) { |
|||
return residentConfigService.listResidentConfig(residentType); |
|||
} |
|||
} |
@ -0,0 +1,94 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.elink.esua.epdc.modules.api.controller; |
|||
|
|||
import com.elink.esua.epdc.commons.tools.page.PageData; |
|||
import com.elink.esua.epdc.commons.tools.utils.ExcelUtils; |
|||
import com.elink.esua.epdc.commons.tools.utils.Result; |
|||
import com.elink.esua.epdc.commons.tools.validator.AssertUtils; |
|||
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils; |
|||
import com.elink.esua.epdc.commons.tools.validator.group.AddGroup; |
|||
import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup; |
|||
import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup; |
|||
import com.elink.esua.epdc.dto.ResidentConfigDTO; |
|||
import com.elink.esua.epdc.modules.api.excel.ResidentConfigExcel; |
|||
import com.elink.esua.epdc.modules.api.service.ResidentConfigService; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import javax.servlet.http.HttpServletResponse; |
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
|
|||
/** |
|||
* 居民端配置表 |
|||
* |
|||
* @author elink elink@elink-cn.com |
|||
* @since v1.0.0 2020-06-08 |
|||
*/ |
|||
@RestController |
|||
@RequestMapping("residentconfig") |
|||
public class ResidentConfigController { |
|||
|
|||
@Autowired |
|||
private ResidentConfigService residentConfigService; |
|||
|
|||
@GetMapping("page") |
|||
public Result<PageData<ResidentConfigDTO>> page(@RequestParam Map<String, Object> params) { |
|||
PageData<ResidentConfigDTO> page = residentConfigService.page(params); |
|||
return new Result<PageData<ResidentConfigDTO>>().ok(page); |
|||
} |
|||
|
|||
@GetMapping("{id}") |
|||
public Result<ResidentConfigDTO> get(@PathVariable("id") String id) { |
|||
ResidentConfigDTO data = residentConfigService.get(id); |
|||
return new Result<ResidentConfigDTO>().ok(data); |
|||
} |
|||
|
|||
@PostMapping |
|||
public Result save(@RequestBody ResidentConfigDTO dto) { |
|||
//效验数据
|
|||
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); |
|||
residentConfigService.save(dto); |
|||
return new Result(); |
|||
} |
|||
|
|||
@PutMapping |
|||
public Result update(@RequestBody ResidentConfigDTO dto) { |
|||
//效验数据
|
|||
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); |
|||
residentConfigService.update(dto); |
|||
return new Result(); |
|||
} |
|||
|
|||
@DeleteMapping |
|||
public Result delete(@RequestBody String[] ids) { |
|||
//效验数据
|
|||
AssertUtils.isArrayEmpty(ids, "id"); |
|||
residentConfigService.delete(ids); |
|||
return new Result(); |
|||
} |
|||
|
|||
@GetMapping("export") |
|||
public void export(@RequestParam Map<String, Object> params, HttpServletResponse response) throws Exception { |
|||
List<ResidentConfigDTO> list = residentConfigService.list(params); |
|||
ExcelUtils.exportExcelToTarget(response, null, list, ResidentConfigExcel.class); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,65 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.elink.esua.epdc.modules.api.dao; |
|||
|
|||
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; |
|||
import com.elink.esua.epdc.dto.ResidentConfigDTO; |
|||
import com.elink.esua.epdc.dto.result.ResidentConfigResultDTO; |
|||
import com.elink.esua.epdc.modules.api.entity.ResidentConfigEntity; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
import org.apache.ibatis.annotations.Param; |
|||
|
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* 居民端配置表 |
|||
* |
|||
* @author elink elink@elink-cn.com |
|||
* @since v1.0.0 2020-06-08 |
|||
*/ |
|||
@Mapper |
|||
public interface ResidentConfigDao extends BaseDao<ResidentConfigEntity> { |
|||
/** |
|||
* @return java.util.List<com.elink.esua.epdc.dto.ResidentConfigDTO> |
|||
* @Description pc获取列表 |
|||
* @Author songyunpeng |
|||
* @Date 2020/6/8 |
|||
* @Param [params] |
|||
**/ |
|||
List<ResidentConfigDTO> selectListResidentConfig(Map<String, Object> params); |
|||
|
|||
|
|||
/** |
|||
* @return java.util.List<com.elink.esua.epdc.dto.ResidentConfigDTO> |
|||
* @Description app根据类型获取居民配置列表 |
|||
* @Author songyunpeng |
|||
* @Date 2020/6/8 |
|||
* @Param [residentType] |
|||
**/ |
|||
List<ResidentConfigResultDTO> selectListResidentConfigByResidentType(@Param(value = "residentType") String residentType); |
|||
|
|||
/** |
|||
* @return com.elink.esua.epdc.dto.ResidentConfigDTO |
|||
* @Description 根据类型和编码获取配置 |
|||
* @Author songyunpeng |
|||
* @Date 2020/6/8 |
|||
* @Param [residentType, residentCode] |
|||
**/ |
|||
ResidentConfigDTO selectResidentConfigDTOByTypeAndCode(String residentType, String residentCode); |
|||
} |
@ -0,0 +1,61 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.elink.esua.epdc.modules.api.entity; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
import com.elink.esua.epdc.commons.mybatis.entity.BaseEpdcEntity; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
|
|||
/** |
|||
* 居民端配置表 |
|||
* |
|||
* @author elink elink@elink-cn.com |
|||
* @since v1.0.0 2020-06-08 |
|||
*/ |
|||
@Data |
|||
@EqualsAndHashCode(callSuper = false) |
|||
@TableName("epdc_resident_config") |
|||
public class ResidentConfigEntity extends BaseEpdcEntity { |
|||
|
|||
private static final long serialVersionUID = 2487728661562100503L; |
|||
|
|||
/** |
|||
* 配置类型 |
|||
*/ |
|||
private String residentType; |
|||
|
|||
/** |
|||
* 配置编码 |
|||
*/ |
|||
private String residentCode; |
|||
|
|||
/** |
|||
* 配置内容 |
|||
*/ |
|||
private String residentValue; |
|||
|
|||
/** |
|||
* 排序 |
|||
*/ |
|||
private String sort; |
|||
/** |
|||
* 备注 |
|||
*/ |
|||
private String remark; |
|||
} |
@ -0,0 +1,68 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.elink.esua.epdc.modules.api.excel; |
|||
|
|||
import cn.afterturn.easypoi.excel.annotation.Excel; |
|||
import lombok.Data; |
|||
|
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* 居民端配置表 |
|||
* |
|||
* @author elink elink@elink-cn.com |
|||
* @since v1.0.0 2020-06-08 |
|||
*/ |
|||
@Data |
|||
public class ResidentConfigExcel { |
|||
|
|||
@Excel(name = "主键") |
|||
private String id; |
|||
|
|||
@Excel(name = "配置类型") |
|||
private String residentType; |
|||
|
|||
@Excel(name = "配置编码") |
|||
private String residentCode; |
|||
|
|||
@Excel(name = "配置内容") |
|||
private String residentValue; |
|||
|
|||
@Excel(name = "排序") |
|||
private String sort; |
|||
|
|||
@Excel(name = "删除标识 0:未删除,1:删除") |
|||
private String delFlag; |
|||
|
|||
@Excel(name = "乐观锁") |
|||
private Integer revision; |
|||
|
|||
@Excel(name = "创建人") |
|||
private String createdBy; |
|||
|
|||
@Excel(name = "创建时间") |
|||
private Date createdTime; |
|||
|
|||
@Excel(name = "更新人") |
|||
private String updatedBy; |
|||
|
|||
@Excel(name = "更新时间") |
|||
private Date updatedTime; |
|||
|
|||
|
|||
} |
@ -0,0 +1,117 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.elink.esua.epdc.modules.api.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.dto.ResidentConfigDTO; |
|||
import com.elink.esua.epdc.dto.result.ResidentConfigResultDTO; |
|||
import com.elink.esua.epdc.modules.api.entity.ResidentConfigEntity; |
|||
|
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* 居民端配置表 |
|||
* |
|||
* @author elink elink@elink-cn.com |
|||
* @since v1.0.0 2020-06-08 |
|||
*/ |
|||
public interface ResidentConfigService extends BaseService<ResidentConfigEntity> { |
|||
|
|||
/** |
|||
* 默认分页 |
|||
* |
|||
* @param params |
|||
* @return PageData<ResidentConfigDTO> |
|||
* @author generator |
|||
* @date 2020-06-08 |
|||
*/ |
|||
PageData<ResidentConfigDTO> page(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 默认查询 |
|||
* |
|||
* @param params |
|||
* @return java.util.List<ResidentConfigDTO> |
|||
* @author generator |
|||
* @date 2020-06-08 |
|||
*/ |
|||
List<ResidentConfigDTO> list(Map<String, Object> params); |
|||
|
|||
/** |
|||
* 单条查询 |
|||
* |
|||
* @param id |
|||
* @return ResidentConfigDTO |
|||
* @author generator |
|||
* @date 2020-06-08 |
|||
*/ |
|||
ResidentConfigDTO get(String id); |
|||
|
|||
/** |
|||
* 默认保存 |
|||
* |
|||
* @param dto |
|||
* @return void |
|||
* @author generator |
|||
* @date 2020-06-08 |
|||
*/ |
|||
void save(ResidentConfigDTO dto); |
|||
|
|||
/** |
|||
* 默认更新 |
|||
* |
|||
* @param dto |
|||
* @return void |
|||
* @author generator |
|||
* @date 2020-06-08 |
|||
*/ |
|||
void update(ResidentConfigDTO dto); |
|||
|
|||
/** |
|||
* 批量删除 |
|||
* |
|||
* @param ids |
|||
* @return void |
|||
* @author generator |
|||
* @date 2020-06-08 |
|||
*/ |
|||
void delete(String[] ids); |
|||
|
|||
/** |
|||
* app根据类型获取居民配置 |
|||
* |
|||
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.result.ResidentConfigResultDTO>> |
|||
* @Author songyunpeng |
|||
* @Date 2020/6/8 |
|||
* @Param [residentType] |
|||
**/ |
|||
Result<List<ResidentConfigResultDTO>> listResidentConfig(String residentType); |
|||
|
|||
/** |
|||
* @return com.elink.esua.epdc.dto.ResidentConfigDTO |
|||
* @Description 根据类型和编码获取配置 |
|||
* @Author songyunpeng |
|||
* @Date 2020/6/8 |
|||
* @Param [residentType, residentCode] |
|||
**/ |
|||
ResidentConfigDTO getResidentConfigDTOByTypeAndCode(String residentType, String residentCode); |
|||
|
|||
} |
@ -0,0 +1,121 @@ |
|||
/** |
|||
* Copyright 2018 人人开源 https://www.renren.io
|
|||
* <p> |
|||
* This program is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* <p> |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* <p> |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
package com.elink.esua.epdc.modules.api.service.impl; |
|||
|
|||
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; |
|||
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.dto.ResidentConfigDTO; |
|||
import com.elink.esua.epdc.dto.result.ResidentConfigResultDTO; |
|||
import com.elink.esua.epdc.modules.api.dao.ResidentConfigDao; |
|||
import com.elink.esua.epdc.modules.api.entity.ResidentConfigEntity; |
|||
import com.elink.esua.epdc.modules.api.service.ResidentConfigService; |
|||
import org.apache.commons.lang3.StringUtils; |
|||
import org.springframework.stereotype.Service; |
|||
import org.springframework.transaction.annotation.Transactional; |
|||
|
|||
import java.util.Arrays; |
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* 居民端配置表 |
|||
* |
|||
* @author elink elink@elink-cn.com |
|||
* @since v1.0.0 2020-06-08 |
|||
*/ |
|||
@Service |
|||
public class ResidentConfigServiceImpl extends BaseServiceImpl<ResidentConfigDao, ResidentConfigEntity> implements ResidentConfigService { |
|||
|
|||
@Override |
|||
public PageData<ResidentConfigDTO> page(Map<String, Object> params) { |
|||
IPage<ResidentConfigDTO> page = getPage(params); |
|||
List<ResidentConfigDTO> list = baseDao.selectListResidentConfig(params); |
|||
return new PageData<>(list, page.getTotal()); |
|||
} |
|||
|
|||
@Override |
|||
public List<ResidentConfigDTO> list(Map<String, Object> params) { |
|||
List<ResidentConfigEntity> entityList = baseDao.selectList(getWrapper(params)); |
|||
|
|||
return ConvertUtils.sourceToTarget(entityList, ResidentConfigDTO.class); |
|||
} |
|||
|
|||
private QueryWrapper<ResidentConfigEntity> getWrapper(Map<String, Object> params) { |
|||
String id = (String) params.get(FieldConstant.ID_HUMP); |
|||
|
|||
QueryWrapper<ResidentConfigEntity> wrapper = new QueryWrapper<>(); |
|||
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); |
|||
|
|||
return wrapper; |
|||
} |
|||
|
|||
@Override |
|||
public ResidentConfigDTO get(String id) { |
|||
ResidentConfigEntity entity = baseDao.selectById(id); |
|||
return ConvertUtils.sourceToTarget(entity, ResidentConfigDTO.class); |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void save(ResidentConfigDTO dto) { |
|||
//校验同意类型下 编码是否重复
|
|||
ResidentConfigDTO residentConfigDTOByTypeAndCode = getResidentConfigDTOByTypeAndCode(dto.getResidentType(), dto.getResidentCode()); |
|||
if (residentConfigDTOByTypeAndCode != null) { |
|||
throw new RenException("同一类型下编码不能重复!"); |
|||
} |
|||
ResidentConfigEntity entity = ConvertUtils.sourceToTarget(dto, ResidentConfigEntity.class); |
|||
insert(entity); |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void update(ResidentConfigDTO dto) { |
|||
//校验同意类型下 编码是否重复
|
|||
ResidentConfigDTO residentConfigDTOByTypeAndCode = getResidentConfigDTOByTypeAndCode(dto.getResidentType(), dto.getResidentCode()); |
|||
//若是存在相同且ID不同的话代表编码重复!
|
|||
if (residentConfigDTOByTypeAndCode != null && !residentConfigDTOByTypeAndCode.getId().equals(dto.getId())) { |
|||
throw new RenException("同一类型下编码不能重复!"); |
|||
} |
|||
ResidentConfigEntity entity = ConvertUtils.sourceToTarget(dto, ResidentConfigEntity.class); |
|||
updateById(entity); |
|||
} |
|||
|
|||
@Override |
|||
@Transactional(rollbackFor = Exception.class) |
|||
public void delete(String[] ids) { |
|||
// 逻辑删除(@TableLogic 注解)
|
|||
baseDao.deleteBatchIds(Arrays.asList(ids)); |
|||
} |
|||
|
|||
@Override |
|||
public Result<List<ResidentConfigResultDTO>> listResidentConfig(String residentType) { |
|||
return new Result<List<ResidentConfigResultDTO>>().ok(baseDao.selectListResidentConfigByResidentType(residentType)); |
|||
} |
|||
|
|||
@Override |
|||
public ResidentConfigDTO getResidentConfigDTOByTypeAndCode(String residentType, String residentCode) { |
|||
return baseDao.selectResidentConfigDTOByTypeAndCode(residentType, residentCode); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,59 @@ |
|||
package com.elink.esua.epdc.modules.points.controller; |
|||
|
|||
import com.elink.esua.epdc.common.token.dto.TokenDto; |
|||
import com.elink.esua.epdc.commons.tools.annotation.LoginUser; |
|||
import com.elink.esua.epdc.commons.tools.utils.Result; |
|||
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils; |
|||
import com.elink.esua.epdc.dto.form.EpdcAppPointsRankingFormDTO; |
|||
import com.elink.esua.epdc.dto.form.EpdcAppPointsRecordFormDTO; |
|||
import com.elink.esua.epdc.dto.result.EpdcAppPointsRankingResultDTO; |
|||
import com.elink.esua.epdc.dto.result.EpdcAppPointsRecordResultDTO; |
|||
import com.elink.esua.epdc.modules.points.service.PointsService; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.GetMapping; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 移动端接口-积分管理模块 |
|||
* |
|||
* @Author zhangyong |
|||
* @Date 2020-04-29 |
|||
*/ |
|||
@RestController |
|||
@RequestMapping("points") |
|||
public class ApiPointsController { |
|||
|
|||
@Autowired |
|||
private PointsService pointsService; |
|||
|
|||
/** |
|||
* 当前登录用户 积分记录接口 |
|||
* |
|||
* @param: [userDetail, dto] |
|||
* @return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.result.EpdcAppPointsRecordResultDTO>> |
|||
* @Author: zy |
|||
* @Date: 2020-04-29 |
|||
*/ |
|||
@GetMapping("pointsRecord/list") |
|||
public Result<List<EpdcAppPointsRecordResultDTO>> listPointsRecord(@LoginUser TokenDto userDetail, EpdcAppPointsRecordFormDTO formDto) { |
|||
ValidatorUtils.validateEntity(formDto); |
|||
return pointsService.listPointsRecord(userDetail, formDto); |
|||
} |
|||
|
|||
/** |
|||
* 积分排行接口(0 周排行、1 月排行) |
|||
* |
|||
* @param: [userDetail, formDto] |
|||
* @return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.result.EpdcAppPointsRankingResultDTO> |
|||
* @Author: zy |
|||
* @Date: 2020-04-30 |
|||
*/ |
|||
@GetMapping("pointsRanking/list") |
|||
public Result<EpdcAppPointsRankingResultDTO> listPointsRanking(@LoginUser TokenDto userDetail, EpdcAppPointsRankingFormDTO formDto) { |
|||
ValidatorUtils.validateEntity(formDto); |
|||
return pointsService.listPointsRanking(userDetail, formDto); |
|||
} |
|||
} |
@ -0,0 +1,63 @@ |
|||
package com.elink.esua.epdc.modules.points.feign; |
|||
|
|||
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; |
|||
import com.elink.esua.epdc.commons.tools.utils.Result; |
|||
import com.elink.esua.epdc.dto.form.EpdcAppPointsRankingFormDTO; |
|||
import com.elink.esua.epdc.dto.form.EpdcAppPointsRecordFormDTO; |
|||
import com.elink.esua.epdc.dto.result.EpdcAppPointsRankingResultDTO; |
|||
import com.elink.esua.epdc.dto.result.EpdcAppPointsRecordResultDTO; |
|||
import com.elink.esua.epdc.modules.points.feign.fallback.PointsFeignClientFallback; |
|||
import com.elink.esua.epdc.pointcommons.tools.dto.PointsRuleResultDTO; |
|||
import org.springframework.cloud.openfeign.FeignClient; |
|||
import org.springframework.http.MediaType; |
|||
import org.springframework.web.bind.annotation.GetMapping; |
|||
import org.springframework.web.bind.annotation.PathVariable; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 积分管理模块 |
|||
* @Author zhangyong |
|||
* @Date 2020-04-29 |
|||
*/ |
|||
@FeignClient(name = ServiceConstant.EPDC_POINTS_SERVER, fallback = PointsFeignClientFallback.class) |
|||
public interface PointsFeignClient { |
|||
|
|||
/** |
|||
* 当前登录用户 积分记录接口 |
|||
* |
|||
* @param formDto |
|||
* param pageIndex 必选 页码 |
|||
* param pageSize 必选 页容量 |
|||
* param userId 必选 用户ID |
|||
* @return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.EpdcAppPointsRecordResultDTO>> |
|||
* @Author: zy |
|||
* @Date: 2020-04-29 |
|||
*/ |
|||
@GetMapping(value = "points/epdc-app/points/pointsRecord/list", consumes = MediaType.APPLICATION_JSON_VALUE) |
|||
Result<List<EpdcAppPointsRecordResultDTO>> listPointsRecordFeignClient(EpdcAppPointsRecordFormDTO formDto); |
|||
|
|||
/** |
|||
* 积分排行接口(0 周排行、1 月排行) |
|||
* |
|||
* @param formDto |
|||
* param pageIndex 必选 页码 |
|||
* param pageSize 必选 页容量 |
|||
* param rankingType 必选 排名方式:0-周,1-月 |
|||
* @return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.result.EpdcAppPointsRankingResultDTO> |
|||
* @Author: zy |
|||
* @Date: 2020-04-30 |
|||
*/ |
|||
@GetMapping(value = "points/epdc-app/points/pointsRanking/list", consumes = MediaType.APPLICATION_JSON_VALUE) |
|||
Result<EpdcAppPointsRankingResultDTO> listPointsRankingFeignClient(EpdcAppPointsRankingFormDTO formDto); |
|||
|
|||
/** |
|||
* @Description 根据动作编码获取积分规则 |
|||
* @Author songyunpeng |
|||
* @Date 2020/7/21 |
|||
* @Param [behaviorCode] |
|||
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.result.PointsRuleResultDTO> |
|||
**/ |
|||
@GetMapping(value = "points/epdc-app/points/getPointsRuleByBehaviorCode/{behaviorCode}", consumes = MediaType.APPLICATION_JSON_VALUE) |
|||
Result<PointsRuleResultDTO> getPointsRuleByBehaviorCode(@PathVariable("behaviorCode") String behaviorCode); |
|||
} |
@ -0,0 +1,38 @@ |
|||
package com.elink.esua.epdc.modules.points.feign.fallback; |
|||
|
|||
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; |
|||
import com.elink.esua.epdc.commons.tools.utils.ModuleUtils; |
|||
import com.elink.esua.epdc.commons.tools.utils.Result; |
|||
import com.elink.esua.epdc.dto.form.EpdcAppPointsRankingFormDTO; |
|||
import com.elink.esua.epdc.dto.form.EpdcAppPointsRecordFormDTO; |
|||
import com.elink.esua.epdc.dto.result.EpdcAppPointsRankingResultDTO; |
|||
import com.elink.esua.epdc.dto.result.EpdcAppPointsRecordResultDTO; |
|||
import com.elink.esua.epdc.modules.points.feign.PointsFeignClient; |
|||
import com.elink.esua.epdc.pointcommons.tools.dto.PointsRuleResultDTO; |
|||
import org.springframework.stereotype.Component; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 积分管理模块 |
|||
* @Author zhangyong |
|||
* @Date 2020-04-29 |
|||
*/ |
|||
@Component |
|||
public class PointsFeignClientFallback implements PointsFeignClient { |
|||
|
|||
@Override |
|||
public Result<List<EpdcAppPointsRecordResultDTO>> listPointsRecordFeignClient(EpdcAppPointsRecordFormDTO formDto) { |
|||
return ModuleUtils.feignConError(ServiceConstant.EPDC_POINTS_SERVER, "listPointsRecordFeignClient", formDto); |
|||
} |
|||
|
|||
@Override |
|||
public Result<EpdcAppPointsRankingResultDTO> listPointsRankingFeignClient(EpdcAppPointsRankingFormDTO formDto) { |
|||
return ModuleUtils.feignConError(ServiceConstant.EPDC_POINTS_SERVER, "listPointsRankingFeignClient", formDto); |
|||
} |
|||
|
|||
@Override |
|||
public Result<PointsRuleResultDTO> getPointsRuleByBehaviorCode(String behaviorCode) { |
|||
return ModuleUtils.feignConError(ServiceConstant.EPDC_POINTS_SERVER, "getPointsRuleByBehaviorCode", behaviorCode); |
|||
} |
|||
} |
@ -0,0 +1,45 @@ |
|||
package com.elink.esua.epdc.modules.points.service; |
|||
|
|||
import com.elink.esua.epdc.common.token.dto.TokenDto; |
|||
import com.elink.esua.epdc.commons.tools.utils.Result; |
|||
import com.elink.esua.epdc.dto.form.EpdcAppPointsRankingFormDTO; |
|||
import com.elink.esua.epdc.dto.form.EpdcAppPointsRecordFormDTO; |
|||
import com.elink.esua.epdc.dto.result.EpdcAppPointsRankingResultDTO; |
|||
import com.elink.esua.epdc.dto.result.EpdcAppPointsRecordResultDTO; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 积分管理模块 |
|||
* @Author zhangyong |
|||
* @Date 2020-04-29 |
|||
*/ |
|||
public interface PointsService { |
|||
|
|||
/** |
|||
* 当前登录用户 积分记录接口 |
|||
* |
|||
* @param formDto |
|||
* param pageIndex 必选 页码 |
|||
* param pageSize 必选 页容量 |
|||
* @param userDetail 必选 获取用户ID |
|||
* @return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.EpdcAppPointsRecordResultDTO>> |
|||
* @Author: zy |
|||
* @Date: 2020-04-29 |
|||
*/ |
|||
Result<List<EpdcAppPointsRecordResultDTO>> listPointsRecord(TokenDto userDetail, EpdcAppPointsRecordFormDTO formDto); |
|||
|
|||
/** |
|||
* 积分排行接口(0 周排行、1 月排行) |
|||
* |
|||
* @param formDto |
|||
* param pageIndex 必选 页码 |
|||
* param pageSize 必选 页容量 |
|||
* param rankingType 必选 排名方式:0-周,1-月 |
|||
* @param userDetail 必选 获取用户信息 |
|||
* @return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.result.EpdcAppPointsRankingResultDTO> |
|||
* @Author: zy |
|||
* @Date: 2020-04-30 |
|||
*/ |
|||
Result<EpdcAppPointsRankingResultDTO> listPointsRanking(TokenDto userDetail, EpdcAppPointsRankingFormDTO formDto); |
|||
} |
@ -0,0 +1,39 @@ |
|||
package com.elink.esua.epdc.modules.points.service.impl; |
|||
|
|||
import com.elink.esua.epdc.common.token.dto.TokenDto; |
|||
import com.elink.esua.epdc.commons.tools.utils.Result; |
|||
import com.elink.esua.epdc.dto.form.EpdcAppPointsRankingFormDTO; |
|||
import com.elink.esua.epdc.dto.form.EpdcAppPointsRecordFormDTO; |
|||
import com.elink.esua.epdc.dto.result.EpdcAppPointsRankingResultDTO; |
|||
import com.elink.esua.epdc.dto.result.EpdcAppPointsRecordResultDTO; |
|||
import com.elink.esua.epdc.modules.points.feign.PointsFeignClient; |
|||
import com.elink.esua.epdc.modules.points.service.PointsService; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 积分管理模块 |
|||
* @Author zhangyong |
|||
* @Date 2020-04-29 |
|||
*/ |
|||
@Service |
|||
public class PointsServiceImpl implements PointsService { |
|||
|
|||
@Autowired |
|||
private PointsFeignClient pointsFeignClient; |
|||
|
|||
@Override |
|||
public Result<List<EpdcAppPointsRecordResultDTO>> listPointsRecord(TokenDto userDetail, EpdcAppPointsRecordFormDTO formDto) { |
|||
formDto.setUserId(userDetail.getUserId()); |
|||
return pointsFeignClient.listPointsRecordFeignClient(formDto); |
|||
} |
|||
|
|||
@Override |
|||
public Result<EpdcAppPointsRankingResultDTO> listPointsRanking(TokenDto userDetail, EpdcAppPointsRankingFormDTO formDto) { |
|||
formDto.setUserId(userDetail.getUserId()); |
|||
formDto.setNickName(userDetail.getNickname()); |
|||
return pointsFeignClient.listPointsRankingFeignClient(formDto); |
|||
} |
|||
} |
@ -1,4 +1,4 @@ |
|||
nacos: |
|||
config: |
|||
server-addr: 47.104.224.45:8848 |
|||
namespace: 6a3577b4-7b79-43f6-aebb-9c3f31263f6a |
|||
#nacos: |
|||
# config: |
|||
# server-addr: 47.104.224.45:8848 |
|||
# namespace: 6a3577b4-7b79-43f6-aebb-9c3f31263f6a |
|||
|
@ -0,0 +1,75 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
|
|||
<mapper namespace="com.elink.esua.epdc.modules.api.dao.ResidentConfigDao"> |
|||
|
|||
<resultMap type="com.elink.esua.epdc.modules.api.entity.ResidentConfigEntity" id="residentConfigMap"> |
|||
<result property="id" column="ID"/> |
|||
<result property="residentType" column="RESIDENT_TYPE"/> |
|||
<result property="residentCode" column="RESIDENT_CODE"/> |
|||
<result property="residentValue" column="RESIDENT_VALUE"/> |
|||
<result property="sort" column="SORT"/> |
|||
<result property="delFlag" column="DEL_FLAG"/> |
|||
<result property="revision" column="REVISION"/> |
|||
<result property="createdBy" column="CREATED_BY"/> |
|||
<result property="createdTime" column="CREATED_TIME"/> |
|||
<result property="updatedBy" column="UPDATED_BY"/> |
|||
<result property="updatedTime" column="UPDATED_TIME"/> |
|||
<result property="remark" column="REMARK"/> |
|||
</resultMap> |
|||
<select id="selectListResidentConfig" resultType="com.elink.esua.epdc.dto.ResidentConfigDTO"> |
|||
select |
|||
ID, |
|||
RESIDENT_TYPE, |
|||
RESIDENT_CODE, |
|||
RESIDENT_VALUE, |
|||
SORT, |
|||
DEL_FLAG, |
|||
REVISION, |
|||
CREATED_BY, |
|||
CREATED_TIME, |
|||
UPDATED_BY, |
|||
UPDATED_TIME, |
|||
REMARK |
|||
from epdc_resident_config |
|||
where DEL_FLAG = '0' |
|||
<if test="residentType!=null and residentType != ''"> |
|||
and RESIDENT_TYPE = #{residentType} |
|||
</if> |
|||
ORDER BY SORT,CREATED_TIME DESC |
|||
</select> |
|||
|
|||
|
|||
|
|||
<select id="selectListResidentConfigByResidentType" resultType="com.elink.esua.epdc.dto.result.ResidentConfigResultDTO"> |
|||
SELECT |
|||
RESIDENT_TYPE, |
|||
RESIDENT_CODE, |
|||
RESIDENT_VALUE |
|||
FROM |
|||
`epdc_resident_config` |
|||
WHERE DEL_FLAG = 0 |
|||
<if test="residentType!=null and residentType!=''"> |
|||
and RESIDENT_TYPE = #{residentType} |
|||
</if> |
|||
ORDER BY SORT,CREATED_TIME DESC |
|||
</select> |
|||
<select id="selectResidentConfigDTOByTypeAndCode" resultType="com.elink.esua.epdc.dto.ResidentConfigDTO"> |
|||
select |
|||
ID, |
|||
RESIDENT_TYPE, |
|||
RESIDENT_CODE, |
|||
RESIDENT_VALUE, |
|||
SORT, |
|||
DEL_FLAG, |
|||
REVISION, |
|||
CREATED_BY, |
|||
CREATED_TIME, |
|||
UPDATED_BY, |
|||
UPDATED_TIME, |
|||
REMARK |
|||
from epdc_resident_config |
|||
where DEL_FLAG = '0' and RESIDENT_TYPE = #{residentType} and RESIDENT_CODE = #{residentCode} |
|||
</select> |
|||
|
|||
</mapper> |
Loading…
Reference in new issue