公会-运营负责人
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
package com.accompany.admin.model.guild;
|
||||
|
||||
import com.accompany.core.mybatis.typehandler.IntegerListTypeHandler;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class GuildOperator {
|
||||
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Integer id;
|
||||
private String name;
|
||||
private Integer partitionId;
|
||||
@TableField(typeHandler = IntegerListTypeHandler.class)
|
||||
private List<Integer> regionIds;
|
||||
private Boolean enable;
|
||||
private Date updateTime;
|
||||
private Integer adminId;
|
||||
|
||||
}
|
@@ -0,0 +1,34 @@
|
||||
package com.accompany.admin.vo.guild;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@Data
|
||||
public class GuildOperatorAdminVo {
|
||||
|
||||
@ApiModelProperty("id")
|
||||
private Integer id;
|
||||
@ApiModelProperty("名称")
|
||||
private String name;
|
||||
@ApiModelProperty("分区id")
|
||||
private Integer partitionId;
|
||||
@ApiModelProperty("分区描述")
|
||||
private String partitionDesc;
|
||||
@ApiModelProperty("地区id列表")
|
||||
private List<Integer> regionIds;
|
||||
@ApiModelProperty("地区映射字典")
|
||||
private Map<Integer, String> regionMap;
|
||||
@ApiModelProperty("是否启用")
|
||||
private Boolean enable;
|
||||
@ApiModelProperty("更新时间")
|
||||
private Date updateTime;
|
||||
@ApiModelProperty("后台操作人id")
|
||||
private Integer adminId;
|
||||
@ApiModelProperty("后台操作人名称")
|
||||
private String adminName;
|
||||
|
||||
}
|
@@ -0,0 +1,10 @@
|
||||
package com.accompany.admin.mapper.guild;
|
||||
|
||||
import com.accompany.admin.model.guild.GuildOperator;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
@Mapper
|
||||
public interface GuildOperatorMapper extends BaseMapper<GuildOperator> {
|
||||
// You can add custom SQL methods here if needed
|
||||
}
|
@@ -0,0 +1,60 @@
|
||||
package com.accompany.admin.service.guild;
|
||||
|
||||
import com.accompany.admin.mapper.guild.GuildOperatorMapper;
|
||||
import com.accompany.admin.model.guild.GuildOperator;
|
||||
import com.accompany.admin.service.RegionInfoAdminService;
|
||||
import com.accompany.admin.service.system.AdminUserService;
|
||||
import com.accompany.admin.vo.guild.GuildOperatorAdminVo;
|
||||
import com.accompany.core.model.PartitionInfo;
|
||||
import com.accompany.core.service.partition.PartitionInfoService;
|
||||
import com.accompany.core.service.region.RegionInfoService;
|
||||
import com.accompany.core.vo.RegionInfoVo;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
public class GuildOperatorAdminService extends ServiceImpl<GuildOperatorMapper, GuildOperator> {
|
||||
|
||||
@Autowired
|
||||
private PartitionInfoService partitionInfoService;
|
||||
@Autowired
|
||||
private RegionInfoAdminService regionInfoAdminService;
|
||||
@Autowired
|
||||
private AdminUserService adminUserService;
|
||||
|
||||
public List<GuildOperatorAdminVo> listAll(){
|
||||
List<GuildOperator> list = lambdaQuery().eq(GuildOperator::getEnable, true).list();
|
||||
if (CollectionUtils.isEmpty(list)){
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
Map<Integer, String> partitionDescMap = partitionInfoService.listAll().stream().collect(Collectors.toMap(PartitionInfo::getId, PartitionInfo::getDesc));
|
||||
|
||||
Map<Integer, String> regionDescMap = regionInfoAdminService.getAllList().stream().collect(Collectors.toMap(RegionInfoVo::getId, RegionInfoVo::getName));
|
||||
|
||||
Map<Integer, String> adminUserMap = adminUserService.adminUserMap();
|
||||
|
||||
return list.stream().map(item -> {
|
||||
GuildOperatorAdminVo vo = new GuildOperatorAdminVo();
|
||||
vo.setId(item.getId());
|
||||
vo.setName(item.getName());
|
||||
vo.setPartitionId(item.getPartitionId());
|
||||
vo.setPartitionDesc(partitionDescMap.get(item.getPartitionId()));
|
||||
vo.setRegionIds(item.getRegionIds());
|
||||
vo.setRegionMap(item.getRegionIds().stream().collect(Collectors.toMap(v -> v, regionDescMap::get)));
|
||||
vo.setEnable(item.getEnable());
|
||||
vo.setPartitionId(item.getPartitionId());
|
||||
vo.setAdminName(adminUserMap.get(item.getAdminId()));
|
||||
return vo;
|
||||
}).toList();
|
||||
|
||||
}
|
||||
|
||||
}
|
@@ -0,0 +1,5 @@
|
||||
<?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.accompany.admin.mapper.guild.GuildOperatorMapper">
|
||||
<!-- You can add custom SQL statements here -->
|
||||
</mapper>
|
@@ -0,0 +1,57 @@
|
||||
package com.accompany.admin.controller.guild;
|
||||
|
||||
import com.accompany.admin.controller.BaseController;
|
||||
import com.accompany.admin.model.guild.GuildOperator;
|
||||
import com.accompany.admin.service.guild.GuildOperatorAdminService;
|
||||
import com.accompany.admin.vo.guild.GuildOperatorAdminVo;
|
||||
import com.accompany.business.param.BasePageParams;
|
||||
import com.accompany.common.result.BusiResult;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
import io.swagger.annotations.ApiImplicitParams;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Api(tags = "公会运营负责人")
|
||||
@RequestMapping("/admin/guildOperator")
|
||||
@RestController
|
||||
public class GuildOperatorAdminController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
private GuildOperatorAdminService service;
|
||||
|
||||
@ApiOperation("查询所有")
|
||||
@GetMapping("/listAll")
|
||||
public BusiResult<List<GuildOperatorAdminVo>> listAll() {
|
||||
List<GuildOperatorAdminVo> list = service.listAll();
|
||||
return BusiResult.success(list);
|
||||
}
|
||||
|
||||
@ApiOperation("分页查询")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "pageNo", value = "页码", required = true),
|
||||
@ApiImplicitParam(name = "pageSize", value = "页长", required = true),
|
||||
})
|
||||
@GetMapping("/page")
|
||||
public BusiResult<Page<GuildOperator>> page(BasePageParams pageParam) {
|
||||
Page<GuildOperator> page = new Page<>(pageParam.getPageNo(), pageParam.getPageSize());
|
||||
service.page(page, null);
|
||||
return BusiResult.success(page);
|
||||
}
|
||||
|
||||
@ApiOperation("分页查询")
|
||||
@PostMapping("/save")
|
||||
public BusiResult<Void> save(@RequestBody GuildOperator guildOperator) {
|
||||
int admin = getAdminId();
|
||||
guildOperator.setAdminId(admin);
|
||||
guildOperator.setUpdateTime(new Date());
|
||||
service.saveOrUpdate(guildOperator);
|
||||
return BusiResult.success();
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user