package com.javaweb.web.controller.system;
|
|
import java.util.ArrayList;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
import com.javaweb.cms.util.CmsConstants;
|
import com.javaweb.common.core.domain.AjaxResult;
|
import com.javaweb.common.utils.Arith;
|
import com.javaweb.common.utils.StringUtils;
|
import com.javaweb.geo.domain.Hole;
|
import com.javaweb.geo.domain.Project;
|
import com.javaweb.geo.mapper.HoleMapper;
|
import com.javaweb.geo.service.IProjectService;
|
import com.javaweb.geo.vo.ProjectProcessVO;
|
import com.javaweb.system.service.ISysConfigService;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Controller;
|
import org.springframework.ui.ModelMap;
|
import org.springframework.web.bind.annotation.GetMapping;
|
import com.javaweb.common.config.Global;
|
import com.javaweb.common.core.controller.BaseController;
|
import com.javaweb.framework.util.ShiroUtils;
|
import com.javaweb.system.domain.SysMenu;
|
import com.javaweb.system.domain.SysUser;
|
import com.javaweb.system.service.ISysMenuService;
|
|
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.ResponseBody;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
/**
|
* 首页 业务处理
|
*
|
* @author ruoyi
|
*/
|
@Controller
|
public class SysIndexController extends BaseController
|
{
|
@Autowired
|
private ISysMenuService menuService;
|
|
@Autowired
|
private ISysConfigService configService;
|
|
@Autowired
|
private IProjectService projectService;
|
|
@Autowired
|
private HoleMapper holeMapper;
|
|
private String getAdminIndex(){
|
return configService.selectConfigByKey(CmsConstants.KEY_ADMIN_INDEX);
|
}
|
|
@RequestMapping("/admin")
|
public String admin() {
|
return "forward:/index";
|
}
|
|
// 系统首页
|
@GetMapping("/index")
|
public String index(ModelMap mmap)
|
{
|
// 取身份信息
|
SysUser user = ShiroUtils.getSysUser();
|
// 根据用户id取出菜单
|
List<SysMenu> menus = menuService.selectMenusByUser(user);
|
mmap.put("menus", menus);
|
mmap.put("user", user);
|
mmap.put("copyrightYear", Global.getCopyrightYear());
|
mmap.put("demoEnabled", Global.isDemoEnabled());
|
|
String indePage = this.getAdminIndex();
|
if(CmsConstants.ADMIN_INDEX_TOP_MENU.equals(indePage)){
|
return CmsConstants.ADMIN_INDEX_TOP_MENU; // index_topMenu
|
}else{
|
return "index";
|
}
|
}
|
|
// 系统首页顶部菜单
|
@PostMapping("/index/getMenu")
|
@ResponseBody
|
public AjaxResult getMenu(HttpServletRequest request)
|
{
|
// 取身份信息
|
SysUser user = ShiroUtils.getSysUser();
|
// 根据用户id取出菜单
|
List<SysMenu> menus = menuService.selectMenusByUser(user);
|
return AjaxResult.success(menus);
|
}
|
// 切换主题
|
@GetMapping("/system/switchSkin")
|
public String switchSkin(ModelMap mmap)
|
{
|
return "skin";
|
}
|
|
|
// 系统介绍
|
@GetMapping("/system/main")
|
public String main(ModelMap mmap)
|
{
|
mmap.put("version", Global.getVersion());
|
|
return "main";
|
}
|
|
// 系统介绍
|
@ResponseBody
|
@GetMapping("/system/project")
|
public AjaxResult project()
|
{
|
AjaxResult ajaxResult = AjaxResult.success();
|
List<Project> projects = projectService.selectProjectList(new Project());
|
ajaxResult.put("projects",projects);
|
return ajaxResult;
|
}
|
/**
|
* 总进度
|
* @return
|
*/
|
@ResponseBody
|
@GetMapping("/system/totalProcess")
|
public AjaxResult totalProcess()
|
{
|
AjaxResult ajaxResult = AjaxResult.success();
|
Hole hole = holeMapper.selectHoleTotalProcess();
|
Double data = Arith.div(hole.getFootageCpl(),hole.getFootage(),2) ;
|
ajaxResult.put("pointerData",data);
|
return ajaxResult;
|
}
|
|
/**
|
* 场地进度
|
* @return
|
*/
|
@ResponseBody
|
@GetMapping("/system/projectProcess")
|
public AjaxResult projectProcess()
|
{
|
AjaxResult ajaxResult = AjaxResult.success();
|
List<Hole> holes = holeMapper.selectHoleProjectProcess();
|
Map<String,Double> holeMap = new HashMap<>();
|
for(Hole hole : holes){
|
Double val = Arith.div(hole.getFootageCpl(),hole.getFootage(),2) ;
|
val = Arith.round(val * 100,2);
|
holeMap.put(hole.getProjectId(),val) ;
|
}
|
|
List<Project> projects = projectService.selectProjectList(new Project());
|
List<ProjectProcessVO> vos = new ArrayList<>();
|
for(int i = 0 ; i<projects.size();i++ ){
|
String ids= projects.get(i).getIds();
|
Double val = holeMap.get(ids);
|
ProjectProcessVO vo = new ProjectProcessVO();
|
vo.setRanking(i + 1);
|
vo.setStation(projects.get(i).getCode());
|
vo.setValue(val);
|
if(val==null){
|
vo.setValue(0.0d);
|
}
|
vos.add(vo);
|
}
|
|
ajaxResult.put("projectData",vos);
|
return ajaxResult;
|
}
|
|
|
}
|