package com.zzg.web.controller.land; import com.zzg.common.core.domain.AjaxResult; import com.zzg.common.core.domain.entity.system.SysUser; import com.zzg.common.core.domain.model.LoginUser; import com.zzg.common.utils.ExcelUtils; import com.zzg.common.utils.SecurityUtils; import com.zzg.common.utils.uuid.IdUtils; import com.zzg.system.domain.SysCity; import com.zzg.system.domain.vo.City; import com.zzg.system.service.system.ISysCityService; import com.zzg.system.service.system.ISysUserService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Optional; import java.util.stream.Collectors; @Api(tags = "测试") @RestController @RequestMapping("demo") public class DemoController { @Resource ISysUserService userService; @Resource ISysCityService sysCityService; @ApiOperation("用户列表") @GetMapping("list") public AjaxResult getUserList() { List list = userService.list(); return AjaxResult.success(list); } @ApiOperation("获取当前登录用户信息") @GetMapping("getLoginUser") public AjaxResult getLoginUser() { LoginUser loginUser = SecurityUtils.getLoginUser(); return AjaxResult.success(loginUser); } @ApiOperation("初始化村组信息") @GetMapping("/initGroups") public AjaxResult initGroups() throws IOException { File file = new File("D:\\Work\\崇州征地项目\\崇州村组(2).xlsx"); FileInputStream fileInputStream = new FileInputStream(file); List list = Optional.ofNullable(ExcelUtils.importExcel(fileInputStream, 0, 1, City.class)).orElse(new ArrayList<>()); Map> collect = list.stream().collect(Collectors.groupingBy(City::getTown)); List groupList = new ArrayList<>(); SysCity district = new SysCity(); district.setId("0"); district.setPid("-1"); district.setName("崇州市"); district.setLevel(0); district.setState(0); district.setRanking(1); groupList.add(district); Integer a = 1; for (Map.Entry> entry : collect.entrySet()) { String townName = entry.getKey(); SysCity town = new SysCity(); town.setId(IdUtils.fastSimpleUUID()); town.setPid("0"); town.setName(townName); town.setLevel(1); town.setState(0); town.setRanking(a); a += 1; groupList.add(town); List value = entry.getValue(); Integer b = 1; for (City c : value) { SysCity village = new SysCity(); village.setId(IdUtils.fastSimpleUUID()); village.setPid(town.getId()); village.setName(c.getVillage()); village.setLevel(2); village.setState(0); village.setRanking(b); b += 1; groupList.add(village); for (int i = 1; i <= c.getNum(); i++) { SysCity group = new SysCity(); group.setId(IdUtils.fastSimpleUUID()); group.setPid(village.getId()); group.setName(i + "组"); group.setLevel(3); group.setState(0); group.setRanking(i); groupList.add(group); } if (c.getType().equals("社区")) { SysCity group = new SysCity(); group.setId(IdUtils.fastSimpleUUID()); group.setPid(village.getId()); group.setName("社区集体"); group.setLevel(3); group.setState(0); group.setRanking(c.getNum() + 1); groupList.add(group); } else { SysCity group = new SysCity(); group.setId(IdUtils.fastSimpleUUID()); group.setPid(village.getId()); group.setName("村集体"); group.setLevel(3); group.setState(0); group.setRanking(c.getNum() + 1); groupList.add(group); } } } sysCityService.saveBatch(groupList); return AjaxResult.success(); } }