qa-prevention-gwj/src/main/java/com/zcloud/controller/bus/VideoController.java

277 lines
9.0 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

package com.zcloud.controller.bus;
import com.zcloud.controller.base.BaseController;
import com.zcloud.entity.Page;
import com.zcloud.entity.PageData;
import com.zcloud.service.bus.VideoService;
import com.zcloud.util.*;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.servlet.ModelAndView;
import java.util.*;
/**
* 说明:视频管理
* 作者luoxiaobao
* 时间2021-01-15
* 官网www.zcloudchina.com
*/
@Controller
@RequestMapping("/video")
public class VideoController extends BaseController {
@Value("${http.file.url}")
private String fileUrl;
@Autowired
private VideoService videoService;
/**新增
* @param
* @throws Exception
*/
@RequestMapping(value="/add")
@RequiresPermissions("video:add")
@ResponseBody
public Object add(@RequestParam(value="file",required=false) MultipartFile file) throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
pd.put("VIDEO_ID", this.get32UUID()); //主键
pd.put("CREATOR", Jurisdiction.getName());//改为获取登录人姓名用于页面显示
pd.put("CREATTIME", DateUtil.date2Str(new Date())); //添加时间
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
pd.put("ISDELETE", "0"); //是否删除 1-是 0-否
pd.put("TYPE", "0"); //是否置顶 0否 1是
// pd.put("CORPINFO_TYPE", "1"); //上传状态(管理员上传 0企业上传1
if (null != file && !file.isEmpty()) {
String suffixName = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")+1).toLowerCase();
if (!"pdf".equals(suffixName) && !"jpg".equals(suffixName) && !"jpeg".equals(suffixName) && !"png".equals(suffixName) && !"mp4".equals(suffixName)) {
errInfo = "fail";
map.put("result", errInfo);
map.put("msg", "文件格式不正确!");
return map;
}
String ffile = DateUtil.getDays();
// String filePath = PathUtil.getProjectpath() + Const.FILEPATHFILE + ffile; //文件上传路径
// String fileName = FileUpload.fileUp(file, filePath, this.get32UUID()); //执行上传
String fileName = this.get32UUID()+file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
//Smb.1sshSftp(file, fileName,Const.FILEPATHFILE + Jurisdiction.getCORPINFO_ID() + "/" + ffile);
//pd.put("FILEPATH", Const.FILEPATHFILE + Jurisdiction.getCORPINFO_ID() + "/" + ffile + "/" + fileName);
Smb.sshSftp(file, fileName,fileUrl + Jurisdiction.getCORPINFO_ID() + "/" + ffile);
pd.put("FILEPATH", fileUrl + Jurisdiction.getCORPINFO_ID() + "/" + ffile + "/" + fileName);
}
videoService.save(pd);
map.put("result", errInfo);
return map;
}
/**删除
* @param out
* @throws Exception
*/
@RequestMapping(value="/delete")
@RequiresPermissions("video:del")
@ResponseBody
public Object delete() throws Exception{
Map<String,String> map = new HashMap<String,String>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
videoService.delete(pd);
map.put("result", errInfo); //返回结果
return map;
}
/**修改
* @param
* @throws Exception
*/
@RequestMapping(value="/edit")
@RequiresPermissions("video:edit")
@ResponseBody
public Object edit() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
videoService.edit(pd);
map.put("result", errInfo);
return map;
}
/**列表
* @param page
* @throws Exception
*/
@RequestMapping(value="/list")
@RequiresPermissions("video:list")
@ResponseBody
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());
if(null != Jurisdiction.getCORPINFO_ID()) {
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
}
page.setPd(pd);
// page.set
List<PageData> varList = videoService.list(page); //列出Video列表
map.put("varList", varList);
map.put("page", page);
map.put("result", errInfo);
return map;
}
/**去修改页面获取数据
* @param
* @throws Exception
*/
@RequestMapping(value="/goEdit")
@RequiresPermissions("video:edit")
@ResponseBody
public Object goEdit() throws Exception{
Map<String,Object> map = new HashMap<>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
pd = videoService.findById(pd); //根据ID读取
map.put("pd", pd);
map.put("result", errInfo);
return map;
}
/**列表 数据置顶
* @param
* @throws Exception
*/
@RequestMapping(value="/editZhiding")
@RequiresPermissions("video:edit")
@ResponseBody
public Object editZhiding() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
if(Tools.isEmpty(Jurisdiction.getCORPINFO_ID())) {
pd.put("CORPINFO_TYPE", "2");
}else {
pd.put("CORPINFO_TYPE", "1");
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
}
pd.put("TYPE", "0");//重置置顶信息。把所有的数据全部取消置顶
videoService.editZhiding(pd);
pd = new PageData();
pd = this.getPageData();
pd.put("TYPE", "1");
videoService.editZhiding(pd);//置顶信息
map.put("pd", pd);
map.put("result", errInfo);
return map;
}
/**批量删除
* @param
* @throws Exception
*/
@RequestMapping(value="/deleteAll")
@RequiresPermissions("video: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(",");
videoService.deleteAll(ArrayDATA_IDS);
errInfo = "success";
}else{
errInfo = "fail";
}
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("是否删除 1-是 0-否"); //5
titles.add("企业ID"); //6
titles.add("是否置顶 0否 1是"); //7
titles.add("上传状态(管理员上传 0企业上传1"); //8
titles.add("备注"); //9
dataMap.put("titles", titles);
List<PageData> varOList = videoService.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("NAME")); //1
vpd.put("var2", varOList.get(i).getString("FILEPATH")); //2
vpd.put("var3", varOList.get(i).getString("CREATOR")); //3
vpd.put("var4", varOList.get(i).getString("CREATTIME")); //4
vpd.put("var5", varOList.get(i).getString("ISDELETE")); //5
vpd.put("var6", varOList.get(i).getString("CORPINFO_ID")); //6
vpd.put("var7", varOList.get(i).getString("TYPE")); //7
vpd.put("var8", varOList.get(i).getString("CORPINFO_TYPE")); //8
vpd.put("var9", varOList.get(i).getString("DESCR")); //9
varList.add(vpd);
}
dataMap.put("varList", varList);
ObjectExcelView erv = new ObjectExcelView();
mv = new ModelAndView(erv,dataMap);
return mv;
}
/**数据可视化平台首页获取
* 1.获取企业的置顶视频
* 2.获取管理的置顶视频
* 3.没有视频或者没有置顶视频
* @param page
* @throws Exception
*/
@RequestMapping(value="/getObjectForBiLogin")
@ResponseBody
public Object getObjectForBiLogin() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd.put("TYPE", "1");
pd.put("CORPINFO_TYPE", "1");
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
List<PageData> cpvarList = videoService.listAll(pd); //企业视频
pd = new PageData();
pd.put("CORPINFO_TYPE", "2");
pd.put("TYPE", "1");
List<PageData> ptVarList = videoService.listAll(pd); //平台视频
map.put("ptVarList", ptVarList);
map.put("cpvarList", cpvarList);
map.put("result", errInfo);
return map;
}
}