You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

133 lines
5.2 KiB

package com.ruoyi.programManagement.controller;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import com.ruoyi.programManagement.entity.SzsAdministrativeDivision;
import com.ruoyi.programManagement.entity.request.BAdministrativeTreeRequest;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.programManagement.service.ISzsAdministrativeDivisionService;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
/**
* 省-工业企业风险评估上报系统_行政区划字典Controller
*
* @author ruoyi
* @date 2023-10-17
*/
@Api(tags = "省-工业企业风险评估上报系统_行政区划")
@RestController
@RequestMapping("/pharmaceuticals/division")
public class SzsAdministrativeDivisionController extends BaseController
{
@Autowired
private ISzsAdministrativeDivisionService szsAdministrativeDivisionService;
/**
* 查询省-工业企业风险评估上报系统_行政区划字典列表
*/
@GetMapping("/list")
public TableDataInfo list(SzsAdministrativeDivision szsAdministrativeDivision)
{
startPage();
List<SzsAdministrativeDivision> list = szsAdministrativeDivisionService.selectSzsAdministrativeDivisionList(szsAdministrativeDivision);
return getDataTable(list);
}
/**
* 导出省-工业企业风险评估上报系统_行政区划字典列表
*/
@PostMapping("/export")
public void export(HttpServletResponse response, SzsAdministrativeDivision szsAdministrativeDivision)
{
List<SzsAdministrativeDivision> list = szsAdministrativeDivisionService.selectSzsAdministrativeDivisionList(szsAdministrativeDivision);
ExcelUtil<SzsAdministrativeDivision> util = new ExcelUtil<SzsAdministrativeDivision>(SzsAdministrativeDivision.class);
util.exportExcel(response, list, "省-工业企业风险评估上报系统_行政区划字典数据");
}
/**
* 获取省-工业企业风险评估上报系统_行政区划字典详细信息
*/
@GetMapping(value = "/{ID}")
public AjaxResult getInfo(@PathVariable("ID") String ID)
{
return success(szsAdministrativeDivisionService.selectSzsAdministrativeDivisionByID(ID));
}
/**
* 新增省-工业企业风险评估上报系统_行政区划字典
*/
@PostMapping
public AjaxResult add(@RequestBody SzsAdministrativeDivision szsAdministrativeDivision)
{
return toAjax(szsAdministrativeDivisionService.insertSzsAdministrativeDivision(szsAdministrativeDivision));
}
/**
* 修改省-工业企业风险评估上报系统_行政区划字典
*/
@PutMapping
public AjaxResult edit(@RequestBody SzsAdministrativeDivision szsAdministrativeDivision)
{
return toAjax(szsAdministrativeDivisionService.updateSzsAdministrativeDivision(szsAdministrativeDivision));
}
/**
* 删除省-工业企业风险评估上报系统_行政区划字典
*/
@DeleteMapping("/{IDs}")
public AjaxResult remove(@PathVariable String[] IDs)
{
return toAjax(szsAdministrativeDivisionService.deleteSzsAdministrativeDivisionByIDs(IDs));
}
/**
* 行政区划树结构
*/
@ApiOperation(value = "行政区划树结构")
@GetMapping("/tree")
public AjaxResult tree() {
List<BAdministrativeTreeRequest> list = szsAdministrativeDivisionService.selectBAdministrativeTreeRequestList();
List<BAdministrativeTreeRequest> listsub = szsAdministrativeDivisionService.selectcascadingSelectDataList();
List<BAdministrativeTreeRequest> cascadingSelectData = new ArrayList<>();
for (BAdministrativeTreeRequest item1 : list) {
BAdministrativeTreeRequest parentDto = new BAdministrativeTreeRequest(item1.getCounty(), item1.getSubdistrict(), item1.getInstitutionName());
for (BAdministrativeTreeRequest item2 : listsub) {
if (item2.getCounty()!=null && !item2.getCounty().equals("")){
if (item2.getCounty().equals(item1.getSubdistrict())) {
BAdministrativeTreeRequest childDto = new BAdministrativeTreeRequest(item2.getCounty(), item2.getSubdistrict(), item2.getInstitutionName());
parentDto.addChild(childDto);
}
}
}
cascadingSelectData.add(parentDto);
}
return success(cascadingSelectData);
}
}