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

371 lines
13 KiB
Java
Raw Normal View History

2023-11-07 09:32:12 +08:00
package com.zcloud.controller.bus;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.alibaba.fastjson.JSONObject;
import com.zcloud.util.*;
import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
import org.springframework.beans.factory.annotation.Autowired;
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 org.apache.shiro.authz.annotation.RequiresPermissions;
import com.zcloud.controller.base.BaseController;
import com.zcloud.entity.Page;
import com.zcloud.entity.PageData;
import com.zcloud.service.bus.TokenService;
import com.zcloud.service.bus.VidoManagerService;
/**
*
* luoxiaobao
* 2021-05-10
* www.zcloudchina.com
*/
@Controller
@RequestMapping("/vidomanager")
public class VidoManagerController extends BaseController {
@Autowired
private VidoManagerService vidomanagerService;
@Autowired
private TokenService tokenService;
/**
* @param
* @throws Exception
*/
@RequestMapping(value="/add")
@RequiresPermissions("vidomanager:add")
@ResponseBody
public Object add(@RequestParam(value="FFILE",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("VIDOMANAGER_ID", this.get32UUID()); //主键
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
pd.put("OPDATE", DateUtil.date2Str(new Date())); //操作日期
pd.put("OPUSER",Jurisdiction.getUsername()); //操作人
pd.put("ISDELETE", "0"); //是否删除
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.sshSftp(file, fileName,Const.FILEPATHFXSST + Jurisdiction.getCORPINFO_ID() + "/" + ffile);
pd.put("FILEPATH", Const.FILEPATHFXSST + Jurisdiction.getCORPINFO_ID() + "/" + ffile + "/" + fileName);
}
if(pd.get("ISSHOW") != null && Tools.notEmpty(pd.get("ISSHOW").toString()) && "1".equals(pd.get("ISSHOW").toString())) {
PageData epd = new PageData();
epd.put("ISSHOW", '0');
epd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
vidomanagerService.editIsShowBycorpinfoid(epd); //根据ID读取
}
vidomanagerService.save(pd);
map.put("result", errInfo);
return map;
}
/**
* @param out
* @throws Exception
*/
@RequestMapping(value="/delete")
@RequiresPermissions("vidomanager: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();
vidomanagerService.delete(pd);
map.put("result", errInfo); //返回结果
return map;
}
/**
* @param
* @throws Exception
*/
@RequestMapping(value="/edit")
@RequiresPermissions("vidomanager:edit")
@ResponseBody
public Object edit(@RequestParam(value="FFILE",required=false) MultipartFile file) throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
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.sshSftp(file, fileName,Const.FILEPATHFXSST + Jurisdiction.getCORPINFO_ID() + "/" + ffile);
pd.put("FILEPATH", Const.FILEPATHFXSST + Jurisdiction.getCORPINFO_ID() + "/" + ffile + "/" + fileName);
}
if(pd.get("ISSHOW") != null && Tools.notEmpty(pd.get("ISSHOW").toString()) && "1".equals(pd.get("ISSHOW").toString())) {
PageData epd = new PageData();
epd.put("ISSHOW", '0');
epd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
vidomanagerService.editIsShowBycorpinfoid(epd); //根据ID读取
}
vidomanagerService.edit(pd);
map.put("result", errInfo);
return map;
}
/**
* @param page
* @throws Exception
*/
@RequestMapping(value="/list")
@RequiresPermissions("vidomanager: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());
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
page.setPd(pd);
List<PageData> varList = vidomanagerService.list(page); //列出VidoManager列表
map.put("varList", varList);
map.put("page", page);
map.put("result", errInfo);
return map;
}
@RequestMapping(value="/getISshow")
@ResponseBody
public Object getISshow() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
pd.put("ISSHOW", "1");
List<PageData> varList = vidomanagerService.listAll(pd); //根据ID读取
List<PageData> tList =tokenService.listAll(pd);
if(tList.size()!=0){
System.out.println(tList.get(0).getString("TOKEN"));
map.put("token", tList.get(0).getString("TOKEN"));
// 萤石云获取token 临时
}
if(varList !=null && varList.size() > 0 && varList.get(0) != null && varList.get(0).get("VIDOMANAGER_ID") != null && "de980a62b5214a8b8f5ceb61c01ae0cb".equals(varList.get(0).get("VIDOMANAGER_ID").toString())){
String url = "https://open.ys7.com/api/lapp/token/get";
NameValuePair pair1 = new BasicNameValuePair("appKey", "d56a9a9673754e52b8cdc08d45778684");
NameValuePair pair2 = new BasicNameValuePair("appSecret", "2a0b2311b714000cedc817633c1e8760");
List<NameValuePair> paramsList = new ArrayList<NameValuePair>();
paramsList.add(pair1);
paramsList.add(pair2);
Object result2 = HttpClientService.sendPostNoAccept(url, paramsList);
JSONObject json=(JSONObject) JSONObject.toJSON(result2);
map.put("token1", json.getJSONObject("data").getString("accessToken"));
}
map.put("pd", pd);
map.put("varList", varList);
map.put("result", errInfo);
return map;
}
@RequestMapping(value="/editIsShow")
@ResponseBody
public Object editIsShow() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
PageData epd = new PageData();
epd.put("ISSHOW", '0');
epd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
vidomanagerService.editIsShowBycorpinfoid(epd); //根据ID读取
pd.put("ISSHOW", '1');
vidomanagerService.editIsShow(pd); //根据ID读取
map.put("pd", pd);
map.put("result", errInfo);
return map;
}
/**
* @param
* @throws Exception
*/
@RequestMapping(value="/goEdit")
@RequiresPermissions("vidomanager:edit")
@ResponseBody
public Object goEdit() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
pd = vidomanagerService.findById(pd); //根据ID读取
// 萤石云获取token 临时
if(pd != null && pd.get("VIDOMANAGER_ID") != null && "de980a62b5214a8b8f5ceb61c01ae0cb".equals(pd.get("VIDOMANAGER_ID").toString())){
String url = "https://open.ys7.com/api/lapp/token/get";
NameValuePair pair1 = new BasicNameValuePair("appKey", "d56a9a9673754e52b8cdc08d45778684");
NameValuePair pair2 = new BasicNameValuePair("appSecret", "2a0b2311b714000cedc817633c1e8760");
List<NameValuePair> paramsList = new ArrayList<NameValuePair>();
paramsList.add(pair1);
paramsList.add(pair2);
Object result2 = HttpClientService.sendPostNoAccept(url, paramsList);
JSONObject json=(JSONObject) JSONObject.toJSON(result2);
map.put("token", json.getJSONObject("data").getString("accessToken"));
}
map.put("pd", pd);
map.put("result", errInfo);
return map;
}
@RequestMapping(value="/govido")
@ResponseBody
public Object govido() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
pd = vidomanagerService.findById(pd); //根据ID读取
List<PageData> varList =tokenService.listAll(pd);
pd.put("token", varList.get(0).getString("TOKEN"));
map.put("pd", pd);
map.put("result", errInfo);
return map;
}
@RequestMapping(value="/govidoall")
@ResponseBody
public Object govidoall() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
List<PageData> vidoList = vidomanagerService.listAll(pd); //根据ID读取
String vidostr="";
for(PageData vido:vidoList) {
vidostr+=vido.getString("VIDOURL")+",";
}
List<PageData> varList =tokenService.listAll(pd);
pd.put("token", varList.get(0).getString("TOKEN"));
map.put("pd", pd);
map.put("vidostr", vidostr.substring(0, vidostr.length()-1));
map.put("count", vidoList.size());
map.put("result", errInfo);
return map;
}
/**
* @param
* @throws Exception
*/
@RequestMapping(value="/deleteAll")
@RequiresPermissions("vidomanager: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(",");
vidomanagerService.deleteAll(ArrayDATA_IDS);
errInfo = "success";
}else{
errInfo = "fail";
}
map.put("result", errInfo); //返回结果
return map;
}
/**excel
* @param
* @throws Exception
*/
@RequestMapping(value="/excel")
2024-01-06 15:24:03 +08:00
// @RequiresPermissions("toExcel")
2023-11-07 09:32:12 +08:00
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("企业ID"); //1
titles.add("视频名称"); //2
titles.add("播放地址"); //3
titles.add("操作日期"); //4
titles.add("操作人"); //5
titles.add("是否删除"); //6
dataMap.put("titles", titles);
List<PageData> varOList = vidomanagerService.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("CORPINFO_ID")); //1
vpd.put("var2", varOList.get(i).getString("VIDONAME")); //2
vpd.put("var3", varOList.get(i).getString("VIDOURL")); //3
vpd.put("var4", varOList.get(i).getString("OPDATE")); //4
vpd.put("var5", varOList.get(i).getString("OPUSER")); //5
vpd.put("var6", varOList.get(i).getString("ISDELETE")); //6
varList.add(vpd);
}
dataMap.put("varList", varList);
ObjectExcelView erv = new ObjectExcelView();
mv = new ModelAndView(erv,dataMap);
return mv;
}
@RequestMapping(value="/goAllVideo")
@ResponseBody
public Object goAllVideo() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
String DATA_IDS = pd.getString("DATA_IDS");
if(Tools.notEmpty(DATA_IDS)){
String ArrayDATA_IDS[] = DATA_IDS.split(",");
pd.put("ArrayDATA_IDS", ArrayDATA_IDS);
}
List<PageData> videoList = vidomanagerService.listAll(pd); //根据ID读取
map.put("videoList", videoList);
map.put("result", errInfo);
return map;
}
}