integrated_traffic/src/main/java/com/zcloud/controller/system/PostController.java

324 lines
10 KiB
Java
Raw Normal View History

2024-01-03 09:48:43 +08:00
package com.zcloud.controller.system;
import com.zcloud.controller.base.BaseController;
import com.zcloud.entity.Page;
import com.zcloud.entity.PageData;
2024-01-03 11:04:18 +08:00
import com.zcloud.logs.LogAnno;
import com.zcloud.service.system.ImgFilesService;
2024-01-03 09:48:43 +08:00
import com.zcloud.service.system.PostService;
2024-01-03 11:04:18 +08:00
import com.zcloud.service.system.UsersService;
import com.zcloud.util.*;
2024-01-03 09:48:43 +08:00
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
2024-01-03 11:04:18 +08:00
import org.springframework.transaction.annotation.Transactional;
2024-01-03 09:48:43 +08:00
import org.springframework.web.bind.annotation.RequestMapping;
2024-01-03 11:04:18 +08:00
import org.springframework.web.bind.annotation.RequestParam;
2024-01-03 09:48:43 +08:00
import org.springframework.web.bind.annotation.ResponseBody;
2024-01-03 11:04:18 +08:00
import org.springframework.web.multipart.MultipartFile;
2024-01-03 09:48:43 +08:00
import org.springframework.web.servlet.ModelAndView;
import java.util.*;
/**
*
* luoxiaobao
* 2020-12-28
* www.zcloudchina.com
*/
@Controller
@RequestMapping("/post")
public class PostController extends BaseController {
@Autowired
private PostService postService;
2024-01-03 11:04:18 +08:00
@Autowired
private ImgFilesService imgFilesService;
@Autowired
private Smb smb;
@Autowired
private UsersService usersService;
2024-01-03 09:48:43 +08:00
/**
* @param
* @throws Exception
*/
@RequestMapping(value="/add")
@RequiresPermissions("post:add")
@ResponseBody
2024-01-03 11:04:18 +08:00
@Transactional
@LogAnno(menuType= "双重预防",menuServer= "企业管理",instructionsOperate = "岗位管理",instructionsType = "新增")
public Object add(@RequestParam(value="FFILE",required=false) MultipartFile[] files) throws Exception{
2024-01-03 09:48:43 +08:00
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
pd.put("POST_ID", this.get32UUID()); //主键
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); //企业
pd.put("ISDELETE", "0"); //是否删除
pd.put("CREATOR",Jurisdiction.getUsername()); //添加人
pd.put("CREATTIME", DateUtil.date2Str(new Date())); //创建时间
pd.put("OPERATOR", Jurisdiction.getUsername()); //修改人
pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间
postService.save(pd);
2024-01-03 11:04:18 +08:00
if (files != null && files.length > 0) {
for (int i = 0; i < files.length; i++) {
MultipartFile file = files[i];
// 保存文件
String ffile = DateUtil.getDays();
String fileName = ""; //执0行上传
if (null != file && !file.isEmpty()) {
fileName = this.get32UUID()+file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
byte[] bytes = file.getBytes();
smb.sshSftp(file, fileName,Const.FILEPATHYHTP + ffile);
}
pd.put("IMGFILES_ID", this.get32UUID());
pd.put("FILEPATH", Const.FILEPATHYHTP + ffile+"/"+fileName);
pd.put("TYPE", 23);
pd.put("FOREIGN_KEY", pd.get("POST_ID"));
imgFilesService.save(pd);
}
}
2024-01-03 09:48:43 +08:00
map.put("result", errInfo);
return map;
}
/**
* @param out
* @throws Exception
*/
@RequestMapping(value="/delete")
@RequiresPermissions("post:del")
@ResponseBody
2024-01-03 11:04:18 +08:00
@LogAnno(menuType= "双重预防",menuServer= "企业管理",instructionsOperate = "岗位管理",instructionsType = "删除")
2024-01-03 09:48:43 +08:00
public Object delete() throws Exception{
Map<String,String> map = new HashMap<String,String>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
2024-01-03 11:04:18 +08:00
pd.put("POST_ID", pd.get("POST_ID"));
List<PageData> list = usersService.listAll(pd);
if(list!=null && list.size()>0) {
// map.put("result", "failed"); //返回结果
map.put("msg", "该岗位下面有角色,请删除所有的角色后再删除");
return map;
}
2024-01-03 09:48:43 +08:00
postService.delete(pd);
map.put("result", errInfo); //返回结果
return map;
}
/**
* @param
* @throws Exception
*/
@RequestMapping(value="/edit")
@RequiresPermissions("post:edit")
@ResponseBody
2024-01-03 11:04:18 +08:00
@Transactional
@LogAnno(menuType= "双重预防",menuServer= "企业管理",instructionsOperate = "岗位管理",instructionsType = "修改")
public Object edit(@RequestParam(value="FFILE",required=false) MultipartFile[] files) throws Exception{
2024-01-03 09:48:43 +08:00
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
postService.edit(pd);
2024-01-03 11:04:18 +08:00
if (files != null && files.length > 0) {
for (int i = 0; i < files.length; i++) {
MultipartFile file = files[i];
// 保存文件
String ffile = DateUtil.getDays();
String fileName = ""; //执0行上传
if (null != file && !file.isEmpty()) {
fileName = this.get32UUID()+file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
byte[] bytes = file.getBytes();
smb.sshSftp(file, fileName,Const.FILEPATHYHTP + ffile);
}
pd.put("IMGFILES_ID", this.get32UUID());
pd.put("FILEPATH", Const.FILEPATHYHTP + ffile+"/"+fileName);
pd.put("TYPE", 23);
pd.put("FOREIGN_KEY", pd.get("POST_ID"));
imgFilesService.save(pd);
}
}
2024-01-03 09:48:43 +08:00
map.put("result", errInfo);
return map;
}
/**
* @param page
* @throws Exception
*/
@RequestMapping(value="/list")
@RequiresPermissions("post:list")
@ResponseBody
2024-01-03 11:04:18 +08:00
@LogAnno(menuType= "双重预防",menuServer= "企业管理",instructionsOperate = "岗位管理",instructionsType = "列表")
2024-01-03 09:48:43 +08:00
public Object list(Page page) throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
String KEYWORDS = pd.getString("KEYWORDS"); //关键词检索条件
if(Tools.notEmpty(KEYWORDS))pd.put("KEYWORDS", KEYWORDS.trim());
page.setPd(pd);
List<PageData> varList = postService.list(page); //列出Post列表
2024-01-03 11:04:18 +08:00
if(varList != null && varList.size() > 0) {
for(PageData var : varList) {
PageData pd2 = new PageData();
pd2.put("FOREIGN_KEY", var.getString("POST_ID"));
List<PageData> imgs = imgFilesService.listAll(pd2);
var.put("imgs", imgs);
}
}
2024-01-03 09:48:43 +08:00
map.put("varList", varList);
map.put("page", page);
map.put("result", errInfo);
return map;
}
/**
* @param page
* @throws Exception
*/
@RequestMapping(value="/listAll")
@ResponseBody
2024-01-03 11:04:18 +08:00
@LogAnno(menuType= "双重预防",menuServer= "隐患排查",instructionsOperate = "清单管理",instructionsType = "列表")
2024-01-03 09:48:43 +08:00
public Object listAll() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
pd.put("STATUS", 0);
List<PageData> varList = postService.listAll(pd); //列出Post列表
map.put("postList", varList);
map.put("result", errInfo);
return map;
}
/**
* @param
* @throws Exception
*/
@RequestMapping(value="/goEdit")
@RequiresPermissions("post:edit")
@ResponseBody
2024-01-03 11:04:18 +08:00
@LogAnno(menuType= "双重预防",menuServer= "企业管理",instructionsOperate = "岗位管理",instructionsType = "去修改页面获取数据")
2024-01-03 09:48:43 +08:00
public Object goEdit() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
pd = postService.findById(pd); //根据ID读取
2024-01-03 11:04:18 +08:00
PageData pd2 = new PageData();
pd2.put("FOREIGN_KEY", pd.getString("POST_ID"));
pd2.put("TYPE",pd.get("TYPE"));
List<PageData> imgs = imgFilesService.listAll(pd2);//营业执照图片
2024-01-03 09:48:43 +08:00
map.put("pd", pd);
2024-01-03 11:04:18 +08:00
map.put("imgs", imgs);
2024-01-03 09:48:43 +08:00
map.put("result", errInfo);
return map;
}
/**
* @param
* @throws Exception
*/
@RequestMapping(value="/deleteAll")
@RequiresPermissions("post:del")
@ResponseBody
public Object deleteAll() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
String DATA_IDS = pd.getString("DATA_IDS");
if(Tools.notEmpty(DATA_IDS)){
String ArrayDATA_IDS[] = DATA_IDS.split(",");
postService.deleteAll(ArrayDATA_IDS);
errInfo = "success";
}else{
errInfo = "error";
}
map.put("result", errInfo); //返回结果
return map;
}
/**excel
* @param
* @throws Exception
*/
@RequestMapping(value="/excel")
@RequiresPermissions("toExcel")
public ModelAndView exportExcel() throws Exception{
ModelAndView mv = new ModelAndView();
PageData pd = new PageData();
pd = this.getPageData();
Map<String,Object> dataMap = new HashMap<String,Object>();
List<String> titles = new ArrayList<String>();
titles.add("机构"); //1
titles.add("名称"); //2
titles.add("备注"); //3
titles.add("状态"); //4
titles.add("是否删除"); //5
titles.add("添加人"); //6
titles.add("创建时间"); //7
titles.add("修改人"); //8
titles.add("修改时间"); //9
dataMap.put("titles", titles);
List<PageData> varOList = postService.listAll(pd);
List<PageData> varList = new ArrayList<PageData>();
for(int i=0;i<varOList.size();i++){
PageData vpd = new PageData();
vpd.put("var1", varOList.get(i).getString("DEPARTMENT_ID")); //1
vpd.put("var2", varOList.get(i).getString("NAME")); //2
vpd.put("var3", varOList.get(i).getString("DESCR")); //3
vpd.put("var4", varOList.get(i).getString("STATUS")); //4
vpd.put("var5", varOList.get(i).get("ISDELETE").toString()); //5
vpd.put("var6", varOList.get(i).getString("CREATOR")); //6
vpd.put("var7", varOList.get(i).getString("CREATTIME")); //7
vpd.put("var8", varOList.get(i).getString("OPERATOR")); //8
vpd.put("var9", varOList.get(i).getString("OPERATTIME")); //9
varList.add(vpd);
}
dataMap.put("varList", varList);
ObjectExcelView erv = new ObjectExcelView();
mv = new ModelAndView(erv,dataMap);
return mv;
}
/**
* @return
*/
@RequestMapping(value="/hasName")
@ResponseBody
public Object hasName() throws Exception{
Map<String,String> map = new HashMap<String,String>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
PageData parentDepePd = new PageData();
parentDepePd.put("NAME", pd.getString("name"));
parentDepePd.put("DEPARTMENT_ID", pd.getString("DEPARTMENT_ID"));
parentDepePd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
//就是父id相同的名字
List<PageData> parent = postService.findByNameAndDepartment(parentDepePd);
if(parent.size()>0) {
errInfo = "error";
}
map.put("result", errInfo); //返回结果
return map;
}
}