package com.landtool.lanbase.modules.res.controller;
|
|
import java.io.File;
|
import java.io.IOException;
|
import java.text.SimpleDateFormat;
|
import java.util.ArrayList;
|
import java.util.HashMap;
|
import java.util.LinkedHashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Controller;
|
import org.springframework.ui.Model;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSONArray;
|
import com.github.pagehelper.Page;
|
import com.github.pagehelper.PageHelper;
|
import com.landtool.lanbase.common.utils.HttpOperateUtils;
|
import com.landtool.lanbase.config.SysTemPropertyConfig;
|
import com.landtool.lanbase.modules.api.utils.PageBean;
|
import com.landtool.lanbase.modules.org.entity.OrgUser;
|
import com.landtool.lanbase.modules.org.service.OrgUnitService;
|
import com.landtool.lanbase.modules.org.service.OrgUserService;
|
import com.landtool.lanbase.modules.res.entity.Res_ExtMapUrl;
|
import com.landtool.lanbase.modules.res.entity.Res_ExtThemeMap;
|
import com.landtool.lanbase.modules.res.entity.Res_MainInfo;
|
import com.landtool.lanbase.modules.res.entity.SimpleZiYuan;
|
import com.landtool.lanbase.modules.res.service.JiChuDiTuService;
|
import com.landtool.lanbase.modules.res.service.ResExtMapUrlService;
|
import com.landtool.lanbase.modules.res.service.ResExtThemeMapService;
|
import com.landtool.lanbase.modules.res.service.ResMainInfoService;
|
import com.landtool.lanbase.modules.res.service.ZiYuanMuLuService;
|
import com.landtool.lanbase.modules.sys.controller.AbstractController;
|
import com.landtool.lanbase.modules.sys.service.SysFieldvalueService;
|
|
/**
|
* 前台展示 - 资源目录
|
*/
|
@Controller
|
@RequestMapping("res/jichuditu")
|
public class JiChuDiTuController extends AbstractController {
|
|
@Autowired
|
private SysTemPropertyConfig sysConfig;
|
|
@Autowired
|
public ZiYuanMuLuService ziYuanMuLuService;
|
|
@Autowired
|
private SysFieldvalueService fieldUtils;
|
|
@Autowired
|
private ResMainInfoService resMainInfoService;
|
|
@Autowired
|
private OrgUserService orgUserService;
|
|
@Autowired
|
private OrgUnitService orgUnitService;
|
|
@Autowired
|
private JiChuDiTuService jiChuDiTuService;
|
|
@Autowired
|
private SysTemPropertyConfig sysTemPropertyConfig;
|
|
@Autowired
|
private ResExtThemeMapService resExtThemeMapService;
|
|
@Autowired
|
private ResExtMapUrlService resExtMapUrlService;
|
|
@RequestMapping("/indexbak")
|
public String index(Model model) {
|
LinkedHashMap<String, String> ResourceTypeList = fieldUtils.getFieldListByKey("ResourceType");// 获取资源类型列表
|
String ResourceTypeListJson = "";
|
for (Map.Entry<String, String> entry : ResourceTypeList.entrySet()) {
|
if (ResourceTypeListJson != "")
|
ResourceTypeListJson += ",";
|
if(entry.getKey().indexOf("KJ_") != -1) {
|
int countNums = 0;
|
Res_MainInfo rmodel = new Res_MainInfo();
|
rmodel.setResourceclass(entry.getKey());
|
List<Res_MainInfo> mainInfoJoinCatalogList = jiChuDiTuService.selectResMainInfo(rmodel);
|
countNums = mainInfoJoinCatalogList.size();
|
ResourceTypeListJson += "{key:'" + entry.getKey() + "',value:'" + entry.getValue() + "',zycount:'" + countNums + "'}";
|
}
|
}
|
model.addAttribute("ResourceTypeListJson", "[" + ResourceTypeListJson + "]");
|
model.addAttribute("pubzyWebRoot", sysConfig.getPubzyWebRoot());
|
model.addAttribute("backstageWebRoot", sysConfig.getApiServer() + "/");
|
model.addAttribute("systemName", sysConfig.getAppFullName());
|
model.addAttribute("gisPortal", sysConfig.getGisPortal());
|
return "jichuditu/index";
|
}
|
|
@RequestMapping("/dataList")
|
public String dataList(Res_MainInfo resMainInfo, Model model, PageBean pageBean) {
|
//update:dsh(2018/12/05)
|
Page<Res_MainInfo> page = PageHelper.startPage(pageBean.getPage(), 14);
|
List<Res_MainInfo> List = jiChuDiTuService.selectResMainInfo(resMainInfo);
|
OrgUser user = getUser();
|
Long unitid = orgUserService.getDefaultUnit(user.getUserid()).getUnitid();
|
int countNums = (int) ((Page) List).getTotal();
|
PageBean<Res_MainInfo> pageData = new PageBean<>(pageBean.getPage(), pageBean.getLimit(), countNums);
|
pageData.setItems(List);
|
LinkedHashMap<String, String> ResourceTypeList = fieldUtils.getFieldListByKey("ResourceType");
|
List<SimpleZiYuan> simpleZiYuans = new ArrayList<SimpleZiYuan>();
|
for (Integer j = 0; j < List.size(); j++) {
|
Res_MainInfo zy = List.get(j);
|
SimpleZiYuan model1 = new SimpleZiYuan();
|
model1.setResourceid(zy.getResourceid());
|
model1.setTitle(zy.getTitle());
|
model1.setCreateuserid(zy.getCreateuserid());
|
String chinesename = orgUserService.getChinesename(zy.getCreateuserid());// 查询发布人id对应的 name
|
String unitname = orgUnitService.getUnitName((long) zy.getPubunitid());
|
model1.setCreateusername(chinesename);
|
model1.setDatasources(zy.getDatasources());
|
model1.setPubunitid(zy.getPubunitid());
|
model1.setPubunitname(unitname);
|
|
model1.setStatus(zy.getResourcestatus());
|
|
model1.setKeywords(zy.getKeywords()!=null?zy.getKeywords():"");
|
model1.setSecuritylev(zy.getSecuritylev());
|
model1.setResourceclass(ResourceTypeList.get(zy.getResourceclass()));
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
model1.setPubdate(sdf.format(zy.getPubdate()));
|
model1.setReadcount(zy.getReadcount() == null ? 0 : zy.getReadcount());
|
model1.setApplycount(zy.getApplycount() == null ? 0 :zy.getApplycount());
|
model1.setAuditstatusname(getNameByAuditstatus(zy.getAuditstatus()));
|
model1.setResourcetype(zy.getResourceclass());
|
//图片
|
String imgUrl = "";
|
String defClassImg = "/image/classimg/"+zy.getResourceclass()+".gif"; //默认资源类型图片
|
if (zy.getImgurl() != null && zy.getImgurl().length() != 0) {
|
if(zy.getImgurl().startsWith("Atkas")){//图集
|
imgUrl = "/image/" + zy.getImgurl();
|
File file = new File(System.getProperty("user.dir")+ "\\src\\main\\resources\\static" + ("/image/"+zy.getImgurl()).replace("/","\\"));
|
if (!file.exists()) { //判断物理路径是否存在,不存在则默认
|
imgUrl = defClassImg;
|
}
|
}else {
|
imgUrl = "/uploadPath/" + zy.getImgurl();
|
File file = new File(sysTemPropertyConfig.getUploadPath() + zy.getImgurl());
|
if (!file.exists()) { //判断物理路径是否存在,不存在则默认
|
imgUrl = defClassImg;
|
}
|
}
|
}
|
else {
|
imgUrl = defClassImg;
|
}
|
model1.setImgurl(imgUrl);
|
//关键字
|
List list=new ArrayList();
|
if(zy.getKeywords()!=""){
|
String keywords=zy.getKeywords();
|
if(keywords != null && !keywords.equals("")) {
|
String key[] = keywords.split(",");
|
for (int i = 0; i < key.length; i++) {
|
String s = key[i];
|
list.add(s);
|
}
|
}
|
}
|
model1.setList(list);
|
//判断是否有权限
|
Map<String, Object> map = new HashMap<>();
|
map.put("resourceid", zy.getResourceid());
|
map.put("userid", getUserId());
|
map.put("unitid", unitid );
|
int count = resMainInfoService.checkZiYuanQuanXian(map);
|
//有权限查看(1有,0没有)
|
if(count>0){
|
model1.setIsquanxian(1);
|
}else {
|
model1.setIsquanxian(0);
|
}
|
model1.setFirstmapurl(getZTDTByPortalMapUrl(zy.getResourceid(),zy.getResourceclass()));
|
simpleZiYuans.add(model1);
|
}
|
model.addAttribute("ZyList", simpleZiYuans);
|
model.addAttribute("Count", countNums);
|
model.addAttribute("Page", pageBean.getPage());
|
model.addAttribute("userid", getUserId());
|
model.addAttribute("gisPortal", sysConfig.getGisPortal());
|
return "jichuditu/dataList";
|
}
|
|
//获取用户或单位Map
|
private LinkedHashMap<String, String> queryUserOrUnitList(String gettype){
|
String url = sysConfig.getApiServer() + (gettype == "unit"? "/api/org/unit/queryAllList": "/api/org/user/queryAllList");
|
LinkedHashMap<String, String> map = new LinkedHashMap<String, String>();
|
try {
|
String jsonStr = HttpOperateUtils.httpGet(url.trim());
|
if(jsonStr.length() != 0){
|
JSONArray list = JSON.parseArray(jsonStr);
|
for(int i = 0 ;i<list.size();i++){
|
Map maps = (Map)JSON.parse(list.get(i).toString());
|
map.put(maps.get("id").toString(),maps.get("name").toString());
|
}
|
}
|
} catch (IOException e) {
|
e.printStackTrace();
|
}
|
return map;
|
}
|
|
//获取状态名称
|
private String getNameByAuditstatus(Integer status){
|
String name = "";
|
switch (status){
|
case 0:
|
name="未提交";
|
break;
|
case 1:
|
name="待审核";
|
break;
|
case 2:
|
name="已通过";
|
break;
|
case 3:
|
name="未通过";
|
break;
|
}
|
return name;
|
}
|
|
//类型为专题地图portal专题类型获取首笔协议服务路径
|
private String getZTDTByPortalMapUrl(Integer resourceid,String resourceclass){
|
String firstMapUrl = "";
|
if(resourceid != null && resourceclass != null) {
|
if (resourceclass.equals("KJ_ZTDT")) {
|
Res_ExtThemeMap resExtThemeMap = resExtThemeMapService.selectByPrimaryKey(resourceid);
|
if (resExtThemeMap != null && resExtThemeMap.getType() != null && resExtThemeMap.getType().equals("Portal专题")) {
|
List<Res_ExtMapUrl> urlList = resExtMapUrlService.selectByCondition(resourceid);
|
if (urlList != null && urlList.size() > 0 && urlList.get(0).getServerurl() != null)
|
firstMapUrl = urlList.get(0).getServerurl();
|
}
|
}
|
}
|
return firstMapUrl;
|
}
|
|
|
/**
|
* 新设计
|
*/
|
|
@RequestMapping("/index")
|
public String indexNew(Model model) {
|
LinkedHashMap<String, String> ResourceTypeList = fieldUtils.getFieldListByKey("ResourceType");// 获取资源类型列表
|
String ResourceTypeListJson = "";
|
for (Map.Entry<String, String> entry : ResourceTypeList.entrySet()) {
|
if (ResourceTypeListJson != "")
|
ResourceTypeListJson += ",";
|
if(entry.getKey().indexOf("KJ_") != -1) {
|
int countNums = 0;
|
Res_MainInfo rmodel = new Res_MainInfo();
|
rmodel.setResourceclass(entry.getKey());
|
List<Res_MainInfo> mainInfoJoinCatalogList = jiChuDiTuService.selectResMainInfo(rmodel);
|
countNums = mainInfoJoinCatalogList.size();
|
ResourceTypeListJson += "{key:'" + entry.getKey() + "',value:'" + entry.getValue() + "',zycount:'" + countNums + "'}";
|
}
|
}
|
model.addAttribute("ResourceTypeListJson", "[" + ResourceTypeListJson + "]");
|
model.addAttribute("pubzyWebRoot", sysConfig.getPubzyWebRoot());
|
model.addAttribute("backstageWebRoot", sysConfig.getApiServer() + "/");
|
model.addAttribute("systemName", sysConfig.getAppFullName());
|
model.addAttribute("gisPortal", sysConfig.getGisPortal());
|
|
model.addAttribute("logourl","jichuditutitle");
|
return "jichuditu/index_New";
|
}
|
|
@RequestMapping("/dataListNew")
|
public String dataListNew(Res_MainInfo resMainInfo, Model model, PageBean pageBean) {
|
//update:dsh(2018/12/05)
|
Page<Res_MainInfo> page = PageHelper.startPage(pageBean.getPage(), 14);
|
List<Res_MainInfo> List = jiChuDiTuService.selectResMainInfo(resMainInfo);
|
OrgUser user = getUser();
|
Long unitid = orgUserService.getDefaultUnit(user.getUserid()).getUnitid();
|
int countNums = (int) ((Page) List).getTotal();
|
PageBean<Res_MainInfo> pageData = new PageBean<>(pageBean.getPage(), pageBean.getLimit(), countNums);
|
pageData.setItems(List);
|
LinkedHashMap<String, String> ResourceTypeList = fieldUtils.getFieldListByKey("ResourceType");
|
List<SimpleZiYuan> simpleZiYuans = new ArrayList<SimpleZiYuan>();
|
for (Integer j = 0; j < List.size(); j++) {
|
Res_MainInfo zy = List.get(j);
|
SimpleZiYuan model1 = new SimpleZiYuan();
|
model1.setResourceid(zy.getResourceid());
|
model1.setTitle(zy.getTitle());
|
model1.setCreateuserid(zy.getCreateuserid());
|
String chinesename = orgUserService.getChinesename(zy.getCreateuserid());// 查询发布人id对应的 name
|
String unitname = orgUnitService.getUnitName((long) zy.getPubunitid());
|
model1.setCreateusername(chinesename);
|
model1.setDatasources(zy.getDatasources());
|
model1.setPubunitid(zy.getPubunitid());
|
model1.setPubunitname(unitname);
|
|
model1.setStatus(zy.getResourcestatus());
|
|
model1.setKeywords(zy.getKeywords()!=null?zy.getKeywords():"");
|
model1.setSecuritylev(zy.getSecuritylev());
|
model1.setResourceclass(ResourceTypeList.get(zy.getResourceclass()));
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
model1.setPubdate(sdf.format(zy.getPubdate()));
|
model1.setReadcount(zy.getReadcount() == null ? 0 : zy.getReadcount());
|
model1.setApplycount(zy.getApplycount() == null ? 0 :zy.getApplycount());
|
model1.setAuditstatusname(getNameByAuditstatus(zy.getAuditstatus()));
|
model1.setResourcetype(zy.getResourceclass());
|
//图片
|
String imgUrl = "";
|
String defClassImg = "/image/classimg/"+zy.getResourceclass()+".gif"; //默认资源类型图片
|
if (zy.getImgurl() != null && zy.getImgurl().length() != 0) {
|
if(zy.getImgurl().startsWith("Atkas")){//图集
|
imgUrl = "/image/" + zy.getImgurl();
|
File file = new File(System.getProperty("user.dir")+ "\\src\\main\\resources\\static" + ("/image/"+zy.getImgurl()).replace("/","\\"));
|
if (!file.exists()) { //判断物理路径是否存在,不存在则默认
|
imgUrl = defClassImg;
|
}
|
}else {
|
imgUrl = "/uploadPath/" + zy.getImgurl();
|
File file = new File(sysTemPropertyConfig.getUploadPath() + zy.getImgurl());
|
if (!file.exists()) { //判断物理路径是否存在,不存在则默认
|
imgUrl = defClassImg;
|
}
|
}
|
}
|
else {
|
imgUrl = defClassImg;
|
}
|
model1.setImgurl(imgUrl);
|
//关键字
|
List list=new ArrayList();
|
if(zy.getKeywords()!=""){
|
String keywords=zy.getKeywords();
|
if(keywords != null && !keywords.equals("")) {
|
String key[] = keywords.split(",");
|
for (int i = 0; i < key.length; i++) {
|
String s = key[i];
|
list.add(s);
|
}
|
}
|
}
|
model1.setList(list);
|
//判断是否有权限
|
Map<String, Object> map = new HashMap<>();
|
map.put("resourceid", zy.getResourceid());
|
map.put("userid", getUserId());
|
map.put("unitid", unitid );
|
int count = resMainInfoService.checkZiYuanQuanXian(map);
|
//有权限查看(1有,0没有)
|
if(count>0){
|
model1.setIsquanxian(1);
|
}else {
|
model1.setIsquanxian(0);
|
}
|
model1.setFirstmapurl(getZTDTByPortalMapUrl(zy.getResourceid(),zy.getResourceclass()));
|
simpleZiYuans.add(model1);
|
}
|
model.addAttribute("ZyList", simpleZiYuans);
|
model.addAttribute("Count", countNums);
|
model.addAttribute("Page", pageBean.getPage());
|
model.addAttribute("userid", getUserId());
|
model.addAttribute("gisPortal", sysConfig.getGisPortal());
|
return "jichuditu/dataList_New";
|
}
|
}
|