From acee70b5dfa465f02bf7dbf3933d8baec629de58 Mon Sep 17 00:00:00 2001 From: yangfuda <945208611@qq.com> Date: Thu, 11 Sep 2025 11:06:37 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A6=96=E9=A1=B5=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bigscreen/ResourceBigController.java | 41 +++++++++++++- .../ruoyi/resource/domain/TBigDataScreen.java | 55 +++++++++++++++++++ .../ruoyi/resource/domain/TResourceVo.java | 4 ++ .../resource/mapper/TResourceLandMapper.java | 11 ++++ .../service/ITResourceLandService.java | 11 ++++ .../impl/TResourceLandServiceImpl.java | 19 +++++++ .../mapper/resource/TResourceLandMapper.xml | 43 +++++++++++++++ .../service/impl/SysGsiServiceImpl.java | 4 -- 8 files changed, 181 insertions(+), 7 deletions(-) create mode 100644 ruoyi-business/src/main/java/com/ruoyi/resource/domain/TBigDataScreen.java diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/bigscreen/ResourceBigController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/bigscreen/ResourceBigController.java index 38a2bf3..a9d4a7a 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/bigscreen/ResourceBigController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/bigscreen/ResourceBigController.java @@ -1,6 +1,9 @@ package com.ruoyi.web.controller.bigscreen; +import cn.hutool.core.collection.CollectionUtil; +import com.ruoyi.common.constant.CacheConstants; import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.entity.SysDept; import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.core.page.TableDataInfo; @@ -8,17 +11,22 @@ import com.ruoyi.common.core.redis.RedisCache; import com.ruoyi.common.utils.ServletUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.framework.web.service.TokenService; +import com.ruoyi.resource.domain.TBigDataScreen; import com.ruoyi.resource.domain.TResourceLand; import com.ruoyi.resource.domain.TResourceLandMap; import com.ruoyi.resource.service.ITResourceLandService; import com.ruoyi.system.service.ISysDeptService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; +import java.math.BigDecimal; +import java.text.DecimalFormat; +import java.util.HashMap; import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.concurrent.TimeUnit; /** * @description: @@ -67,4 +75,31 @@ public class ResourceBigController extends BaseController { return getDataTable(list); } + /** + * 首页统计 + */ + @GetMapping("/homepageStatistics") + public AjaxResult homepageStatistics() { + LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest()); + Object statisticVOMap = redisCache.getCacheObject(CacheConstants.BIG_DATA_RESOURCE_KEY+"homepageStatistics" + loginUser.getUser().getUserName()); + if (Objects.nonNull(statisticVOMap)) { + return AjaxResult.success(statisticVOMap); + } + List list = tResourceLandService.progressResourceInvestigationStatistics(loginUser.getUser().getDeptId());//资源调查进度统计 + TBigDataScreen tBigDataScreen = tResourceLandService.homepageDownStatistics(loginUser.getUser().getDeptId());//首页下面统计 + Map map = new HashMap(); + map.put("progressResourceInvestigation",list); + map.put("homepageStatistics",tBigDataScreen); + redisCache.setCacheObject(CacheConstants.BIG_DATA_RESOURCE_KEY+"homepageStatistics" + loginUser.getUser().getUserName(), map, expireTime, TimeUnit.MINUTES); + return AjaxResult.success(map); + } + + /**元转万元且保留两位小数并四舍五入*/ + public static String getNumberWanTwo(BigDecimal bigDecimal) { + // 转换为万元(除以10000) + BigDecimal decimal = bigDecimal.divide(new BigDecimal("10000")); + DecimalFormat df = new DecimalFormat("#0.00"); + String str1 = df.format(decimal); + return str1; + } } diff --git a/ruoyi-business/src/main/java/com/ruoyi/resource/domain/TBigDataScreen.java b/ruoyi-business/src/main/java/com/ruoyi/resource/domain/TBigDataScreen.java new file mode 100644 index 0000000..ab20663 --- /dev/null +++ b/ruoyi-business/src/main/java/com/ruoyi/resource/domain/TBigDataScreen.java @@ -0,0 +1,55 @@ +package com.ruoyi.resource.domain; + +import com.ruoyi.common.annotation.Excel; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * 地块属性对象 t_resource_land + * + * @author rongxin + * @date 2025-09-05 + */ +@Data +public class TBigDataScreen +{ + private static final long serialVersionUID = 1L; + + /** 部门ID */ + private Long deptId; + + /** 部门名称 */ + private String deptName; + + /** 统计数量1 首页上 资源调查进度统计 - */ + private String dataNum1; + + /** 统计数量2 */ + private String dataNum2; + + /** 统计数量3 */ + private String dataNum3; + + /** 统计数量4 */ + private String dataNum4; + + /** 统计数量5 */ + private String dataNum5; + + /** 统计数量6 */ + private String dataNum6; + + /** 统计数量7 */ + private String dataNum7; + + /** 统计数量8 */ + private String dataNum8; + + /** 统计数量9 */ + private String dataNum9; + + /** 统计数量10 */ + private String dataNum10; + +} diff --git a/ruoyi-business/src/main/java/com/ruoyi/resource/domain/TResourceVo.java b/ruoyi-business/src/main/java/com/ruoyi/resource/domain/TResourceVo.java index a9b5a8c..24b31d2 100644 --- a/ruoyi-business/src/main/java/com/ruoyi/resource/domain/TResourceVo.java +++ b/ruoyi-business/src/main/java/com/ruoyi/resource/domain/TResourceVo.java @@ -23,6 +23,10 @@ public class TResourceVo { @Excel(name = "区域位置名称") private String deptName; + /** 部门级联代码 */ + @Excel(name = "部门级联代码") + private String importCode; + /** 标识码 */ @Excel(name = "标识码 */") private Integer bsm; diff --git a/ruoyi-business/src/main/java/com/ruoyi/resource/mapper/TResourceLandMapper.java b/ruoyi-business/src/main/java/com/ruoyi/resource/mapper/TResourceLandMapper.java index ea3dd26..013f4fa 100644 --- a/ruoyi-business/src/main/java/com/ruoyi/resource/mapper/TResourceLandMapper.java +++ b/ruoyi-business/src/main/java/com/ruoyi/resource/mapper/TResourceLandMapper.java @@ -1,5 +1,6 @@ package com.ruoyi.resource.mapper; +import com.ruoyi.resource.domain.TBigDataScreen; import com.ruoyi.resource.domain.TResourceLand; import com.ruoyi.resource.domain.TResourceLandMap; @@ -83,5 +84,15 @@ public interface TResourceLandMapper */ public int deleteTResourceLandByFids(Long[] fids); + /** + * 资源调查进度统计 + */ + public List progressResourceInvestigationStatistics(Long deptId); + + /** + * 首页下面统计 + */ + public TBigDataScreen homepageDownStatistics(Long deptId); + } diff --git a/ruoyi-business/src/main/java/com/ruoyi/resource/service/ITResourceLandService.java b/ruoyi-business/src/main/java/com/ruoyi/resource/service/ITResourceLandService.java index d6a83a3..5525131 100644 --- a/ruoyi-business/src/main/java/com/ruoyi/resource/service/ITResourceLandService.java +++ b/ruoyi-business/src/main/java/com/ruoyi/resource/service/ITResourceLandService.java @@ -1,5 +1,6 @@ package com.ruoyi.resource.service; +import com.ruoyi.resource.domain.TBigDataScreen; import com.ruoyi.resource.domain.TResourceLand; import com.ruoyi.resource.domain.TResourceLandMap; @@ -93,4 +94,14 @@ public interface ITResourceLandService */ public int deleteTResourceLandByFid(Long fid); + /** + * 资源调查进度统计 + */ + public List progressResourceInvestigationStatistics(Long deptId); + + /** + * 首页下面统计 + */ + public TBigDataScreen homepageDownStatistics(Long deptId); + } diff --git a/ruoyi-business/src/main/java/com/ruoyi/resource/service/impl/TResourceLandServiceImpl.java b/ruoyi-business/src/main/java/com/ruoyi/resource/service/impl/TResourceLandServiceImpl.java index e2c5fe8..f2f1af9 100644 --- a/ruoyi-business/src/main/java/com/ruoyi/resource/service/impl/TResourceLandServiceImpl.java +++ b/ruoyi-business/src/main/java/com/ruoyi/resource/service/impl/TResourceLandServiceImpl.java @@ -4,6 +4,7 @@ import cn.hutool.core.util.StrUtil; import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.StringUtils; +import com.ruoyi.resource.domain.TBigDataScreen; import com.ruoyi.resource.domain.TResourceLand; import com.ruoyi.resource.domain.TResourceLandMap; import com.ruoyi.resource.mapper.TResourceLandMapper; @@ -233,5 +234,23 @@ public class TResourceLandServiceImpl implements ITResourceLandService return tResourceLandMapper.deleteTResourceLandByFid(fid); } + /** + * 资源调查进度统计 + */ + @Override + public List progressResourceInvestigationStatistics(Long deptId) + { + return tResourceLandMapper.progressResourceInvestigationStatistics(deptId); + } + + /** + * 首页下面统计 + */ + @Override + public TBigDataScreen homepageDownStatistics(Long deptId) + { + return tResourceLandMapper.homepageDownStatistics(deptId); + } + } diff --git a/ruoyi-business/src/main/resources/mapper/resource/TResourceLandMapper.xml b/ruoyi-business/src/main/resources/mapper/resource/TResourceLandMapper.xml index e731114..fa8cecb 100644 --- a/ruoyi-business/src/main/resources/mapper/resource/TResourceLandMapper.xml +++ b/ruoyi-business/src/main/resources/mapper/resource/TResourceLandMapper.xml @@ -324,4 +324,47 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{fid} + + + + + + + + + + + + + + + + + + + diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysGsiServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysGsiServiceImpl.java index 8598aab..805e505 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysGsiServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysGsiServiceImpl.java @@ -38,8 +38,6 @@ public class SysGsiServiceImpl implements ISysGisService { //坐标转换 String houseApplyProposedSituations = SpaceUtils.space(gis.getTheGeom()); gis.setTheGeom(houseApplyProposedSituations); - } else { - gis.setTheGeom(null); } return gisMapper.updateGeomByPolygon(gis); } @@ -50,8 +48,6 @@ public class SysGsiServiceImpl implements ISysGisService { //坐标转换 String houseApplyProposedSituations = SpaceUtils.space(gis.getTheGeom()); gis.setTheGeom(houseApplyProposedSituations); - } else { - gis.setTheGeom(null); } return gisMapper.updateGeomByPolygonPri(gis); }