From 8dbce7c8f9569f66c34854b723d4aa1c1e092f7e Mon Sep 17 00:00:00 2001
From: czt <czt18638530771@163.com>
Date: 星期二, 23 十二月 2025 19:32:14 +0800
Subject: [PATCH] 系统首页数据交互提交
---
fzzy-igdss-view/src/main/java/com/fzzy/igds/PatrolSuper.view.xml | 14
fzzy-igdss-core/src/main/java/com/fzzy/igds/data/MainData.java | 48 ++++
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/CoreDeptService.java | 2
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutRecordService.java | 2
fzzy-igdss-web/src/main/java/com/fzzy/common/manager/CommonManager.java | 186 +++++++++++++--
fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderService.java | 20 +
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SnapRecordService.java | 19 +
fzzy-igdss-view/src/main/java/com/fzzy/igds/PatrolPR.java | 11
fzzy-igdss-web/src/main/resources/templates/main.html | 302 ++++++++----------------
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/EventInfoService.java | 44 +--
fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/SysIndexController.java | 13 +
11 files changed, 392 insertions(+), 269 deletions(-)
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/data/MainData.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/data/MainData.java
new file mode 100644
index 0000000..6883a0b
--- /dev/null
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/data/MainData.java
@@ -0,0 +1,48 @@
+package com.fzzy.igds.data;
+
+import lombok.Data;
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @Description 棣栭〉淇℃伅缁熻灏佽
+ * @Author CZT
+ * @Date 2025/12/23 10:28
+ */
+@Data
+public class MainData implements Serializable {
+
+ /**
+ * 绗竴琛岀粺璁�
+ */
+ private Integer orderNum = 0; //寰呭姙宸ュ崟鏁�
+ private Double inSum = 0.0; //浠婃棩鍏ュ簱鏁伴噺
+ private Double outSum = 0.0; //浠婃棩鍑哄簱鏁伴噺;
+ private Integer aiNum = 0; //杩�7澶〢I浜嬩欢鏁�;
+
+ /**
+ * 绗簩琛岀粺璁�
+ */
+ private Integer inNumDay = 0; //鏃ュ叆搴撹溅鏁�;
+ private Integer outNumDay = 0; //鏃ュ嚭搴撹溅鏁�;
+
+ //鍑哄叆搴撳懆缁熻
+ private List<String> weekDateList = new ArrayList<>();
+ private List<Integer> weekInNumList = new ArrayList<>();
+ private List<Integer> weekOutNumList = new ArrayList<>();
+
+ //鍑哄叆搴撴湀缁熻
+ private List<String> monthDateList = new ArrayList<>();
+ private List<Integer> monthInNumList = new ArrayList<>();
+ private List<Integer> monthOutNumList = new ArrayList<>();
+
+ //AI浜嬩欢鍛ㄧ粺璁�
+ private List<String> weekAiDateList = new ArrayList<>();
+ private List<Integer> weekAiNumList = new ArrayList<>();
+
+ //鎶撴媿鍛ㄧ粺璁�
+ private List<String> weekSnapDateList = new ArrayList<>();
+ private List<Integer> weekSnapNumList = new ArrayList<>();
+
+}
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/CoreDeptService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/CoreDeptService.java
index 665ae8e..7ff3a60 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/CoreDeptService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/CoreDeptService.java
@@ -49,7 +49,7 @@
if(StringUtils.isNotBlank(parentId)){
queryWrapper.likeRight("id", parentId);
}
-
+ queryWrapper.orderByAsc("id");
return coreDeptMapper.selectList(queryWrapper);
}
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/EventInfoService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/EventInfoService.java
index c4c092e..4c122d3 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/EventInfoService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/EventInfoService.java
@@ -7,6 +7,8 @@
import com.fzzy.igds.domain.EventInfo;
import com.fzzy.igds.mapper.EventInfoMapper;
import com.fzzy.igds.utils.ContextUtil;
+import com.fzzy.igds.utils.DateUtil;
+import com.fzzy.work.domain.WorkOrder;
import com.ruoyi.common.utils.StringUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@@ -65,34 +67,28 @@
return queryWrapper;
}
- public List<EventInfo> listAll(IgdsBaseParam param) {
- if (null == param)
- return eventInfoMapper.selectList(null);
+ /**
+ *
+ * @param param
+ * @return
+ */
+ public List<EventInfo> getListByParam(IgdsBaseParam param) {
+ if (null == param){
+ param = new IgdsBaseParam();
+ }
QueryWrapper<EventInfo> queryWrapper = new QueryWrapper<>();
- if (StringUtils.isNotEmpty(param.getName())) {
- queryWrapper.like("name", param.getName());
+ if (StringUtils.isNotBlank(param.getDeptId())) {
+ queryWrapper.likeRight("dept_id", param.getDeptId());
}
+ if (null != param.getStart()) {
+ queryWrapper.ge("time", DateUtil.getCurZero(param.getStart()));
+ }
+ if (null != param.getEnd()) {
+ queryWrapper.le("time", DateUtil.getNextZero(param.getEnd()));
+ }
+
return eventInfoMapper.selectList(queryWrapper);
}
- public BaseResp addData(EventInfo eventInfo) {
- eventInfo.setId(ContextUtil.generateId());
- eventInfo.setCompanyId(ContextUtil.getCompanyId());
- eventInfo.setUpdateBy(ContextUtil.getLoginUserName());
- eventInfo.setUpdateTime(new Date());
- eventInfo.setCreateBy(ContextUtil.getLoginUserName());
- eventInfo.setCreateTime(new Date());
- return eventInfoMapper.insert(eventInfo) > 0 ? BaseResp.success() : BaseResp.error("娣诲姞澶辫触");
- }
-
- public BaseResp updateData(EventInfo eventInfo) {
- eventInfo.setUpdateBy(ContextUtil.getLoginUserName());
- eventInfo.setUpdateTime(new Date());
- return eventInfoMapper.updateById(eventInfo) > 0 ? BaseResp.success() : BaseResp.error("鏇存柊澶辫触");
- }
-
- public BaseResp deleteData(EventInfo eventInfo) {
- return eventInfoMapper.deleteById(eventInfo) > 0 ? BaseResp.success() : BaseResp.error("鍒犻櫎澶辫触");
- }
}
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutRecordService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutRecordService.java
index ab051fd..52281a5 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutRecordService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutRecordService.java
@@ -91,7 +91,7 @@
queryWrapper.eq("company_id", param.getCompanyId());
}
if (StringUtils.isNotBlank(param.getDeptId())) {
- queryWrapper.eq("dept_id", param.getDeptId());
+ queryWrapper.likeRight("dept_id", param.getDeptId());
}
if (StringUtils.isNotBlank(param.getCustomerName())) {
queryWrapper.like("customer_name", param.getCustomerName());
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SnapRecordService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SnapRecordService.java
index eafab22..a99d031 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SnapRecordService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SnapRecordService.java
@@ -7,6 +7,7 @@
import com.fzzy.igds.domain.SnapRecord;
import com.fzzy.igds.mapper.SnapRecordMapper;
import com.fzzy.igds.utils.ContextUtil;
+import com.fzzy.igds.utils.DateUtil;
import com.ruoyi.common.utils.StringUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@@ -69,14 +70,20 @@
* @author sgj
* @date 2025/12/10
*/
- public List<SnapRecord> listAll(IgdsBaseParam param) {
-
- if (null == param)
- return snapRecordMapper.selectList(null);
+ public List<SnapRecord> getListByParam(IgdsBaseParam param) {
+ if (null == param){
+ param = new IgdsBaseParam();
+ }
QueryWrapper<SnapRecord> queryWrapper = new QueryWrapper<>();
- if (StringUtils.isNotEmpty(param.getName())) {
- queryWrapper.like("name", param.getName());
+ if (StringUtils.isNotBlank(param.getDeptId())) {
+ queryWrapper.likeRight("dept_id", param.getDeptId());
+ }
+ if (null != param.getStart()) {
+ queryWrapper.ge("snap_time", DateUtil.getCurZero(param.getStart()));
+ }
+ if (null != param.getEnd()) {
+ queryWrapper.le("snap_time", DateUtil.getNextZero(param.getEnd()));
}
return snapRecordMapper.selectList(queryWrapper);
}
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderService.java b/fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderService.java
index de5299e..ab65b94 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderService.java
@@ -10,6 +10,7 @@
import com.fzzy.work.mapper.WorkOrderMapper;
import com.ruoyi.common.core.domain.entity.SysDictData;
+import com.ruoyi.common.utils.StringUtils;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
@@ -61,4 +62,23 @@
}
return list;
}
+
+ /**
+ * 鑾峰彇鐢ㄦ埛寰呭鐞嗗伐鍗曟暟
+ * @param status
+ * @param userId
+ * @return
+ */
+ public Integer getNumByUser(String status, String userId) {
+
+ QueryWrapper<WorkOrder> queryWrapper = new QueryWrapper<>();
+ if(StringUtils.isBlank(userId) || StringUtils.isBlank(status)){
+ return 0;
+ }
+
+ queryWrapper.eq("assignee_id", userId);
+ queryWrapper.eq("status", status);
+
+ return workOrderMapper.selectCount(queryWrapper);
+ }
}
diff --git a/fzzy-igdss-view/src/main/java/com/fzzy/igds/PatrolPR.java b/fzzy-igdss-view/src/main/java/com/fzzy/igds/PatrolPR.java
index d5acbfb..c07ff6e 100644
--- a/fzzy-igdss-view/src/main/java/com/fzzy/igds/PatrolPR.java
+++ b/fzzy-igdss-view/src/main/java/com/fzzy/igds/PatrolPR.java
@@ -49,7 +49,7 @@
//搴撳尯杞崲
Map<String, PatrolSuperData> map = new HashMap<>();
for (Dept dept : deptList) {
- map.put(dept.getId(), new PatrolSuperData(dept.getCompanyId(), dept.getId()));
+ map.put(dept.getId(), new PatrolSuperData(dept.getId().substring(0,(dept.getId().length()-3)), dept.getId()));
}
List<Patrol> weekList = patrolService.getWeekList();
@@ -77,7 +77,14 @@
}
}
- return new ArrayList<>(map.values());
+ ArrayList<PatrolSuperData> list = new ArrayList<>(map.values());
+ Collections.sort(list, new Comparator<PatrolSuperData>() {
+ @Override
+ public int compare(PatrolSuperData o1, PatrolSuperData o2) {
+ return o1.getDeptId().compareTo(o2.getDeptId());
+ }
+ });
+ return list;
}
/*-------------------鐢靛瓙宸℃洿璁板綍涓昏〃淇℃伅--------------------*/
diff --git a/fzzy-igdss-view/src/main/java/com/fzzy/igds/PatrolSuper.view.xml b/fzzy-igdss-view/src/main/java/com/fzzy/igds/PatrolSuper.view.xml
index 2147c7d..cc5362a 100644
--- a/fzzy-igdss-view/src/main/java/com/fzzy/igds/PatrolSuper.view.xml
+++ b/fzzy-igdss-view/src/main/java/com/fzzy/igds/PatrolSuper.view.xml
@@ -16,7 +16,12 @@
</PropertyDef>
<PropertyDef name="companyId">
<Property></Property>
- <Property name="label">绯荤粺缁勭粐缂栫爜</Property>
+ <Property name="label">鏀跺偍鍏徃</Property>
+ <Property name="mapping">
+ <Property name="mapValues">${dorado.getDataProvider("companyPR#getData").getResult()}</Property>
+ <Property name="keyProperty">id</Property>
+ <Property name="valueProperty">dwmc</Property>
+ </Property>
</PropertyDef>
<PropertyDef name="weekNum">
<Property name="dataType">Integer</Property>
@@ -100,6 +105,9 @@
<Property name="selectionMode">singleRow</Property>
<RowSelectorColumn/>
<RowNumColumn/>
+ <DataColumn name="companyId">
+ <Property name="property">companyId</Property>
+ </DataColumn>
<DataColumn name="deptId">
<Property name="property">deptId</Property>
</DataColumn>
@@ -123,10 +131,6 @@
<Property name="property">isPatrol</Property>
<Property name="align">center</Property>
<Property name="width">120</Property>
- </DataColumn>
- <DataColumn name="remark">
- <Property name="property">remark</Property>
- <Property name="align">center</Property>
</DataColumn>
<DataColumn name="updateTime">
<Property name="property">updateTime</Property>
diff --git a/fzzy-igdss-web/src/main/java/com/fzzy/common/manager/CommonManager.java b/fzzy-igdss-web/src/main/java/com/fzzy/common/manager/CommonManager.java
index e99201a..bc322ab 100644
--- a/fzzy-igdss-web/src/main/java/com/fzzy/common/manager/CommonManager.java
+++ b/fzzy-igdss-web/src/main/java/com/fzzy/common/manager/CommonManager.java
@@ -2,21 +2,27 @@
import com.fzzy.igds.constant.Constant;
import com.fzzy.igds.constant.DepotType;
+import com.fzzy.igds.data.IgdsBaseParam;
+import com.fzzy.igds.data.MainData;
+import com.fzzy.igds.data.InoutParam;
import com.fzzy.igds.domain.*;
import com.fzzy.igds.service.*;
import com.fzzy.igds.utils.ContextUtil;
+import com.fzzy.igds.utils.DateUtil;
+import com.fzzy.work.data.OrderStatus;
+import com.fzzy.work.service.WorkOrderService;
import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.common.core.domain.entity.SysDictData;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.service.ISysDeptService;
-import com.ruoyi.system.service.ISysUserService;
import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.time.DateFormatUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
-import java.util.List;
+import java.util.*;
/**
* @Description
@@ -36,8 +42,6 @@
@Autowired
private SecCameraService secCameraService;
@Resource
- private ISysUserService userService;
- @Resource
private ISysDeptService iSysDeptService;
@Resource
private FileService fileService;
@@ -45,6 +49,14 @@
private CoreCompanyService coreCompanyService;
@Resource
private SloganService sloganService;
+ @Resource
+ private WorkOrderService workOrderService;
+ @Resource
+ private InoutRecordService inoutRecordService;
+ @Resource
+ private EventInfoService eventInfoService;
+ @Resource
+ private SnapRecordService snapRecordService;
/**
* 鏍规嵁搴撳尯缂栫爜鑾峰彇搴撳尯涓嬫墍鏈変粨搴撳垪琛�
@@ -59,6 +71,7 @@
/**
* 鑾峰彇搴撳尯楦熺灠鍥�
+ *
* @param deptId
* @return
*/
@@ -72,6 +85,7 @@
/**
* 鍒ゆ柇璺緞涓嬫枃浠舵槸鍚﹀瓨鍦紝涓嶅瓨鍦ㄥ垯缁欓粯璁�
+ *
* @param imgPath
* @param tag
* @return
@@ -98,12 +112,16 @@
* @return
*/
public List<Depot> listDepotByDeptId(String deptId) {
+ try{
+ if (StringUtils.isEmpty(deptId)) {
+ deptId = ContextUtil.subDeptId(null);
+ }
- if (StringUtils.isEmpty(deptId)) {
- deptId = ContextUtil.subDeptId(null);
+ return depotService.getCacheDepotList(ContextUtil.getCompanyId(), deptId);
+
+ }catch (Exception e){
+ return null;
}
-
- return depotService.getCacheDepotList(ContextUtil.getCompanyId(), deptId);
}
/**
@@ -142,27 +160,13 @@
}
/**
- * 鑾峰彇鐢ㄦ埛鍒楄〃
- *
- * @author sgj
- * @date 2025/12/12
- */
- public List<SysUser> listUserData() {
- SysUser user = new SysUser() ;
- user.setCompanyId(ContextUtil.getCompanyId());
- user.setDeptId(Long.valueOf(ContextUtil.subDeptId(null)));
- return userService.selectUserList(user);
- }
-
-
- /**
* 鑾峰彇璁惧鍒楄〃
*
* @author sgj
* @date 2025/12/12
*/
- public List<Camera> listCameraData() {
- return secCameraService.listCamera(ContextUtil.getCompanyId(),ContextUtil.subDeptId(null));
+ public List<Camera> listCameraData() {
+ return secCameraService.listCamera(ContextUtil.getCompanyId(), ContextUtil.subDeptId(null));
}
/**
@@ -171,7 +175,7 @@
* @author sgj
* @date 2025/12/17
*/
- public List<Company> listCompanyData() {
+ public List<Company> listCompanyData() {
SysUser user = ContextUtil.getLoginUser();
return coreCompanyService.listCompany(null, null, user.getDeptId() + "");
}
@@ -179,13 +183,143 @@
/**
* 鑾峰彇鍚敤鐨勫ぇ灞忔爣璇�
+ *
* @return
*/
public Slogan getDicSlogan() {
List<Slogan> slogans = sloganService.listData(Constant.YN_Y);
- if(null == slogans || slogans.isEmpty()){
+ if (null == slogans || slogans.isEmpty()) {
return null;
}
return slogans.get(0);
}
+
+
+ /**
+ * 鑾峰彇鍚敤鐨勫ぇ灞忔爣璇�
+ *
+ * @return
+ */
+ public MainData getIndexData(SysUser user) {
+
+ MainData mainData = new MainData();
+
+ //寰呭姙宸ュ崟鏁�
+ Integer orderNum = workOrderService.getNumByUser(OrderStatus.STATUS_30.getCode(), user.getLoginName());
+ mainData.setOrderNum(orderNum);
+
+ //缁熻鍑哄叆搴撲俊鎭�
+ Double inSum = 0.0;
+ Double outSum = 0.0;
+ LinkedHashMap<String, Integer> mapWeekInNum = new LinkedHashMap<>();
+ LinkedHashMap<String, Integer> mapWeekOutNum = new LinkedHashMap<>();
+ LinkedHashMap<String, Integer> mapMonthInNum = new LinkedHashMap<>();
+ LinkedHashMap<String, Integer> mapMonthOutNum = new LinkedHashMap<>();
+ LinkedHashMap<String, Integer> mapWeekAiNum = new LinkedHashMap<>();
+ LinkedHashMap<String, Integer> mapWeekSnapNum = new LinkedHashMap<>();
+ String key;
+ for (int i = -29; i <= 0; i++) {
+ mapMonthInNum.put(DateFormatUtils.format(DateUtil.getNewByDay(new Date(), i), "MM-dd"), 0);
+ mapMonthOutNum.put(DateFormatUtils.format(DateUtil.getNewByDay(new Date(), i), "MM-dd"), 0);
+ if(i >=-6){
+ mapWeekInNum.put(DateFormatUtils.format(DateUtil.getNewByDay(new Date(), i), "MM-dd"), 0);
+ mapWeekOutNum.put(DateFormatUtils.format(DateUtil.getNewByDay(new Date(), i), "MM-dd"), 0);
+ mapWeekAiNum.put(DateFormatUtils.format(DateUtil.getNewByDay(new Date(), i), "MM-dd"), 0);
+ mapWeekSnapNum.put(DateFormatUtils.format(DateUtil.getNewByDay(new Date(), i), "MM-dd"), 0);
+ }
+ }
+
+ //杩�7澶〢I浜嬩欢鏁�
+ IgdsBaseParam param = new IgdsBaseParam();
+ param.setDeptId(user.getDeptId() + "");
+ param.setStart(DateUtil.getNewByDay(new Date(), -6));
+ param.setEnd(new Date());
+ List<EventInfo> listEvent = eventInfoService.getListByParam(param);
+ if (null != listEvent && !listEvent.isEmpty()) {
+ mainData.setAiNum(listEvent.size());
+ for (EventInfo event : listEvent) {
+ key = DateFormatUtils.format(event.getTime(),"MM-dd");
+ if(null != mapWeekAiNum.get(key)){
+ mapWeekAiNum.put(key, mapWeekAiNum.get(key) + 1);
+ }
+ }
+ }
+ for (String mapKey : mapWeekAiNum.keySet()) {
+ mainData.getWeekAiDateList().add(mapKey);
+ mainData.getWeekAiNumList().add(mapWeekAiNum.get(mapKey));
+ }
+
+ //杩�7澶╂姄鎷嶄俊鎭粺璁�
+ List<SnapRecord> listSnap = snapRecordService.getListByParam(param);
+ if (null != listSnap && !listSnap.isEmpty()) {
+ for (SnapRecord snap : listSnap) {
+ key = DateFormatUtils.format(snap.getSnapTime(),"MM-dd");
+ if(null != mapWeekSnapNum.get(key)){
+ mapWeekSnapNum.put(key, mapWeekSnapNum.get(key) + 1);
+ }
+ }
+ }
+ for (String mapKey : mapWeekSnapNum.keySet()) {
+ mainData.getWeekSnapDateList().add(mapKey);
+ mainData.getWeekSnapNumList().add(mapWeekSnapNum.get(mapKey));
+ }
+
+ //鏌ヨ杩�30澶╂墍鏈夊嚭鍏ュ簱淇℃伅
+ InoutParam inoutParam = new InoutParam();
+ param.setDeptId(user.getDeptId() + "");
+ param.setStart(DateUtil.getNewByDay(new Date(), -29));
+ param.setEnd(new Date());
+ List<InoutRecord> inoutRecords = inoutRecordService.listInout(inoutParam);
+ if (null != inoutRecords && !inoutRecords.isEmpty()) {
+ for (InoutRecord record : inoutRecords) {
+ key = DateFormatUtils.format(record.getRegisterTime(),"MM-dd");
+ if(Constant.TYPE_IN.equals(record.getType())){
+ if(null != mapWeekInNum.get(key)){
+ mapWeekInNum.put(key, mapWeekInNum.get(key) + 1);
+ }
+ if(null != mapMonthInNum.get(key)){
+ mapMonthInNum.put(key, mapMonthInNum.get(key) + 1);
+ }
+ if(key.equals(DateFormatUtils.format(new Date(),"MM-dd"))){
+ mainData.setInNumDay(mainData.getInNumDay() + 1);
+ inSum += record.getRecordWeight();
+ }
+ }
+ if(Constant.TYPE_OUT.equals(record.getType())){
+ if(null != mapWeekOutNum.get(key)){
+ mapWeekOutNum.put(key, mapWeekOutNum.get(key) + 1);
+ }
+ if(null != mapMonthOutNum.get(key)){
+ mapMonthOutNum.put(key, mapMonthOutNum.get(key) + 1);
+ }
+ if(key.equals(DateFormatUtils.format(new Date(),"MM-dd"))){
+ mainData.setOutNumDay(mainData.getOutNumDay() + 1);
+ outSum += record.getRecordWeight();
+ }
+ }
+ }
+ }
+
+ for (String mapKey : mapWeekInNum.keySet()) {
+ mainData.getWeekDateList().add(mapKey);
+ mainData.getWeekInNumList().add(mapWeekInNum.get(mapKey));
+ }
+
+ for (String mapKey : mapWeekOutNum.keySet()) {
+ mainData.getWeekOutNumList().add(mapWeekOutNum.get(mapKey));
+ }
+
+ for (String mapKey : mapMonthInNum.keySet()) {
+ mainData.getMonthDateList().add(mapKey);
+ mainData.getMonthInNumList().add(mapMonthInNum.get(mapKey));
+ }
+
+ for (String mapKey : mapMonthOutNum.keySet()) {
+ mainData.getMonthOutNumList().add(mapMonthOutNum.get(mapKey));
+ }
+ mainData.setInSum(inSum / 1000);
+ mainData.setOutSum(outSum / 1000);
+ return mainData;
+ }
+
}
diff --git a/fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/SysIndexController.java b/fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/SysIndexController.java
index 12ae836..4e231ff 100644
--- a/fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/SysIndexController.java
+++ b/fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/SysIndexController.java
@@ -1,6 +1,8 @@
package com.fzzy.sys.controller;
+import com.fzzy.common.manager.CommonManager;
import com.fzzy.igds.constant.Constant;
+import com.fzzy.igds.data.MainData;
import com.fzzy.igds.utils.ContextUtil;
import com.ruoyi.common.config.FrameworkConfig;
import com.ruoyi.common.constant.ShiroConstants;
@@ -43,6 +45,8 @@
private SysPasswordService passwordService;
@Resource
private ISysDeptService iSysDeptService;
+ @Resource
+ private CommonManager commonManager;
/**
* 椤甸潰璺敱
@@ -69,7 +73,14 @@
@GetMapping("/home")
public String home(ModelMap mmap) {
- mmap.put("version", FrameworkConfig.getVersion());
+
+ //鑾峰彇鐧诲綍浜轰俊鎭�
+ SysUser user = getSysUser();
+
+ //鑾峰彇缁熻淇℃伅
+ MainData mainData = commonManager.getIndexData(user);
+ mmap.put("mainData", mainData);
+
return "main";
}
diff --git a/fzzy-igdss-web/src/main/resources/templates/main.html b/fzzy-igdss-web/src/main/resources/templates/main.html
index 8254650..d7b7225 100644
--- a/fzzy-igdss-web/src/main/resources/templates/main.html
+++ b/fzzy-igdss-web/src/main/resources/templates/main.html
@@ -94,7 +94,7 @@
<div class="layui-row layui-col-space15 p-top">
<div class="layui-col-sm3 layui-col-xs6">
<div class="console-link-block">
- <div class="console-link-block-num">2</div>
+ <div class="console-link-block-num" th:text="${mainData.orderNum}">2</div>
<div class="console-link-block-text">寰呭姙宸ュ崟</div>
<i class="console-link-block-icon layui-icon layui-icon-survey"></i>
<div class="console-link-block-band">寰呭鐞�</div>
@@ -102,15 +102,15 @@
</div>
<div class="layui-col-sm3 layui-col-xs6">
<div class="console-link-block">
- <div class="console-link-block-num">0</div>
+ <div class="console-link-block-num" th:text="${mainData.inSum}">0</div>
<div class="console-link-block-text">浠婃棩鍏ュ簱锛堝惃锛�</div>
<i class="console-link-block-icon layui-icon layui-icon-form"></i>
<div class="console-link-block-band">鍘绘煡鐪�</div>
</div>
</div>
- <div class="layui-col-sm3 layui-col-xs6">
+ <div class="layui-col-sm3 layui-col-xs6">
<div class="console-link-block">
- <div class="console-link-block-num">0</div>
+ <div class="console-link-block-num" th:text="${mainData.outSum}">0</div>
<div class="console-link-block-text">浠婃棩鍑哄簱锛堝惃锛�</div>
<i class="console-link-block-icon layui-icon layui-icon-form"></i>
<div class="console-link-block-band">鍘绘煡鐪�</div>
@@ -118,7 +118,7 @@
</div>
<div class="layui-col-sm3 layui-col-xs6">
<div class="console-link-block">
- <div class="console-link-block-num">0</div>
+ <div class="console-link-block-num" th:text="${mainData.aiNum}">0</div>
<div class="console-link-block-text">AI浜嬩欢锛堣繎7澶╋級</div>
<i class="console-link-block-icon layui-icon layui-icon-chart"></i>
<div class="console-link-block-band">鍘绘煡鐪�</div>
@@ -131,12 +131,9 @@
<div class="layui-row layui-col-space15">
<div class="layui-col-md4 layui-col-sm6">
<div class="layui-card" style="overflow: hidden;">
- <div class="layui-card-header">鏃ュ嚭搴撶粺璁�</div>
+ <div class="layui-card-header">鏃ュ嚭鍏ュ簱缁熻</div>
<div class="layui-card-body">
<div id="consoleChartsDay" style="height: 300px;"></div>
- <div style="color: #10B4E8;font-size: 18px;position: absolute;bottom: 85px;left: 0;right:0;text-align: center;cursor: pointer;">
- 鍑哄叆搴撴槑缁�<i class="layui-icon layui-icon-right" style="font-size: 16px;"></i>
- </div>
</div>
</div>
</div>
@@ -157,68 +154,19 @@
</div>
</div>
</div>
-
-
- <div class="layui-col-md4 layui-col-sm6">
- <div class="layui-card" style="overflow: hidden;">
- <div class="layui-card-header">鐑棬鎼滅储</div>
+ <div class="layui-col-md6">
+ <div class="layui-card">
+ <div class="layui-card-header">杩�7澶〢I浜嬩欢缁熻</div>
<div class="layui-card-body">
- <div id="consoleChartsWord" style="height: 300px;"></div>
+ <div id="aiChartsWeek" style="height: 300px;"></div>
</div>
</div>
</div>
- <div class="layui-col-md8 layui-col-sm12">
- <div class="layui-card" style="overflow: hidden;">
- <div class="layui-card-header">鐢ㄦ埛鍒嗗竷</div>
+ <div class="layui-col-md6">
+ <div class="layui-card">
+ <div class="layui-card-header">杩�7澶╂姄鎷嶇粺璁�</div>
<div class="layui-card-body">
- <div class="layui-row">
- <div class="layui-col-md8 layui-col-sm7">
- <div id="consoleChartsMap" style="height: 300px;"></div>
- </div>
- <div class="layui-col-md4 layui-col-sm5">
- <table class="layui-table" lay-skin="line" style="margin-top: 15px;">
- <thead>
- <tr>
- <td>鎺掑悕</td>
- <td>鍦板尯</td>
- <td>浜烘暟</td>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>1</td>
- <td>娴欐睙</td>
- <td>62310</td>
- </tr>
- <tr>
- <td>2</td>
- <td>涓婃捣</td>
- <td>59190</td>
- </tr>
- <tr>
- <td>3</td>
- <td>骞夸笢</td>
- <td>55891</td>
- </tr>
- <tr>
- <td>4</td>
- <td>鍖椾含</td>
- <td>51919</td>
- </tr>
- <tr>
- <td>5</td>
- <td>灞变笢</td>
- <td>39231</td>
- </tr>
- <tr>
- <td>6</td>
- <td>婀栧寳</td>
- <td>37109</td>
- </tr>
- </tbody>
- </table>
- </div>
- </div>
+ <div id="snapChartsWeek" style="height: 300px;"></div>
</div>
</div>
</div>
@@ -226,11 +174,11 @@
</div>
<!-- js閮ㄥ垎 -->
<script th:src="@{/ajax/libs/layui-ruoyi/layui.js}"></script>
-<!--<script src="${ctxPath}/assets/js/common.js"></script>-->
<script th:src="@{/ajax/libs/echarts/echarts.min.js}"></script>
<script th:src="@{/ajax/libs/echarts/china.js}"></script>
<script th:src="@{/ajax/libs/echarts/echarts-wordcloud.min.js}"></script>
-<script>
+<script th:inline="javascript">
+ var mainData = [[${mainData}]];
layui.use(['layer'], function () {
var $ = layui.jquery;
var layer = layui.layer;
@@ -239,7 +187,7 @@
var myCharts1 = echarts.init(document.getElementById('consoleChartsDay'));
var options1 = {
title: {
- text: '鍏ュ簱鏁伴噺/鍑哄簱鏁伴噺', x: 'center', y: '32%',
+ text: '鍏ュ簱杞︽/鍑哄簱杞︽', x: 'center', y: '32%',
textStyle: {fontSize: 18, color: '#262626', fontWeight: 'normal'},
subtextStyle: {fontSize: 56, color: '#10B4E8'}, itemGap: 20
},
@@ -247,14 +195,14 @@
tooltip: {trigger: 'item'},
legend: {
orient: 'vertical', right: '0px', top: '0px',
- data: ['鍏ュ簱鏁伴噺', '鍑哄簱鏁伴噺'], textStyle: {color: '#595959'}
+ data: ['鍏ュ簱杞︽', '鍑哄簱杞︽'], textStyle: {color: '#595959'}
},
series: [{name: '鏁伴噺', type: 'pie', radius: ['75%', '80%'], label: {normal: {show: false}}}]
};
myCharts1.setOption(options1);
// 璧嬪��
myCharts1.setOption({
- title: {subtext: '38/60'}, series: [{data: [{name: '鍏ュ簱鏁伴噺', value: 38}, {name: '鍑哄簱鏁伴噺', value: 22}]}]
+ title: {subtext: mainData.inNumDay + "/" + mainData.outNumDay}, series: [{data: [{name: '鍏ュ簱杞︽', value: mainData.inNumDay}, {name: '鍑哄簱杞︽', value: mainData.outNumDay}]}]
});
/** 娓叉煋鍛ㄧ粺璁″浘琛� */
@@ -264,14 +212,14 @@
color: ['#10B4E8', '#FFA800'],
legend: {
orient: 'vertical', right: '0px', top: '0px',
- data: ['鍏ュ簱鏁伴噺', '鍑哄簱鏁伴噺'], textStyle: {color: '#595959'}
+ data: ['鍏ュ簱杞︽', '鍑哄簱杞︽'], textStyle: {color: '#595959'}
},
grid: {top: '75px', left: '35px', right: '55px', bottom: '40px'},
xAxis: {
- name: '鏄熸湡',
+ name: '鏃ユ湡',
nameTextStyle: {color: '#595959'},
type: 'category',
- data: ['鍛ㄤ竴', '鍛ㄤ簩', '鍛ㄤ笁', '鍛ㄥ洓', '鍛ㄤ簲'],
+ data: mainData.weekDateList,
axisLine: {lineStyle: {color: '#E0E0E0'}, symbol: ['none', 'arrow'], symbolOffset: [0, 10]},
axisLabel: {color: '#8c8c8c'},
axisTick: {alignWithLabel: true}
@@ -289,16 +237,16 @@
minInterval: 1
},
series: [{
- name: '鍏ュ簱鏁伴噺', type: 'bar', stack: 'one', barMaxWidth: '30px',
+ name: '鍏ュ簱杞︽', type: 'bar', stack: 'one', barMaxWidth: '30px',
label: {normal: {show: true, position: 'inside'}}
}, {
- name: '鍑哄簱鏁伴噺', type: 'bar', stack: 'one', barMaxWidth: '30px',
+ name: '鍑哄簱杞︽', type: 'bar', stack: 'one', barMaxWidth: '30px',
label: {normal: {show: true, position: 'inside'}}
}]
};
myCharts2.setOption(options2);
// 璧嬪��
- myCharts2.setOption({series: [{data: [5, 9, 6, 3, 10]}, {data: [10, 6, 9, 12, 5]}]});
+ myCharts2.setOption({series: [{data: mainData.weekInNumList}, {data: mainData.weekOutNumList}]});
/** 娓叉煋鏈堢粺璁″浘琛� */
var myCharts3 = echarts.init(document.getElementById('consoleChartsMonth'));
@@ -311,14 +259,14 @@
color: ['#10B4E8', '#FFA800'],
legend: {
orient: 'vertical', right: '0px', top: '0px',
- data: ['鍏ュ簱鏁伴噺', '鍑哄簱鏁伴噺'], textStyle: {color: '#595959'}
+ data: ['鍏ュ簱杞︽', '鍑哄簱杞︽'], textStyle: {color: '#595959'}
},
grid: {top: '75px', left: '35px', right: '55px', bottom: '40px'},
xAxis: {
name: '鏃ユ湡',
nameTextStyle: {color: '#595959'},
type: 'category',
- data: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '30', '31'],
+ data: mainData.monthDateList,
axisLine: {lineStyle: {color: '#E0E0E0'}, symbol: ['none', 'arrow'], symbolOffset: [0, 10]},
axisLabel: {
color: '#8c8c8c', interval: function (index, value) {
@@ -340,151 +288,98 @@
minInterval: 1
},
series: [
- {name: '鍏ュ簱鏁伴噺', type: 'line', smooth: false},
- {name: '鍑哄簱鏁伴噺', type: 'line', smooth: false}
+ {name: '鍏ュ簱杞︽', type: 'line', smooth: false},
+ {name: '鍑哄簱杞︽', type: 'line', smooth: false}
]
};
myCharts3.setOption(options3);
// 璧嬪��
myCharts3.setOption({
series: [
- {data: [15, 14, 13, 13, 13, 14, 15, 16, 17, 18, 19, 18, 18, 19, 20, 19, 18, 16, 14, 12, 10, 10, 12, 14, 16, 16, 14, 13, 12, 11, 10]},
- {data: [24, 22, 20, 18, 16, 14, 13, 12, 11, 11, 10, 10, 11, 12, 13, 14, 15, 16, 18, 20, 22, 23, 24, 25, 26, 26, 24, 22, 20, 18, 16]}
+ {data: mainData.monthInNumList},
+ {data: mainData.monthOutNumList}
]
});
- /** 娓叉煋鍦板浘鍥捐〃 */
- var myCharts4 = echarts.init(document.getElementById('consoleChartsMap'));
+ /** 娓叉煋鍛ㄧ粺璁″浘琛� */
+ var myCharts4 = echarts.init(document.getElementById('aiChartsWeek'));
var options4 = {
- tooltip: {trigger: 'item'},
- dataRange: {
- min: 0, max: 6e4, text: ['楂�', '浣�'], color: ['#2395FF', '#f2f2f2'], itemHeight: 60, itemWidth: 12
- }, series: [{
- name: '鍑哄簱鏁伴噺', type: 'map', mapType: "china",
- itemStyle: {normal: {label: {show: true, color: '#262626'}, borderColor: '#dddddd'}},
- emphasis: {label: {show: true, color: '#fff'}, itemStyle: {areaColor: '#FACF20'}},
- top: '0px', left: '15px', bottom: '0px'
+ tooltip: {trigger: 'axis', axisPointer: {lineStyle: {color: '#E0E0E0'}}},
+ color: ['#10B4E8'],
+ legend: {
+ orient: 'vertical', right: '0px', top: '0px',
+ data: ['AI浜嬩欢鏁�'], textStyle: {color: '#595959'}
+ },
+ grid: {top: '75px', left: '35px', right: '55px', bottom: '40px'},
+ xAxis: {
+ name: '鏃ユ湡',
+ nameTextStyle: {color: '#595959'},
+ type: 'category',
+ data: mainData.weekAiDateList,
+ axisLine: {lineStyle: {color: '#E0E0E0'}, symbol: ['none', 'arrow'], symbolOffset: [0, 10]},
+ axisLabel: {color: '#8c8c8c'},
+ axisTick: {alignWithLabel: true}
+ },
+ yAxis: {
+ name: '鏁伴噺',
+ nameTextStyle: {color: '#595959'},
+ type: 'value',
+ boundaryGap: ['0', '20%'],
+ axisTick: {show: false},
+ axisLine: {lineStyle: {color: '#E0E0E0'}, symbol: ['none', 'arrow'], symbolOffset: [0, 10]},
+ axisLabel: {color: '#8c8c8c'},
+ splitLine: {show: false},
+ splitArea: {show: false},
+ minInterval: 1
+ },
+ series: [{
+ name: 'AI浜嬩欢', type: 'bar', stack: 'one', barMaxWidth: '30px',
+ label: {normal: {show: true, position: 'inside'}}
}]
};
myCharts4.setOption(options4);
// 璧嬪��
- myCharts4.setOption({
- series: [{
- data: [
- {name: "瑗胯棌", value: 60},
- {name: "闈掓捣", value: 167},
- {name: "瀹佸", value: 210},
- {name: "娴峰崡", value: 252},
- {name: "鐢樿們", value: 502},
- {name: "璐靛窞", value: 570},
- {name: "鏂扮枂", value: 661},
- {name: "浜戝崡", value: 8890},
- {name: "閲嶅簡", value: 10010},
- {name: "鍚夋灄", value: 5056},
- {name: "灞辫タ", value: 2123},
- {name: "澶╂触", value: 9130},
- {name: "姹熻タ", value: 10170},
- {name: "骞胯タ", value: 6172},
- {name: "闄曡タ", value: 9251},
- {name: "榛戦緳姹�", value: 5125},
- {name: "鍐呰挋鍙�", value: 1435},
- {name: "瀹夊窘", value: 9530},
- {name: "鍖椾含", value: 51919},
- {name: "绂忓缓", value: 3756},
- {name: "涓婃捣", value: 59190},
- {name: "婀栧寳", value: 37109},
- {name: "婀栧崡", value: 8966},
- {name: "鍥涘窛", value: 31020},
- {name: "杈藉畞", value: 7222},
- {name: "娌冲寳", value: 3451},
- {name: "娌冲崡", value: 9693},
- {name: "娴欐睙", value: 62310},
- {name: "灞变笢", value: 39231},
- {name: "姹熻嫃", value: 35911},
- {name: "骞夸笢", value: 55891}
- ]
- }]
- });
+ myCharts4.setOption({series: [{data: mainData.weekAiNumList}]});
- /** 娓叉煋璇嶄簯鍥捐〃 */
- var myCharts5 = echarts.init(document.getElementById('consoleChartsWord'));
+ /** 娓叉煋鍛ㄧ粺璁″浘琛� */
+ var myCharts5 = echarts.init(document.getElementById('snapChartsWeek'));
var options5 = {
- tooltip: {show: true},
+ tooltip: {trigger: 'axis', axisPointer: {lineStyle: {color: '#E0E0E0'}}},
+ color: ['#FFA800'],
+ legend: {
+ orient: 'vertical', right: '0px', top: '0px',
+ data: ['鎶撴媿鏁�'], textStyle: {color: '#595959'}
+ },
+ grid: {top: '75px', left: '35px', right: '55px', bottom: '40px'},
+ xAxis: {
+ name: '鏃ユ湡',
+ nameTextStyle: {color: '#595959'},
+ type: 'category',
+ data: mainData.weekSnapDateList,
+ axisLine: {lineStyle: {color: '#E0E0E0'}, symbol: ['none', 'arrow'], symbolOffset: [0, 10]},
+ axisLabel: {color: '#8c8c8c'},
+ axisTick: {alignWithLabel: true}
+ },
+ yAxis: {
+ name: '鏁伴噺',
+ nameTextStyle: {color: '#595959'},
+ type: 'value',
+ boundaryGap: ['0', '20%'],
+ axisTick: {show: false},
+ axisLine: {lineStyle: {color: '#E0E0E0'}, symbol: ['none', 'arrow'], symbolOffset: [0, 10]},
+ axisLabel: {color: '#8c8c8c'},
+ splitLine: {show: false},
+ splitArea: {show: false},
+ minInterval: 1
+ },
series: [{
- name: "鎼滅储閲�",
- type: 'wordCloud',
- shape: 'diamond',
- width: '100%',
- height: '100%',
- sizeRange: [12, 23],
- gridSize: 6,
- textStyle: {
- normal: {
- color: function () {
- return 'rgb(' + [
- Math.round(Math.random() * 160),
- Math.round(Math.random() * 160),
- Math.round(Math.random() * 160)
- ].join(',') + ')';
- }
- },
- emphasis: {shadowBlur: 10, shadowColor: '#666'}
- }, data: []
+ name: '鎶撴媿淇℃伅', type: 'bar', stack: 'one', barMaxWidth: '30px',
+ label: {normal: {show: true, position: 'inside'}}
}]
};
myCharts5.setOption(options5);
// 璧嬪��
- myCharts5.setOption({
- series: [{
- data: [
- {name: "杞瀛�", value: 23},
- {name: "姹槦浜�", value: 23},
- {name: "闀胯吙娆у反", value: 23},
- {name: "钀濊帀", value: 22},
- {name: "杈", value: 22},
- {name: "K姝�", value: 22},
- {name: "澶ч暱鑵�", value: 21},
- {name: "宸濆瀛�", value: 21},
- {name: "濂崇", value: 21},
- {name: "绫崇矇", value: 20},
- {name: "涓撴敞璁捐", value: 20},
- {name: "閫涜", value: 20},
- {name: "榛戦暱鐩�", value: 20},
- {name: "娴风撼鐧惧窛", value: 19},
- {name: "钀岃悓鍝�", value: 19},
- {name: "鍧氭寔", value: 19},
- {name: "璇濆敔", value: 19},
- {name: "鏋滅矇", value: 18},
- {name: "鍠垫槦浜�", value: 18},
- {name: "鑺辩矇", value: 18},
- {name: "琛~鎺�", value: 18},
- {name: "瀹呯敺", value: 17},
- {name: "灏忔竻鏂�", value: 17},
- {name: "鐪奸暅鐢�", value: 17},
- {name: "鐞肩懚", value: 17},
- {name: "绌锋父鍏�", value: 16},
- {name: "閾插睅瀹�", value: 16},
- {name: "姝eお", value: 16},
- {name: "涓簩鐥�", value: 16},
- {name: "澶滅尗瀛�", value: 15},
- {name: "閫楁瘮", value: 15},
- {name: "鑵归粦", value: 15},
- {name: "鍚冮浮", value: 15},
- {name: "涓轰簡鑱旂洘", value: 14},
- {name: "鑳屽寘瀹�", value: 14},
- {name: "姘戣埃", value: 14},
- {name: "涓轰簡閮ㄨ惤", value: 14},
- {name: "鎳掔檶鎮h��", value: 13},
- {name: "杩藉墽", value: 13},
- {name: "IT姘戝伐", value: 13},
- {name: "CNB鎴愬憳", value: 13},
- {name: "閫夋嫨鍥伴毦", value: 12},
- {name: "閿ょ矇", value: 12},
- {name: "娆х殗", value: 12},
- {name: "浠欐皵鍗佽冻", value: 12}
- ]
- }]
- });
+ myCharts5.setOption({series: [{data: mainData.weekSnapNumList}]});
/** 绐楀彛澶у皬鏀瑰彉浜嬩欢 */
window.onresize = function () {
@@ -496,6 +391,7 @@
};
});
+
</script>
</body>
</html>
\ No newline at end of file
--
Gitblit v1.9.3