diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..ed8368aaa7067771686573623aa38f4e14952961
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,47 @@
+######################################################################
+# Build Tools
+
+.gradle
+/build/
+!gradle/wrapper/gradle-wrapper.jar
+
+target/
+!.mvn/wrapper/maven-wrapper.jar
+
+######################################################################
+# IDE
+
+### STS ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+
+### IntelliJ IDEA ###
+.idea
+*.iws
+*.iml
+*.ipr
+
+### JRebel ###
+rebel.xml
+
+### NetBeans ###
+nbproject/private/
+build/*
+nbbuild/
+dist/
+nbdist/
+.nb-gradle/
+
+######################################################################
+# Others
+*.log
+*.xml.versionsBackup
+*.swp
+
+!*/build/*.java
+!*/build/*.html
+!*/build/*.xml
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000000000000000000000000000000000000..8564f294c7781cbbbdb22ae5927a96f859db0054
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,20 @@
+The MIT License (MIT)
+
+Copyright (c) 2018 RuoYi
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\ No newline at end of file
diff --git a/README.md b/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..d438bf596206fa3b0f0b8d3ca739ae83e4726f22
--- /dev/null
+++ b/README.md
@@ -0,0 +1,97 @@
+
+
+
+RuoYi v3.8.4
+基于SpringBoot+Vue前后端分离的Java快速开发框架
+
+
+
+
+
+
+## 平台简介
+
+若依是一套全部开源的快速开发平台,毫无保留给个人及企业免费使用。
+
+* 前端采用Vue、Element UI。
+* 后端采用Spring Boot、Spring Security、Redis & Jwt。
+* 权限认证使用Jwt,支持多终端认证系统。
+* 支持加载动态权限菜单,多方式轻松权限控制。
+* 高效率开发,使用代码生成器可以一键生成前后端代码。
+* 提供了技术栈([Vue3](https://v3.cn.vuejs.org) [Element Plus](https://element-plus.org/zh-CN) [Vite](https://cn.vitejs.dev))版本[RuoYi-Vue3](https://github.com/yangzongzhuan/RuoYi-Vue3),保持同步更新。
+* 提供了单应用版本[RuoYi-Vue-fast](https://github.com/yangzongzhuan/RuoYi-Vue-fast),Oracle版本[RuoYi-Vue-Oracle](https://github.com/yangzongzhuan/RuoYi-Vue-Oracle),保持同步更新。
+* 不分离版本,请移步[RuoYi](https://gitee.com/y_project/RuoYi),微服务版本,请移步[RuoYi-Cloud](https://gitee.com/y_project/RuoYi-Cloud)
+* 特别鸣谢:[element](https://github.com/ElemeFE/element),[vue-element-admin](https://github.com/PanJiaChen/vue-element-admin),[eladmin-web](https://github.com/elunez/eladmin-web)。
+* 阿里云折扣场:[点我进入](http://aly.ruoyi.vip),腾讯云秒杀场:[点我进入](http://txy.ruoyi.vip)
+* 阿里云优惠券:[点我领取](https://www.aliyun.com/minisite/goods?userCode=brki8iof&share_source=copy_link),腾讯云优惠券:[点我领取](https://cloud.tencent.com/redirect.php?redirect=1025&cps_key=198c8df2ed259157187173bc7f4f32fd&from=console)
+
+## 内置功能
+
+1. 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
+2. 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。
+3. 岗位管理:配置系统用户所属担任职务。
+4. 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
+5. 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
+6. 字典管理:对系统中经常使用的一些较为固定的数据进行维护。
+7. 参数管理:对系统动态配置常用参数。
+8. 通知公告:系统通知公告信息发布维护。
+9. 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
+10. 登录日志:系统登录日志记录查询包含登录异常。
+11. 在线用户:当前系统中活跃用户状态监控。
+12. 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。
+13. 代码生成:前后端代码的生成(java、html、xml、sql)支持CRUD下载 。
+14. 系统接口:根据业务代码自动生成相关的api接口文档。
+15. 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。
+16. 缓存监控:对系统的缓存信息查询,命令统计等。
+17. 在线构建器:拖动表单元素生成相应的HTML代码。
+18. 连接池监视:监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。
+
+## 在线体验
+
+- admin/admin123
+- 陆陆续续收到一些打赏,为了更好的体验已用于演示服务器升级。谢谢各位小伙伴。
+
+演示地址:http://vue.ruoyi.vip
+文档地址:http://doc.ruoyi.vip
+
+## 演示图
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## 若依前后端分离交流群
+
+QQ群: [](https://jq.qq.com/?_wv=1027&k=5bVB1og) [](https://jq.qq.com/?_wv=1027&k=5eiA4DH) [](https://jq.qq.com/?_wv=1027&k=5AxMKlC) [](https://jq.qq.com/?_wv=1027&k=51G72yr) [](https://jq.qq.com/?_wv=1027&k=VvjN2nvu) [](https://jq.qq.com/?_wv=1027&k=5vYAqA05) [](https://jq.qq.com/?_wv=1027&k=kOIINEb5) [](https://jq.qq.com/?_wv=1027&k=UKtX5jhs) [](https://jq.qq.com/?_wv=1027&k=EI9an8lJ) [](https://jq.qq.com/?_wv=1027&k=SWCtLnMz) [](https://jq.qq.com/?_wv=1027&k=96Dkdq0k) [](https://jq.qq.com/?_wv=1027&k=0fsNiYZt) [](https://jq.qq.com/?_wv=1027&k=7xw4xUG1) 点击按钮入群。
\ No newline at end of file
diff --git a/bin/clean.bat b/bin/clean.bat
new file mode 100644
index 0000000000000000000000000000000000000000..24c09741e10963dd8c7068f9ff21c952b22b7fc5
--- /dev/null
+++ b/bin/clean.bat
@@ -0,0 +1,12 @@
+@echo off
+echo.
+echo [Ϣ] target·
+echo.
+
+%~d0
+cd %~dp0
+
+cd ..
+call mvn clean
+
+pause
\ No newline at end of file
diff --git a/bin/package.bat b/bin/package.bat
new file mode 100644
index 0000000000000000000000000000000000000000..c693ec067499702689d496f74c089888d7840be4
--- /dev/null
+++ b/bin/package.bat
@@ -0,0 +1,12 @@
+@echo off
+echo.
+echo [Ϣ] Weḅwar/jarļ
+echo.
+
+%~d0
+cd %~dp0
+
+cd ..
+call mvn clean package -Dmaven.test.skip=true
+
+pause
\ No newline at end of file
diff --git a/bin/run.bat b/bin/run.bat
new file mode 100644
index 0000000000000000000000000000000000000000..41efbd0f3eb46221fb2c9f2f4f156ca311ae5f66
--- /dev/null
+++ b/bin/run.bat
@@ -0,0 +1,14 @@
+@echo off
+echo.
+echo [Ϣ] ʹJarWeb̡
+echo.
+
+cd %~dp0
+cd ../ruoyi-admin/target
+
+set JAVA_OPTS=-Xms256m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m
+
+java -jar %JAVA_OPTS% ruoyi-admin.jar
+
+cd bin
+pause
\ No newline at end of file
diff --git a/cmcc_gm/pom.xml b/cmcc_gm/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..4bae25df75ba7fedf62ce16f5993709cd9af41f3
--- /dev/null
+++ b/cmcc_gm/pom.xml
@@ -0,0 +1,37 @@
+
+
+
+ ruoyi
+ com.ruoyi
+ 3.8.4
+
+ 4.0.0
+
+ cmcc_gm
+
+
+ 移动的物资管理模块
+
+
+
+
+ com.ruoyi
+ ruoyi-common
+
+
+
+ com.baomidou
+ mybatis-plus-boot-starter
+
+
+
+
+
+ 8
+ 8
+ UTF-8
+
+
+
\ No newline at end of file
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/common/enums/OrderStatus.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/common/enums/OrderStatus.java
new file mode 100644
index 0000000000000000000000000000000000000000..207c73877dae790c98dd32883a25b85a79a40e9a
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/common/enums/OrderStatus.java
@@ -0,0 +1,59 @@
+package com.ruoyi.cmcc_gm.common.enums;
+
+public enum OrderStatus {
+
+ DSQ("0", "待申请") ,DSH("1", "待审核") ,YSH("2","已审核") ,YCK("3","已出库") ,YRK("4","已入库"),
+ CX("5","撤销");
+
+ /** code */
+ private String code;
+
+ /** 显示标签 */
+ private String label;
+
+ OrderStatus(String code, String label){
+
+ this.code = code;
+
+ this.label = label;
+ }
+
+ public static String getLabelByCode (String code) {
+
+ for (OrderStatus enuma : OrderStatus.values()) {
+
+ if (enuma.getCode().equals(code)) {
+
+ return enuma.getLabel();
+
+ }
+
+ }
+
+ return "";
+
+ }
+
+
+ @Override
+ public String toString(){
+
+ return label;
+
+ }
+
+ public String getLabel() {
+
+ return label;
+
+ }
+
+
+ public String getCode(){
+
+ return this.code;
+
+ }
+
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/common/enums/OrderType.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/common/enums/OrderType.java
new file mode 100644
index 0000000000000000000000000000000000000000..1624e8b6a66d0734e234bb2b4c090e0579b532e7
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/common/enums/OrderType.java
@@ -0,0 +1,83 @@
+package com.ruoyi.cmcc_gm.common.enums;
+
+public enum OrderType {
+
+ ZXK((Integer)1, "ZXK","中心库更新") ,SL((Integer)2,"SL" ,"物资申领") ,TK((Integer) 3,"TK" ,"物资退库") ,CK((Integer) 4,"CK" ,"工程出库") ,RK((Integer) 5,"RK" ,"折旧入库"),DB((Integer) 6,"DB" ,"调拨");
+
+ /** code */
+ private Integer code;
+
+ /** 英文标签 */
+ private String abbLabel;
+
+ /** 显示标签 */
+ private String label;
+
+ OrderType(Integer code,String abbLabel, String label){
+
+ this.code = code;
+ this.abbLabel = abbLabel;
+ this.label = label;
+ }
+
+ public static String getLabelByCode (Integer code) {
+
+ for (OrderType enuma : OrderType.values()) {
+
+ if (enuma.getCode().compareTo(code) == 0) {
+
+ return enuma.getLabel();
+
+ }
+
+ }
+
+ return "";
+
+ }
+
+ public static String getAbbLabelByCode (Integer code) {
+
+ for (OrderType enuma : OrderType.values()) {
+
+ if (enuma.getCode().compareTo(code) == 0) {
+
+ return enuma.getAbbLabel();
+
+ }
+
+ }
+
+ return "";
+
+ }
+
+
+ @Override
+ public String toString(){
+
+ return label;
+
+ }
+
+ public String getLabel() {
+
+ return label;
+
+ }
+
+
+ public String getAbbLabel() {
+
+ return abbLabel;
+
+ }
+
+ public Integer getCode(){
+
+ return this.code;
+
+ }
+
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsBatch.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsBatch.java
new file mode 100644
index 0000000000000000000000000000000000000000..f827163cf966df4bfab8bcf16e0d5d2d5c49ef00
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsBatch.java
@@ -0,0 +1,54 @@
+package com.ruoyi.cmcc_gm.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ *
+ * 物资批次表
+ *
+ *
+ * @author jkj
+ * @since 2023-04-10
+ */
+@Getter
+@Setter
+@TableName("yw_materials_batch")
+public class YwMaterialsBatch implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 序号
+ */
+ private Long id;
+
+ /**
+ * 工单号
+ */
+ private String orderid;
+
+ /**
+ * 物资编码
+ */
+ private String materialCode;
+
+ /**
+ * 数量
+ */
+ private Integer sum;
+
+ /**
+ * 实际入库数量
+ */
+ private Integer inSum;
+
+ /**
+ * 实际出库数量
+ */
+ private Integer outSum;
+
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsClasses.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsClasses.java
new file mode 100644
index 0000000000000000000000000000000000000000..12425d96f78467b9f954238701244593c0700c08
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsClasses.java
@@ -0,0 +1,52 @@
+package com.ruoyi.cmcc_gm.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.annotation.Excel;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ *
+ *
+ *
+ *
+ * @author jkj
+ * @since 2023-04-07
+ */
+@Getter
+@Setter
+@TableName("yw_materials_classes")
+public class YwMaterialsClasses implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 序号
+ */
+ @TableId(type = IdType.AUTO)
+ @Excel(name = "ID",type= Excel.Type.EXPORT, sort = 1)
+ private Long id;
+
+ /**
+ * 物资大类
+ */
+ @Excel(name = "物资大类",type= Excel.Type.ALL, sort = 1)
+ private String bigClass;
+
+ /**
+ * 物资小类
+ */
+ @Excel(name = "物资大类",type= Excel.Type.ALL, sort = 2)
+ private String smallClass;
+
+
+ @Excel(name = "失败原因", type = Excel.Type.EXPORT,sort = 3)
+ @TableField(exist = false)
+ private String reason;
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsInform.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsInform.java
new file mode 100644
index 0000000000000000000000000000000000000000..6fdf7dc56c8d5dd4bfc8eb7f5dfb202260a3de1c
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsInform.java
@@ -0,0 +1,99 @@
+package com.ruoyi.cmcc_gm.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.importer.beans.ResultBean;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ *
+ * 物资信息表
+ *
+ *
+ * @author jkj
+ * @since 2023-04-06
+ */
+@Getter
+@Setter
+@TableName("yw_materials_inform")
+public class YwMaterialsInform extends ResultBean implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 序号
+ */
+ @TableId(type = IdType.AUTO)
+ private Long id;
+
+ @TableField(exist = false)
+ private String rowId;
+
+ @TableField(exist = false)
+ private String special;
+
+ /**
+ * 物资名称
+ */
+ @Excel(name = "物资名称", sort = 3)
+ private String materialName;
+
+ /**
+ * 物资编码
+ */
+ @Excel(name = "物资编号", sort = 2)
+ private String materialCode;
+
+ private String factory;
+
+ /**
+ * 规格
+ */
+ @Excel(name = "规格型号", sort = 4)
+ private String materialStand;
+
+ @TableField(exist = false)
+ private String detail;
+
+ /**
+ * 单位
+ */
+ @Excel(name = "单位", sort = 7)
+ private String materialUnit;
+
+ @TableField(exist = false)
+ private String ifStringCode;
+
+ /**
+ * 物资大类id
+ */
+ @Excel(name = "大类", sort = 5)
+ private String materialBigClass;
+
+ /**
+ * 物资小类id
+ */
+ @Excel(name = "小类", sort = 6)
+ private String materialSmallClass;
+
+ /**
+ * SN绑定
+ */
+ @Excel(name = "SN绑定", sort = 8)
+ private String snCode;
+
+ /**
+ * 物资数量
+ */
+ @Excel(name = "申请数量", sort = 9)
+ @TableField(exist = false)
+ private String sum;
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsOrderLog.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsOrderLog.java
new file mode 100644
index 0000000000000000000000000000000000000000..e244d9b0707c58fc11286339b93a8563d8a693fc
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsOrderLog.java
@@ -0,0 +1,114 @@
+package com.ruoyi.cmcc_gm.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ *
+ * 物资工单日志表
+ *
+ *
+ * @author jkj
+ * @since 2023-04-07
+ */
+@Data
+@TableName("yw_materials_order_log")
+public class YwMaterialsOrderLog implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 序号
+ */
+ @TableId(type = IdType.AUTO)
+ private Long id;
+
+ /**
+ * 工单号
+ */
+ private String orderId;
+
+ /**
+ * 工单类型(更新中心库=1,申领=2,退库=3,工程出库=4,折旧入库=5,物资调拨=6)
+ */
+ private Integer orderType;
+
+ /**
+ * 工作流id
+ */
+ private String flwProcessid;
+
+ /**
+ * 申请人
+ */
+ private String applyName;
+
+ /**
+ * 审核人
+ */
+ private String checkName;
+
+ /**
+ * 入库人
+ */
+ private String inStoreName;
+
+ /**
+ * 任务状态
+ */
+ private String taskStatus;
+
+ /**
+ * 任务发起时间
+ */
+ private LocalDateTime taskStartTime;
+
+ /**
+ * 入库场馆
+ */
+ private Long inStoreVenue;
+
+ /**
+ * 出库场馆
+ */
+ private Long outStoreVenue;
+
+ /**
+ * 拆布线工单号
+ */
+ private String wireTaskId;
+
+ /**
+ * 上传文件路径
+ */
+ private String fileUrl;
+
+ /**
+ * 上传文件名称
+ */
+ private String fileName;
+
+ /**
+ * 申请人ID
+ */
+ private Long applyId;
+
+ /**
+ * 审核人ID
+ */
+ private Long checkId;
+
+ /**
+ * 入库人ID
+ */
+ private Long inStoreId;
+
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsSnList.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsSnList.java
new file mode 100644
index 0000000000000000000000000000000000000000..82697c59f61db8e15595f262dc685606365dcdbf
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsSnList.java
@@ -0,0 +1,50 @@
+package com.ruoyi.cmcc_gm.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ *
+ * 物资编码串码对应表
+ *
+ *
+ * @author jkj
+ * @since 2023-04-10
+ */
+@Getter
+@Setter
+@TableName("yw_materials_list")
+public class YwMaterialsSnList implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 序号
+ */
+ private Long id;
+
+ /**
+ * 工单号
+ */
+ private String orderid;
+
+ /**
+ * 物资编码
+ */
+ private String materialCode;
+
+ /**
+ * 串码
+ */
+ private String materialStrCode;
+
+
+ /**
+ * 操作类型
+ */
+ private Integer opType;
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsStock.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsStock.java
new file mode 100644
index 0000000000000000000000000000000000000000..e66fc42621f0d46aa70d2d51dbc5e400cefbfb4f
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/YwMaterialsStock.java
@@ -0,0 +1,65 @@
+package com.ruoyi.cmcc_gm.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+
+import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ *
+ * 物资库存表
+ *
+ *
+ * @author jkj
+ * @since 2023-04-06
+ */
+
+@Data
+@TableName("yw_materials_stock")
+public class YwMaterialsStock implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 序号
+ */
+ @TableId(type = IdType.AUTO)
+ private Long id;
+
+ /**
+ * 物资库ID(场馆库对应venue_id,中心库对应一个特殊id比如-1
+ */
+
+ private Long materialStoreId;
+
+ /**
+ * 物资编码
+ */
+ private String materialCode;
+
+ /**
+ * 可用数
+ */
+ private Integer availSum;
+
+ /**
+ * 出库在途数
+ */
+ private Integer outWaySum;
+
+ /**
+ * 入库在途数
+ */
+ private Integer inWaySum;
+
+ /**
+ * 大场景id
+ */
+ private Long sceneBigId;
+
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/BaseDTO.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/BaseDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..d829cf6045bace6b5769ce4087251e758c8bc797
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/BaseDTO.java
@@ -0,0 +1,12 @@
+package com.ruoyi.cmcc_gm.domain.dto;
+
+import lombok.Data;
+
+@Data
+public class BaseDTO {
+
+ private Integer pageNum;
+
+ private Integer pageSize;
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/TransformJsonArrayToMaterialsXlsDTO.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/TransformJsonArrayToMaterialsXlsDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..6fe3a6ef25b5d7d2bd77773ace17ae8a92cc2aa4
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/TransformJsonArrayToMaterialsXlsDTO.java
@@ -0,0 +1,12 @@
+package com.ruoyi.cmcc_gm.domain.dto;
+
+import com.ruoyi.cmcc_gm.domain.vo.MaterialsXlsToJsonArrayVo;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class TransformJsonArrayToMaterialsXlsDTO {
+ private List data;
+ private Long taskType;
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YmMaterialsClassesParam.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YmMaterialsClassesParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..abc124f4675387b9d712acdd3e261cae9247839e
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YmMaterialsClassesParam.java
@@ -0,0 +1,22 @@
+package com.ruoyi.cmcc_gm.domain.dto;
+
+import lombok.Data;
+
+@Data
+public class YmMaterialsClassesParam extends BaseDTO {
+ /**
+ * 序号
+ */
+ private Long id;
+
+ /**
+ * 物资大类
+ */
+ private String bigClass;
+
+ /**
+ * 物资小类
+ */
+ private String smallClass;
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsBatchDTO.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsBatchDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..3cc806736c20734f67d70fc3d86e3c98747fef24
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsBatchDTO.java
@@ -0,0 +1,30 @@
+package com.ruoyi.cmcc_gm.domain.dto;
+
+import com.ruoyi.cmcc_gm.domain.YwMaterialsBatch;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class YwMaterialsBatchDTO {
+
+ /**
+ * 工单号
+ */
+ private String orderId;
+
+ /**
+ * 仓库号
+ */
+ private Long storeId;
+
+
+ /**
+ * 是否需要冻结
+ */
+ private Integer needfrozen;
+
+ private List data;
+
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsDTO.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..811e00277572fcc94241bec5bb2f0d89103fcb81
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsDTO.java
@@ -0,0 +1,23 @@
+package com.ruoyi.cmcc_gm.domain.dto;
+
+import lombok.Data;
+
+@Data
+public class YwMaterialsDTO {
+
+
+ //工单号
+ private String orderId;
+
+ //工单类型
+ private Integer orderType;
+
+ //操作步骤 1.提交申请 2.审核任务 3.出库确认 4.入库确认
+ private String opType;
+
+ //当前审核人
+ private String auditor;
+
+
+ private String isBack;
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsInformDTO.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsInformDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..40e6e8221438c32e565e2b9df8c84aa200cc56df
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsInformDTO.java
@@ -0,0 +1,62 @@
+package com.ruoyi.cmcc_gm.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ *
+ * 物资信息表
+ *
+ *
+ * @author jkj
+ * @since 2023-04-06
+ */
+@Data
+public class YwMaterialsInformDTO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+
+ /**
+ * 物资名称
+ */
+ private String materialName;
+
+ /**
+ * 物资编码
+ */
+ private String materialCode;
+
+
+ /**
+ * 规格
+ */
+ private String materialStand;
+
+ /**
+ * 单位
+ */
+ private String materialUnit;
+
+ /**
+ * 物资大类id
+ */
+ private String materialBigClass;
+
+ /**
+ * 物资小类id
+ */
+ private String materialSmallClass;
+
+ /**
+ * SN绑定
+ */
+ private String snBand;
+
+
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsOrderLogDTO.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsOrderLogDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..2faa51f39d9e93b4c276b8ab507965636f4e59fa
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsOrderLogDTO.java
@@ -0,0 +1,103 @@
+package com.ruoyi.cmcc_gm.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ *
+ * 物资工单日志表
+ *
+ *
+ * @author jkj
+ * @since 2023-04-07
+ */
+@Data
+public class YwMaterialsOrderLogDTO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 工单号
+ */
+ private String orderId;
+
+ /**
+ * 工单类型(更新中心库=1,申领=2,退库=3,工程出库=4,折旧入库=5,物资调拨=6)
+ */
+ private Integer orderType;
+
+ /**
+ * 工作流id
+ */
+ private String flwProcessid;
+
+ /**
+ * 申请人
+ */
+ private String applyName;
+
+ /**
+ * 审核人
+ */
+ private String checkName;
+
+ /**
+ * 入库人
+ */
+ private String inStoreName;
+
+ /**
+ * 任务状态
+ */
+ private String taskStatus;
+
+
+ /**
+ * 入库场馆
+ */
+ private Long inStoreVenue;
+
+ /**
+ * 出库场馆
+ */
+ private Long outStoreVenue;
+
+ /**
+ * 拆布线工单号
+ */
+ private String wireTaskId;
+
+
+ /**
+ * 上传文件路径
+ */
+ private String fileUrl;
+
+
+ /**
+ * 上传文件名称
+ */
+ private String fileName;
+
+ /**
+ * 申请人ID
+ */
+ private Long applyId;
+
+ /**
+ * 审核人ID
+ */
+ private Long checkId;
+
+ /**
+ * 入库人ID
+ */
+ private Long inStoreId;
+
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsSearchDTO.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsSearchDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..d27d5cc0b88d24ce6dee1e5e2345de749fa84706
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsSearchDTO.java
@@ -0,0 +1,74 @@
+package com.ruoyi.cmcc_gm.domain.dto;
+
+import lombok.Data;
+
+@Data
+public class YwMaterialsSearchDTO extends BaseDTO {
+
+
+ //工单号
+ private String orderId;
+
+ //工单类型
+ private Integer orderType;
+
+ //任务状态
+ private String taskStatus;
+
+ //查询日期
+ private String searchDate;
+
+ //查询某个仓库
+ private Long storeId;
+
+ //查询入库仓库
+ private Long inStoreId;
+
+ //查询出库仓库
+ private Long outStoreId;
+
+ //查询入库仓库
+ private Long [] inStoreIds;
+
+ //查询出库仓库
+ private Long [] outStoreIds;
+
+ //查询多个仓库
+ private Long [] storeIds;
+
+ private String flwId;
+
+ /**
+ * 物资编码
+ */
+ private String materialCode;
+
+ /**
+ * 物资名称
+ */
+ private String materialName;
+
+
+ /**
+ * 规格
+ */
+ private String materialStand;
+
+
+ /**
+ * 物资大类id
+ */
+ private String materialBigClass;
+
+
+ /**
+ * SN绑定
+ */
+ private String snCode;
+
+ /**
+ * 物资小类id
+ */
+ private String materialSmallClass;
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsSnListDTO.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsSnListDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..db0443b697e73e97686b2effc51e081f5f4f5a8b
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsSnListDTO.java
@@ -0,0 +1,32 @@
+package com.ruoyi.cmcc_gm.domain.dto;
+
+import com.ruoyi.cmcc_gm.domain.YwMaterialsBatch;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsSnList;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class YwMaterialsSnListDTO {
+
+ /**
+ * 工单号
+ */
+ private String orderId;
+
+ /**
+ * 物资编码
+ */
+ private String materialCode;
+
+ /**
+ * 操作类型
+ */
+ private Integer opType;
+
+
+ private List data;
+
+
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsStockImportDTO.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsStockImportDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..43664acca1734565cd40634bb5de33a7132e7bdf
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/dto/YwMaterialsStockImportDTO.java
@@ -0,0 +1,84 @@
+package com.ruoyi.cmcc_gm.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.importer.beans.ResultBean;
+import lombok.Data;
+
+/**
+ * @author los
+ */
+@Data
+public class YwMaterialsStockImportDTO extends ResultBean {
+
+ /**
+ * rowId
+ */
+ @TableField(exist = false)
+ private String rowId;
+
+ /**
+ * 物资编码
+ */
+ @Excel(name = "物资编号", sort = 2)
+ private String materialCode;
+
+ /**
+ * 专业
+ */
+ @TableField(exist = false)
+ private String special;
+
+ /**
+ * 物资大类id
+ */
+ @Excel(name = "大类", sort = 5)
+ private String materialBigClass;
+
+ /**
+ * 物资小类id
+ */
+ @Excel(name = "小类", sort = 6)
+ private String materialSmallClass;
+
+ /**
+ * 厂家
+ */
+ private String factory;
+
+ /**
+ * 物资名称
+ */
+ @Excel(name = "物资名称", sort = 3)
+ private String materialName;
+
+ /**
+ * 规格
+ */
+ @Excel(name = "规格型号", sort = 4)
+ private String materialStand;
+
+ /**
+ * 详情
+ */
+ @TableField(exist = false)
+ private String detail;
+
+ /**
+ * 单位
+ */
+ @Excel(name = "单位", sort = 7)
+ private String materialUnit;
+
+ /**
+ * SN绑定
+ */
+ private String snCode;
+
+ /**
+ * 物资数量
+ */
+ @Excel(name = "申请数量", sort = 8)
+ @TableField(exist = false)
+ private String availSum;
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/qo/YwMaterialsSnListQO.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/qo/YwMaterialsSnListQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..896a59fc188507ec5701e6297bdb8b965e3792a1
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/qo/YwMaterialsSnListQO.java
@@ -0,0 +1,26 @@
+package com.ruoyi.cmcc_gm.domain.qo;
+
+import com.ruoyi.cmcc_gm.domain.YwMaterialsSnList;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class YwMaterialsSnListQO {
+
+ /**
+ * 工单号
+ */
+ private String orderId;
+
+ /**
+ * 物资编码
+ */
+ private String materialCode;
+
+ /**
+ * 操作类型
+ */
+ private Integer opType;
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/MaterialsXlsToJsonArrayVo.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/MaterialsXlsToJsonArrayVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..c445c213bfc43b02952bb750577d833fa93f2858
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/MaterialsXlsToJsonArrayVo.java
@@ -0,0 +1,36 @@
+package com.ruoyi.cmcc_gm.domain.vo;
+
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.importer.beans.ResultBean;
+import lombok.Data;
+
+/**
+ * @author los
+ */
+@Data
+public class MaterialsXlsToJsonArrayVo extends ResultBean {
+ @Excel(name = "序号", sort = 1)
+ private String id;
+ @Excel(name = "物资名称", sort = 3)
+ private String materialName;
+ @Excel(name = "规格型号", sort = 4)
+ private String materialStand;
+ @Excel(name = "物资编号", sort = 2)
+ private String materialCode;
+ @Excel(name = "SN绑定", sort = 8)
+ private String snCode;
+ @Excel(name = "大类", sort = 6)
+ private String materialBigClass;
+ @Excel(name = "小类", sort = 7)
+ private String materialSmallClass;
+ @Excel(name = "可领数量", sort = 9)
+ private String availSum;
+ @Excel(name = "申请数量", sort = 10)
+ private String sum;
+ @Excel(name = "出库数量", sort = 10)
+ private String outSum;
+ @Excel(name = "入库数量", sort = 11)
+ private String inSum;
+ @Excel(name = "操作", sort = 12)
+ private String operation;
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsBatchVo.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsBatchVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..7930f4f1d6a9b3d19da47acf5f6a1ca373ba971c
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsBatchVo.java
@@ -0,0 +1,49 @@
+package com.ruoyi.cmcc_gm.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ *
+ * 物资批次表
+ *
+ *
+ * @author jkj
+ * @since 2023-04-10
+ */
+@Data
+public class YwMaterialsBatchVo extends YwMaterialsInformVo implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+
+ /**
+ * 工单号
+ */
+ private String orderid;
+
+ /**
+ * 可用数量
+ */
+ private Integer availSum;
+
+ /**
+ * 申领数量
+ */
+ private Integer sum;
+
+ /**
+ * 出库数量
+ */
+ private Integer outSum;
+
+ /**
+ * 出库数量
+ */
+ private Integer inSum;
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsClassesVo.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsClassesVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..60db76c08c29778ddc3cc2eda104cb31852dae0d
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsClassesVo.java
@@ -0,0 +1,35 @@
+package com.ruoyi.cmcc_gm.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ *
+ *
+ *
+ *
+ * @author jkj
+ * @since 2023-04-07
+ */
+@Data
+public class YwMaterialsClassesVo implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+
+ /**
+ * 物资大类
+ */
+ private String bigClass;
+
+ /**
+ * 物资小类
+ */
+ private String smallClass;
+
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsExportVo.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsExportVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..4bbb1b699dc60c01bc8167f5c20cee83c13b7e31
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsExportVo.java
@@ -0,0 +1,105 @@
+package com.ruoyi.cmcc_gm.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.ruoyi.common.annotation.Excel;
+import lombok.Data;
+
+/**
+ * @author los
+ */
+@Data
+public class YwMaterialsExportVo {
+ /**
+ * 物资库ID(场馆库对应venue_id,中心库对应一个特殊id比如0
+ */
+ private Long materialStoreId;
+ /**
+ * 仓库名称
+ */
+ @Excel(name = "仓库名称", type = Excel.Type.EXPORT, sort = 1)
+ private String materialStoreName;
+ /**
+ * 物资编码
+ */
+ @Excel(name = "物资编号", type = Excel.Type.EXPORT, sort = 2)
+ private String materialCode;
+ /**
+ * 可用数
+ */
+ @Excel(name = "可领取数", type = Excel.Type.EXPORT, sort = 10)
+ private Integer availSum;
+
+ /**
+ * 出库在途数
+ */
+ @Excel(name = "冻结数", type = Excel.Type.EXPORT, sort = 11)
+ private Integer outWaySum;
+
+ /**
+ * 入库在途数
+ */
+ @Excel(name = "在途数", type = Excel.Type.EXPORT, sort = 12)
+ private Integer inWaySum;
+ /**
+ * 物资名称
+ */
+ @Excel(name = "物资名称", type = Excel.Type.EXPORT, sort = 3)
+ private String materialName;
+ /**
+ * 规格
+ */
+ @Excel(name = "规格型号", type = Excel.Type.EXPORT, sort = 4)
+ private String materialStand;
+
+ /**
+ * 单位
+ */
+ @Excel(name = "单位", type = Excel.Type.EXPORT, sort = 8)
+ private String materialUnit;
+
+ /**
+ * SN绑定
+ */
+ @Excel(name = "SN绑定", type = Excel.Type.EXPORT, sort = 9)
+ private String snCode;
+
+ /**
+ * 库存数
+ */
+ @Excel(name = "库存数", type = Excel.Type.EXPORT, sort = 13)
+ @TableField(exist = false)
+ private Integer storeSum;
+
+
+ /**
+ * 中心库入库数量
+ */
+ @Excel(name = "中心库导入数", type = Excel.Type.EXPORT, sort = 14)
+ private Integer zxkInSum;
+
+ /**
+ * 申领数量
+ */
+ @Excel(name = "申领数", type = Excel.Type.EXPORT, sort = 15)
+ private Integer slSum;
+
+ /**
+ * 退库数量
+ */
+ @Excel(name = "退库数", type = Excel.Type.EXPORT, sort = 16)
+ private Integer tkSum;
+
+
+ /**
+ * 物资大类id
+ */
+ @Excel(name = "大类", type = Excel.Type.EXPORT, sort = 5)
+ private String materialBigClass;
+
+ /**
+ * 物资小类id
+ */
+ @Excel(name = "小类", type = Excel.Type.EXPORT, sort = 6)
+ private String materialSmallClass;
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsInformRedisVo.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsInformRedisVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..cb673010b7ce9eca0922a51f8e8e5ebf6d116c53
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsInformRedisVo.java
@@ -0,0 +1,53 @@
+package com.ruoyi.cmcc_gm.domain.vo;
+
+import com.ruoyi.common.annotation.Excel;
+import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ *
+ * 物资信息表
+ *
+ *
+ * @author jkj
+ * @since 2023-04-06
+ */
+@Data
+public class YwMaterialsInformRedisVo implements Serializable {
+
+ /**
+ * 物资编号
+ */
+ private String wzbh;
+
+ /**
+ * 物资名称
+ */
+ private String wzmc;
+
+ /**
+ * 规格
+ */
+ private String ggxh;
+
+ /**
+ * 物资单位
+ */
+ private String wzdw;
+
+ /**
+ * 物资大类id
+ */
+ private String dl;
+
+ /**
+ * 物资小类id
+ */
+ private String xl;
+
+
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsInformVo.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsInformVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..c938def7d4bae0435820d4f77a49d130805e98c6
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsInformVo.java
@@ -0,0 +1,74 @@
+package com.ruoyi.cmcc_gm.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.annotation.Excel;
+import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ *
+ * 物资信息表
+ *
+ *
+ * @author jkj
+ * @since 2023-04-06
+ */
+@Data
+public class YwMaterialsInformVo implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 序号
+ */
+ private Long id;
+
+ /**
+ * 物资名称
+ */
+ @Excel(name = "物资名称")
+ private String materialName;
+
+ /**
+ * 物资编码
+ */
+ private String materialCode;
+
+ /**
+ * 规格
+ */
+ @Excel(name = "规格")
+ private String materialStand;
+
+ /**
+ * 单位
+ */
+ @Excel(name = "单位")
+ private String materialUnit;
+
+ /**
+ * 物资大类id
+ */
+ @Excel(name = "物资大类")
+ private String materialBigClass;
+
+ /**
+ * 物资小类id
+ */
+ @Excel(name = "物资小类")
+ private String materialSmallClass;
+
+ /**
+ * SN绑定
+ */
+ @Excel(name = "SN绑定")
+ private String snCode;
+
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsOrderLogVo.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsOrderLogVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..eb522e151b96f539851464259ee3039fc74fa80e
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsOrderLogVo.java
@@ -0,0 +1,160 @@
+package com.ruoyi.cmcc_gm.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.ruoyi.common.annotation.Excel;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ *
+ * 物资工单日志表
+ *
+ *
+ * @author jkj
+ * @since 2023-04-07
+ */
+@Data
+public class YwMaterialsOrderLogVo implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 序号
+ */
+ @TableId(type = IdType.AUTO)
+ private Long id;
+
+ /**
+ * 工单号
+ */
+ @Excel(name = "工单号", type = Excel.Type.EXPORT)
+ private String orderId;
+
+ /**
+ * 入库场馆名称
+ */
+ @Excel(name = "场馆", type = Excel.Type.EXPORT)
+ private String inVenueName;
+
+ /**
+ * 出库场馆名称
+ */
+ @Excel(name = "场馆", type = Excel.Type.EXPORT)
+ private String outVenueName;
+
+ /**
+ * 出库场馆名称
+ */
+ @Excel(name = "调出库", type = Excel.Type.EXPORT)
+ private String outVenue2Name;
+
+ /**
+ * 入库场馆名称
+ */
+ @Excel(name = "调入库", type = Excel.Type.EXPORT)
+ private String inVenue2Name;
+
+ /**
+ * 拆布线工单号
+ */
+ @Excel(name = "布线项目号", type = Excel.Type.EXPORT)
+ private String wireTaskId;
+
+ /**
+ * 任务发起时间
+ */
+ @Excel(name = "申请时间", type = Excel.Type.EXPORT, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime taskStartTime;
+
+ /**
+ * 申请人
+ */
+ @Excel(name = "申请人", type = Excel.Type.EXPORT)
+ private String applyName;
+
+ /**
+ * 审核人
+ */
+ @Excel(name = "审核人", type = Excel.Type.EXPORT)
+ private String checkName;
+
+ /**
+ * 入库人
+ */
+ @Excel(name = "入库人", type = Excel.Type.EXPORT)
+ private String inStoreName;
+
+ /**
+ * 出库人
+ */
+ @Excel(name = "出库人", type = Excel.Type.EXPORT)
+ @TableField(exist = false)
+ private String outStoreName;
+
+ /**
+ * 任务状态
+ */
+ @Excel(name = "工单状态", type = Excel.Type.EXPORT)
+ private String taskStatus;
+
+ private String dealStatus;
+
+ /**
+ * 工单类型(更新中心库=1,申领=2,退库=3,工程出库=4,折旧入库=5,物资调拨=6)
+ */
+ private Integer orderType;
+ private String orderTypeName;
+
+ /**
+ * 工作流id
+ */
+ private String flwProcessid;
+
+ /**
+ * 工作流任务id
+ */
+ private String taskId;
+
+ /**
+ * 入库场馆
+ */
+ private Long inStoreVenue;
+
+ /**
+ * 出库场馆
+ */
+ private Long outStoreVenue;
+
+ /**
+ * 申请人ID
+ */
+ private Long applyId;
+
+ /**
+ * 审核人ID
+ */
+ private Long checkId;
+
+ /**
+ * 入库人ID
+ */
+ private Long inStoreId;
+
+ /**
+ * 上传文件路径
+ */
+ private String fileUrl;
+
+ /**
+ * 上传文件名称
+ */
+ private String fileName;
+
+
+ private Integer materialNum;
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsSnListVo.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsSnListVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..bcde038922e9f2e60b7074af4216aaf37b9c4ea5
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsSnListVo.java
@@ -0,0 +1,31 @@
+package com.ruoyi.cmcc_gm.domain.vo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ *
+ * 物资编码串码对应表
+ *
+ *
+ * @author jkj
+ * @since 2023-04-10
+ */
+@Data
+public class YwMaterialsSnListVo extends YwMaterialsInformVo implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+
+ /**
+ * 工单号
+ */
+ private String orderid;
+
+ /**
+ * 串码
+ */
+ private String materialStrCode;
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsVo.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..776b5e7f42d4363c89495c78b01c0199bc8028f0
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/domain/vo/YwMaterialsVo.java
@@ -0,0 +1,68 @@
+package com.ruoyi.cmcc_gm.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ *
+ * 物资库存表
+ *
+ *
+ * @author jkj
+ * @since 2023-04-06
+ */
+
+@Data
+public class YwMaterialsVo extends YwMaterialsInformVo implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 物资库ID(场馆库对应venue_id,中心库对应一个特殊id比如0
+ */
+ private Long materialStoreId;
+
+ /**
+ * 仓库名称
+ */
+ private String materialStoreName;
+
+ /**
+ * 可用数
+ */
+ private Integer availSum;
+
+ /**
+ * 出库在途数
+ */
+ private Integer outWaySum;
+
+ /**
+ * 入库在途数
+ */
+ private Integer inWaySum;
+
+ /**
+ * 出入库统计数
+ */
+ private Integer statisSum;
+
+ /**
+ * 中心库入库数量
+ */
+ private Integer zxkInSum;
+
+ /**
+ * 申领数量
+ */
+ private Integer slSum;
+
+ /**
+ * 退库数量
+ */
+ private Integer tkSum;
+
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/importer/ImporterMaterialsBatch.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/importer/ImporterMaterialsBatch.java
new file mode 100644
index 0000000000000000000000000000000000000000..62d43d322148e8c36ae4a0b4711fde9f99e3b124
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/importer/ImporterMaterialsBatch.java
@@ -0,0 +1,133 @@
+package com.ruoyi.cmcc_gm.importer;
+
+import com.ruoyi.cmcc_gm.domain.YwMaterialsBatch;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsInform;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsBatchMapper;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsInformMapper;
+import com.ruoyi.common.importer.ImporterBase;
+import com.ruoyi.common.importer.beans.CellFormatBean;
+import com.ruoyi.common.importer.service.YwBatchAddService;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.util.CollectionUtils;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@Slf4j
+@RequiredArgsConstructor
+public class ImporterMaterialsBatch extends ImporterBase implements YwBatchAddService {
+
+ private final YwMaterialsBatchMapper ywMaterialsBatchMapper;
+
+ private final YwMaterialsInformMapper ywMaterialsInformMapper;
+
+ private String materialCode;
+ private String materialName;
+ private String materialStand;
+
+ {
+ cellFormatBeans.add(new CellFormatBean("物资编号", "materialCode", "false", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("物资名称", "materialName", "false", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("规格型号", "materialStand", "false", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("大类", "materialBigClass", "", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("小类", "materialSmallClass", "", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("单位", "materialUnit", "", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("SN绑定", "snCode", "", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("数量", "sum", "false", "", "true", "nonNegative", "", "", "", ""));
+ }
+
+ /**
+ * 表尾核查
+ *
+ * @param s 数据
+ * @param cellFormatBean 校验格式
+ * @param reasonSh 失败原因
+ * @param sceneBigId 大场景id
+ * @param importType 导入类型
+ * @param args 可选参数
+ * @throws Exception 异常
+ */
+ @Override
+ protected void checkAtLastEnd(String s, CellFormatBean cellFormatBean, StringBuilder reasonSh, Long sceneBigId, String importType, Object[] args) throws Exception {
+
+ }
+
+ /**
+ * 行末核查
+ *
+ * @param s 数据
+ * @param cellFormatBean 校验格式
+ * @param reasonL 失败原因
+ * @param sceneBigId 大场景id
+ * @param importType 导入类型
+ * @param args 可选参数
+ * @param i
+ * @throws Exception 异常
+ */
+ @Override
+ protected void checkAtRowEnd(String s, CellFormatBean cellFormatBean, StringBuilder reasonL, Long sceneBigId, String importType, Object[] args, int i) throws Exception {
+ List ywMaterialsInforms = ywMaterialsInformMapper.selectByMaterialNameAndMaterialStandAndMaterialCode(materialName, materialStand, materialCode);
+ if (CollectionUtils.isEmpty(ywMaterialsInforms)) {
+ reasonL.append("物资编号&物资名称&规格型号不存在于物资配置表。");
+ }
+ }
+
+ /**
+ * 子类核查
+ *
+ * @param s 数据
+ * @param format 校验格式
+ * @param reasonS 失败原因
+ * @param sceneBigId 大场景id
+ * @param importType 导入类型
+ * @param args 可选参数
+ * @param i
+ * @param j
+ * @throws Exception 异常
+ */
+ @Override
+ protected void specialCheck(String s, CellFormatBean format, StringBuilder reasonS, Long sceneBigId, String importType, Object[] args, int i, int j) throws Exception {
+ if ("materialCode".equals(format.getColumnEn())) {
+ materialCode = s;
+ } else if ("materialName".equals(format.getColumnEn())) {
+ materialName = s;
+ } else if ("materialStand".equals(format.getColumnEn())) {
+ materialStand = s;
+ }
+ }
+
+ /**
+ * 数据更新
+ *
+ * @param datas 数据
+ * @param sceneBigId 大场景id
+ * @param importType 导入类型
+ * @param args 可选参数
+ * @throws Exception 异常
+ */
+ @Override
+ protected void insertDataToDB(List datas, Long sceneBigId, String importType, Object[] args) throws Exception {
+ //导入
+ List ywMaterialsBatchList = new ArrayList<>();
+ for (YwMaterialsInform ywMaterialsInform : datas) {
+ YwMaterialsBatch ywMaterialsBatch = new YwMaterialsBatch();
+ ywMaterialsBatch.setMaterialCode(ywMaterialsInform.getMaterialCode());
+ ywMaterialsBatch.setOrderid((String) args[0]);
+ ywMaterialsBatch.setSum(Integer.parseInt(ywMaterialsInform.getSum()));
+ ywMaterialsBatchList.add(ywMaterialsBatch);
+ }
+ ywMaterialsBatchMapper.deleteByOrderid((String) args[0]);
+ add(ywMaterialsBatchList);
+ }
+
+ /**
+ * 实现类提供具体插入方法
+ *
+ * @param collect
+ */
+ @Override
+ public void insertB(List collect) {
+ ywMaterialsBatchMapper.insertBatch(collect);
+ }
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/importer/ImporterMaterialsInform.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/importer/ImporterMaterialsInform.java
new file mode 100644
index 0000000000000000000000000000000000000000..364f3fbaafd1497978e31f609e616bab62b2c306
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/importer/ImporterMaterialsInform.java
@@ -0,0 +1,174 @@
+package com.ruoyi.cmcc_gm.importer;
+
+import com.ruoyi.cmcc_gm.domain.YwMaterialsClasses;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsInform;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsSearchDTO;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsInformVo;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsClassesMapper;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsInformMapper;
+import com.ruoyi.common.importer.ImporterBase;
+import com.ruoyi.common.importer.beans.CellFormatBean;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@RequiredArgsConstructor
+@Slf4j
+public class ImporterMaterialsInform extends ImporterBase {
+
+ private final YwMaterialsClassesMapper ywMaterialsClassesMapper;
+
+ private final YwMaterialsInformMapper ywMaterialsInformMapper;
+
+ private String bigClass;
+ private String smallClass;
+
+ private String materialCode;
+
+ private List> materialCodeList = new ArrayList<>();
+
+ private String materialName;
+
+ private String materialStand;
+
+ {
+ cellFormatBeans.add(new CellFormatBean("物资编号", "materialCode", "false", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("物资名称", "materialName", "false", "", "", "", "", "", "true"));
+ cellFormatBeans.add(new CellFormatBean("规格型号", "materialStand", "false", "", "", "", "", "", "true"));
+ cellFormatBeans.add(new CellFormatBean("大类", "materialBigClass", "false", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("小类", "materialSmallClass", "false", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("单位", "materialUnit", "", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("SN绑定", "snCode", "", "", "", "", "", "是,否", ""));
+
+ this.setHiddenResultColumns(new String[]{"sum"});
+ }
+
+ /**
+ * 表尾核查
+ *
+ * @param s 数据
+ * @param cellFormatBean 校验格式
+ * @param reasonSh 失败原因
+ * @param sceneBigId 大场景id
+ * @param importType 导入类型
+ * @param args 可选参数
+ * @throws Exception 异常
+ */
+ @Override
+ protected void checkAtLastEnd(String s, CellFormatBean cellFormatBean, StringBuilder reasonSh, Long sceneBigId, String importType, Object[] args) throws Exception {
+
+ }
+
+ /**
+ * 行末核查
+ *
+ * @param s 数据
+ * @param cellFormatBean 校验格式
+ * @param reasonL 失败原因
+ * @param sceneBigId 大场景id
+ * @param importType 导入类型
+ * @param args 可选参数
+ * @param i
+ * @throws Exception 异常
+ */
+ @Override
+ protected void checkAtRowEnd(String s, CellFormatBean cellFormatBean, StringBuilder reasonL, Long sceneBigId, String importType, Object[] args, int i) throws Exception {
+ if (isNotEmpty(bigClass) && isNotEmpty(smallClass)) {
+ List list = ywMaterialsClassesMapper.selectByBigClassAndSmallClass(bigClass, smallClass);
+ if (CollectionUtils.isEmpty(list)) {
+ reasonL.append("大类+小类的组合不在类型配置表中。");
+ }
+ }
+ for (Map stringObjectMap : materialCodeList) {
+ if (materialCode.equals(stringObjectMap.get("materialCode")) && i != (Integer) stringObjectMap.get("row")) {
+ reasonL.append("物资编号重复。");
+ }
+ }
+ if (isNotEmpty(materialName) && isNotEmpty(materialStand)) {
+ List ywMaterialsInforms = ywMaterialsInformMapper.selectByMaterialNameAndMaterialStand(materialName, materialStand);
+ if (!CollectionUtils.isEmpty(ywMaterialsInforms)) {
+ if (ywMaterialsInforms.size() > 1) {
+ reasonL.append("物资名称和规格型号已存在物资配置表中。");
+ } else {
+ YwMaterialsInform ywMaterialsInform = ywMaterialsInforms.get(0);
+ if (!materialCode.equals(ywMaterialsInform.getMaterialCode())) {
+ reasonL.append("物资名称和规格型号已存在物资配置表中。");
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * 子类核查
+ *
+ * @param s 数据
+ * @param format 校验格式
+ * @param reasonS 失败原因
+ * @param sceneBigId 大场景id
+ * @param importType 导入类型
+ * @param args 可选参数
+ * @param i
+ * @param j
+ * @throws Exception 异常
+ */
+ @Override
+ protected void specialCheck(String s, CellFormatBean format, StringBuilder reasonS, Long sceneBigId, String importType, Object[] args, int i, int j) throws Exception {
+ if ("materialBigClass".equals(format.getColumnEn())) {
+ bigClass = s;
+ } else if ("materialSmallClass".equals(format.getColumnEn())) {
+ smallClass = s;
+ } else if ("materialName".equals(format.getColumnEn())) {
+ materialName = s;
+ } else if ("materialStand".equals(format.getColumnEn())) {
+ materialStand = s;
+ } else if ("materialCode".equals(format.getColumnEn())) {
+ materialCode = s;
+ Map map = new HashMap<>();
+ map.put("row", i);
+ map.put("materialCode", materialCode);
+ materialCodeList.add(map);
+ }
+ }
+
+ /**
+ * 数据更新
+ *
+ * @param datas 数据
+ * @param sceneBigId 大场景id
+ * @param importType 导入类型
+ * @param args 可选参数
+ * @throws Exception 异常
+ */
+ @Override
+ @Transactional
+ protected void insertDataToDB(List datas, Long sceneBigId, String importType, Object[] args) throws Exception {
+
+
+ if(args.length>0)
+ {
+ if((boolean)args[0]==true)
+ {
+ ywMaterialsInformMapper.deleteNotExistsStock();
+ }
+ }
+
+ for (YwMaterialsInform data : datas) {
+ YwMaterialsSearchDTO ywMaterialsSearchDTO = new YwMaterialsSearchDTO();
+ ywMaterialsSearchDTO.setMaterialCode(data.getMaterialCode());
+ List ywMaterialsInformVos = ywMaterialsInformMapper.selectMaterialsInfo(ywMaterialsSearchDTO);
+ if (CollectionUtils.isEmpty(ywMaterialsInformVos)) {
+ ywMaterialsInformMapper.insert(data);
+ } else {
+ data.setId(ywMaterialsInformVos.get(0).getId());
+ ywMaterialsInformMapper.updateById(data);
+ }
+ }
+ }
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/importer/ImporterMaterialsReturnList.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/importer/ImporterMaterialsReturnList.java
new file mode 100644
index 0000000000000000000000000000000000000000..963e3f4745b33ab5cabd3f4b4eb317adf91542f4
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/importer/ImporterMaterialsReturnList.java
@@ -0,0 +1,158 @@
+package com.ruoyi.cmcc_gm.importer;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsClasses;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsInform;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsStock;
+import com.ruoyi.cmcc_gm.domain.vo.MaterialsXlsToJsonArrayVo;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsClassesMapper;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsInformMapper;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsStockMapper;
+import com.ruoyi.common.importer.ImporterBase;
+import com.ruoyi.common.importer.beans.CellFormatBean;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+@Slf4j
+@RequiredArgsConstructor
+public class ImporterMaterialsReturnList extends ImporterBase {
+
+ private final YwMaterialsClassesMapper ywMaterialsClassesMapper;
+ private final YwMaterialsStockMapper ywMaterialsStockMapper;
+ private final YwMaterialsInformMapper ywMaterialsInformMapper;
+
+ private String bigClass;
+ private String smallClass;
+
+ private String materialCode;
+ private String materialName;
+ private String materialStand;
+
+ private String sum;
+
+ {
+ setHiddenResultColumns(new String[]{"id", "availSum", "outSum", "inSum", "operation"});
+ cellFormatBeans.add(new CellFormatBean("物资编号", "materialCode", "false", "", "", "", "", "", "true"));
+ cellFormatBeans.add(new CellFormatBean("物资名称", "materialName", "false", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("规格型号", "materialStand", "false", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("大类", "materialBigClass", "false", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("小类", "materialSmallClass", "false", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("SN绑定", "snCode", "false", "", "", "", "", "是,否", ""));
+ cellFormatBeans.add(new CellFormatBean("申请数量", "sum", "false", "", "true", "nonNegative", "", "", "", ""));
+ }
+
+ /**
+ * 表尾核查
+ *
+ * @param s 数据
+ * @param cellFormatBean 校验格式
+ * @param reasonSh 失败原因
+ * @param sceneBigId 大场景id
+ * @param importType 导入类型
+ * @param args 可选参数
+ * @throws Exception 异常
+ */
+ @Override
+ protected void checkAtLastEnd(String s, CellFormatBean cellFormatBean, StringBuilder reasonSh, Long sceneBigId, String importType, Object[] args) throws Exception {
+
+ }
+
+ /**
+ * 行末核查
+ *
+ * @param s 数据
+ * @param cellFormatBean 校验格式
+ * @param reasonL 失败原因
+ * @param sceneBigId 大场景id
+ * @param importType 导入类型
+ * @param args 可选参数
+ * @param i
+ * @throws Exception 异常
+ */
+ @Override
+ protected void checkAtRowEnd(String s, CellFormatBean cellFormatBean, StringBuilder reasonL, Long sceneBigId, String importType, Object[] args, int i) throws Exception {
+ if (isNotEmpty(bigClass) && isNotEmpty(smallClass)) {
+ List list = ywMaterialsClassesMapper.selectByBigClassAndSmallClass(bigClass, smallClass);
+ if (CollectionUtils.isEmpty(list)) {
+ reasonL.append("大类+小类的组合不在类型配置表中。");
+ }
+ }
+ if (isNotEmpty(sum) && isNotEmpty(materialCode)) {
+ String name;
+ Long materialId = (Long) args[0];
+ // 物资折旧入库不需要判断物资是否存在和库存数
+ if (materialId != -1L) {
+ if (materialId == 0L) {
+ name = "中心库";
+ } else {
+ name = "场馆库";
+ }
+ LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
+ wrapper.eq(YwMaterialsStock::getMaterialStoreId, materialId).eq(YwMaterialsStock::getMaterialCode, materialCode);
+ List list = ywMaterialsStockMapper.selectList(wrapper);
+ if (CollectionUtils.isEmpty(list)) {
+ reasonL.append(name).append("中不存在该物资。");
+ } else {
+ wrapper.ge(YwMaterialsStock::getAvailSum, Integer.parseInt(sum));
+ List list1 = ywMaterialsStockMapper.selectList(wrapper);
+ if (CollectionUtils.isEmpty(list1)) {
+ reasonL.append(name).append("中该物资库存数量不足。");
+ }
+ }
+ }
+ }
+ if (isNotEmpty(materialName) && isNotEmpty(materialStand) && isNotEmpty(materialCode)) {
+ List ywMaterialsInforms = ywMaterialsInformMapper.selectByMaterialNameAndMaterialStandAndMaterialCode(materialName, materialStand, materialCode);
+ if (CollectionUtils.isEmpty(ywMaterialsInforms)) {
+ reasonL.append("物资编号+物资名称+规格型号不存在于物资配置表。");
+ }
+ }
+ }
+
+ /**
+ * 子类核查
+ *
+ * @param s 数据
+ * @param format 校验格式
+ * @param reasonS 失败原因
+ * @param sceneBigId 大场景id
+ * @param importType 导入类型
+ * @param args 可选参数
+ * @param i
+ * @param j
+ * @throws Exception 异常
+ */
+ @Override
+ protected void specialCheck(String s, CellFormatBean format, StringBuilder reasonS, Long sceneBigId, String importType, Object[] args, int i, int j) throws Exception {
+ if ("materialBigClass".equals(format.getColumnEn())) {
+ bigClass = s;
+ } else if ("materialSmallClass".equals(format.getColumnEn())) {
+ smallClass = s;
+ } else if ("materialCode".equals(format.getColumnEn())) {
+ materialCode = s;
+ } else if ("sum".equals(format.getColumnEn())) {
+ sum = s;
+ } else if ("materialName".equals(format.getColumnEn())) {
+ materialName = s;
+ } else if ("materialStand".equals(format.getColumnEn())) {
+ materialStand = s;
+ }
+ }
+
+ /**
+ * 数据更新
+ *
+ * @param datas 数据
+ * @param sceneBigId 大场景id
+ * @param importType 导入类型
+ * @param args 可选参数
+ * @throws Exception 异常
+ */
+ @Override
+ protected void insertDataToDB(List datas, Long sceneBigId, String importType, Object[] args) throws Exception {
+
+ }
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/importer/ImporterMaterialsStock.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/importer/ImporterMaterialsStock.java
new file mode 100644
index 0000000000000000000000000000000000000000..530eaf4954dcbacbcb8c684062be3390432f1967
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/importer/ImporterMaterialsStock.java
@@ -0,0 +1,187 @@
+package com.ruoyi.cmcc_gm.importer;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsClasses;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsInform;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsStock;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsStockImportDTO;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsClassesMapper;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsInformMapper;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsStockMapper;
+import com.ruoyi.common.importer.ImporterBase;
+import com.ruoyi.common.importer.beans.CellFormatBean;
+import com.ruoyi.common.importer.service.YwBatchAddService;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.util.CollectionUtils;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@Slf4j
+@RequiredArgsConstructor
+public class ImporterMaterialsStock extends ImporterBase implements YwBatchAddService {
+
+ private final YwMaterialsStockMapper ywMaterialsStockMapper;
+
+ private final YwMaterialsClassesMapper ywMaterialsClassesMapper;
+
+ private final YwMaterialsInformMapper ywMaterialsInformMapper;
+
+ private String bigClass;
+ private String smallClass;
+ private String materialCode;
+ private String materialName;
+ private String materialStand;
+
+ {
+ cellFormatBeans.add(new CellFormatBean("物资编号", "materialCode", "false", "", "", "", "", "", "true"));
+ cellFormatBeans.add(new CellFormatBean("物资名称", "materialName", "false", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("规格型号", "materialStand", "false", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("大类", "materialBigClass", "false", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("小类", "materialSmallClass", "false", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("单位", "materialUnit", "false", "", "", "", "", "", ""));
+ cellFormatBeans.add(new CellFormatBean("数量", "availSum", "false", "", "true", "nonNegative", "", "", "", ""));
+ }
+
+ /**
+ * 表尾核查
+ *
+ * @param s 数据
+ * @param cellFormatBean 校验格式
+ * @param reasonSh 失败原因
+ * @param sceneBigId 大场景id
+ * @param importType 导入类型
+ * @param args 可选参数
+ * @throws Exception 异常
+ */
+ @Override
+ protected void checkAtLastEnd(String s, CellFormatBean cellFormatBean, StringBuilder reasonSh, Long sceneBigId, String importType, Object[] args) throws Exception {
+
+ }
+
+ /**
+ * 行末核查
+ *
+ * @param s 数据
+ * @param cellFormatBean 校验格式
+ * @param reasonL 失败原因
+ * @param sceneBigId 大场景id
+ * @param importType 导入类型
+ * @param args 可选参数
+ * @param i
+ * @throws Exception 异常
+ */
+ @Override
+ protected void checkAtRowEnd(String s, CellFormatBean cellFormatBean, StringBuilder reasonL, Long sceneBigId, String importType, Object[] args, int i) throws Exception {
+ if (isNotEmpty(bigClass) && isNotEmpty(smallClass)) {
+ List list = ywMaterialsClassesMapper.selectByBigClassAndSmallClass(bigClass, smallClass);
+ if (CollectionUtils.isEmpty(list)) {
+ reasonL.append("大类+小类的组合不在类型配置表中。");
+ }
+ }
+ if (isNotEmpty(materialCode) && isNotEmpty(materialName) && isNotEmpty(materialStand)) {
+ List ywMaterialsInforms = ywMaterialsInformMapper.selectByMaterialNameAndMaterialStandAndMaterialCode(materialName, materialStand, materialCode);
+ if (CollectionUtils.isEmpty(ywMaterialsInforms)) {
+ reasonL.append("物资编号+物资名称+规格型号的组合不在物资配置表中。");
+ }
+ }
+ }
+
+ /**
+ * 子类核查
+ *
+ * @param s 数据
+ * @param format 校验格式
+ * @param reasonS 失败原因
+ * @param sceneBigId 大场景id
+ * @param importType 导入类型
+ * @param args 可选参数
+ * @param i
+ * @param j
+ * @throws Exception 异常
+ */
+ @Override
+ protected void specialCheck(String s, CellFormatBean format, StringBuilder reasonS, Long sceneBigId, String importType, Object[] args, int i, int j) throws Exception {
+ if ("materialBigClass".equals(format.getColumnEn())) {
+ bigClass = s;
+ } else if ("materialSmallClass".equals(format.getColumnEn())) {
+ smallClass = s;
+ } else if ("materialCode".equals(format.getColumnEn())) {
+ materialCode = s;
+ } else if ("materialName".equals(format.getColumnEn())) {
+ materialName = s;
+ } else if ("materialStand".equals(format.getColumnEn())) {
+ materialStand = s;
+ }
+ }
+
+ /**
+ * 数据更新
+ *
+ * @param datas 数据
+ * @param sceneBigId 大场景id
+ * @param importType 导入类型
+ * @param args 可选参数
+ * @throws Exception 异常
+ */
+ @Override
+ protected void insertDataToDB(List datas, Long sceneBigId, String importType, Object[] args) throws Exception {
+ if ("0".equals(importType)) {
+ ywMaterialsStockMapper.deleteByMaterialStoreId((Long) args[0]);
+ List list = new ArrayList<>();
+ for (YwMaterialsStockImportDTO data : datas) {
+ YwMaterialsStock ywMaterialsStock = new YwMaterialsStock();
+ ywMaterialsStock.setMaterialCode(data.getMaterialCode());
+ ywMaterialsStock.setMaterialStoreId((Long) args[0]);
+ ywMaterialsStock.setAvailSum(Integer.parseInt(data.getAvailSum()));
+ ywMaterialsStock.setInWaySum(0);
+ ywMaterialsStock.setOutWaySum(0);
+ ywMaterialsStock.setSceneBigId(sceneBigId);
+ list.add(ywMaterialsStock);
+ }
+ add(list);
+ } else if ("1".equals(importType)) {
+ for (YwMaterialsStockImportDTO data : datas) {
+ // 1 新增 2 修改
+ Integer opType;
+ Integer availSumOld = null;
+ LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>();
+ queryWrapper.eq(YwMaterialsStock::getMaterialCode, data.getMaterialCode()).eq(YwMaterialsStock::getMaterialStoreId, args[0]);
+ YwMaterialsStock ywMaterialsStock = ywMaterialsStockMapper.selectOne(queryWrapper);
+ if (ObjectUtils.isNotEmpty(ywMaterialsStock)) {
+ availSumOld = ywMaterialsStock.getAvailSum();
+ opType = 2;
+ } else {
+ opType = 1;
+ }
+ YwMaterialsStock y = new YwMaterialsStock();
+ if (opType == 1) {
+ y.setMaterialCode(data.getMaterialCode());
+ y.setMaterialStoreId((Long) args[0]);
+ y.setAvailSum(Integer.parseInt(data.getAvailSum()));
+ y.setInWaySum(0);
+ y.setOutWaySum(0);
+ y.setSceneBigId(sceneBigId);
+ ywMaterialsStockMapper.insert(y);
+ } else if (opType == 2) {
+ y.setAvailSum(Integer.parseInt(data.getAvailSum()) + availSumOld);
+ LambdaQueryWrapper queryWrapper1 = new LambdaQueryWrapper<>();
+ queryWrapper1.eq(YwMaterialsStock::getMaterialStoreId, args[0]).eq(YwMaterialsStock::getMaterialCode, data.getMaterialCode());
+ ywMaterialsStockMapper.update(y, queryWrapper1);
+ }
+ }
+ }
+ }
+
+ /**
+ * 实现类提供具体插入方法
+ *
+ * @param collect
+ */
+ @Override
+ public void insertB(List collect) {
+ ywMaterialsStockMapper.insertBatch(collect);
+ }
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsBatchMapper.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsBatchMapper.java
new file mode 100644
index 0000000000000000000000000000000000000000..39f5b3da1295cacd9d2b398179b4118fa6ccd3f1
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsBatchMapper.java
@@ -0,0 +1,34 @@
+package com.ruoyi.cmcc_gm.mapper;
+
+import com.ruoyi.cmcc_gm.domain.YwMaterialsBatch;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsBatchVo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ *
+ * 物资批次表 Mapper 接口
+ *
+ *
+ * @author jkj
+ * @since 2023-04-10
+ */
+public interface YwMaterialsBatchMapper extends BaseMapper {
+
+ /**
+ * 批量新增数据(MyBatis原生foreach方法)
+ *
+ * @param entities List 实例对象列表
+ * @return 影响行数
+ */
+ int insertBatch(@Param("entities") List entities);
+
+ int updateBatch(@Param("orderId") String orderId,@Param("entities") List entities);
+
+ List selectBatch(@Param("orderid") String orderid);
+
+ int deleteByOrderid(@Param("orderid") String orderid);
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsClassesMapper.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsClassesMapper.java
new file mode 100644
index 0000000000000000000000000000000000000000..3d0ed2b55ce5df185f73215b8cd5ab62e2e82ed7
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsClassesMapper.java
@@ -0,0 +1,31 @@
+package com.ruoyi.cmcc_gm.mapper;
+import org.apache.ibatis.annotations.Param;
+
+import com.ruoyi.cmcc_gm.domain.YwMaterialsClasses;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsClassesVo;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsVo;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ *
+ * Mapper 接口
+ *
+ *
+ * @author jkj
+ * @since 2023-04-07
+ */
+@Mapper
+public interface YwMaterialsClassesMapper extends BaseMapper {
+
+ List selectMaterialClass();
+
+ List selectByBigClassAndSmallClass(@Param("bigClass") String bigClass, @Param("smallClass") String smallClass);
+
+ List listAllByBigClassAndSmallClass(@Param("bigClass") String bigClass, @Param("smallClass") String smallClass);
+
+ public void cleanMaterialClass();
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsInformMapper.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsInformMapper.java
new file mode 100644
index 0000000000000000000000000000000000000000..4fac2680d0485b2be312f147907844aa77ee4f12
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsInformMapper.java
@@ -0,0 +1,37 @@
+package com.ruoyi.cmcc_gm.mapper;
+import java.util.Collection;
+
+import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsInform;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsSearchDTO;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsInformVo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ *
+ * 物资信息表 Mapper 接口
+ *
+ *
+ * @author jkj
+ * @since 2023-04-06
+ */
+public interface YwMaterialsInformMapper extends BaseMapper {
+
+ List selectByMaterialNameAndMaterialStand(@Param("materialName") String materialName, @Param("materialStand") String materialStand);
+
+ List selectByMaterialNameAndMaterialStandAndMaterialCode(@Param("materialName") String materialName, @Param("materialStand") String materialStand, @Param("materialCode") String materialCode);
+
+ List selectMaterialsInfo(YwMaterialsSearchDTO ywMaterialsSearchDTO);
+
+ @InterceptorIgnore(blockAttack = "true")
+ int delete();
+
+ int insertBatch(@Param("ywMaterialsInformCollection") Collection ywMaterialsInformCollection);
+
+ List listAll(YwMaterialsSearchDTO ywMaterialsSearchDTO);
+
+ int deleteNotExistsStock();
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsOrderLogMapper.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsOrderLogMapper.java
new file mode 100644
index 0000000000000000000000000000000000000000..85543b583d677c8aa4a18308a975fccd0ed33ed8
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsOrderLogMapper.java
@@ -0,0 +1,30 @@
+package com.ruoyi.cmcc_gm.mapper;
+
+import com.ruoyi.cmcc_gm.domain.YwMaterialsOrderLog;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsSearchDTO;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsOrderLogVo;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ *
+ * 物资工单日志表 Mapper 接口
+ *
+ *
+ * @author jkj
+ * @since 2023-04-07
+ */
+
+public interface YwMaterialsOrderLogMapper extends BaseMapper {
+
+ List selectMaterialsOrderLog(YwMaterialsSearchDTO ywMaterialsSearchDTO);
+
+ List selectOrderMaterialsNumLog(@Param("materialStoreId") Long storeId,@Param("materialCode") String materialCode);
+
+
+ Long selectCheckUserIdByFlwId(@Param("flwId") String flwId);
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsSnListMapper.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsSnListMapper.java
new file mode 100644
index 0000000000000000000000000000000000000000..b2b96d54528a3b22a958753bc507f6882b1a0d46
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsSnListMapper.java
@@ -0,0 +1,32 @@
+package com.ruoyi.cmcc_gm.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsBatch;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsSnList;
+import com.ruoyi.cmcc_gm.domain.qo.YwMaterialsSnListQO;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsBatchVo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ *
+ * 物资批次表 Mapper 接口
+ *
+ *
+ * @author jkj
+ * @since 2023-04-10
+ */
+public interface YwMaterialsSnListMapper extends BaseMapper {
+
+ /**
+ * 批量新增数据(MyBatis原生foreach方法)
+ *
+ * @param entities List 实例对象列表
+ * @return 影响行数
+ */
+ int insertSnList(@Param("entities") List entities);
+
+ List selectSnList(YwMaterialsSnListQO ywMaterialsSnListQO);
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsStockMapper.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsStockMapper.java
new file mode 100644
index 0000000000000000000000000000000000000000..904a128b040d77cf068415db100be8c722a866d4
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/mapper/YwMaterialsStockMapper.java
@@ -0,0 +1,44 @@
+package com.ruoyi.cmcc_gm.mapper;
+import org.apache.ibatis.annotations.Param;
+import java.util.Collection;
+
+import com.ruoyi.cmcc_gm.domain.YwMaterialsStock;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsSearchDTO;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsVo;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ *
+ * 物资库存表 Mapper 接口
+ *
+ *
+ * @author jkj
+ * @since 2023-04-06
+ */
+@Mapper
+public interface YwMaterialsStockMapper extends BaseMapper {
+
+
+ public List getYwMaterial(YwMaterialsSearchDTO ywMaterialsSearchDTO);
+
+ /**
+ * 批量插入
+ *
+ * @param ywMaterialsStockCollection
+ * @return
+ */
+ int insertBatch(@Param("ywMaterialsStockCollection") Collection ywMaterialsStockCollection);
+
+ /**
+ * 根据大场景id和materialStoreId删除
+ *
+ * @param materialStoreId
+ * @return
+ */
+ int deleteByMaterialStoreId(@Param("materialStoreId") Long materialStoreId);
+
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/GMCommonService.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/GMCommonService.java
new file mode 100644
index 0000000000000000000000000000000000000000..e5a4097d2bfc6efd5c7710ce5034d974d8597fe6
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/GMCommonService.java
@@ -0,0 +1,7 @@
+package com.ruoyi.cmcc_gm.service;
+
+public interface GMCommonService {
+
+ String getJobNo(String type);
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsBatchService.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsBatchService.java
new file mode 100644
index 0000000000000000000000000000000000000000..fa77cf443fd2a0074c6b4c04f8c91a5d24a1f801
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsBatchService.java
@@ -0,0 +1,33 @@
+package com.ruoyi.cmcc_gm.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsBatch;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsInform;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsBatchDTO;
+import com.ruoyi.common.core.domain.AjaxResult;
+
+import java.io.File;
+import java.util.List;
+
+/**
+ * 物资批次表(YwMaterialsBatch)表服务接口
+ *
+ * @author makejava
+ * @since 2023-04-10 15:39:19
+ */
+public interface YwMaterialsBatchService extends IService {
+
+ AjaxResult importExcel(String orderId, List y, File file) throws Exception;
+
+ Boolean deleteBatch(YwMaterialsBatchDTO ywMaterialsBatchDTO);
+
+ Boolean deleteBatchALL(YwMaterialsBatchDTO ywMaterialsBatchDTO);
+
+ Boolean insertBatch(YwMaterialsBatchDTO ywMaterialsBatchDTO);
+
+ Boolean updateBatch(YwMaterialsBatch ywMaterialsBatch);
+
+ Boolean updateBatchInner(YwMaterialsBatch ywMaterialsBatch);
+
+}
+
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsClassesService.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsClassesService.java
new file mode 100644
index 0000000000000000000000000000000000000000..fd08610debf956b75682266be3a71c0e9a12f93a
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsClassesService.java
@@ -0,0 +1,38 @@
+package com.ruoyi.cmcc_gm.service;
+
+import com.ruoyi.cmcc_gm.domain.YwMaterialsClasses;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.cmcc_gm.domain.dto.YmMaterialsClassesParam;
+import com.ruoyi.common.core.domain.AjaxResult;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ *
+ * 服务类
+ *
+ *
+ * @author jkj
+ * @since 2023-04-07
+ */
+public interface YwMaterialsClassesService extends IService {
+
+ public void loadingMaterialsClassesCache();
+
+ Map GetMaterialsClasses();
+
+ List getMaterialsBySearch(YmMaterialsClassesParam ywMaterialsClasses);
+
+ /**
+ * 核查大小类是否在物资信息中已经使用
+ *
+ * @param ywMaterialsClasses 大小类
+ * @return 是否
+ */
+ boolean checkClassesInUse(YwMaterialsClasses ywMaterialsClasses);
+
+
+ AjaxResult importMaterialsClasses(List ywMaterialsClasses, Boolean updateSupport);
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsInformService.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsInformService.java
new file mode 100644
index 0000000000000000000000000000000000000000..c64aa7519826d85bdeccc8a95de2669584515706
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsInformService.java
@@ -0,0 +1,52 @@
+package com.ruoyi.cmcc_gm.service;
+
+import com.ruoyi.cmcc_gm.domain.YwMaterialsInform;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsInformDTO;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsSearchDTO;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsInformRedisVo;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsInformVo;
+import com.ruoyi.common.core.domain.AjaxResult;
+
+import java.util.List;
+
+
+/**
+ *
+ * 物资信息表 服务类
+ *
+ *
+ * @author jkj
+ * @since 2023-04-06
+ */
+public interface YwMaterialsInformService extends IService {
+
+
+ void loadingMaterialsInfoCache();
+
+ List getMaterials(YwMaterialsSearchDTO ywMaterialsSearchDTO);
+
+ List selectMaterials(YwMaterialsSearchDTO ywMaterialsSearchDTO);
+
+ List getMaterials();
+
+ Boolean insertMaterials(YwMaterialsInformDTO ywMaterialsInformDTO);
+
+ Boolean updateMaterials(YwMaterialsInformDTO ywMaterialsInformDTO);
+
+ Boolean deleteMaterials(YwMaterialsInformDTO ywMaterialsInformDTO);
+
+ int deleteNotExistsMaterials();
+
+ /**
+ * 导入
+ *
+ * @param informs 数据
+ * @return
+ */
+ AjaxResult doImport(List informs) throws Exception;
+
+ AjaxResult doImport(List informs,boolean delNotUse) throws Exception;
+
+ List getMaterialsBySearch(YwMaterialsSearchDTO ywMaterialsInform);
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsOrderLogService.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsOrderLogService.java
new file mode 100644
index 0000000000000000000000000000000000000000..a90d9bfa3ad7c6e81582a0ad231e792deac0ad68
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsOrderLogService.java
@@ -0,0 +1,33 @@
+package com.ruoyi.cmcc_gm.service;
+
+import com.ruoyi.cmcc_gm.domain.YwMaterialsOrderLog;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsOrderLogDTO;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsSearchDTO;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsOrderLogVo;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+import java.util.List;
+
+/**
+ *
+ * 物资工单日志表 服务类
+ *
+ *
+ * @author jkj
+ * @since 2023-04-07
+ */
+public interface YwMaterialsOrderLogService extends IService {
+
+ String insertMaterialsOrderLog(YwMaterialsOrderLogDTO ywMaterialsOrderLogDTO);
+
+ Boolean updateMaterialsOrderLog(YwMaterialsOrderLogDTO ywMaterialsOrderLogDTO);
+
+ Boolean updateMaterialsOrderLogInner(YwMaterialsOrderLogDTO ywMaterialsOrderLogDTO);
+
+ Boolean deleteMaterialsOrderLog(YwMaterialsOrderLogDTO ywMaterialsOrderLogDTO);
+
+ TableDataInfo getMaterialsOrderLog(YwMaterialsSearchDTO ywMaterialsSearchDTO);
+
+ List selectMaterialsOrderLog(YwMaterialsSearchDTO ywMaterialsSearchDTO);
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsSnListService.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsSnListService.java
new file mode 100644
index 0000000000000000000000000000000000000000..1aa900f7c2e45a733de7439063c36a0d0f7b3f2c
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsSnListService.java
@@ -0,0 +1,32 @@
+package com.ruoyi.cmcc_gm.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsBatch;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsInform;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsSnList;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsBatchDTO;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsSnListDTO;
+import com.ruoyi.cmcc_gm.domain.qo.YwMaterialsSnListQO;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsBatchVo;
+import com.ruoyi.common.core.domain.AjaxResult;
+
+import java.io.File;
+import java.util.List;
+
+/**
+ * 出入库串码(YwMaterialsSnList)表服务接口
+ *
+ * @author makejava
+ * @since 2023-04-10 15:39:19
+ */
+public interface YwMaterialsSnListService extends IService {
+
+
+ Boolean deleteSnListALL(String orderId);
+
+ Boolean insertSnList(YwMaterialsSnListDTO ywMaterialsSnListDTO);
+
+ List selectSnList(YwMaterialsSnListQO ywMaterialsSnListQO);
+
+}
+
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsStockService.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsStockService.java
new file mode 100644
index 0000000000000000000000000000000000000000..b856aecdf8ae04ef146a670eec026a96d3085cc6
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/YwMaterialsStockService.java
@@ -0,0 +1,71 @@
+package com.ruoyi.cmcc_gm.service;
+
+import com.ruoyi.cmcc_gm.domain.YwMaterialsOrderLog;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsStock;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.cmcc_gm.domain.dto.*;
+import com.ruoyi.cmcc_gm.domain.vo.MaterialsXlsToJsonArrayVo;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsVo;
+import com.ruoyi.common.core.domain.AjaxResult;
+
+import java.util.List;
+
+/**
+ *
+ * 物资库存表 服务类
+ *
+ *
+ * @author jkj
+ * @since 2023-04-06
+ */
+public interface YwMaterialsStockService extends IService {
+
+ List getMaterialsStock(YwMaterialsSearchDTO ywMaterialsSearchDTO);
+
+ Boolean freezeOutWayMaterialsStock(YwMaterialsDTO ywMaterialsDTO, YwMaterialsOrderLog ywMaterialsOrderLog);
+
+ Boolean freezeOutWayMaterialsStock(YwMaterialsBatchDTO ywMaterialsBatchDTO);
+
+ Boolean freezeOutWayMaterialsStockBack(YwMaterialsBatchDTO ywMaterialsBatchDTO);
+
+ Boolean freezeOutWayMaterialsStockBack(YwMaterialsDTO ywMaterialsDTO, YwMaterialsOrderLog ywMaterialsOrderLog);
+
+ Boolean updateInWayMaterialsStock(YwMaterialsDTO ywMaterialsDTO);
+
+ Boolean updateInWayMaterialsStockBack(YwMaterialsDTO ywMaterialsDTO);
+
+ Boolean updateMaterialsStock(YwMaterialsDTO ywMaterialsDTO);
+
+ Boolean updateMaterialsStockBack(YwMaterialsDTO ywMaterialsDTO);
+
+ Boolean updateFreezeOutWayMaterialsStock(YwMaterialsDTO ywMaterialsDTO);
+
+ Boolean updateFreezeOutWayMaterialsStockBack(YwMaterialsDTO ywMaterialsDTO);
+
+ YwMaterialsOrderLog Validate(YwMaterialsDTO ywMaterialsDTO);
+
+ int insertMaterialsStock(YwMaterialsStock ywMaterialsStock);
+
+ int updateMaterialsStock(YwMaterialsStock ywMaterialsStock);
+
+ /**
+ * 导入
+ *
+ * @param beans 数据
+ * @param sceneBigId 大场景id
+ * @param importType 导入方式
+ * @param materialStoreId materialStoreId
+ * @return 导入结果
+ */
+ AjaxResult importXls(List beans, Long sceneBigId, String importType, Long materialStoreId) throws Exception;
+
+ /**
+ * 导入,返回List
+ *
+ * @param xls 数据
+ * @param sceneId
+ * @return 导入的数据
+ * @throws Exception 异常
+ */
+ AjaxResult importXlsReturnList(List xls, Long sceneId) throws Exception;
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/GMCommonServiceImpl.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/GMCommonServiceImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..9f64f390157325d74c7b7e9f8e0d6ad36a985629
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/GMCommonServiceImpl.java
@@ -0,0 +1,50 @@
+package com.ruoyi.cmcc_gm.service.impl;
+
+import com.ruoyi.cmcc_gm.service.GMCommonService;
+import com.ruoyi.common.core.redis.RedisCache;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.concurrent.TimeUnit;
+
+@Component
+public class GMCommonServiceImpl implements GMCommonService {
+
+ @Autowired
+ private RedisCache redisCache;
+
+ @Override
+ public String getJobNo(String type) {
+ String date = new SimpleDateFormat("yyyyMMdd").format(new Date());
+ String key = type + date;
+
+ if (redisCache.hasKey(key)) {
+ String value = redisCache.getCacheObject(key).toString();
+ String[] split = value.split("-");
+ if (split.length == 3) {
+ int i = Integer.parseInt(split[2]) + 1;
+ String num = String.format("%04d", i);
+ if(type.equals("ZXK"))
+ {
+ num = String.format("%02d", i);
+ }
+ String v = split[0] + "-" + split[1] + "-" + num;
+ redisCache.setCacheObject(key,v,1, TimeUnit.DAYS);
+ return v;
+ }
+ }
+ String value = "";
+ if(type.equals("ZXK"))
+ {
+ value = type + "-" + date + "-" + "01";
+ }
+ if(!type.equals("ZXK"))
+ {
+ value = type + "-" + date + "-" + "0001";
+ }
+ redisCache.setCacheObject(key,value,1, TimeUnit.DAYS);
+ return value;
+ }
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsBatchServiceImpl.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsBatchServiceImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..597802d1777f1c50fb64e9fb213511cfe636f0ca
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsBatchServiceImpl.java
@@ -0,0 +1,314 @@
+package com.ruoyi.cmcc_gm.service.impl;
+
+import cn.hutool.core.io.FileUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.cmcc_gm.common.enums.OrderStatus;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsBatch;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsInform;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsOrderLog;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsBatchDTO;
+import com.ruoyi.cmcc_gm.importer.ImporterMaterialsBatch;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsBatchMapper;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsInformMapper;
+import com.ruoyi.cmcc_gm.service.YwMaterialsBatchService;
+import com.ruoyi.cmcc_gm.service.YwMaterialsOrderLogService;
+import com.ruoyi.cmcc_gm.service.YwMaterialsStockService;
+import com.ruoyi.common.config.RuoYiConfig;
+import com.ruoyi.common.constant.HttpStatus;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.exception.ServiceException;
+import com.ruoyi.common.importer.ImporterBase;
+import com.ruoyi.common.utils.StringUtils;
+import lombok.RequiredArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 物资批次表(YwMaterialsBatch)表服务实现类
+ *
+ * @author makejava
+ * @since 2023-04-10 15:39:20
+ */
+@Service("ywMaterialsBatchService")
+@RequiredArgsConstructor
+public class YwMaterialsBatchServiceImpl extends ServiceImpl implements YwMaterialsBatchService {
+
+ private final YwMaterialsInformMapper ywMaterialsInformMapper;
+ private final YwMaterialsBatchMapper ywMaterialsBatchMapper;
+
+ @Autowired
+ private YwMaterialsOrderLogService ywMaterialsOrderLogService;
+
+ @Autowired
+ private YwMaterialsStockService ywMaterialsStockService;
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public AjaxResult importExcel(String orderId, List y, File file) throws Exception {
+
+ ImporterBase importer = new ImporterMaterialsBatch(ywMaterialsBatchMapper, ywMaterialsInformMapper);
+ AjaxResult ajaxResult = importer.doAdd(y, null, "", orderId);
+ if (HttpStatus.ACCEPTED == (int) ajaxResult.get(AjaxResult.CODE_TAG)) {
+ String s = (String) ajaxResult.get(AjaxResult.DATA_TAG);
+ File src = new File(RuoYiConfig.getDownloadPath() + s);
+ if (src.exists()) {
+ FileUtil.copy(src, file, true);
+ }
+ return new AjaxResult(HttpStatus.ACCEPTED, "导入失败");
+ } else {
+ return ajaxResult;
+ }
+ }
+
+ @Override
+ @Transactional
+ public Boolean deleteBatch(YwMaterialsBatchDTO ywMaterialsBatchDTO) {
+
+ if (StringUtils.isEmpty(ywMaterialsBatchDTO.getOrderId())) {
+ throw new ServiceException("物资订单号不能为空");
+ }
+
+ LambdaQueryWrapper query = new LambdaQueryWrapper<>();
+ query.eq(YwMaterialsOrderLog::getOrderId, ywMaterialsBatchDTO.getOrderId());
+
+ List listOrder = ywMaterialsOrderLogService.list(query);
+
+ if (listOrder.isEmpty()) {
+ throw new ServiceException("物资订单不存在");
+ }
+
+ YwMaterialsOrderLog orderLog = listOrder.get(0);
+
+ if (!orderLog.getTaskStatus().equals("0")) {
+ throw new ServiceException("当前物资订单状态不允许删除申领数据");
+ }
+
+ LambdaQueryWrapper queryBatch = new LambdaQueryWrapper<>();
+ queryBatch.eq(YwMaterialsBatch::getOrderid, ywMaterialsBatchDTO.getOrderId());
+
+ if (ywMaterialsBatchDTO.getData().size() > 0) {
+
+ List listBatch = ywMaterialsBatchMapper.selectList(queryBatch);
+
+ if (listBatch.isEmpty()) {
+ return true;
+ }
+
+ List backBatchs = new ArrayList<>();
+
+ for (YwMaterialsBatch delBatch : ywMaterialsBatchDTO.getData()) {
+ for (YwMaterialsBatch existsBatch : listBatch) {
+ if (delBatch.getMaterialCode().equals(existsBatch.getMaterialCode())) {
+
+ backBatchs.add(existsBatch);
+
+ }
+ }
+ }
+
+ ywMaterialsBatchDTO.setData(backBatchs);
+
+ //释放库存数
+ ywMaterialsStockService.freezeOutWayMaterialsStockBack(ywMaterialsBatchDTO);
+ }
+
+ int res = 0;
+
+ if (!ywMaterialsBatchDTO.getData().isEmpty()) {
+
+ for (YwMaterialsBatch batch : ywMaterialsBatchDTO.getData()) {
+ LambdaQueryWrapper deleteBatch = new LambdaQueryWrapper<>();
+
+ deleteBatch.eq(YwMaterialsBatch::getOrderid, ywMaterialsBatchDTO.getOrderId());
+ deleteBatch.eq(YwMaterialsBatch::getMaterialCode, batch.getMaterialCode());
+
+ res = ywMaterialsBatchMapper.delete(deleteBatch);
+
+ if (res == 0) {
+ throw new ServiceException("删除申领数据失败");
+ }
+ }
+ }
+
+ if (res > 0) {
+ return true;
+ }
+
+ return false;
+
+ }
+
+ @Override
+ @Transactional
+ public Boolean deleteBatchALL(YwMaterialsBatchDTO ywMaterialsBatchDTO) {
+
+ LambdaQueryWrapper queryBatch = new LambdaQueryWrapper<>();
+ queryBatch.eq(YwMaterialsBatch::getOrderid, ywMaterialsBatchDTO.getOrderId());
+
+ YwMaterialsBatchDTO dto = new YwMaterialsBatchDTO();
+
+ dto.setStoreId(ywMaterialsBatchDTO.getStoreId());
+ dto.setOrderId(ywMaterialsBatchDTO.getOrderId());
+
+ List listBatch = ywMaterialsBatchMapper.selectList(queryBatch);
+ dto.setData(listBatch);
+
+ if (dto.getData().isEmpty()) {
+ return true;
+ }
+
+//驳回的同时,释放了库存,这里就不需要再次释放库存
+// if (ywMaterialsBatchDTO.getStoreId() >= 0)
+// {
+// if (dto.getData().size() > 0) {
+// //释放库存数
+// Boolean r = ywMaterialsStockService.freezeOutWayMaterialsStockBack(dto);
+// }
+// }
+
+ int res = ywMaterialsBatchMapper.delete(queryBatch);
+
+ if (res > 0) {
+ return true;
+ }
+
+ return false;
+ }
+
+ @Override
+ @Transactional
+ public Boolean insertBatch(YwMaterialsBatchDTO ywMaterialsBatchDTO) {
+
+ if (StringUtils.isEmpty(ywMaterialsBatchDTO.getOrderId())) {
+ throw new ServiceException("物资订单号不能为空");
+ }
+
+ LambdaQueryWrapper query = new LambdaQueryWrapper<>();
+ query.eq(YwMaterialsOrderLog::getOrderId, ywMaterialsBatchDTO.getOrderId());
+
+ List listOrder = ywMaterialsOrderLogService.list(query);
+
+ if (listOrder.isEmpty()) {
+ throw new ServiceException("物资订单不存在");
+ }
+
+ YwMaterialsOrderLog order = listOrder.get(0);
+
+ if (!order.getTaskStatus().equals(OrderStatus.DSQ.getCode())) {
+ throw new ServiceException("物资订单状态不是待申请");
+ }
+
+ Long outStore = order.getOutStoreVenue();
+
+ //设置出库仓库的仓库号
+ ywMaterialsBatchDTO.setStoreId(outStore);
+
+ List ywMaterialsBatchList = new ArrayList<>();
+
+ for (YwMaterialsBatch stockDTO : ywMaterialsBatchDTO.getData()) {
+
+ if (StringUtils.isEmpty(stockDTO.getMaterialCode())) {
+ throw new ServiceException("物资编号不能为空");
+ }
+
+ if (outStore >= 0) {
+
+ if (ObjectUtils.isEmpty(stockDTO.getSum())) {
+
+ throw new ServiceException("申领数量不能为空");
+ }
+
+ if (stockDTO.getSum() <= 0) {
+ throw new ServiceException("申领数量必须大于0");
+ }
+ }
+
+ YwMaterialsBatch ywMaterialsBatch = new YwMaterialsBatch();
+ ywMaterialsBatch.setMaterialCode(stockDTO.getMaterialCode());
+ ywMaterialsBatch.setOrderid(ywMaterialsBatchDTO.getOrderId());
+ ywMaterialsBatch.setSum(stockDTO.getSum());
+ ywMaterialsBatchList.add(ywMaterialsBatch);
+
+ }
+
+ //回滚冻结数和删除旧的批量数据
+ this.deleteBatchALL(ywMaterialsBatchDTO);
+
+ //默认是1 暂存传0
+ if(ObjectUtils.isEmpty(ywMaterialsBatchDTO.getNeedfrozen()))
+ {
+ if (outStore >= 0) {
+ //冻结库存数,最后讨论还是放在这,把更新库存表的冻结去掉
+ ywMaterialsStockService.freezeOutWayMaterialsStock(ywMaterialsBatchDTO);
+ }
+ }
+
+ if(ObjectUtils.isNotEmpty(ywMaterialsBatchDTO.getNeedfrozen()))
+ {
+ if(ywMaterialsBatchDTO.getNeedfrozen() == 1)
+ {
+ if (outStore >= 0) {
+ //冻结库存数,最后讨论还是放在这,把更新库存表的冻结去掉
+ ywMaterialsStockService.freezeOutWayMaterialsStock(ywMaterialsBatchDTO);
+ }
+ }
+ }
+
+ int res = ywMaterialsBatchMapper.insertBatch(ywMaterialsBatchList);
+
+ if (res > 0) {
+ return true;
+ }
+
+ return false;
+
+ }
+
+ // 存一下出入库的数据量,用于显示
+ @Override
+ public Boolean updateBatch(YwMaterialsBatch ywMaterialsBatch) {
+
+ if (StringUtils.isEmpty(ywMaterialsBatch.getOrderid())) {
+ throw new ServiceException("物资订单号不能为空");
+ }
+
+ if (StringUtils.isEmpty(ywMaterialsBatch.getMaterialCode())) {
+ throw new ServiceException("物资编号不能为空");
+ }
+
+ LambdaQueryWrapper query = new LambdaQueryWrapper<>();
+ query.eq(YwMaterialsOrderLog::getOrderId, ywMaterialsBatch.getOrderid());
+ List listOrder = ywMaterialsOrderLogService.list(query);
+
+ if (listOrder.isEmpty()) {
+ throw new ServiceException("物资订单不存在");
+ }
+
+ return this.updateBatchInner(ywMaterialsBatch);
+
+ }
+
+ @Override
+ public Boolean updateBatchInner(YwMaterialsBatch ywMaterialsBatch) {
+
+ LambdaQueryWrapper condition = new LambdaQueryWrapper<>();
+ condition.eq(YwMaterialsBatch::getOrderid, ywMaterialsBatch.getOrderid());
+ condition.eq(YwMaterialsBatch::getMaterialCode, ywMaterialsBatch.getMaterialCode());
+ int res = ywMaterialsBatchMapper.update(ywMaterialsBatch, condition);
+
+ if (res > 0) {
+ return true;
+ }
+
+ return false;
+ }
+
+}
+
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsClassesServiceImpl.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsClassesServiceImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..31a7c4c5228410c4119f7a876383378cc6ee1dec
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsClassesServiceImpl.java
@@ -0,0 +1,182 @@
+package com.ruoyi.cmcc_gm.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.ArrayUtils;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsClasses;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsInform;
+import com.ruoyi.cmcc_gm.domain.dto.YmMaterialsClassesParam;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsClassesVo;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsClassesMapper;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsInformMapper;
+import com.ruoyi.cmcc_gm.service.YwMaterialsClassesService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.constant.CacheConstants;
+import com.ruoyi.common.constant.HttpStatus;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.redis.RedisCache;
+import com.ruoyi.common.exception.ServiceException;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.utils.spring.SpringUtils;
+import org.apache.commons.collections4.ListUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import javax.annotation.PostConstruct;
+import java.util.*;
+
+/**
+ *
+ * 服务实现类
+ *
+ *
+ * @author jkj
+ * @since 2023-04-07
+ */
+@Service
+public class YwMaterialsClassesServiceImpl extends ServiceImpl implements YwMaterialsClassesService {
+
+ @Autowired
+ private YwMaterialsClassesMapper ywMaterialsClassesMapper;
+
+ @Autowired
+ private YwMaterialsInformMapper ywMaterialsInformMapper;
+
+ @Autowired
+ private RedisCache redisCache;
+
+
+ private String key = CacheConstants.YW_MATERIALS_CLASS;
+
+ /**
+ * 项目启动时,初始化参数到缓存
+ */
+ @PostConstruct
+ public void init() {
+ loadingMaterialsClassesCache();
+ }
+
+ @Override
+ public void loadingMaterialsClassesCache() {
+
+ List list = ywMaterialsClassesMapper.selectMaterialClass();
+
+ Map dictDataMap = new HashMap<>();
+
+ for (YwMaterialsClassesVo ywMaterialsClassesVo : list) {
+ String[] smallClasses = ywMaterialsClassesVo.getSmallClass().split(",");
+ dictDataMap.put(ywMaterialsClassesVo.getBigClass(), smallClasses);
+ }
+
+ redisCache.setCacheObject(key, dictDataMap);
+
+ }
+
+ @Override
+ public Map GetMaterialsClasses() {
+
+ if (redisCache.hasKey(key)) {
+ try {
+ Map res = redisCache.getCacheObject(key);
+ if (ObjectUtils.isEmpty(res)) {
+ throw new Exception();
+ }
+ return res;
+ } catch (Exception ex) {
+
+ List list = ywMaterialsClassesMapper.selectMaterialClass();
+
+ Map dictDataMap = new HashMap<>();
+
+ for (YwMaterialsClassesVo ywMaterialsClassesVo : list) {
+ String[] smallClasses = ywMaterialsClassesVo.getSmallClass().split(",");
+ dictDataMap.put(ywMaterialsClassesVo.getBigClass(), smallClasses);
+ }
+
+ redisCache.setCacheObject(key, dictDataMap);
+
+ return dictDataMap;
+
+ }
+ }
+
+ List list = ywMaterialsClassesMapper.selectMaterialClass();
+
+ Map dictDataMap = new HashMap<>();
+
+ for (YwMaterialsClassesVo ywMaterialsClassesVo : list) {
+ String[] smallClasses = ywMaterialsClassesVo.getSmallClass().split(",");
+ dictDataMap.put(ywMaterialsClassesVo.getBigClass(), smallClasses);
+ }
+
+ redisCache.setCacheObject(key, dictDataMap);
+
+ return dictDataMap;
+
+ }
+
+ @Override
+ public List getMaterialsBySearch(YmMaterialsClassesParam ywMaterialsClasses) {
+ return ywMaterialsClassesMapper.listAllByBigClassAndSmallClass(ywMaterialsClasses.getBigClass(), ywMaterialsClasses.getSmallClass());
+ }
+
+ /**
+ * 核查大小类是否在物资信息中已经使用
+ *
+ * @param ywMaterialsClasses 大小类
+ * @return 是否
+ */
+ @Override
+ public boolean checkClassesInUse(YwMaterialsClasses ywMaterialsClasses) {
+ LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
+ wrapper.eq(YwMaterialsInform::getMaterialBigClass, ywMaterialsClasses.getBigClass())
+ .eq(YwMaterialsInform::getMaterialSmallClass, ywMaterialsClasses.getSmallClass());
+ Long aLong = ywMaterialsInformMapper.selectCount(wrapper);
+ return aLong > 0;
+ }
+
+ @Override
+ @Transactional
+ public AjaxResult importMaterialsClasses(List lstMaterialsClasses, Boolean updateSupport) {
+ if (StringUtils.isNull(lstMaterialsClasses) || lstMaterialsClasses.size() == 0) {
+ throw new ServiceException("导入数据不能为空!");
+ }
+
+ // 核查数据
+ boolean checkFlag = true;
+
+ for (int i = 0; i < lstMaterialsClasses.size() - 1; i++) {
+ for (int j = i + 1; j < lstMaterialsClasses.size(); j++) {
+ if (lstMaterialsClasses.get(i).getBigClass().equals(lstMaterialsClasses.get(j).getBigClass()) &&
+ lstMaterialsClasses.get(i).getSmallClass().equals(lstMaterialsClasses.get(j).getSmallClass())
+ ) {
+ lstMaterialsClasses.get(i).setReason("存在重复");
+ lstMaterialsClasses.get(j).setReason("存在重复");
+ checkFlag = false;
+ break;
+ }
+ }
+ }
+
+ if (!checkFlag) {
+ ExcelUtil util = new ExcelUtil<>(YwMaterialsClasses.class);
+ String fileName = (String) util.exportExcel(lstMaterialsClasses, "签到导入结果").get(AjaxResult.MSG_TAG);
+ return new AjaxResult(HttpStatus.ACCEPTED, "导入失败", fileName);
+ }
+
+ try {
+ ywMaterialsClassesMapper.cleanMaterialClass();
+ for (YwMaterialsClasses materialsClasses : lstMaterialsClasses) {
+ ywMaterialsClassesMapper.insert(materialsClasses);
+ }
+ } catch (Exception ex) {
+ throw new ServiceException(ex.getMessage());
+ }
+
+ return AjaxResult.success();
+
+ }
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsInformServiceImpl.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsInformServiceImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..ae5eb0dd0db5d954ab68ebec25442b93a2f95b9e
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsInformServiceImpl.java
@@ -0,0 +1,333 @@
+package com.ruoyi.cmcc_gm.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsInform;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsInformDTO;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsSearchDTO;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsInformRedisVo;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsInformVo;
+import com.ruoyi.cmcc_gm.importer.ImporterMaterialsInform;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsClassesMapper;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsInformMapper;
+import com.ruoyi.cmcc_gm.service.YwMaterialsInformService;
+import com.ruoyi.common.constant.CacheConstants;
+import com.ruoyi.common.constant.HttpStatus;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.redis.RedisCache;
+import com.ruoyi.common.exception.ServiceException;
+import com.ruoyi.common.importer.ImporterBase;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.bean.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import javax.annotation.PostConstruct;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ *
+ * 物资信息表 服务实现类
+ *
+ *
+ * @author jkj
+ * @since 2023-04-06
+ */
+@Service
+public class YwMaterialsInformServiceImpl extends ServiceImpl implements YwMaterialsInformService {
+
+
+ @Autowired
+ private YwMaterialsInformMapper ywMaterialsInformMapper;
+
+ @Autowired
+ private YwMaterialsClassesMapper ywMaterialsClassesMapper;
+
+ @Autowired
+ private RedisCache redisCache;
+
+ private String key = CacheConstants.YW_MATERIALS_INFO;
+
+ @PostConstruct
+ public void init() {
+ loadingMaterialsInfoCache();
+ }
+
+ @Override
+ public void loadingMaterialsInfoCache() {
+
+ List list = ywMaterialsInformMapper.selectList(null);
+
+ List listVo = new ArrayList<>();
+
+ for (YwMaterialsInform inform : list) {
+ YwMaterialsInformRedisVo ywMaterialsRedis = new YwMaterialsInformRedisVo();
+ ywMaterialsRedis.setWzmc(inform.getMaterialName());
+ ywMaterialsRedis.setGgxh(inform.getMaterialStand());
+ ywMaterialsRedis.setDl(inform.getMaterialBigClass());
+ ywMaterialsRedis.setXl(inform.getMaterialSmallClass());
+ ywMaterialsRedis.setWzbh(inform.getMaterialCode());
+ ywMaterialsRedis.setWzdw(inform.getMaterialUnit());
+ listVo.add(ywMaterialsRedis);
+ }
+
+
+ redisCache.setCacheObject(key, listVo);
+
+ }
+
+ @Override
+ public List getMaterials(YwMaterialsSearchDTO ywMaterialsSearchDTO) {
+
+ YwMaterialsInform ywMaterialsInform = new YwMaterialsInform();
+
+ LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
+
+ //物资编号
+ lambdaQueryWrapper.eq(StringUtils.isNotEmpty(ywMaterialsSearchDTO.getMaterialCode()), YwMaterialsInform::getMaterialCode, ywMaterialsSearchDTO.getMaterialCode());
+
+ //物资名称
+ lambdaQueryWrapper.eq(StringUtils.isNotEmpty(ywMaterialsSearchDTO.getMaterialName()), YwMaterialsInform::getMaterialName, ywMaterialsSearchDTO.getMaterialName());
+
+ //规格型号
+ lambdaQueryWrapper.eq(StringUtils.isNotEmpty(ywMaterialsSearchDTO.getMaterialStand()), YwMaterialsInform::getMaterialStand, ywMaterialsSearchDTO.getMaterialStand());
+
+ //是否绑定SN
+ lambdaQueryWrapper.eq(StringUtils.isNotEmpty(ywMaterialsSearchDTO.getSnCode()), YwMaterialsInform::getSnCode, ywMaterialsSearchDTO.getSnCode());
+
+ List list = ywMaterialsInformMapper.selectList(lambdaQueryWrapper);
+
+ List listVo = new ArrayList<>();
+
+ for (YwMaterialsInform inform : list) {
+ YwMaterialsInformVo ywMaterialsInformVo = new YwMaterialsInformVo();
+ BeanUtils.copyBeanProp(ywMaterialsInformVo, inform);
+ listVo.add(ywMaterialsInformVo);
+ }
+
+ return listVo;
+
+ }
+
+ @Override
+ public List selectMaterials(YwMaterialsSearchDTO ywMaterialsSearchDTO) {
+ return ywMaterialsInformMapper.selectMaterialsInfo(ywMaterialsSearchDTO);
+ }
+
+ @Override
+ public List getMaterials() {
+
+ if (redisCache.hasKey(key)) {
+ try {
+ List res = redisCache.getCacheObject(key);
+ if (ObjectUtils.isEmpty(res)) {
+ throw new Exception();
+ }
+ return res;
+ } catch (Exception ex) {
+
+ List list = ywMaterialsInformMapper.selectList(null);
+
+ List listVo = new ArrayList<>();
+
+ for (YwMaterialsInform inform : list) {
+ YwMaterialsInformRedisVo ywMaterialsRedis = new YwMaterialsInformRedisVo();
+
+ ywMaterialsRedis.setWzmc(inform.getMaterialName());
+ ywMaterialsRedis.setGgxh(inform.getMaterialStand());
+ ywMaterialsRedis.setDl(inform.getMaterialBigClass());
+ ywMaterialsRedis.setXl(inform.getMaterialSmallClass());
+ listVo.add(ywMaterialsRedis);
+ }
+
+ redisCache.setCacheObject(key, listVo);
+
+ return listVo;
+
+ }
+ }
+
+ List list = ywMaterialsInformMapper.selectList(null);
+
+ List listVo = new ArrayList<>();
+
+ for (YwMaterialsInform inform : list) {
+ YwMaterialsInformRedisVo ywMaterialsRedis = new YwMaterialsInformRedisVo();
+ ywMaterialsRedis.setWzmc(inform.getMaterialName());
+ ywMaterialsRedis.setGgxh(inform.getMaterialStand());
+ ywMaterialsRedis.setDl(inform.getMaterialBigClass());
+ ywMaterialsRedis.setXl(inform.getMaterialSmallClass());
+ listVo.add(ywMaterialsRedis);
+ }
+
+ redisCache.setCacheObject(key, listVo);
+
+ return listVo;
+ }
+
+ @Override
+ public Boolean insertMaterials(YwMaterialsInformDTO ywMaterialsInformDTO) {
+
+ Validate(ywMaterialsInformDTO, "add");
+
+ YwMaterialsInform ywMaterialsInform = new YwMaterialsInform();
+
+ BeanUtils.copyBeanProp(ywMaterialsInform, ywMaterialsInformDTO);
+
+ if (ywMaterialsInformMapper.insert(ywMaterialsInform) > 0) {
+ //新增成功后,更新下物资的缓存
+ loadingMaterialsInfoCache();
+ return true;
+ }
+
+ return false;
+ }
+
+ @Override
+ public Boolean updateMaterials(YwMaterialsInformDTO ywMaterialsInformDTO) {
+
+ Validate(ywMaterialsInformDTO, "edit");
+
+ YwMaterialsInform ywMaterialsInform = new YwMaterialsInform();
+
+ BeanUtils.copyBeanProp(ywMaterialsInform, ywMaterialsInformDTO);
+
+ //物资编码不用改
+ ywMaterialsInform.setMaterialCode(null);
+
+ //修改条件
+ LambdaQueryWrapper condition = new LambdaQueryWrapper<>();
+ condition.eq(YwMaterialsInform::getMaterialCode, ywMaterialsInformDTO.getMaterialCode());
+
+
+ if (ywMaterialsInformMapper.update(ywMaterialsInform, condition) > 0) {
+ //修改成功后,更新下物资的缓存
+ loadingMaterialsInfoCache();
+ return true;
+ }
+
+ return false;
+ }
+
+ @Override
+ public Boolean deleteMaterials(YwMaterialsInformDTO ywMaterialsInformDTO) {
+
+ if (StringUtils.isEmpty(ywMaterialsInformDTO.getMaterialCode())) {
+ throw new ServiceException("物资编码不允许为空");
+ }
+
+ LambdaQueryWrapper condition = new LambdaQueryWrapper<>();
+ condition.eq(YwMaterialsInform::getMaterialCode, ywMaterialsInformDTO.getMaterialCode());
+
+ if (ywMaterialsInformMapper.delete(condition) > 0) {
+ //删除成功后,更新下物资的缓存
+ loadingMaterialsInfoCache();
+ return true;
+ }
+
+ return false;
+ }
+
+ @Override
+ public int deleteNotExistsMaterials() {
+ return ywMaterialsInformMapper.deleteNotExistsStock();
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public AjaxResult doImport(List informs) throws Exception {
+ ImporterBase importer = new ImporterMaterialsInform(ywMaterialsClassesMapper, ywMaterialsInformMapper);
+ AjaxResult ajaxResult = importer.doAdd(informs, null, null);
+ if (HttpStatus.SUCCESS == (int) ajaxResult.get(AjaxResult.CODE_TAG)) {
+ //导入成功后,更新下物资的缓存
+ loadingMaterialsInfoCache();
+ } else {
+ return ajaxResult;
+ }
+ return AjaxResult.success();
+ }
+
+ @Override
+ public AjaxResult doImport(List informs, boolean delNotUse) throws Exception {
+ ImporterBase importer = new ImporterMaterialsInform(ywMaterialsClassesMapper, ywMaterialsInformMapper);
+ AjaxResult ajaxResult = null;
+ if(delNotUse)
+ {
+ ajaxResult = importer.doAdd(informs, null, null, delNotUse);
+ }
+ else
+ {
+ ajaxResult = importer.doAdd(informs, null, null);
+ }
+ if (HttpStatus.SUCCESS == (int) ajaxResult.get(AjaxResult.CODE_TAG)) {
+ //导入成功后,更新下物资的缓存
+ loadingMaterialsInfoCache();
+ } else {
+ return ajaxResult;
+ }
+ return AjaxResult.success();
+ }
+
+ @Override
+ public List getMaterialsBySearch(YwMaterialsSearchDTO ywMaterialsInform) {
+ return ywMaterialsInformMapper.listAll(ywMaterialsInform);
+ }
+
+ void Validate(YwMaterialsInformDTO ywMaterialsInformDTO, String operType) {
+ if (StringUtils.isEmpty(ywMaterialsInformDTO.getMaterialName())) {
+ throw new ServiceException("物资名称不允许为空");
+ }
+
+ if (StringUtils.isEmpty(ywMaterialsInformDTO.getMaterialCode())) {
+ throw new ServiceException("物资编码不允许为空");
+ }
+
+ if (ObjectUtils.isEmpty(ywMaterialsInformDTO.getMaterialBigClass())) {
+ throw new ServiceException("大类不允许为空");
+ }
+
+ if (ObjectUtils.isEmpty(ywMaterialsInformDTO.getMaterialSmallClass())) {
+ throw new ServiceException("小类不允许为空");
+ }
+
+ if (StringUtils.isEmpty(ywMaterialsInformDTO.getMaterialStand())) {
+ throw new ServiceException("规格型号不允许为空");
+ }
+
+ if (StringUtils.isEmpty(ywMaterialsInformDTO.getMaterialUnit())) {
+ throw new ServiceException("单位型号不允许为空");
+ }
+
+ if (StringUtils.isEmpty(ywMaterialsInformDTO.getMaterialStand())) {
+ throw new ServiceException("规格型号不允许为空");
+ }
+
+ if (StringUtils.isEmpty(ywMaterialsInformDTO.getSnBand())) {
+ throw new ServiceException("SN绑定不允许为空");
+ }
+
+ //检查物资编号是否已经存在
+ LambdaQueryWrapper query = new LambdaQueryWrapper<>();
+ query.eq(YwMaterialsInform::getMaterialCode, ywMaterialsInformDTO.getMaterialCode());
+
+ YwMaterialsInform inform = ywMaterialsInformMapper.selectOne(query);
+
+ if (operType.equals("add")) {
+ if (ObjectUtils.isNotEmpty(inform)) {
+ throw new ServiceException("物资编号已存在");
+ }
+ }
+
+ if (operType.equals("edit")) {
+ if (ObjectUtils.isEmpty(inform)) {
+ throw new ServiceException("物资编号不存在");
+ }
+ }
+
+ }
+
+
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsOrderLogServiceImpl.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsOrderLogServiceImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..017687721a1b087f037ed984186ab5a9aa76341b
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsOrderLogServiceImpl.java
@@ -0,0 +1,300 @@
+package com.ruoyi.cmcc_gm.service.impl;
+
+import cn.hutool.core.date.LocalDateTimeUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.cmcc_gm.common.enums.OrderStatus;
+import com.ruoyi.cmcc_gm.common.enums.OrderType;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsOrderLog;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsOrderLogDTO;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsSearchDTO;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsOrderLogVo;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsOrderLogMapper;
+import com.ruoyi.cmcc_gm.service.GMCommonService;
+import com.ruoyi.cmcc_gm.service.YwMaterialsOrderLogService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.common.exception.ServiceException;
+import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.bean.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *
+ * 物资工单日志表 服务实现类
+ *
+ *
+ * @author jkj
+ * @since 2023-04-07
+ */
+@Service
+public class YwMaterialsOrderLogServiceImpl extends ServiceImpl implements YwMaterialsOrderLogService {
+
+
+ @Autowired
+ private YwMaterialsOrderLogMapper ywMaterialsOrderLogMapper;
+
+ @Autowired
+ private GMCommonService commonService;
+
+ @Override
+ public String insertMaterialsOrderLog(YwMaterialsOrderLogDTO ywMaterialsOrderLogDTO) {
+
+ if(StringUtils.isNotEmpty(ywMaterialsOrderLogDTO.getWireTaskId()))
+ {
+ ywMaterialsOrderLogDTO.setWireTaskId(ywMaterialsOrderLogDTO.getWireTaskId().trim());
+ }
+
+ if(ObjectUtils.isEmpty(ywMaterialsOrderLogDTO.getOrderType()))
+ {
+ throw new ServiceException("工单类型不能为空");
+ }
+
+ if(ObjectUtils.isEmpty(ywMaterialsOrderLogDTO.getCheckName()) || ObjectUtils.isEmpty(ywMaterialsOrderLogDTO.getCheckId()))
+ {
+ throw new ServiceException("审核人不能为空");
+ }
+
+ if(ywMaterialsOrderLogDTO.getOrderType() == OrderType.ZXK.getCode() || ywMaterialsOrderLogDTO.getOrderType() == OrderType.TK.getCode())
+ {
+ if(!ywMaterialsOrderLogDTO.getInStoreVenue().equals(0L))
+ {
+ throw new ServiceException("中心库的库号不正确");
+ }
+ }
+
+ if(ywMaterialsOrderLogDTO.getOrderType() == OrderType.SL.getCode())
+ {
+ if(!ywMaterialsOrderLogDTO.getOutStoreVenue().equals(0L))
+ {
+ throw new ServiceException("中心库的库号不正确");
+ }
+ }
+
+ //根据工单类型生成工单号
+ String type = OrderType.getAbbLabelByCode(ywMaterialsOrderLogDTO.getOrderType());
+
+ if(StringUtils.isEmpty(type))
+ {
+ throw new ServiceException("工单类型不存在");
+ }
+
+ if(!ywMaterialsOrderLogDTO.getOrderType().equals(4)) {
+ if (ObjectUtils.isEmpty(ywMaterialsOrderLogDTO.getInStoreVenue())) {
+ throw new ServiceException("入库场馆不能为空");
+ }
+ }
+
+ if(!(ywMaterialsOrderLogDTO.getOrderType().equals(1) || ywMaterialsOrderLogDTO.getOrderType().equals(5)))
+ {
+ if(ObjectUtils.isEmpty(ywMaterialsOrderLogDTO.getOutStoreVenue()))
+ {
+ throw new ServiceException("出库场馆不能为空");
+ }
+ }
+
+ ywMaterialsOrderLogDTO.setOrderId(commonService.getJobNo(type));
+
+ if(ObjectUtils.isEmpty(ywMaterialsOrderLogDTO.getApplyName()))
+ {
+ ywMaterialsOrderLogDTO.setApplyId(SecurityUtils.getUserId());
+ ywMaterialsOrderLogDTO.setApplyName(SecurityUtils.getLoginUser().getUser().getNickName());
+ }
+
+ YwMaterialsOrderLog ywMaterialsOrderLog=new YwMaterialsOrderLog();
+
+ BeanUtils.copyBeanProp(ywMaterialsOrderLog,ywMaterialsOrderLogDTO);
+
+ ywMaterialsOrderLog.setTaskStatus(OrderStatus.DSQ.getCode());
+
+ ywMaterialsOrderLog.setTaskStartTime(LocalDateTimeUtil.now());
+
+ if(ywMaterialsOrderLogMapper.insert(ywMaterialsOrderLog)>0)
+ {
+ return ywMaterialsOrderLogDTO.getOrderId();
+ }
+
+ return "";
+
+ }
+
+ @Override
+ public Boolean updateMaterialsOrderLog(YwMaterialsOrderLogDTO ywMaterialsOrderLogDTO) {
+
+ if(StringUtils.isEmpty(ywMaterialsOrderLogDTO.getOrderId()))
+ {
+ throw new ServiceException("工单ID不能为空");
+ }
+
+ if(ObjectUtils.isEmpty(ywMaterialsOrderLogDTO.getOrderType()))
+ {
+ throw new ServiceException("工单类型不能为空");
+ }
+
+ QueryWrapper condition =new QueryWrapper<>();
+ condition.eq("order_id",ywMaterialsOrderLogDTO.getOrderId());
+ condition.eq("order_type",ywMaterialsOrderLogDTO.getOrderType());
+
+ YwMaterialsOrderLog ywMaterialsOrderLog=new YwMaterialsOrderLog();
+
+ if(ywMaterialsOrderLogDTO.getCheckId() != null)
+ {
+ ywMaterialsOrderLog.setCheckId(ywMaterialsOrderLogDTO.getCheckId());
+ }
+
+ if(StringUtils.isNotEmpty(ywMaterialsOrderLogDTO.getCheckName())) {
+ ywMaterialsOrderLog.setCheckName(ywMaterialsOrderLogDTO.getCheckName());
+ }
+
+ if(StringUtils.isNotEmpty(ywMaterialsOrderLogDTO.getFileUrl())) {
+ ywMaterialsOrderLog.setFileUrl(ywMaterialsOrderLogDTO.getFileUrl());
+ }
+
+ if(StringUtils.isNotEmpty(ywMaterialsOrderLogDTO.getFileName())) {
+ ywMaterialsOrderLog.setFileName(ywMaterialsOrderLogDTO.getFileName());
+ }
+
+ if(StringUtils.isNotEmpty(ywMaterialsOrderLogDTO.getFlwProcessid())) {
+ ywMaterialsOrderLog.setFlwProcessid(ywMaterialsOrderLogDTO.getFlwProcessid());
+ }
+
+ if(ywMaterialsOrderLogMapper.update(ywMaterialsOrderLog,condition)>0)
+ {
+ return true;
+ }
+
+ return false;
+ }
+
+ @Override
+ public Boolean updateMaterialsOrderLogInner(YwMaterialsOrderLogDTO ywMaterialsOrderLogDTO) {
+
+ if(StringUtils.isEmpty(ywMaterialsOrderLogDTO.getOrderId()))
+ {
+ throw new ServiceException("工单ID不能为空");
+ }
+
+ if(ObjectUtils.isEmpty(ywMaterialsOrderLogDTO.getOrderType()))
+ {
+ throw new ServiceException("工单类型不能为空");
+ }
+
+ if(ObjectUtils.isEmpty(ywMaterialsOrderLogDTO.getTaskStatus()))
+ {
+ throw new ServiceException("任务状态不能为空");
+ }
+
+ QueryWrapper condition =new QueryWrapper<>();
+ condition.eq("order_id",ywMaterialsOrderLogDTO.getOrderId());
+ condition.eq("order_type",ywMaterialsOrderLogDTO.getOrderType());
+
+ YwMaterialsOrderLog ywMaterialsOrderLog=new YwMaterialsOrderLog();
+ ywMaterialsOrderLog.setTaskStatus(ywMaterialsOrderLogDTO.getTaskStatus());
+
+ if(ywMaterialsOrderLogDTO.getInStoreId()!=null)
+ {
+ if(ywMaterialsOrderLogDTO.getInStoreId()>0) {
+ ywMaterialsOrderLog.setInStoreId(ywMaterialsOrderLogDTO.getInStoreId());
+ }
+ else
+ {
+ ywMaterialsOrderLog.setInStoreId(null);
+ }
+ }
+
+ if(ywMaterialsOrderLogDTO.getInStoreName()!=null)
+ {
+ ywMaterialsOrderLog.setInStoreName(ywMaterialsOrderLogDTO.getInStoreName());
+ }
+
+ if(ywMaterialsOrderLogMapper.update(ywMaterialsOrderLog,condition)>0)
+ {
+ return true;
+ }
+
+ return false;
+ }
+
+ @Override
+ public Boolean deleteMaterialsOrderLog(YwMaterialsOrderLogDTO ywMaterialsOrderLogDTO) {
+
+ if(StringUtils.isEmpty(ywMaterialsOrderLogDTO.getOrderId()))
+ {
+ throw new ServiceException("工单ID不能为空");
+ }
+
+ if(ObjectUtils.isEmpty(ywMaterialsOrderLogDTO.getOrderType()))
+ {
+ throw new ServiceException("工单类型不能为空");
+ }
+
+
+ QueryWrapper condition =new QueryWrapper<>();
+ condition.eq("order_id",ywMaterialsOrderLogDTO.getOrderId());
+ condition.eq("order_type",ywMaterialsOrderLogDTO.getOrderType());
+
+ if(ywMaterialsOrderLogMapper.delete(condition)>0)
+ {
+ return true;
+ }
+
+ return false;
+ }
+
+ @Override
+ public TableDataInfo getMaterialsOrderLog(YwMaterialsSearchDTO ywMaterialsSearchDTO) {
+
+ LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
+
+ lambdaQueryWrapper.like(StringUtils.isNotEmpty(ywMaterialsSearchDTO.getOrderId()),YwMaterialsOrderLog::getOrderId, ywMaterialsSearchDTO.getOrderId());
+
+ lambdaQueryWrapper.eq(ObjectUtils.isNotEmpty(ywMaterialsSearchDTO.getOrderType()),YwMaterialsOrderLog::getOrderType, ywMaterialsSearchDTO.getOrderType());
+
+ lambdaQueryWrapper.eq(StringUtils.isNotEmpty(ywMaterialsSearchDTO.getTaskStatus()),YwMaterialsOrderLog::getTaskStatus, ywMaterialsSearchDTO.getTaskStatus());
+
+ if(StringUtils.isNotEmpty(ywMaterialsSearchDTO.getSearchDate()))
+ {
+ lambdaQueryWrapper.between(YwMaterialsOrderLog::getTaskStartTime, LocalDateTime.parse(ywMaterialsSearchDTO.getSearchDate()+"T00:00:00"), LocalDateTime.parse(ywMaterialsSearchDTO.getSearchDate()+"T23:59:59"));
+ }
+
+ TableDataInfo rspData = new TableDataInfo();
+ Page page = ywMaterialsOrderLogMapper.selectPage(new Page<>(ywMaterialsSearchDTO.getPageNum(), ywMaterialsSearchDTO.getPageSize()), lambdaQueryWrapper);
+
+ rspData.setRows(page.getRecords());
+ rspData.setTotal(page.getTotal());
+
+ return rspData;
+ }
+
+ @Override
+ public List selectMaterialsOrderLog(YwMaterialsSearchDTO ywMaterialsSearchDTO) {
+
+// 调拨传入-2,就显示全部场馆库
+ if(ywMaterialsSearchDTO.getOrderType() == OrderType.DB.getCode())
+ {
+ if (ywMaterialsSearchDTO.getInStoreId() == -2) {
+ ywMaterialsSearchDTO.setInStoreId(null);
+ }
+ if (ywMaterialsSearchDTO.getOutStoreId() == -2) {
+ ywMaterialsSearchDTO.setOutStoreId(null);
+ }
+ }
+
+ // 前端绑定下拉框不好处理空字符串,传入all或者全部就置空
+ if(StringUtils.isNotEmpty(ywMaterialsSearchDTO.getTaskStatus()))
+ {
+ if(ywMaterialsSearchDTO.getTaskStatus().equals("all")||ywMaterialsSearchDTO.getTaskStatus().equals("全部"))
+ {
+ ywMaterialsSearchDTO.setTaskStatus("");
+ }
+ }
+ return ywMaterialsOrderLogMapper.selectMaterialsOrderLog(ywMaterialsSearchDTO);
+ }
+}
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsSnListServiceImpl.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsSnListServiceImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..94d4dc07f381a94df71c6b23f9aa634e9e46ce8b
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsSnListServiceImpl.java
@@ -0,0 +1,208 @@
+package com.ruoyi.cmcc_gm.service.impl;
+;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsBatch;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsOrderLog;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsSnList;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsBatchDTO;
+import com.ruoyi.cmcc_gm.domain.dto.YwMaterialsSnListDTO;
+import com.ruoyi.cmcc_gm.domain.qo.YwMaterialsSnListQO;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsBatchVo;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsBatchMapper;
+import com.ruoyi.cmcc_gm.mapper.YwMaterialsSnListMapper;
+import com.ruoyi.cmcc_gm.service.YwMaterialsBatchService;
+import com.ruoyi.cmcc_gm.service.YwMaterialsOrderLogService;
+import com.ruoyi.cmcc_gm.service.YwMaterialsSnListService;
+import com.ruoyi.common.exception.ServiceException;
+import com.ruoyi.common.utils.StringUtils;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 物资批次表(YwMaterialsBatch)表服务实现类
+ *
+ * @author makejava
+ * @since 2023-04-10 15:39:20
+ */
+@Service("ywMaterialsSnListService")
+@RequiredArgsConstructor
+public class YwMaterialsSnListServiceImpl extends ServiceImpl implements YwMaterialsSnListService {
+
+ private final YwMaterialsSnListMapper ywMaterialsSnListMapper;
+ private final YwMaterialsOrderLogService ywMaterialsOrderLogService;
+
+ private final YwMaterialsBatchService ywMaterialsBatchService;
+
+
+ @Override
+ public Boolean deleteSnListALL(String orderId) {
+
+ LambdaQueryWrapper querySn = new LambdaQueryWrapper<>();
+
+ querySn.eq(YwMaterialsSnList::getOrderid, orderId);
+
+ List listSn = ywMaterialsSnListMapper.selectList(querySn);
+
+ if(listSn.isEmpty())
+ {
+ return true;
+ }
+
+ int res = ywMaterialsSnListMapper.delete(querySn);
+
+ if(res > 0)
+ {
+ return true;
+ }
+
+ return false;
+
+ }
+
+ public Boolean deleteSnListALL(String orderId,String materialCode,Integer opType) {
+
+ LambdaQueryWrapper querySn = new LambdaQueryWrapper<>();
+
+ querySn.eq(YwMaterialsSnList::getOrderid, orderId);
+
+ querySn.eq(YwMaterialsSnList::getOpType,opType);
+
+ querySn.eq(YwMaterialsSnList::getMaterialCode,materialCode);
+
+ List listSn = ywMaterialsSnListMapper.selectList(querySn);
+
+ if(listSn.isEmpty())
+ {
+ return true;
+ }
+
+ int res = ywMaterialsSnListMapper.delete(querySn);
+
+ if(res > 0)
+ {
+ return true;
+ }
+
+ throw new ServiceException("删除SN发生异常,稍后再试");
+
+ }
+
+
+
+ @Override
+ @Transactional
+ public Boolean insertSnList(YwMaterialsSnListDTO ywMaterialsSnListDTO) {
+
+ if (StringUtils.isEmpty(ywMaterialsSnListDTO.getOrderId())) {
+ throw new ServiceException("物资订单号不能为空");
+ }
+
+ if (ObjectUtils.isEmpty(ywMaterialsSnListDTO.getOpType())) {
+ throw new ServiceException("操作类型不能为空");
+ }
+
+ if (StringUtils.isEmpty(ywMaterialsSnListDTO.getMaterialCode())) {
+ throw new ServiceException("物资编号不能为空");
+ }
+
+ if(ywMaterialsSnListDTO.getOpType()!=0 && ywMaterialsSnListDTO.getOpType()!=1)
+ {
+ throw new ServiceException("操作类型不正确");
+ }
+
+ LambdaQueryWrapper query = new LambdaQueryWrapper<>();
+ query.eq(YwMaterialsOrderLog::getOrderId,ywMaterialsSnListDTO.getOrderId());
+
+ List listOrder = ywMaterialsOrderLogService.list(query);
+
+ if (listOrder.isEmpty()) {
+ throw new ServiceException("物资订单不存在");
+ }
+
+ List ywMaterialsSnList = new ArrayList<>();
+
+ for (YwMaterialsSnList snDto : ywMaterialsSnListDTO.getData())
+ {
+
+ if (ObjectUtils.isEmpty(snDto.getMaterialStrCode())) {
+ throw new ServiceException("串码不能为空");
+ }
+
+ YwMaterialsSnList snList = new YwMaterialsSnList();
+ snList.setOrderid(ywMaterialsSnListDTO.getOrderId());
+ snList.setMaterialCode(ywMaterialsSnListDTO.getMaterialCode());
+ snList.setOpType(ywMaterialsSnListDTO.getOpType());
+ snList.setMaterialStrCode(snDto.getMaterialStrCode());
+ ywMaterialsSnList.add(snList);
+
+
+ }
+
+ try {
+ //删除旧的SN数据
+ this.deleteSnListALL(ywMaterialsSnListDTO.getOrderId(), ywMaterialsSnListDTO.getMaterialCode(), ywMaterialsSnListDTO.getOpType());
+ }
+ catch (Exception ex)
+ {
+ throw new ServiceException(ex.getMessage());
+ }
+
+ int res = 0;
+
+ if(!ywMaterialsSnList.isEmpty()) {
+ res = ywMaterialsSnListMapper.insertSnList(ywMaterialsSnList);
+ }
+
+ YwMaterialsBatch batch =new YwMaterialsBatch();
+
+ if(ywMaterialsSnListDTO.getOpType()==0)
+ {
+ batch.setOutSum(res);
+ }
+ if(ywMaterialsSnListDTO.getOpType()==1)
+ {
+ batch.setInSum(res);
+ }
+
+ batch.setMaterialCode(ywMaterialsSnListDTO.getMaterialCode());
+ batch.setOrderid(ywMaterialsSnListDTO.getOrderId());
+
+ ywMaterialsBatchService.updateBatchInner(batch);
+
+ if(res>0)
+ {
+ return true;
+ }
+
+ throw new ServiceException("修改数据失败");
+
+ }
+
+ @Override
+ public List selectSnList(YwMaterialsSnListQO ywMaterialsSnListQO) {
+
+ if(StringUtils.isEmpty(ywMaterialsSnListQO.getOrderId()))
+ {
+ throw new ServiceException("物资订单号不能为空");
+ }
+
+ if (ObjectUtils.isEmpty(ywMaterialsSnListQO.getOpType())) {
+ throw new ServiceException("操作类型不能为空");
+ }
+
+ if(StringUtils.isEmpty(ywMaterialsSnListQO.getMaterialCode()))
+ {
+ throw new ServiceException("物资编码不能为空");
+ }
+
+ return ywMaterialsSnListMapper.selectSnList(ywMaterialsSnListQO);
+ }
+
+
+}
+
diff --git a/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsStockServiceImpl.java b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsStockServiceImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..94eca5a954833b4ffdff43c8cb56c9d69373cd0f
--- /dev/null
+++ b/cmcc_gm/src/main/java/com/ruoyi/cmcc_gm/service/impl/YwMaterialsStockServiceImpl.java
@@ -0,0 +1,1087 @@
+package com.ruoyi.cmcc_gm.service.impl;
+
+import cn.hutool.core.collection.CollectionUtil;
+import com.alibaba.fastjson2.JSON;
+import com.alibaba.fastjson2.JSONArray;
+import com.alibaba.fastjson2.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.cmcc_gm.common.enums.OrderStatus;
+import com.ruoyi.cmcc_gm.common.enums.OrderType;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsBatch;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsOrderLog;
+import com.ruoyi.cmcc_gm.domain.YwMaterialsStock;
+import com.ruoyi.cmcc_gm.domain.dto.*;
+import com.ruoyi.cmcc_gm.domain.vo.MaterialsXlsToJsonArrayVo;
+import com.ruoyi.cmcc_gm.domain.vo.YwMaterialsVo;
+import com.ruoyi.cmcc_gm.importer.ImporterMaterialsReturnList;
+import com.ruoyi.cmcc_gm.importer.ImporterMaterialsStock;
+import com.ruoyi.cmcc_gm.mapper.*;
+import com.ruoyi.cmcc_gm.service.YwMaterialsOrderLogService;
+import com.ruoyi.cmcc_gm.service.YwMaterialsStockService;
+import com.ruoyi.common.constant.HttpStatus;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.enums.FlowDealStatus;
+import com.ruoyi.common.exception.ServiceException;
+import com.ruoyi.common.importer.ImporterBase;
+import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.common.utils.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ *
+ * 物资库存表 服务实现类
+ *
+ *
+ * @author jkj
+ * @since 2023-04-06
+ */
+@Service
+public class YwMaterialsStockServiceImpl extends ServiceImpl implements YwMaterialsStockService {
+
+ @Autowired
+ private YwMaterialsStockMapper ywMaterialsStockMapper;
+
+ @Autowired
+ private YwMaterialsOrderLogService ywMaterialsOrderLogService;
+
+ @Autowired
+ private YwMaterialsBatchMapper ywMaterialsBatchMapper;
+
+ @Autowired
+ private YwMaterialsOrderLogMapper ywMaterialsOrderLogMapper;
+
+ @Autowired
+ private YwMaterialsClassesMapper ywMaterialsClassesMapper;
+
+ @Autowired
+ private YwMaterialsInformMapper ywMaterialsInformMapper;
+
+ @Override
+ public List getMaterialsStock(YwMaterialsSearchDTO ywMaterialsSearchDTO) {
+
+ return ywMaterialsStockMapper.getYwMaterial(ywMaterialsSearchDTO);
+
+ }
+
+ @Transactional
+ @Override
+ public Boolean freezeOutWayMaterialsStock(YwMaterialsDTO ywMaterialsDTO, YwMaterialsOrderLog ywMaterialsOrderLog) {
+
+ Long outStoreVenue = ywMaterialsOrderLog.getOutStoreVenue();
+
+ if (outStoreVenue == null || outStoreVenue < 0) {
+ return true;
+ }
+
+ if (!OrderStatus.DSQ.getCode().equals(ywMaterialsOrderLog.getTaskStatus())) {
+ throw new ServiceException("当前步骤和任务状态不同步");
+ }
+
+ //根据orderId查找批次数据
+ List listMaterBat = ywMaterialsBatchMapper.selectList(
+ new LambdaQueryWrapper().eq(YwMaterialsBatch::getOrderid, ywMaterialsDTO.getOrderId())
+ );
+
+ if (!listMaterBat.isEmpty()) {
+ YwMaterialsBatchDTO dto = new YwMaterialsBatchDTO();
+ dto.setStoreId(outStoreVenue);
+ dto.setData(listMaterBat);
+ this.freezeOutWayMaterialsStock(dto);
+ }
+
+ return true;
+ }
+
+ @Transactional
+ @Override
+ public Boolean freezeOutWayMaterialsStock(YwMaterialsBatchDTO ywMaterialsBatchDTO) {
+
+ for (YwMaterialsBatch stockDTO : ywMaterialsBatchDTO.getData()) {
+ LambdaQueryWrapper queryStock = new LambdaQueryWrapper<>();
+
+ queryStock.eq(YwMaterialsStock::getMaterialStoreId, ywMaterialsBatchDTO.getStoreId());
+
+ queryStock.eq(YwMaterialsStock::getMaterialCode, stockDTO.getMaterialCode());
+
+ List materialsStocks = ywMaterialsStockMapper.selectList(queryStock);
+
+ //预处理,冻结要出库仓库的库存
+ if (materialsStocks.isEmpty()) {
+ throw new ServiceException("出库仓库的物资库存不能为空");
+ }
+
+ if (materialsStocks.size() == 1) {
+
+ YwMaterialsStock materialsStock = materialsStocks.get(0);
+
+ if (materialsStock.getAvailSum() < stockDTO.getSum()) {
+ throw new ServiceException("出库仓库的物资库存数量不足");
+ }
+
+ YwMaterialsStock ywMaterialsStock = new YwMaterialsStock();
+
+ ywMaterialsStock.setMaterialStoreId(ywMaterialsBatchDTO.getStoreId());
+
+ ywMaterialsStock.setMaterialCode(stockDTO.getMaterialCode());
+
+ ywMaterialsStock.setAvailSum(materialsStock.getAvailSum() - stockDTO.getSum());
+
+ if (ObjectUtils.isEmpty(materialsStock.getOutWaySum())) {
+ ywMaterialsStock.setOutWaySum(stockDTO.getSum());
+ }
+
+ if (ObjectUtils.isNotEmpty(materialsStock.getOutWaySum())) {
+ ywMaterialsStock.setOutWaySum(materialsStock.getOutWaySum() + stockDTO.getSum());
+ }
+
+ int res = this.updateMaterialsStock(ywMaterialsStock);
+
+ if (res == 0) {
+ throw new ServiceException("冻结出库仓库的物资失败");
+ }
+ }
+
+ if (materialsStocks.size() > 1) {
+ throw new ServiceException("出库仓库的物资库存数据有错误");
+ }
+ }
+
+ return true;
+
+ }
+
+ @Transactional
+ @Override
+ public Boolean freezeOutWayMaterialsStockBack(YwMaterialsBatchDTO ywMaterialsBatchDTO) {
+
+ try {
+ List materialCodes = ywMaterialsBatchDTO.getData().stream()
+ .map(YwMaterialsBatch::getMaterialCode)
+ .distinct()
+ .collect(Collectors.toList());
+
+ LambdaQueryWrapper queryStock = new LambdaQueryWrapper<>();
+
+ queryStock.eq(YwMaterialsStock::getMaterialStoreId, ywMaterialsBatchDTO.getStoreId())
+ .in(YwMaterialsStock::getMaterialCode, materialCodes);
+
+ List materialsStocks = ywMaterialsStockMapper.selectList(queryStock);
+
+ if (materialsStocks.size() != materialCodes.size()) {
+ throw new ServiceException("物资库存数据有错误");
+ }
+
+// List updatedStocks = new ArrayList<>();
+ for (YwMaterialsBatch stockDTO : ywMaterialsBatchDTO.getData()) {
+ YwMaterialsStock materialsStock = materialsStocks.stream()
+ .filter(s -> s.getMaterialCode().equals(stockDTO.getMaterialCode()))
+ .findFirst()
+ .orElseThrow(() -> new ServiceException("物资库存数据有错误"));
+ YwMaterialsStock updatedStock = new YwMaterialsStock();
+ updatedStock.setId(materialsStock.getId());
+ updatedStock.setAvailSum(materialsStock.getAvailSum() + stockDTO.getSum());
+ updatedStock.setOutWaySum(materialsStock.getOutWaySum() - stockDTO.getSum());
+ int res = ywMaterialsStockMapper.updateById(updatedStock);
+ if (res == 0) {
+ throw new ServiceException("回滚出库仓库的冻结物资失败");
+ }
+ }
+
+ return true;
+ }
+ catch (Exception e) {
+ throw new ServiceException("回滚出库仓库的冻结物资失败", e);
+ }
+ }
+
+ @Transactional
+ @Override
+ public Boolean freezeOutWayMaterialsStockBack(YwMaterialsDTO ywMaterialsDTO, YwMaterialsOrderLog ywMaterialsOrderLog) {
+
+ Long outStoreVenue = ywMaterialsOrderLog.getOutStoreVenue();
+
+ if (outStoreVenue == null || outStoreVenue < 0) {
+ return true;
+ }
+
+ LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
+
+ lambdaQueryWrapper.eq(YwMaterialsBatch::getOrderid, ywMaterialsDTO.getOrderId());
+
+ //根据orderId查找批次数据
+ List listMaterBat = ywMaterialsBatchMapper.selectList(lambdaQueryWrapper);
+
+ if (!listMaterBat.isEmpty()) {
+ YwMaterialsBatchDTO dto = new YwMaterialsBatchDTO();
+ dto.setStoreId(outStoreVenue);
+ dto.setData(listMaterBat);
+ this.freezeOutWayMaterialsStockBack(dto);
+ }
+
+ return true;
+ }
+
+ @Override
+ public Boolean updateInWayMaterialsStock(YwMaterialsDTO ywMaterialsDTO) {
+
+ YwMaterialsOrderLog ywMaterialsOrderLog = Validate(ywMaterialsDTO);
+
+ if (!OrderStatus.YSH.getCode().equals(ywMaterialsOrderLog.getTaskStatus())) {
+ throw new ServiceException("当前步骤和任务状态不同步");
+ }
+
+// LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
+//
+// lambdaQueryWrapper.eq(YwMaterialsBatch::getOrderid, ywMaterialsDTO.getOrderId());
+//
+// //根据orderId查找批次数据
+// List listMaterBat = ywMaterialsBatchMapper.selectList(lambdaQueryWrapper);
+//
+// if (listMaterBat.isEmpty()) {
+// throw new ServiceException("没有找到物资批次数据");
+// }
+
+// Long inStoreVenue = ywMaterialsOrderLog.getInStoreVenue();
+//
+// if (ObjectUtils.isEmpty(inStoreVenue)) {
+// throw new ServiceException("入库场馆号异常");
+// }
+//
+// if (inStoreVenue < 0) {
+// return true;
+// }
+//
+//
+// for (YwMaterialsBatch ywMaterialsBatch : listMaterBat) {
+//
+// LambdaQueryWrapper queryStock = new LambdaQueryWrapper<>();
+//
+// queryStock.eq(YwMaterialsStock::getMaterialStoreId, inStoreVenue);
+//
+// queryStock.eq(YwMaterialsStock::getMaterialCode, ywMaterialsBatch.getMaterialCode());
+//
+// List materialsStocks = ywMaterialsStockMapper.selectList(queryStock);
+//
+// YwMaterialsStock ywMaterialsStock = new YwMaterialsStock();
+//
+// ywMaterialsStock.setMaterialStoreId(inStoreVenue);
+//
+// ywMaterialsStock.setMaterialCode(ywMaterialsBatch.getMaterialCode());
+//
+// //新增
+// if (materialsStocks.size() == 0) {
+//
+// ywMaterialsStock.setAvailSum(0);
+//
+// ywMaterialsStock.setInWaySum(ywMaterialsBatch.getSum());
+//
+// this.insertMaterialsStock(ywMaterialsStock);
+//
+// }
+//
+//// 修改
+// if (materialsStocks.size() == 1) {
+// YwMaterialsStock materialsStock = materialsStocks.get(0);
+//
+// if (!ObjectUtils.isEmpty(materialsStock.getInWaySum())) {
+// ywMaterialsStock.setInWaySum(materialsStock.getInWaySum() + ywMaterialsBatch.getSum());
+// }
+//
+// if (ObjectUtils.isEmpty(materialsStock.getInWaySum())) {
+// ywMaterialsStock.setInWaySum(ywMaterialsBatch.getSum());
+// }
+//
+// this.updateMaterialsStock(ywMaterialsStock);
+// }
+//
+//
+// if (materialsStocks.size() > 1) {
+// throw new ServiceException("物资库存数据有错误");
+// }
+//
+// }
+
+ YwMaterialsOrderLogDTO orderDto = new YwMaterialsOrderLogDTO();
+ orderDto.setOrderId(ywMaterialsDTO.getOrderId());
+ orderDto.setOrderType(ywMaterialsDTO.getOrderType());
+ orderDto.setTaskStatus(OrderStatus.YCK.getCode());
+
+ return ywMaterialsOrderLogService.updateMaterialsOrderLogInner(orderDto);
+// return true;
+ }
+
+ @Override
+ public Boolean updateInWayMaterialsStockBack(YwMaterialsDTO ywMaterialsDTO) {
+
+ YwMaterialsOrderLog ywMaterialsOrderLog = Validate(ywMaterialsDTO);
+
+ if (!OrderStatus.YCK.getCode().equals(ywMaterialsOrderLog.getTaskStatus())) {
+ throw new ServiceException("当前步骤和任务状态不同步");
+ }
+
+// LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
+//
+// lambdaQueryWrapper.eq(YwMaterialsBatch::getOrderid, ywMaterialsDTO.getOrderId());
+//
+// //根据orderId查找批次数据
+// List listMaterBat = ywMaterialsBatchMapper.selectList(lambdaQueryWrapper);
+//
+// if (listMaterBat.isEmpty()) {
+// throw new ServiceException("没有找到物资批次数据");
+// }
+//
+// Long inStoreVenue = ywMaterialsOrderLog.getInStoreVenue();
+//
+// if (ObjectUtils.isEmpty(inStoreVenue)) {
+// throw new ServiceException("入库场馆号异常");
+// }
+//
+// if (inStoreVenue < 0) {
+// return true;
+// }
+//
+// for (YwMaterialsBatch ywMaterialsBatch : listMaterBat) {
+//
+// LambdaQueryWrapper queryStock = new LambdaQueryWrapper<>();
+//
+// queryStock.eq(YwMaterialsStock::getMaterialStoreId, inStoreVenue);
+//
+// queryStock.eq(YwMaterialsStock::getMaterialCode, ywMaterialsBatch.getMaterialCode());
+//
+// List materialsStocks = ywMaterialsStockMapper.selectList(queryStock);
+//
+// YwMaterialsStock ywMaterialsStock = new YwMaterialsStock();
+//
+// ywMaterialsStock.setMaterialStoreId(inStoreVenue);
+//
+// ywMaterialsStock.setMaterialCode(ywMaterialsBatch.getMaterialCode());
+//
+// //新增
+// if (materialsStocks.size() == 0) {
+//
+// ywMaterialsStock.setAvailSum(0);
+// ywMaterialsStock.setInWaySum(ywMaterialsBatch.getSum());
+// this.insertMaterialsStock(ywMaterialsStock);
+//
+// }
+//
+//// 修改
+// if (materialsStocks.size() == 1) {
+//
+// YwMaterialsStock materialsStock = materialsStocks.get(0);
+//
+// ywMaterialsStock.setInWaySum(materialsStock.getInWaySum() - ywMaterialsBatch.getSum());
+//
+// this.updateMaterialsStock(ywMaterialsStock);
+// }
+//
+//
+// if (materialsStocks.size() > 1) {
+// throw new ServiceException("物资库存数据有错误");
+// }
+//
+// }
+
+ YwMaterialsOrderLogDTO orderDto = new YwMaterialsOrderLogDTO();
+ orderDto.setOrderId(ywMaterialsDTO.getOrderId());
+ orderDto.setOrderType(ywMaterialsDTO.getOrderType());
+ orderDto.setTaskStatus(OrderStatus.YSH.getCode());
+ ywMaterialsOrderLogService.updateMaterialsOrderLogInner(orderDto);
+ return true;
+ }
+
+
+ @Transactional
+ @Override
+ public Boolean updateMaterialsStock(YwMaterialsDTO ywMaterialsDTO) {
+
+ YwMaterialsOrderLog ywMaterialsOrderLog = Validate(ywMaterialsDTO);
+
+ Long inStoreVenue = ywMaterialsOrderLog.getInStoreVenue();
+
+ if (ObjectUtils.isEmpty(inStoreVenue)) {
+ throw new ServiceException("入库场馆号异常");
+ }
+
+ //中心库做入库确认,任务状态是待审核
+ if (OrderType.ZXK.getCode().equals(ywMaterialsOrderLog.getOrderType())) {
+ if (!OrderStatus.DSH.getCode().equals(ywMaterialsOrderLog.getTaskStatus())) {
+ throw new ServiceException("当前步骤和任务状态不同步");
+ }
+ }
+
+ if (!OrderType.ZXK.getCode().equals(ywMaterialsOrderLog.getOrderType())) {
+
+
+ if(OrderType.CK.getCode().equals(ywMaterialsDTO.getOrderType()))
+ {
+ throw new ServiceException("工程出库没有该操作");
+ }
+
+ //调拨和退库做入库确认,任务状态是已出库
+ if (OrderType.DB.getCode().equals(ywMaterialsOrderLog.getOrderType()) || OrderType.TK.getCode().equals(ywMaterialsDTO.getOrderType())) {
+ if (!OrderStatus.YCK.getCode().equals(ywMaterialsOrderLog.getTaskStatus())) {
+ throw new ServiceException("当前步骤和任务状态不同步");
+ }
+ }
+
+ if (!(OrderType.DB.getCode().equals(ywMaterialsOrderLog.getOrderType()) || OrderType.TK.getCode().equals(ywMaterialsDTO.getOrderType()))) {
+
+ //其它物资订单类型的入库确认,任务状态是已审核
+ if (!OrderStatus.YSH.getCode().equals(ywMaterialsOrderLog.getTaskStatus())) {
+ throw new ServiceException("当前步骤和任务状态不同步");
+ }
+ }
+ }
+
+ LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
+
+ lambdaQueryWrapper.eq(YwMaterialsBatch::getOrderid, ywMaterialsDTO.getOrderId());
+
+ //根据orderId查找批次数据
+ List listMaterBat = ywMaterialsBatchMapper.selectList(lambdaQueryWrapper);
+
+ if (listMaterBat.isEmpty()) {
+ throw new ServiceException("没有找到物资批次数据");
+ }
+
+ if (inStoreVenue >= 0) {
+
+ for (YwMaterialsBatch ywMaterialsBatch : listMaterBat) {
+
+ LambdaQueryWrapper queryStock = new LambdaQueryWrapper<>();
+
+ queryStock.eq(YwMaterialsStock::getMaterialStoreId, inStoreVenue);
+
+ queryStock.eq(YwMaterialsStock::getMaterialCode, ywMaterialsBatch.getMaterialCode());
+
+ List materialsStocks = ywMaterialsStockMapper.selectList(queryStock);
+
+ YwMaterialsStock ywMaterialsStock = new YwMaterialsStock();
+
+ ywMaterialsStock.setMaterialStoreId(inStoreVenue);
+
+ ywMaterialsStock.setMaterialCode(ywMaterialsBatch.getMaterialCode());
+
+ //新增
+ if (materialsStocks.size() == 0) {
+ ywMaterialsStock.setAvailSum(ywMaterialsBatch.getSum());
+ this.insertMaterialsStock(ywMaterialsStock);
+ }
+
+// 修改
+ if (materialsStocks.size() == 1) {
+
+ YwMaterialsStock materialsStock = materialsStocks.get(0);
+
+ ywMaterialsStock.setAvailSum(materialsStock.getAvailSum() + ywMaterialsBatch.getSum());
+
+ //调拨要多做一步把在在途数去掉
+// if (ywMaterialsDTO.getOrderType() == OrderType.DB.getCode() || ywMaterialsDTO.getOrderType() == OrderType.TK.getCode()) {
+// ywMaterialsStock.setInWaySum(materialsStock.getInWaySum() - ywMaterialsBatch.getSum());
+// }
+
+ if (ywMaterialsDTO.getOrderType() != OrderType.ZXK.getCode()) {
+ ywMaterialsStock.setInWaySum(materialsStock.getInWaySum() - ywMaterialsBatch.getSum());
+ }
+
+ this.updateMaterialsStock(ywMaterialsStock);
+
+ }
+
+
+ if (materialsStocks.size() > 1) {
+ throw new ServiceException("物资库存数据有错误");
+ }
+
+ }
+ }
+
+
+ YwMaterialsOrderLogDTO orderDto = new YwMaterialsOrderLogDTO();
+ orderDto.setOrderId(ywMaterialsDTO.getOrderId());
+ orderDto.setOrderType(ywMaterialsDTO.getOrderType());
+// 20230426工程出库,最后状态是已出库,用于解决前端的显示和查询
+ if (OrderType.CK.getCode().equals(ywMaterialsDTO.getOrderType())) {
+ orderDto.setTaskStatus(OrderStatus.YCK.getCode());
+ }
+ if (!OrderType.CK.getCode().equals(ywMaterialsDTO.getOrderType())) {
+ orderDto.setTaskStatus(OrderStatus.YRK.getCode());
+ }
+
+ orderDto.setInStoreName(SecurityUtils.getLoginUser().getUser().getNickName());
+ orderDto.setInStoreId(SecurityUtils.getUserId());
+
+ ywMaterialsOrderLogService.updateMaterialsOrderLogInner(orderDto);
+
+ return true;
+ }
+
+ @Override
+ public Boolean updateMaterialsStockBack(YwMaterialsDTO ywMaterialsDTO) {
+
+
+ YwMaterialsOrderLog ywMaterialsOrderLog = Validate(ywMaterialsDTO);
+
+ if (!OrderStatus.YRK.getCode().equals(ywMaterialsOrderLog.getTaskStatus())) {
+ throw new ServiceException("当前任务状态不是已入库,无法回滚");
+ }
+
+ LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
+
+ lambdaQueryWrapper.eq(YwMaterialsBatch::getOrderid, ywMaterialsDTO.getOrderId());
+
+ //根据orderId查找批次数据
+ List listMaterBat = ywMaterialsBatchMapper.selectList(lambdaQueryWrapper);
+
+ if (listMaterBat.isEmpty()) {
+ throw new ServiceException("没有找到物资批次数据");
+ }
+
+ Long inStoreVenue = ywMaterialsOrderLog.getInStoreVenue();
+
+ Long outStoreVenue = ywMaterialsOrderLog.getOutStoreVenue();
+
+ if (inStoreVenue >= 0) {
+
+ for (YwMaterialsBatch ywMaterialsBatch : listMaterBat) {
+
+ LambdaQueryWrapper queryStock = new LambdaQueryWrapper<>();
+
+ queryStock.eq(YwMaterialsStock::getMaterialStoreId, inStoreVenue);
+
+ queryStock.eq(YwMaterialsStock::getMaterialCode, ywMaterialsBatch.getMaterialCode());
+
+ List materialsStocks = ywMaterialsStockMapper.selectList(queryStock);
+
+ YwMaterialsStock ywMaterialsStock = new YwMaterialsStock();
+
+ ywMaterialsStock.setMaterialStoreId(inStoreVenue);
+
+ ywMaterialsStock.setMaterialCode(ywMaterialsBatch.getMaterialCode());
+
+// 修改
+ if (materialsStocks.size() == 1) {
+ YwMaterialsStock materialsStock = materialsStocks.get(0);
+
+ if (!OrderType.DB.getCode().equals(ywMaterialsDTO.getOrderType())) {
+ ywMaterialsStock.setAvailSum(materialsStock.getAvailSum() - ywMaterialsBatch.getSum());
+ }
+ if (OrderType.DB.getCode().equals(ywMaterialsDTO.getOrderType())) {
+
+ ywMaterialsStock.setAvailSum(materialsStock.getAvailSum() - ywMaterialsBatch.getSum());
+ ywMaterialsStock.setInWaySum(materialsStock.getInWaySum() + ywMaterialsBatch.getSum());
+
+ }
+ this.updateMaterialsStock(ywMaterialsStock);
+ }
+
+
+ if (materialsStocks.size() > 1) {
+ throw new ServiceException("物资库存数据有错误");
+ }
+
+ }
+ }
+
+ if (outStoreVenue >= 0) {
+ //入库场馆入库了才会消掉出库场馆的冻结数
+ //20230506审核通过了,直接消掉出库场馆的冻结数
+ for (YwMaterialsBatch ywMaterialsBatch : listMaterBat) {
+
+ LambdaQueryWrapper queryStock = new LambdaQueryWrapper<>();
+
+ queryStock.eq(YwMaterialsStock::getMaterialStoreId, outStoreVenue);
+
+ queryStock.eq(YwMaterialsStock::getMaterialCode, ywMaterialsBatch.getMaterialCode());
+
+ List materialsStocks = ywMaterialsStockMapper.selectList(queryStock);
+
+ YwMaterialsStock ywMaterialsStock = new YwMaterialsStock();
+
+ ywMaterialsStock.setMaterialStoreId(outStoreVenue);
+
+ ywMaterialsStock.setMaterialCode(ywMaterialsBatch.getMaterialCode());
+
+ if (materialsStocks.size() == 0) {
+ throw new ServiceException("出库场馆的物资库存数据不存在");
+ }
+
+ if (materialsStocks.size() == 1) {
+
+ YwMaterialsStock materialsStock = materialsStocks.get(0);
+
+ ywMaterialsStock.setOutWaySum(materialsStock.getOutWaySum() + ywMaterialsBatch.getSum());
+
+ this.updateMaterialsStock(ywMaterialsStock);
+
+ }
+
+ }
+
+ }
+
+ YwMaterialsOrderLogDTO orderDto = new YwMaterialsOrderLogDTO();
+ orderDto.setOrderId(ywMaterialsDTO.getOrderId());
+ orderDto.setOrderType(ywMaterialsDTO.getOrderType());
+
+ if (OrderType.ZXK.getCode().equals(ywMaterialsOrderLog.getOrderType())) {
+ orderDto.setTaskStatus(OrderStatus.DSH.getCode());
+ } else {
+ if (!OrderType.DB.getCode().equals(ywMaterialsOrderLog.getOrderType())) {
+ orderDto.setTaskStatus(OrderStatus.YSH.getCode());
+ }
+
+ if (OrderType.DB.getCode().equals(ywMaterialsOrderLog.getOrderType())) {
+ orderDto.setTaskStatus(OrderStatus.YCK.getCode());
+ }
+ }
+ orderDto.setInStoreName("");
+ orderDto.setInStoreId(-1L);
+ ywMaterialsOrderLogService.updateMaterialsOrderLogInner(orderDto);
+
+ return true;
+
+ }
+
+ //冻结数据释放掉
+ @Transactional
+ @Override
+ public Boolean updateFreezeOutWayMaterialsStock(YwMaterialsDTO ywMaterialsDTO) {
+
+ YwMaterialsOrderLog ywMaterialsOrderLog = Validate(ywMaterialsDTO);
+
+ Long inStoreVenue = ywMaterialsOrderLog.getInStoreVenue();
+
+ if (ObjectUtils.isEmpty(inStoreVenue)) {
+ throw new ServiceException("入库场馆号异常");
+ }
+
+ Long outStoreVenue = ywMaterialsOrderLog.getOutStoreVenue();
+
+ if (ObjectUtils.isEmpty(outStoreVenue)) {
+ throw new ServiceException("出库场馆号异常");
+ }
+
+ YwMaterialsOrderLogDTO orderDto = new YwMaterialsOrderLogDTO();
+ orderDto.setOrderId(ywMaterialsOrderLog.getOrderId());
+ orderDto.setOrderType(ywMaterialsOrderLog.getOrderType());
+ orderDto.setInStoreName(ywMaterialsDTO.getAuditor());
+
+ if(OrderType.SL.getCode().equals(ywMaterialsDTO.getOrderType())|| OrderType.RK.getCode().equals(ywMaterialsDTO.getOrderType())) {
+ if (!OrderStatus.DSH.getCode().equals(ywMaterialsOrderLog.getTaskStatus())) {
+ throw new ServiceException("当前步骤和任务状态不同步");
+ }
+ orderDto.setTaskStatus(OrderStatus.YSH.getCode());
+ }
+
+ if(OrderType.TK.getCode().equals(ywMaterialsDTO.getOrderType()) || OrderType.CK.getCode().equals(ywMaterialsDTO.getOrderType()) || OrderType.DB.getCode().equals(ywMaterialsDTO.getOrderType())) {
+ if (!OrderStatus.YSH.getCode().equals(ywMaterialsOrderLog.getTaskStatus())) {
+ throw new ServiceException("当前步骤和任务状态不同步");
+ }
+ orderDto.setTaskStatus(OrderStatus.YCK.getCode());
+ }
+
+ LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
+
+ lambdaQueryWrapper.eq(YwMaterialsBatch::getOrderid, ywMaterialsDTO.getOrderId());
+
+ //根据orderId查找批次数据
+ List listMaterBat = ywMaterialsBatchMapper.selectList(lambdaQueryWrapper);
+
+ if (listMaterBat.isEmpty()) {
+ throw new ServiceException("没有找到物资批次数据");
+ }
+
+ if (outStoreVenue >= 0) {
+ //20230506审核通过,消掉出库场馆的冻结数
+ for (YwMaterialsBatch ywMaterialsBatch : listMaterBat) {
+
+ LambdaQueryWrapper queryStock = new LambdaQueryWrapper<>();
+
+ queryStock.eq(YwMaterialsStock::getMaterialStoreId, outStoreVenue);
+
+ queryStock.eq(YwMaterialsStock::getMaterialCode, ywMaterialsBatch.getMaterialCode());
+
+ List materialsStocks = ywMaterialsStockMapper.selectList(queryStock);
+
+ YwMaterialsStock ywMaterialsStock = new YwMaterialsStock();
+
+ ywMaterialsStock.setMaterialStoreId(outStoreVenue);
+
+ ywMaterialsStock.setMaterialCode(ywMaterialsBatch.getMaterialCode());
+
+ if (materialsStocks.size() == 0) {
+ throw new ServiceException("出库场馆的物资库存数据不存在");
+ }
+
+ if (materialsStocks.size() == 1) {
+
+ YwMaterialsStock materialsStock = materialsStocks.get(0);
+
+ if (ObjectUtils.isEmpty(materialsStock.getOutWaySum())) {
+ throw new ServiceException("出库场馆的冻结库存数据有问题");
+ }
+
+ if (!ObjectUtils.isEmpty(materialsStock.getOutWaySum())) {
+
+ if (materialsStock.getOutWaySum() < ywMaterialsBatch.getSum()) {
+
+ throw new ServiceException("出库场馆的冻结库存数据居然小于出库的库存数");
+ }
+
+ ywMaterialsStock.setOutWaySum(materialsStock.getOutWaySum() - ywMaterialsBatch.getSum());
+
+ }
+
+ this.updateMaterialsStock(ywMaterialsStock);
+
+ }
+
+ }
+
+ }
+
+
+ if (inStoreVenue >= 0) {
+
+ for (YwMaterialsBatch ywMaterialsBatch : listMaterBat) {
+
+ LambdaQueryWrapper queryStock = new LambdaQueryWrapper<>();
+
+ queryStock.eq(YwMaterialsStock::getMaterialStoreId, inStoreVenue);
+
+ queryStock.eq(YwMaterialsStock::getMaterialCode, ywMaterialsBatch.getMaterialCode());
+
+ List materialsStocks = ywMaterialsStockMapper.selectList(queryStock);
+
+ YwMaterialsStock ywMaterialsStock = new YwMaterialsStock();
+
+ ywMaterialsStock.setMaterialStoreId(inStoreVenue);
+
+ ywMaterialsStock.setMaterialCode(ywMaterialsBatch.getMaterialCode());
+
+ //新增
+ if (materialsStocks.size() == 0) {
+
+ ywMaterialsStock.setAvailSum(0);
+
+ ywMaterialsStock.setInWaySum(ywMaterialsBatch.getSum());
+
+ this.insertMaterialsStock(ywMaterialsStock);
+
+ }
+
+// 修改
+ if (materialsStocks.size() == 1) {
+ YwMaterialsStock materialsStock = materialsStocks.get(0);
+
+ if (!ObjectUtils.isEmpty(materialsStock.getInWaySum())) {
+ ywMaterialsStock.setInWaySum(materialsStock.getInWaySum() + ywMaterialsBatch.getSum());
+ }
+
+ if (ObjectUtils.isEmpty(materialsStock.getInWaySum())) {
+ ywMaterialsStock.setInWaySum(ywMaterialsBatch.getSum());
+ }
+
+ this.updateMaterialsStock(ywMaterialsStock);
+ }
+
+
+ if (materialsStocks.size() > 1) {
+ throw new ServiceException("物资库存数据有错误");
+ }
+
+ }
+ }
+
+ ywMaterialsOrderLogService.updateMaterialsOrderLogInner(orderDto);
+
+ return true;
+
+ }
+
+ @Override
+ public Boolean updateFreezeOutWayMaterialsStockBack(YwMaterialsDTO ywMaterialsDTO) {
+
+ YwMaterialsOrderLog ywMaterialsOrderLog = Validate(ywMaterialsDTO);
+
+ Long inStoreVenue = ywMaterialsOrderLog.getInStoreVenue();
+
+ if (ObjectUtils.isEmpty(inStoreVenue)) {
+ throw new ServiceException("入库场馆号异常");
+ }
+
+ YwMaterialsOrderLogDTO orderDto = new YwMaterialsOrderLogDTO();
+ orderDto.setOrderId(ywMaterialsOrderLog.getOrderId());
+ orderDto.setOrderType(ywMaterialsOrderLog.getOrderType());
+
+ if(OrderType.SL.getCode().equals(ywMaterialsDTO.getOrderType())|| OrderType.RK.getCode().equals(ywMaterialsDTO.getOrderType())) {
+ if (!OrderStatus.YSH.getCode().equals(ywMaterialsOrderLog.getTaskStatus())) {
+ throw new ServiceException("当前步骤和任务状态不同步");
+ }
+ orderDto.setTaskStatus(OrderStatus.DSH.getCode());
+ }
+
+ if(OrderType.TK.getCode().equals(ywMaterialsDTO.getOrderType()) || OrderType.CK.getCode().equals(ywMaterialsDTO.getOrderType()) || OrderType.DB.getCode().equals(ywMaterialsDTO.getOrderType())) {
+ if (!OrderStatus.YCK.getCode().equals(ywMaterialsOrderLog.getTaskStatus())) {
+ throw new ServiceException("当前步骤和任务状态不同步");
+ }
+ orderDto.setTaskStatus(OrderStatus.YSH.getCode());
+ }
+
+ LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
+
+ lambdaQueryWrapper.eq(YwMaterialsBatch::getOrderid, ywMaterialsDTO.getOrderId());
+
+ //根据orderId查找批次数据
+ List listMaterBat = ywMaterialsBatchMapper.selectList(lambdaQueryWrapper);
+
+ if (listMaterBat.isEmpty()) {
+ throw new ServiceException("没有找到物资批次数据");
+ }
+
+ Long outStoreVenue = ywMaterialsOrderLog.getOutStoreVenue();
+
+ if (ObjectUtils.isEmpty(outStoreVenue)) {
+ throw new ServiceException("出库场馆号异常");
+ }
+
+ if (outStoreVenue >= 0) {
+
+ for (YwMaterialsBatch ywMaterialsBatch : listMaterBat) {
+
+ LambdaQueryWrapper queryStock = new LambdaQueryWrapper<>();
+
+ queryStock.eq(YwMaterialsStock::getMaterialStoreId, outStoreVenue);
+
+ queryStock.eq(YwMaterialsStock::getMaterialCode, ywMaterialsBatch.getMaterialCode());
+
+ List materialsStocks = ywMaterialsStockMapper.selectList(queryStock);
+
+ YwMaterialsStock ywMaterialsStock = new YwMaterialsStock();
+
+ ywMaterialsStock.setMaterialStoreId(outStoreVenue);
+
+ ywMaterialsStock.setMaterialCode(ywMaterialsBatch.getMaterialCode());
+
+ if (materialsStocks.size() == 0) {
+ throw new ServiceException("出库场馆的物资库存数据不存在");
+ }
+
+ if (materialsStocks.size() == 1) {
+
+ YwMaterialsStock materialsStock = materialsStocks.get(0);
+
+ if (ObjectUtils.isEmpty(materialsStock.getOutWaySum())) {
+ throw new ServiceException("出库场馆的冻结库存数据有问题");
+ }
+
+ if (!ObjectUtils.isEmpty(materialsStock.getOutWaySum())) {
+
+ ywMaterialsStock.setOutWaySum(materialsStock.getOutWaySum() + ywMaterialsBatch.getSum());
+
+ }
+
+ this.updateMaterialsStock(ywMaterialsStock);
+
+ }
+
+ }
+
+ }
+
+
+ if (inStoreVenue >= 0) {
+
+ for (YwMaterialsBatch ywMaterialsBatch : listMaterBat) {
+
+ LambdaQueryWrapper queryStock = new LambdaQueryWrapper<>();
+
+ queryStock.eq(YwMaterialsStock::getMaterialStoreId, inStoreVenue);
+
+ queryStock.eq(YwMaterialsStock::getMaterialCode, ywMaterialsBatch.getMaterialCode());
+
+ List materialsStocks = ywMaterialsStockMapper.selectList(queryStock);
+
+ YwMaterialsStock ywMaterialsStock = new YwMaterialsStock();
+
+ ywMaterialsStock.setMaterialStoreId(inStoreVenue);
+
+ ywMaterialsStock.setMaterialCode(ywMaterialsBatch.getMaterialCode());
+
+ //新增
+ if (materialsStocks.size() == 0) {
+
+ throw new ServiceException("物资库存数据有错误");
+
+ }
+
+ // 修改
+ if (materialsStocks.size() == 1) {
+
+ YwMaterialsStock materialsStock = materialsStocks.get(0);
+
+ ywMaterialsStock.setInWaySum(materialsStock.getInWaySum() - ywMaterialsBatch.getSum());
+
+ this.updateMaterialsStock(ywMaterialsStock);
+ }
+
+
+ if (materialsStocks.size() > 1) {
+ throw new ServiceException("物资库存数据有错误");
+ }
+
+ }
+ }
+
+
+
+ ywMaterialsOrderLogService.updateMaterialsOrderLogInner(orderDto);
+
+ return true;
+ }
+
+ @Override
+ public YwMaterialsOrderLog Validate(YwMaterialsDTO ywMaterialsDTO) {
+
+ if (StringUtils.isEmpty(ywMaterialsDTO.getOrderId())) {
+ throw new ServiceException("物资工单ID不能为空");
+ }
+
+ LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
+
+ lambdaQueryWrapper.eq(YwMaterialsOrderLog::getOrderId, ywMaterialsDTO.getOrderId());
+
+ lambdaQueryWrapper.eq(YwMaterialsOrderLog::getOrderType, ywMaterialsDTO.getOrderType());
+
+ //根据物资order表查找order是否存在
+ List list = ywMaterialsOrderLogMapper.selectList(lambdaQueryWrapper);
+
+ if (list.isEmpty()) {
+ throw new ServiceException("物资工单数据不存在");
+ }
+
+ //核查当前操作的人员
+ YwMaterialsOrderLog ywMaterialsOrderLog = list.get(0);
+
+ if (FlowDealStatus.BUSINESS_STATUS_4.getCode().equals(ywMaterialsOrderLog.getTaskStatus())) {
+ if (StringUtils.isNotEmpty(ywMaterialsDTO.getIsBack())) {
+
+ if (!ywMaterialsDTO.getIsBack().equals("是")) {
+ throw new ServiceException("物资工单已完结");
+ }
+
+ }
+ }
+
+ //工程出库不需要验证入库场馆
+ if (OrderType.CK.getCode().equals(ywMaterialsOrderLog.getOrderType())) {
+
+ if (ObjectUtils.isEmpty(ywMaterialsOrderLog.getInStoreVenue())) {
+ throw new ServiceException("物资工单入库场馆数据有错误");
+ }
+
+ }
+
+ //不是更新中心库,需要有出库场馆的ID
+ if (!(OrderType.ZXK.getCode().equals(ywMaterialsDTO.getOrderType()) || OrderType.RK.getCode().equals(ywMaterialsDTO.getOrderType()))) {
+ if (ObjectUtils.isEmpty(ywMaterialsOrderLog.getOutStoreVenue())) {
+ throw new ServiceException("物资工单出库场馆数据有错误");
+ }
+ }
+
+ if (ywMaterialsDTO.getOpType().equals("审核任务")) {
+
+ //从工作流获取当前用户的审核人
+ Long shrId = ywMaterialsOrderLogMapper.selectCheckUserIdByFlwId(ywMaterialsOrderLog.getFlwProcessid());
+
+ if(ObjectUtils.isEmpty(shrId))
+ {
+ throw new ServiceException("物资工单的审核人不存在");
+ }
+
+ if (!SecurityUtils.getUserId().equals(shrId)) {
+ throw new ServiceException("审核人不正确");
+ }
+
+ }
+
+ return ywMaterialsOrderLog;
+
+ }
+
+ @Override
+ public int insertMaterialsStock(YwMaterialsStock ywMaterialsStock) {
+
+ return ywMaterialsStockMapper.insert(ywMaterialsStock);
+
+ }
+
+ @Override
+ public int updateMaterialsStock(YwMaterialsStock ywMaterialsStock) {
+
+ //根据库号和物资号,修改库存数据
+ LambdaQueryWrapper condition = new LambdaQueryWrapper<>();
+ condition.eq(YwMaterialsStock::getMaterialStoreId, ywMaterialsStock.getMaterialStoreId());
+ condition.eq(YwMaterialsStock::getMaterialCode, ywMaterialsStock.getMaterialCode());
+
+ return ywMaterialsStockMapper.update(ywMaterialsStock, condition);
+ }
+
+ /**
+ * 导入
+ *
+ * @param beans 数据
+ * @param sceneBigId 大场景id
+ * @param importType 导入方式
+ * @param materialStoreId materialStoreId
+ * @return 导入结果
+ */
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public AjaxResult importXls(List beans, Long sceneBigId, String importType, Long materialStoreId) throws Exception {
+ ImporterBase importer = new ImporterMaterialsStock(ywMaterialsStockMapper, ywMaterialsClassesMapper, ywMaterialsInformMapper);
+ return importer.doAdd(beans, sceneBigId, importType, materialStoreId);
+ }
+
+ /**
+ * 导入,返回List
+ *
+ * @param xls 数据
+ * @param sceneId
+ * @return 导入的数据
+ * @throws Exception 异常
+ */
+ @Override
+ public AjaxResult importXlsReturnList(List xls, Long sceneId) throws Exception {
+ ImporterBase importer = new ImporterMaterialsReturnList(ywMaterialsClassesMapper, ywMaterialsStockMapper, ywMaterialsInformMapper);
+ AjaxResult ajaxResult = importer.doAdd(xls, null, null, sceneId);
+ if (String.valueOf(HttpStatus.SUCCESS).equals(String.valueOf(ajaxResult.get(AjaxResult.CODE_TAG)))) {
+ JSONArray jsonArray = new JSONArray();
+ for (MaterialsXlsToJsonArrayVo xl : xls) {
+ LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
+ wrapper.eq(YwMaterialsStock::getMaterialStoreId, sceneId).eq(YwMaterialsStock::getMaterialCode, xl.getMaterialCode()).ge(YwMaterialsStock::getAvailSum, Integer.parseInt(xl.getSum()));
+ List list = ywMaterialsStockMapper.selectList(wrapper);
+ if (CollectionUtil.isNotEmpty(list)) {
+ xl.setAvailSum(String.valueOf(list.get(0).getAvailSum()));
+ }
+ JSONObject jsonObject = JSONObject.parseObject(JSON.toJSONString(xl));
+ jsonObject.remove("reason");
+ jsonArray.add(jsonObject);
+ }
+ return AjaxResult.success(jsonArray);
+ } else {
+ return ajaxResult;
+ }
+ }
+
+}
diff --git a/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsBatchMapper.xml b/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsBatchMapper.xml
new file mode 100644
index 0000000000000000000000000000000000000000..5f2ce5c73d04b9dfc8ab0995efacc2c0c3d16f1a
--- /dev/null
+++ b/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsBatchMapper.xml
@@ -0,0 +1,72 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ insert into public.yw_materials_batch(orderid, material_code, sum)
+ values
+
+ (#{entity.orderid}, #{entity.materialCode}, #{entity.sum})
+
+
+
+
+
+ update public.yw_materials_batch
+
+
+ WHEN #{entity.materialCode} THEN #{entity.inSum}
+
+
+ WHEN #{entity.materialCode} THEN #{entity.outSum}
+
+
+
+
+ #{entity.materialCode}
+
+ and orderid = #{orderId}
+
+
+
+
+ SELECT
+ batch.orderid,
+ batch.material_code,
+
+ COALESCE(yms.avail_sum,0) avail_sum,
+ COALESCE(batch.sum,0) as "sum",
+ COALESCE(batch.out_sum,0) as out_sum,
+ COALESCE(batch.in_sum,0) as in_sum,
+ ymi.material_name,
+ ymi.material_stand,
+ ymi.material_unit,
+ ymi.material_big_class,
+ ymi.material_small_class,
+ ymi.sn_code
+ FROM "yw_materials_batch" batch
+ left join yw_materials_inform ymi on batch.material_code=ymi.material_code
+ left join yw_materials_order_log ymol on batch.orderid=ymol.order_id
+ left join yw_materials_stock yms on ymol.out_store_venue=yms.material_store_id and batch.material_code=yms.material_code
+ where batch.orderid=#{orderid}
+ order by batch.material_code
+
+
+
+ delete
+ from yw_materials_batch
+ where orderid = #{orderid,jdbcType=VARCHAR}
+
+
+
+
diff --git a/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsClassesMapper.xml b/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsClassesMapper.xml
new file mode 100644
index 0000000000000000000000000000000000000000..488141d40eff9486f6188b7cd74dd5bed57ae62f
--- /dev/null
+++ b/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsClassesMapper.xml
@@ -0,0 +1,41 @@
+
+
+
+
+
+ SELECT big_class ,string_agg( distinct small_class, ',') small_class
+ FROM yw_materials_classes
+ group by big_class
+
+
+ select id,big_class as bigClass,small_class as smallClass
+ from yw_materials_classes
+
+
+ AND big_class = #{bigClass,jdbcType=VARCHAR}
+
+
+ AND small_class = #{smallClass,jdbcType=VARCHAR}
+
+
+
+
+ select id,big_class as bigClass,small_class as smallClass
+ from yw_materials_classes
+
+
+ and big_class = #{bigClass,jdbcType=VARCHAR}
+
+
+ AND small_class = #{smallClass,jdbcType=VARCHAR}
+
+
+ order by id
+
+
+
+ truncate table yw_materials_classes;
+
+
+
+
diff --git a/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsInformMapper.xml b/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsInformMapper.xml
new file mode 100644
index 0000000000000000000000000000000000000000..d2a47c182a613978782b3300724836bec86ce559
--- /dev/null
+++ b/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsInformMapper.xml
@@ -0,0 +1,100 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ insert into public.yw_materials_inform(material_name, material_code, material_stand, material_unit, material_big_class, material_small_class, sn_code, factory)
+ values
+
+ (#{entity.materialName}, #{entity.materialCode}, #{entity.materialStand}, #{entity.materialUnit}, #{entity.materialBigClass}, #{entity.materialSmallClass}, #{entity.snCode}, #{entity.factory})
+
+
+
+
+ insert into public.yw_materials_inform(material_name, material_code, material_stand, material_unit, material_big_class, material_small_class, sn_code)
+ values
+
+ (#{entity.materialName}, #{entity.materialCode}, #{entity.materialStand}, #{entity.materialUnit}, #{entity.materialBigClass}, #{entity.materialSmallClass}, #{entity.snCode})
+
+ on duplicate key update
+ material_name = values(material_name) , material_code = values(material_code) , material_stand = values(material_stand) , material_unit = values(material_unit) , material_big_class = values(material_big_class) , material_small_class = values(material_small_class) , sn_code = values(sn_code)
+
+
+ select material_code
+ from yw_materials_inform
+ where
+ material_name = #{materialName,jdbcType=VARCHAR}
+ AND material_stand = #{materialStand,jdbcType=VARCHAR}
+
+
+
+ select material_code
+ from yw_materials_inform
+ where
+ material_name = #{materialName,jdbcType=VARCHAR}
+ AND material_stand = #{materialStand,jdbcType=VARCHAR}
+ AND material_code = #{materialCode,jdbcType=VARCHAR}
+
+
+
+
+
+
+ AND material_code = #{materialCode}
+
+
+
+
+ AND material_name = #{materialName}
+
+
+
+
+ AND material_stand = #{materialStand}
+
+
+
+ AND sn_code = #{snCode}
+
+
+
+
+
+ select * from yw_materials_inform where 1=1
+
+ order by material_code
+
+
+ delete
+ from yw_materials_inform
+
+
+ select id,
+ material_name as materialName, material_code as materialCode, factory,
+ material_stand as materialStand, material_unit as materialUnit,
+ material_big_class as materialBigClass, material_small_class as materialSmallClass,
+ sn_code as snCode
+ from yw_materials_inform where 1 = 1
+
+
+ order by id
+
+
+
+ delete from yw_materials_inform t1 where not exists (SELECT 1 FROM yw_materials_stock t2 where t1.material_code = t2.material_code)
+
+
+
+
diff --git a/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsOrderLogMapper.xml b/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsOrderLogMapper.xml
new file mode 100644
index 0000000000000000000000000000000000000000..735babac54478cae50c113adc96123c375159b39
--- /dev/null
+++ b/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsOrderLogMapper.xml
@@ -0,0 +1,140 @@
+
+
+
+
+
+
+
+
+
+ and t1.order_id = like CONCAT('%',#{orderId} :: text,'%')
+
+
+
+
+ and t1.order_type = #{orderType}
+
+
+
+
+ and t1.task_status = #{taskStatus}
+
+
+
+ and t1.flw_processid = #{flwId}
+
+
+
+ and t1.in_store_venue = #{inStoreId}
+
+
+
+ and t1.in_store_venue in
+
+ #{arrInStoreId}
+
+
+
+
+ and t1.out_store_venue = #{outStoreId}
+
+
+
+ and t1.out_store_venue in
+
+ #{arrOutStoreId}
+
+
+
+
+ and t1.task_start_time between to_timestamp(#{searchDate}||' 00:00:00','yyyy-mm-dd hh24:mi:ss') and to_timestamp(#{searchDate}||' 23:59:59','yyyy-mm-dd hh24:mi:ss')
+
+
+
+
+
+ SELECT
+ t1.id,
+ t1.order_id,
+ t1.order_type,
+ t1.flw_processid,
+ case when su1.user_id is null then t1.apply_name else su1.nick_name end apply_name,
+ case when su2.user_id is null then t1.check_name else su2.nick_name end check_name,
+ case when su3.user_id is null then t1.in_store_name else su3.nick_name end in_store_name,
+ t1.task_status,
+ t1.task_start_time,
+ t1.in_store_venue,
+ t1.out_store_venue,
+ t1.wire_task_id,
+ t1.file_url,
+ t1.file_name,
+ t1.check_id,
+ t1.apply_id,
+ t1.in_store_id,
+ task.id_ task_id,
+ t_status.text_ deal_status,
+ case when t1.in_store_venue=0 then '塘栖库' else ys1.venue_name || '库' end in_venue_name,
+ case when t1.out_store_venue=0 then '塘栖库' else ys2.venue_name || '库' end out_venue_name
+ FROM "yw_materials_order_log" t1
+ left join act_ru_task task on t1.flw_processid=task.proc_inst_id_
+ LEFT JOIN ( SELECT act_hi_varinst.proc_inst_id_,
+ act_hi_varinst.text_,
+ act_hi_varinst.last_updated_time_
+ FROM act_hi_varinst
+ WHERE act_hi_varinst.name_::text = 'processStatus'::text) t_status ON t1.flw_processid::text = t_status.proc_inst_id_::text
+ left join yw_scene ys1 on t1.in_store_venue=ys1.id
+ left join yw_scene ys2 on t1.out_store_venue=ys2.id
+ left join (select user_id,nick_name from sys_user where del_flag = '0') su1 on t1.apply_id = su1.user_id
+ left join (select user_id,nick_name from sys_user where del_flag = '0') su2 on t1.check_id = su2.user_id
+ left join (select user_id,nick_name from sys_user where del_flag = '0') su3 on t1.in_store_id = su3.user_id
+ where 1=1
+
+ order by t1.task_start_time desc
+
+
+
+ select text_::numeric as user_id from act_ru_variable where name_='select_shr' and text_ !='' and text_ is not null
+ and proc_inst_id_ = #{flwId}
+
+
+
+ select
+ t1.id,
+ t1.order_id,
+ t1.order_type,
+ t1.flw_processid,
+ case when su1.user_id is null then t1.apply_name else su1.nick_name end apply_name,
+ case when su2.user_id is null then t1.check_name else su2.nick_name end check_name,
+ case when su3.user_id is null then t1.in_store_name else su3.nick_name end in_store_name,
+ t1.task_status,
+ t1.task_start_time,
+ t1.in_store_venue,
+ t1.out_store_venue,
+ t1.wire_task_id,
+ t1.file_url,
+ t1.file_name,
+ t1.check_id,
+ t1.apply_id,
+ t1.in_store_id,
+ case when t1.in_store_venue=0 then '塘栖库' else ys1.venue_name || '库' end in_venue_name,
+ case when t1.out_store_venue=0 then '塘栖库' else ys2.venue_name || '库' end out_venue_name,
+ t2.sum material_num
+ from yw_materials_order_log t1
+ left join
+ (select * from yw_materials_batch where material_code = #{materialCode}) t2 on t1.order_id = t2.orderid
+ left join yw_scene ys1 on t1.in_store_venue=ys1.id
+ left join yw_scene ys2 on t1.out_store_venue=ys2.id
+ left join (select user_id,nick_name from sys_user where del_flag = '0') su1 on t1.apply_id = su1.user_id
+ left join (select user_id,nick_name from sys_user where del_flag = '0') su2 on t1.check_id = su2.user_id
+ left join (select user_id,nick_name from sys_user where del_flag = '0') su3 on t1.in_store_id = su3.user_id
+ where (t1.in_store_venue = #{materialStoreId} or t1.out_store_venue = #{materialStoreId})
+ and t1.order_id in (select orderid from yw_materials_batch where material_code = #{materialCode} )
+ and t1.task_status='4'
+ order by task_start_time desc
+
+
+
\ No newline at end of file
diff --git a/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsSnListMapper.xml b/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsSnListMapper.xml
new file mode 100644
index 0000000000000000000000000000000000000000..f9e4d474852722ab26880478aa512abdf4ec47f5
--- /dev/null
+++ b/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsSnListMapper.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+ insert into public.yw_materials_list(orderid, material_code, material_str_code, op_type)
+ values
+
+ (#{entity.orderid}, #{entity.materialCode}, #{entity.materialStrCode}, #{entity.opType})
+
+
+
+
+ SELECT
+ sn.orderid,
+ sn.material_code,
+ sn.material_str_code,
+ ymi.material_name,
+ ymi.material_stand,
+ ymi.material_unit,
+ ymi.material_big_class,
+ ymi.material_small_class
+ FROM yw_materials_list sn
+ left join yw_materials_inform ymi on sn.material_code=ymi.material_code
+ left join yw_materials_order_log ymol on sn.orderid=ymol.order_id
+ where sn.orderid=#{orderId} and sn.material_code = #{materialCode} and op_type = #{opType}
+ order by sn.material_code
+
+
+
+
diff --git a/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsStockMapper.xml b/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsStockMapper.xml
new file mode 100644
index 0000000000000000000000000000000000000000..2a879fa2d4c04801ddc501daa964f222f21adb58
--- /dev/null
+++ b/cmcc_gm/src/main/resources/mapper/cmcc_gm/YwMaterialsStockMapper.xml
@@ -0,0 +1,135 @@
+
+
+
+
+
+
+
+
+
+ and yms.material_store_id = #{storeId}
+
+
+ and yms.material_store_id > 0
+
+
+
+
+ and yms.material_store_id in
+
+ #{arrStoreId}
+
+
+
+
+
+ and ymi.material_stand = #{materialStand}
+
+
+
+
+ and ymi.material_name = #{materialName}
+
+
+
+
+
+ and ymi.material_big_class = #{materialBigClass}
+
+
+
+
+ and ymi.material_small_class = #{materialSmallClass}
+
+
+
+
+
+ with t_zxk as
+ (
+ select 0 material_store_id,material_code,sum(sum) num from yw_materials_batch t_batch left join yw_materials_order_log t_order on t_batch.orderid = t_order.order_id
+ where orderid like 'ZXK%' and t_order.task_status = '4'
+ group by material_code
+ ),
+ t_sl as
+ (
+ select 0 material_store_id,material_code,sum(sum) num from yw_materials_batch t_batch left join yw_materials_order_log t_order on t_batch.orderid = t_order.order_id
+ where orderid like 'SL%' and t_order.task_status != '0' and t_order.task_status != '1'
+ group by material_code
+ union
+ select t_order.in_store_venue ,material_code,sum(sum) num from yw_materials_batch t_batch left join yw_materials_order_log t_order on t_batch.orderid = t_order.order_id
+ where orderid like 'SL%' and t_order.task_status != '0' and t_order.task_status != '1'
+ group by t_order.in_store_venue ,material_code
+ ),
+ t_tk as
+ (
+ select 0 material_store_id,material_code,sum(sum) num from yw_materials_batch t_batch left join yw_materials_order_log t_order on t_batch.orderid = t_order.order_id
+ where orderid like 'TK%' and t_order.task_status = '4'
+ group by material_code
+ union
+ select t_order.out_store_venue ,material_code,sum(sum) num from yw_materials_batch t_batch left join yw_materials_order_log t_order on t_batch.orderid = t_order.order_id
+ where orderid like 'TK%' and t_order.task_status = '4'
+ group by t_order.out_store_venue ,material_code
+ )
+ select yms.material_store_id,
+ case when yms.material_store_id=0 then '塘栖库' else ys.venue_name||'库' end material_store_name,
+ yms.material_code,
+ COALESCE(yms.avail_sum,0) as avail_sum,
+ COALESCE(yms.in_way_sum,0) as in_way_sum,
+ COALESCE(yms.out_way_sum,0) as out_way_sum,
+ COALESCE(t_zxk.num,0) as zxk_in_sum,
+ COALESCE(t_sl.num,0) as sl_sum,
+ COALESCE(t_tk.num,0) as tk_sum,
+
+
+
+ COALESCE(t_tk.num,0) - COALESCE(t_sl.num,0) as statis_sum,
+
+
+ COALESCE(t_sl.num,0) - COALESCE(t_tk.num,0) as statis_sum,
+
+
+
+ COALESCE(t_sl.num,0) - COALESCE(t_tk.num,0) as statis_sum,
+
+
+ ymi.material_name,
+ ymi.material_stand,
+ ymi.material_unit,
+ ymi.material_big_class,
+ ymi.material_small_class,
+ ymi.sn_code
+ from yw_materials_stock yms
+ left join yw_scene ys on ys.id=yms.material_store_id
+ left join yw_materials_inform ymi on ymi.material_code=yms.material_code
+ left join t_zxk on yms.material_store_id=t_zxk.material_store_id and yms.material_code=t_zxk.material_code
+ left join t_sl on yms.material_store_id=t_sl.material_store_id and yms.material_code=t_sl.material_code
+ left join t_tk on yms.material_store_id=t_tk.material_store_id and yms.material_code=t_tk.material_code
+ where 1=1
+
+ order by yms.material_store_id,ymi.material_name
+
+
+ insert into yw_materials_stock(material_store_id,material_code,
+ avail_sum,out_way_sum,in_way_sum,
+ scene_big_id)
+ values
+
+ (#{item.materialStoreId,jdbcType=NUMERIC},#{item.materialCode,jdbcType=VARCHAR},
+ #{item.availSum,jdbcType=NUMERIC},#{item.outWaySum,jdbcType=NUMERIC},#{item.inWaySum,jdbcType=NUMERIC},
+ #{item.sceneBigId,jdbcType=NUMERIC})
+
+
+
+ delete from yw_materials_stock
+
+
+ AND material_store_id = #{materialStoreId,jdbcType=NUMERIC}
+
+
+
+
+
\ No newline at end of file
diff --git "a/doc/\350\213\245\344\276\235\347\216\257\345\242\203\344\275\277\347\224\250\346\211\213\345\206\214.docx" "b/doc/\350\213\245\344\276\235\347\216\257\345\242\203\344\275\277\347\224\250\346\211\213\345\206\214.docx"
new file mode 100644
index 0000000000000000000000000000000000000000..9e4daef4d9be2e445419109a02eaf321cd4d537e
Binary files /dev/null and "b/doc/\350\213\245\344\276\235\347\216\257\345\242\203\344\275\277\347\224\250\346\211\213\345\206\214.docx" differ
diff --git a/eastcom_yw/pom.xml b/eastcom_yw/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..5f6e8219e7cfc36d631a13d7ce2506049d24ac47
--- /dev/null
+++ b/eastcom_yw/pom.xml
@@ -0,0 +1,85 @@
+
+
+
+ ruoyi
+ com.ruoyi
+ 3.8.4
+
+
+ 4.0.0
+
+ jar
+
+ eastcom_yw
+
+
+ 东信业务
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ com.ruoyi
+ ruoyi-common
+
+
+
+
+ com.baomidou
+ mybatis-plus-boot-starter
+
+
+ com.ruoyi
+ ruoyi-system
+
+
+
+ org.mapstruct
+ mapstruct-processor
+ ${mapstruct.version}
+ provided
+
+
+ org.mapstruct
+ mapstruct
+ ${mapstruct.version}
+
+
+ com.ruoyi
+ ruoyi-framework
+
+
+ org.springframework
+ spring-test
+
+
+
+ com.fasterxml.jackson.core
+ jackson-databind
+
+
+ com.fasterxml.jackson.core
+ jackson-core
+
+
+
+
+
+
+ 8
+ 8
+ UTF-8
+
+
+
\ No newline at end of file
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/constant/AlarmConstants.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/constant/AlarmConstants.java
new file mode 100644
index 0000000000000000000000000000000000000000..4ab0bdfa5f886322786a956573af6cb98ca8ea38
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/constant/AlarmConstants.java
@@ -0,0 +1,9 @@
+package com.ruoyi.eastcom_yw.common.constant;
+
+public class AlarmConstants
+{
+
+ public static final String [] ALARMS = new String[]{"cs","wx","dh","agis","wifi","voip","yayun"};
+
+}
+
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/constant/CacheConstants.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/constant/CacheConstants.java
new file mode 100644
index 0000000000000000000000000000000000000000..e3aaf02bf561e34f28f8d499cd427dd8a29c4516
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/constant/CacheConstants.java
@@ -0,0 +1,8 @@
+package com.ruoyi.eastcom_yw.common.constant;
+
+public class CacheConstants
+{
+ public static final String YW_ALARM_LAST_VENUES = "yw_alarm_last_venues:";
+
+}
+
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/constant/KpiConstants.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/constant/KpiConstants.java
new file mode 100644
index 0000000000000000000000000000000000000000..f63e535d5393ceaa792945308ddf2eec1c754ae7
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/constant/KpiConstants.java
@@ -0,0 +1,53 @@
+package com.ruoyi.eastcom_yw.common.constant;
+
+/**
+ * @author yqf
+ * @date 2023/4/12
+ */
+public class KpiConstants {
+
+ public static final String YW_KPI_COLOR_DEFAULT = "#000000";
+
+ public static final String YW_NETTYPE_4G = "4G";
+
+ public static final String YW_FIELD_RPB_UP = "上行Prb利用率";
+ public static final String YW_FIELD_RPB_DOWN = "下行Prb利用率";
+ public static final String YW_FIELD_MAX_USER = "最大用户数";
+ public static final String YW_FIELD_AVG_DIS = "平均干扰值";
+ public static final String YW_FIELD_ALL = "综合算法";
+
+ public static final String YW_QUERY_ALL = "综合得分";
+
+
+ public static final String YW_SORT_DESC = "desc";
+
+ public static final String YW_DATATYPE_15 = "15分钟";
+ public static final String YW_DATATYPE_1 = "1分钟";
+
+ public static final int YW_SCENE_RUNTYPE = 1;
+
+ public static final int YW_MINTYPE_1 = 1;
+
+ public static final String QUERYSEAT = "P";
+
+ public static final String FIELD_4G_GB = "上行流量mb";
+ public static final String FIELD_4G_DISTURB = "上行平均干扰";
+ public static final String FIELD_4G_MAXUSER = "最大用户数";
+ public static final String FIELD_4G_PRBUP = "上行prb利用率";
+ public static final String FIELD_4G_PRBDOWN = "下行prb利用率";
+
+ public static final String FIELD_5G_GB = "上行5g流量";
+ public static final String FIELD_5G_DISTURB = "上行干扰值";
+ public static final String FIELD_5G_MAXUSER = "最大用户数";
+ public static final String FIELD_5G_PRBUP = "上行prb利用率";
+ public static final String FIELD_5G_PRBDOWN = "下行prb利用率";
+
+ public static final String FIELD_AGIS_FLOWCOUNT = "ul_flow + dl_flow";
+ public static final String FIELD_AGIS_UL_VELOCITY = "ul_velocity";
+ public static final String FIELD_AGIS_DL_VELOCITY = "dl_velocity";
+ public static final String FIELD_AGIS_UL_BAND_RATIO = "ul_band_ratio";
+ public static final String FIELD_AGIS_DL_BAND_RATIO = "dl_band_ratio";
+
+ public static final String ORDER_DESC = "DESC";
+ public static final String ORDER_ASC = "ASC";
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/constant/NetElementConstants.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/constant/NetElementConstants.java
new file mode 100644
index 0000000000000000000000000000000000000000..b8dd3953dee68530c081b4d2ffccb6a7a597c4b9
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/constant/NetElementConstants.java
@@ -0,0 +1,15 @@
+package com.ruoyi.eastcom_yw.common.constant;
+
+/**
+ * 网元常量
+ *
+ * @author los
+ */
+public class NetElementConstants {
+
+ /**
+ * 网元导入是否单场馆覆盖 1 是 0 全覆盖
+ */
+ public static final String SINGLE_SCENE_COVER = "1";
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/enums/FlowDealStatus.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/enums/FlowDealStatus.java
new file mode 100644
index 0000000000000000000000000000000000000000..caa0a7c00cf2683796d8111def4aae744604686e
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/enums/FlowDealStatus.java
@@ -0,0 +1,59 @@
+package com.ruoyi.eastcom_yw.common.enums;
+
+public enum FlowDealStatus {
+
+ BUSINESS_STATUS_0("0", "待处理") ,BUSINESS_STATUS_1("1", "正在处理") ,BUSINESS_STATUS_2("2", "挂起") ,
+ BUSINESS_STATUS_3("3","驳回"),BUSINESS_STATUS_4("4","已结束") ,BUSINESS_STATUS_5("5","撤销");
+
+ /** code */
+ private String code;
+
+ /** 显示标签 */
+ private String label;
+
+ FlowDealStatus(String code, String label){
+
+ this.code = code;
+
+ this.label = label;
+ }
+
+ public static String getLabelByCode (String code) {
+
+ for (FlowDealStatus enuma : FlowDealStatus.values()) {
+
+ if (enuma.getCode().equals(code)) {
+
+ return enuma.getLabel();
+
+ }
+
+ }
+
+ return "";
+
+ }
+
+
+ @Override
+ public String toString(){
+
+ return label;
+
+ }
+
+ public String getLabel() {
+
+ return label;
+
+ }
+
+
+ public String getCode(){
+
+ return this.code;
+
+ }
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/enums/InRedLine.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/enums/InRedLine.java
new file mode 100644
index 0000000000000000000000000000000000000000..3e2b40622fb07ceeb22fa718a6722927bf6c8a2a
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/enums/InRedLine.java
@@ -0,0 +1,45 @@
+package com.ruoyi.eastcom_yw.common.enums;
+
+import lombok.Getter;
+
+/**
+ * 是否红线内
+ *
+ * @author los
+ */
+public enum InRedLine {
+
+ /**
+ * 红线内
+ */
+ IN_RED_LINE("Y", "内"),
+ /**
+ * 红线外
+ */
+ NOT_IN_RED_LINE("N", "外");
+
+ /**
+ * code
+ */
+ @Getter
+ private String code;
+
+ /**
+ * 标签
+ */
+ @Getter
+ private String label;
+
+ InRedLine(String code, String label) {
+ this.code = code;
+ this.label = label;
+ }
+
+ @Override
+ public String toString() {
+
+ return label;
+
+ }
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/enums/WireTaskSubType.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/enums/WireTaskSubType.java
new file mode 100644
index 0000000000000000000000000000000000000000..6efa05a22b77fd9fbfdfe84f3235cdd6b8182db2
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/enums/WireTaskSubType.java
@@ -0,0 +1,58 @@
+package com.ruoyi.eastcom_yw.common.enums;
+
+public enum WireTaskSubType {
+
+ AGIS((Integer)1, "AGIS专网") ,INTERNET((Integer)2, "互联网(WIFI)专网") ,VOIP((Integer)3, "固话(VOIP)专网") ; ;
+
+ /** code */
+ private Integer code;
+
+ /** 显示标签 */
+ private String label;
+
+ WireTaskSubType(Integer code, String label){
+
+ this.code = code;
+
+ this.label = label;
+ }
+
+ public static String getLabelByCode (Integer code) {
+
+ for (WireTaskSubType enuma : WireTaskSubType.values()) {
+
+ if (enuma.getCode().compareTo(code) == 0) {
+
+ return enuma.getLabel();
+
+ }
+
+ }
+
+ return "";
+
+ }
+
+
+ @Override
+ public String toString(){
+
+ return label;
+
+ }
+
+ public String getLabel() {
+
+ return label;
+
+ }
+
+
+ public Integer getCode(){
+
+ return this.code;
+
+ }
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/enums/WireTaskType.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/enums/WireTaskType.java
new file mode 100644
index 0000000000000000000000000000000000000000..334a7370478a2d51e1c0a9dc48f83b1d92db0b23
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/common/enums/WireTaskType.java
@@ -0,0 +1,58 @@
+package com.ruoyi.eastcom_yw.common.enums;
+
+public enum WireTaskType {
+
+ WIRETASK1((Integer)1, "布线") ,WIRETASK2((Integer)2, "拆线") ,WIRETASK3((Integer) 3,"布线结算") ,WIRETASK4((Integer) 4,"拆线结算") ;
+
+ /** code */
+ private Integer code;
+
+ /** 显示标签 */
+ private String label;
+
+ WireTaskType(Integer code, String label){
+
+ this.code = code;
+
+ this.label = label;
+ }
+
+ public static String getLabelByCode (Integer code) {
+
+ for (WireTaskType enuma : WireTaskType.values()) {
+
+ if (enuma.getCode().compareTo(code) == 0) {
+
+ return enuma.getLabel();
+
+ }
+
+ }
+
+ return "";
+
+ }
+
+
+ @Override
+ public String toString(){
+
+ return label;
+
+ }
+
+ public String getLabel() {
+
+ return label;
+
+ }
+
+
+ public Integer getCode(){
+
+ return this.code;
+
+ }
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/AppVersionConfig.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/AppVersionConfig.java
new file mode 100644
index 0000000000000000000000000000000000000000..ddfc5263bf08d8d59b29600b38fabe4c86e71654
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/AppVersionConfig.java
@@ -0,0 +1,39 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("app_version_config")
+public class AppVersionConfig {
+
+ @TableId(value = "id")
+ private Long id;
+
+ private String device;
+
+ private String versionCode;
+
+ private String packageUrl;
+
+ private String describe;
+
+ private String force;
+
+ private String packageType;
+
+ private String versionName;
+
+ private String wgtVersion;
+
+ private String wgtUrl;
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2AgisLink5mi.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2AgisLink5mi.java
new file mode 100644
index 0000000000000000000000000000000000000000..9e8b87587d8d6d716395d23150bdc821266d6981
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2AgisLink5mi.java
@@ -0,0 +1,133 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ *
+ *
+ *
+ *
+ * @author yqf
+ * @since 2023-08-18
+ */
+@Data
+@TableName("dp_2_agis_link_5mi")
+@ApiModel(value = "Dp2AgisLink5mi对象", description = "")
+public class Dp2AgisLink5mi {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("stat_date")
+ private LocalDateTime statDate;
+
+ @TableField("city_code")
+ private String cityCode;
+
+ @TableField("city_name")
+ private String cityName;
+
+ @TableField("venue_code")
+ private String venueCode;
+
+ @TableField("venue_name")
+ private String venueName;
+
+ @TableField("link_value_code")
+ private String linkValueCode;
+
+ @TableField("link_value")
+ private String linkValue;
+
+ @TableField("link_code")
+ private String linkCode;
+
+ @TableField("link_name")
+ private String linkName;
+
+ @TableField("bandwith")
+ private Double bandwith;
+
+ @TableField("delay")
+ private Double delay;
+
+ @TableField("jitter")
+ private Double jitter;
+
+ @TableField("lpack_ratio")
+ private Double lpackRatio;
+
+ @TableField("ul_velocity")
+ private Double ulVelocity;
+
+ @TableField("dl_velocity")
+ private Double dlVelocity;
+
+ @TableField("ul_flow")
+ private Double ulFlow;
+
+ @TableField("dl_flow")
+ private Double dlFlow;
+
+ @TableField("ul_band_ratio")
+ private Double ulBandRatio;
+
+ @TableField("dl_band_ratio")
+ private Double dlBandRatio;
+
+ @TableField("total_band_ratio")
+ private Double totalBandRatio;
+
+ @TableField("load_time")
+ private LocalDateTime loadTime;
+
+ @TableField("a_device_alias")
+ private String aDeviceAlias;
+
+ @TableField("z_device_alias")
+ private String zDeviceAlias;
+
+ @TableField("dl_max_24h_ratio")
+ private Double dlMax24hRatio;
+
+ @TableField("ul_max_24h_ratio")
+ private Double ulMax24hRatio;
+
+ @TableField("dl_avg_24h_ratio")
+ private Double dlAvg24hRatio;
+
+ @TableField("ul_avg_24h_ratio")
+ private Double ulAvg24hRatio;
+
+ @TableField("a_device_name")
+ private String aDeviceName;
+
+ @TableField("a_port_name")
+ private String aPortName;
+
+ @TableField("z_device_name")
+ private String zDeviceName;
+
+ @TableField("z_port_name")
+ private String zPortName;
+
+ @TableField("a_port_full_name")
+ private String aPortFullName;
+
+ @TableField("z_port_full_name")
+ private String zPortFullName;
+
+ @TableField("a_port_short_name")
+ private String aPortShortName;
+
+ @TableField("z_port_short_name")
+ private String zPortShortName;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2MmlList.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2MmlList.java
new file mode 100644
index 0000000000000000000000000000000000000000..4a58d0588f45e055e82f5c50fc375e515232927b
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2MmlList.java
@@ -0,0 +1,107 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.annotation.Excel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ *
+ *
+ *
+ *
+ * @author ck
+ * @since 2023-09-12
+ */
+@Data
+@TableName("dp_2_mml_list")
+@ApiModel(value = "Dp2MmlList对象", description = "")
+public class Dp2MmlList {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("自增ID")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Integer id;
+
+ @ApiModelProperty("小区名")
+ @TableField("cell_name")
+ @Excel(name = "小区名", sort = 2,width = 90)
+ private String cellName;
+
+ @ApiModelProperty("统计时间")
+ @TableField("stat_time")
+ @Excel(name = "统计时间", dateFormat = "yyyy-MM-dd HH:mm:ss", sort = 11,width = 25)
+ private LocalDateTime statTime;
+
+ @ApiModelProperty("上行Prb利用率")
+ @TableField("prb_up")
+ @Excel(name = "上行Prb利用率", sort = 3)
+ private BigDecimal prbUp;
+
+ @ApiModelProperty("下行Prb利用率")
+ @TableField("prb_down")
+ @Excel(name = "下行Prb利用率", sort = 4)
+ private BigDecimal prbDown;
+
+ @ApiModelProperty("最大用户数")
+ @TableField("max_user")
+ @Excel(name = "最大用户数", sort = 5)
+ private BigDecimal maxUser;
+
+ @ApiModelProperty("综合得分")
+ @TableField("zh_score")
+ @Excel(name = "综合得分", sort = 6)
+ private BigDecimal zhScore;
+
+ @ApiModelProperty("是否降低功率")
+ @TableField("desc_power")
+ @Excel(name = "是否降低功率", sort = 10,readConverterExp = "0=否,1=是")
+ private Integer descPower;
+
+ @ApiModelProperty("关闭状态")
+ @TableField("close_state")
+// @Excel(name = "关闭状态", sort = 1)
+ private Integer closeState;
+
+ @ApiModelProperty("场馆号")
+ @TableField("scene_id")
+ private Integer sceneId;
+
+ @ApiModelProperty("场馆名称")
+ @TableField(exist = false)
+ @Excel(name = "场馆名称",sort = 1,width = 30)
+ private String venueName;
+
+ @ApiModelProperty("批次,每次写入批次号相同")
+ @TableField("batchno")
+// @Excel(name = "批次,每次写入批次号相同", sort = 1)
+ private Long batchno;
+
+ @ApiModelProperty("平均干扰")
+ @TableField("avg_disturb")
+ @Excel(name = "平均干扰", sort = 7)
+ private BigDecimal avgDisturb;
+
+ @ApiModelProperty("坐席编号")
+ @TableField("seatid")
+ @Excel(name = "坐席编号", sort = 8)
+ private String seatid;
+
+ @ApiModelProperty("4G/5G")
+ @TableField("nettype")
+ @Excel(name = "4G/5G", sort = 9)
+ private String nettype;
+
+ @TableField("inputtime")
+// @Excel(name = "inputtime", dateFormat = "yyyy-MM-dd HH:mm:ss", sort = 1)
+ private LocalDateTime inputtime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2PnNetVenue5mi.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2PnNetVenue5mi.java
new file mode 100644
index 0000000000000000000000000000000000000000..7ca2e33df6c8993ce995df01586365c705cf0c40
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2PnNetVenue5mi.java
@@ -0,0 +1,137 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ *
+ *
+ *
+ *
+ * @author yqf
+ * @since 2023-08-21
+ */
+@Data
+@TableName("dp_2_pn_net_venue_5mi")
+@ApiModel(value = "Dp2PnNetVenue5mi对象", description = "")
+public class Dp2PnNetVenue5mi {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("stat_date")
+ private LocalDateTime statDate;
+
+ @TableField("city_code")
+ private String cityCode;
+
+ @TableField("city_name")
+ private String cityName;
+
+ @ApiModelProperty("互联网在线用户数")
+ @TableField("online_user_cnt")
+ private Double onlineUserCnt;
+
+ @TableField("inter_exp_bandwith")
+ private Double interExpBandwith;
+
+ @TableField("interc_bandwith")
+ private Double intercBandwith;
+
+ @TableField("venue_bandwith")
+ private Double venueBandwith;
+
+ @TableField("dl_inter_exp_flow")
+ private Double dlInterExpFlow;
+
+ @TableField("ul_inter_exp_flow")
+ private Double ulInterExpFlow;
+
+ @TableField("dl_interc_flow")
+ private Double dlIntercFlow;
+
+ @TableField("ul_interc_flow")
+ private Double ulIntercFlow;
+
+ @TableField("dl_venue_flow")
+ private Double dlVenueFlow;
+
+ @TableField("ul_venue_flow")
+ private Double ulVenueFlow;
+
+ @TableField("dl_inter_exp_band_ratio")
+ private Double dlInterExpBandRatio;
+
+ @TableField("ul_inter_exp_band_ratio")
+ private Double ulInterExpBandRatio;
+
+ @TableField("dl_interc_band_ratio")
+ private Double dlIntercBandRatio;
+
+ @TableField("ul_interc_band_ratio")
+ private Double ulIntercBandRatio;
+
+ @ApiModelProperty("互联网下行带宽利用率")
+ @TableField("dl_venue_band_ratio")
+ private Double dlVenueBandRatio;
+
+ @ApiModelProperty("互联网上行带宽利用率")
+ @TableField("ul_venue_band_ratio")
+ private Double ulVenueBandRatio;
+
+ @TableField("dl_inter_exp_velocity")
+ private Double dlInterExpVelocity;
+
+ @TableField("ul_inter_exp_velocity")
+ private Double ulInterExpVelocity;
+
+ @TableField("dl_interc_velocity")
+ private Double dlIntercVelocity;
+
+ @TableField("ul_interc_velocity")
+ private Double ulIntercVelocity;
+
+ @ApiModelProperty("互联网场馆出口_下行流速")
+ @TableField("dl_venue_velocity")
+ private Double dlVenueVelocity;
+
+ @ApiModelProperty("互联网出口_上行流速")
+ @TableField("ul_venue_velocity")
+ private Double ulVenueVelocity;
+
+ @TableField("interc_delay")
+ private Double intercDelay;
+
+ @TableField("inter_exp_delay")
+ private Double interExpDelay;
+
+ @TableField("interc_jitter")
+ private Double intercJitter;
+
+ @TableField("inter_exp_jitter")
+ private Double interExpJitter;
+
+ @TableField("interc_lpack_ratio")
+ private Double intercLpackRatio;
+
+ @TableField("inter_exp_lpack_ratio")
+ private Double interExpLpackRatio;
+
+ @TableField("load_time")
+ private LocalDateTime loadTime;
+
+ @TableField("venue_code")
+ private String venueCode;
+
+ @TableField("venue_name")
+ private String venueName;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2SpotCell.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2SpotCell.java
new file mode 100644
index 0000000000000000000000000000000000000000..e005aac107764c3798a83b93705cb891aaa9022a
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2SpotCell.java
@@ -0,0 +1,231 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.annotation.Excel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+
+/**
+ * @author ck
+ * @since 2023-08-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("dp_2_spot_cell")
+@ApiModel(value = "Dp2SpotCell对象", description = "")
+public class Dp2SpotCell {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("id")
+ @TableId(type = IdType.AUTO)
+ private Integer id;
+
+ @ApiModelProperty("地市编码")
+ @TableField("地市编码")
+ @Excel(name = "地市编码")
+ private String 地市编码;
+
+ @ApiModelProperty("地市")
+ @TableField("地市")
+ @Excel(name = "地市")
+ private String 地市;
+
+ @ApiModelProperty("区县编码")
+ @TableField("区县编码")
+ @Excel(name = "区县编码")
+ private String 区县编码;
+
+ @TableField("omc")
+ @Excel(name = "OMC")
+ private String omc;
+
+ @ApiModelProperty("需要")
+ @TableField("县市")
+ @Excel(name = "县市")
+ private String 县市;
+
+ @TableField("enodebid")
+ @Excel(name = "enodebid")
+ private Long enodebid;
+
+ @TableField("本地小区标识")
+ @Excel(name = "本地小区标识")
+ private Long 本地小区标识;
+
+ @TableField("小区标识")
+ @Excel(name = "小区标识")
+ private Long 小区标识;
+
+ @ApiModelProperty("需要")
+ @TableField("站号")
+ @Excel(name = "站号")
+ private Long 站号;
+
+ @ApiModelProperty("需要")
+ @TableField("ci")
+ @Excel(name = "CI")
+ private Long ci;
+
+ @ApiModelProperty("需要")
+ @TableField("基站全称")
+ @Excel(name = "基站全称")
+ private String 基站全称;
+
+ @TableField("en名称")
+ @Excel(name = "en名称")
+ private String en名称;
+
+ @ApiModelProperty("需要")
+ @TableField("小区名称")
+ @Excel(name = "小区名称")
+ private String 小区名称;
+
+ @ApiModelProperty("需要")
+ @TableField("小区频段")
+ @Excel(name = "小区频段")
+ private String 小区频段;
+
+ @ApiModelProperty("lac")
+ @TableField("lac")
+ @Excel(name = "lac")
+ private String lac;
+
+ @ApiModelProperty("需要")
+ @TableField("纬度")
+ @Excel(name = "纬度")
+ private Double 纬度;
+
+ @ApiModelProperty("需要")
+ @TableField("经度")
+ @Excel(name = "经度")
+ private Double 经度;
+
+ @TableField("纬度gcj")
+ @Excel(name = "纬度gcj")
+ private Double 纬度gcj;
+
+ @TableField("经度gcj")
+ @Excel(name = "经度gcj")
+ private Double 经度gcj;
+
+ @ApiModelProperty("需要")
+ @TableField("室内室外")
+ @Excel(name = "室内室外",combo={"室内","室外"})
+ private String 室内室外;
+
+ @ApiModelProperty("需要")
+ @TableField("网络")
+ @Excel(name = "网络",combo={"4G","5G"})
+ private String 网络;
+
+ @TableField("现网状态")
+ @Excel(name = "现网状态",combo={"正常","未建立"})
+ private String 现网状态;
+
+ @TableField("cgi")
+ @Excel(name = "CGI")
+ private String cgi;
+
+ @TableField("频点")
+ @Excel(name = "频点")
+ private Long 频点;
+
+ @TableField("pci")
+ @Excel(name = "pci")
+ private Long pci;
+
+ @TableField("tac")
+ @Excel(name = "tac")
+ private Long tac;
+
+ @TableField("一级场景")
+ @Excel(name = "一级场景")
+ private String 一级场景;
+
+ @TableField("二级场景")
+ @Excel(name = "二级场景")
+ private String 二级场景;
+
+ @ApiModelProperty("需要 spot_cell_type")
+ @TableField("设备类型")
+ @Excel(name = "设备类型")
+ private String 设备类型;
+
+ @TableField(exist = false)
+ @Excel(name = "带宽")
+ private String 带宽str;
+
+ @ApiModelProperty("需要")
+ @TableField("带宽")
+ private Double 带宽;
+
+ @ApiModelProperty("需要")
+ @TableField("方位角")
+ @Excel(name = "方位角")
+ private Long 方位角;
+
+ @TableField("扇区id")
+ @Excel(name = "扇区ID")
+ private Long 扇区id;
+
+ @TableField("更新时间")
+ private LocalDateTime 更新时间;
+
+ @ApiModelProperty("景区ID,需要")
+ @TableField("景区id")
+ @Excel(name = "景区ID")
+ private Integer 景区id;
+
+ @ApiModelProperty("坐席编号")
+ @TableField("坐席编号")
+ @Excel(name = "坐席编号")
+ private String 坐席编号;
+
+ @ApiModelProperty("场景类型编码")
+ @TableField("场景类型编码")
+ @Excel(name = "场景类型编码")
+ private String 场景类型编码;
+
+ @ApiModelProperty("场景类型")
+ @TableField("场景类型")
+ @Excel(name = "场景类型")
+ private String 场景类型;
+
+ @ApiModelProperty("场景子类型编码")
+ @TableField("场景子类型编码")
+ @Excel(name = "场景子类型编码")
+ private String 场景子类型编码;
+
+ @ApiModelProperty("场景子类型")
+ @TableField("场景子类型")
+ @Excel(name = "场景子类型")
+ private String 场景子类型;
+
+ @ApiModelProperty("场景编码")
+ @TableField("场景编码")
+ @Excel(name = "场景编码")
+ private String 场景编码;
+
+ @ApiModelProperty("覆盖子场景编码")
+ @TableField("覆盖子场景编码")
+ @Excel(name = "覆盖子场景编码")
+ private String 覆盖子场景编码;
+
+ @ApiModelProperty("覆盖子场景")
+ @TableField("覆盖子场景")
+ @Excel(name = "覆盖子场景")
+ private String 覆盖子场景;
+
+ @TableField(exist = false)
+ @Excel(name = "失败原因")
+ private String reason;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2SpotConfig.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2SpotConfig.java
new file mode 100644
index 0000000000000000000000000000000000000000..a6732104278802ef56ab9f0304e8b7693d1ee78f
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2SpotConfig.java
@@ -0,0 +1,54 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ *
+ *
+ *
+ *
+ * @author ck
+ * @since 2023-08-09
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("dp_2_spot_config")
+@ApiModel(value = "Dp2SpotConfig对象", description = "")
+public class Dp2SpotConfig {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("景区id")
+ @TableId(value = "景区id",type = IdType.AUTO)
+ private Integer 景区id;
+
+ @TableField("景区名称")
+ private String 景区名称;
+
+ // yw_county
+ @TableField("行政区域")
+ private String 行政区域;
+
+ @TableField("中心经度")
+ private Object 中心经度;
+
+ @TableField("中心纬度")
+ private Object 中心纬度;
+
+ @TableField("景区介绍")
+ private String 景区介绍;
+
+ //spot_type
+ @TableField("景区大类")
+ private String 景区大类;
+
+ @TableField("景区大类id")
+ private Integer 景区大类id;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2ViewPowerAlarm.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2ViewPowerAlarm.java
new file mode 100644
index 0000000000000000000000000000000000000000..90484261825dcba1a46038144742a51b969de056
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2ViewPowerAlarm.java
@@ -0,0 +1,81 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ *
+ *
+ *
+ *
+ * @author wqx
+ * @since 2023-08-31
+ */
+@Data
+@TableName("dp_2_view_power_alarm")
+@ApiModel(value = "Dp2ViewPowerAlarm对象", description = "")
+public class Dp2ViewPowerAlarm {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("eventtime")
+ private LocalDateTime eventtime;
+
+ @TableField("alarmname")
+ private String alarmname;
+
+ @TableField("alarmid")
+ private Long alarmid;
+
+ @TableField("severity")
+ private String severity;
+
+ @TableField("site_id")
+ private String siteId;
+
+ @TableField("site_name")
+ private String siteName;
+
+ @TableField("device_name")
+ private String deviceName;
+
+ @TableField("owner")
+ private String owner;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @TableField("area")
+ private String area;
+
+ @TableField("logicalsites")
+ private String logicalsites;
+
+ @TableField("场馆id")
+ private Integer 场馆id;
+
+ @TableField("区域id")
+ private Integer 区域id;
+
+ @TableField("场馆名称")
+ private String 场馆名称;
+
+ @TableField("故障处理人")
+ private String 故障处理人;
+
+ @TableField("phonenumber")
+ private String phonenumber;
+
+ @TableField("deal_status")
+ private Integer dealStatus;
+
+ @TableField("deal_time")
+ private LocalDateTime dealTime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2ViewWirelessAlarm.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2ViewWirelessAlarm.java
new file mode 100644
index 0000000000000000000000000000000000000000..73f094b720df1d49b1d9d4c661067228cf3e13cf
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/Dp2ViewWirelessAlarm.java
@@ -0,0 +1,89 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ *
+ *
+ *
+ *
+ * @author wqx
+ * @since 2023-09-01
+ */
+@Data
+@TableName("dp_2_view_wireless_alarm")
+@ApiModel(value = "Dp2ViewWirelessAlarm对象", description = "")
+public class Dp2ViewWirelessAlarm {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("id")
+ private Long id;
+
+ @TableField("eventtime")
+ private LocalDateTime eventtime;
+
+ @TableField("alarmname")
+ private String alarmname;
+
+ @TableField("omcname")
+ private String omcname;
+
+ @TableField("site_id")
+ private String siteId;
+
+ @TableField("site_name")
+ private String siteName;
+
+ @TableField("area")
+ private String area;
+
+ @TableField("alarmid")
+ private String alarmid;
+
+ @TableField("sitetype")
+ private String sitetype;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @TableField("cell_name")
+ private String cellName;
+
+ @TableField("场馆id")
+ private Long 场馆id;
+
+ @TableField("场馆名称")
+ private String 场馆名称;
+
+ @TableField("longitude")
+ private Object longitude;
+
+ @TableField("latitude")
+ private Object latitude;
+
+ @TableField("坐席编号")
+ private String 坐席编号;
+
+ @TableField("场内场外")
+ private String 场内场外;
+
+ @TableField("区域id")
+ private Integer 区域id;
+
+ @TableField("故障处理人")
+ private String 故障处理人;
+
+ @TableField("phonenumber")
+ private String phonenumber;
+
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/DpSceneConfig.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/DpSceneConfig.java
new file mode 100644
index 0000000000000000000000000000000000000000..1c9adb80ea7b540f6a7b7d0c10930fbb54a777c4
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/DpSceneConfig.java
@@ -0,0 +1,74 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ *
+ *
+ *
+ *
+ * @author yqf
+ * @since 2023-04-12
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("dp_scene_config")
+@ApiModel(value = "DpSceneConfig对象", description = "")
+public class DpSceneConfig {
+
+ private static final long serialVersionUID = 1L;
+ @ApiModelProperty("自增id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Integer id;
+
+ @ApiModelProperty("颜色等级")
+ @TableField("level")
+ private Short level;
+
+ @ApiModelProperty("指标名称")
+ @TableField("name")
+ private String name;
+
+ @ApiModelProperty("最小值")
+ @TableField("range1")
+ private Object range1;
+
+ @ApiModelProperty("最大值")
+ @TableField("range2")
+ private Object range2;
+
+ @ApiModelProperty("颜色")
+ @TableField("color")
+ private String color;
+
+ @ApiModelProperty("备注")
+ @TableField("content")
+ private String content;
+
+ @ApiModelProperty("指标等级:cell、scene")
+ @TableField("type")
+ private String type;
+
+ @ApiModelProperty("网络类型")
+ @TableField("nettype")
+ private String nettype;
+
+ @ApiModelProperty("小区设备")
+ @TableField("celltype")
+ private String celltype;
+
+ @ApiModelProperty("颜色分值")
+ @TableField("colorscore")
+ private Double colorscore;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/HmAlarmDerive.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/HmAlarmDerive.java
new file mode 100644
index 0000000000000000000000000000000000000000..f4de081df977ea459ccbe998300c24f5c9f426fb
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/HmAlarmDerive.java
@@ -0,0 +1,84 @@
+package com.ruoyi.eastcom_yw.domain;
+
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.annotation.Excel;
+import lombok.Data;
+
+/**
+ *
+ *
+ *
+ *
+ * @author jkj
+ * @since 2023-08-02
+ */
+@Data
+@TableName("hm_alarm_derive")
+public class HmAlarmDerive implements Serializable {
+
+private static final long serialVersionUID=1L;
+
+
+ private Long id;
+
+ private Long groupid;
+
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "告警时间" ,sort = 4)
+ private LocalDateTime 告警时间;
+
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "恢复时间" ,sort = 5)
+ private LocalDateTime 恢复时间;
+
+ @Excel(name = "区县" ,sort = 1)
+ private String 分公司;
+
+ @Excel(name = "网元名称" ,sort = 6)
+ private String 网元名称;
+
+ @Excel(name = "端口" ,sort = 7)
+ private String 端口;
+
+ @Excel(name = "场馆名称" ,sort = 2)
+ private String 场馆名称;
+
+ private String 场馆等级;
+
+ @Excel(name = "告警名称" ,sort = 3)
+ private String 告警名称;
+
+ @Excel(name = "详细位置" ,sort = 9)
+ private String 详细位置;
+
+ @Excel(name = "专业" ,sort = 8)
+ private String 专业;
+
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime 告警插入时间;
+
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime 恢复更新时间;
+
+ private String mark;
+
+ private String yClearid;
+
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime 修改时间;
+
+ @TableField(exist = false)
+ private String alarmType = "yayun";
+
+ @TableField(exist = false)
+ private Long alarmId;
+
+ @TableField(exist = false)
+ private String alarmKey;
+
+}
\ No newline at end of file
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi4gCell.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi4gCell.java
new file mode 100644
index 0000000000000000000000000000000000000000..0611ed31e403c2a301b22a483862edcd76953eaa
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi4gCell.java
@@ -0,0 +1,200 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ *
+ * 场馆4G小区级15分钟指标
+ *
+ *
+ * @author yqf
+ * @since 2023-04-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("pm_kpi4g_cell")
+@ApiModel(value = "PmKpi4gCell对象", description = "场馆4G小区级15分钟指标")
+public class PmKpi4gCell {
+
+ private static final long serialVersionUID = 1L;
+// @ApiModelProperty("id")
+// @TableField("id")
+// private Long id;
+
+ @TableField("venue_id")
+ private Integer venueId;
+
+ @TableField("venue_name")
+ private String venueName;
+
+ @TableField("cellcodeci")
+ private String cellcodeci;
+
+ @TableField("starttime")
+ private LocalDateTime starttime;
+
+ @TableField("input_datetime")
+ private LocalDateTime inputDatetime;
+
+ @TableField("小区名称")
+ private String 小区名称;
+
+ @TableField("上行流量mb")
+ private BigDecimal 上行流量mb;
+
+ @TableField("下行流量mb")
+ private BigDecimal 下行流量mb;
+
+ @TableField("有效rrc连接平均数")
+ private BigDecimal 有效rrc连接平均数;
+
+ @TableField("有效rrc连接最大数")
+ private BigDecimal 有效rrc连接最大数;
+
+ @TableField("平均用户数")
+ private BigDecimal 平均用户数;
+
+ @TableField("最大用户数")
+ private BigDecimal 最大用户数;
+
+ @TableField("volte话务量")
+ private BigDecimal volte话务量;
+
+ @TableField("上行prb利用率")
+ private BigDecimal 上行prb利用率;
+
+ @TableField("下行prb利用率")
+ private BigDecimal 下行prb利用率;
+
+ @TableField("上行平均干扰")
+ private BigDecimal 上行平均干扰;
+
+ @TableField("rrc建立成功率")
+ private BigDecimal rrc建立成功率;
+
+ @TableField("e_rab建立成功率")
+ private BigDecimal eRab建立成功率;
+
+ @TableField("qci为1的e_rab建立成功率")
+ private BigDecimal qci为1的eRab建立成功率;
+
+ @TableField("无线掉线率")
+ private BigDecimal 无线掉线率;
+
+ @TableField("掉线次数")
+ private BigDecimal 掉线次数;
+
+ @TableField("切换成功率")
+ private BigDecimal 切换成功率;
+
+ @TableField("esrvcc切换成功率")
+ private BigDecimal esrvcc切换成功率;
+
+ @TableField("esrvcc切换请求次数")
+ private BigDecimal esrvcc切换请求次数;
+
+ @TableField("rrc重建成功率")
+ private BigDecimal rrc重建成功率;
+
+ @TableField("rrc重建次数")
+ private BigDecimal rrc重建次数;
+
+ @TableField("volte掉话率")
+ private BigDecimal volte掉话率;
+
+ @TableField("volte掉话次数")
+ private BigDecimal volte掉话次数;
+
+ @TableField("rru_puschprbassn")
+ private BigDecimal rruPuschprbassn;
+
+ @TableField("rru_puschprbtot")
+ private BigDecimal rruPuschprbtot;
+
+ @TableField("rru_pdschprbassn")
+ private BigDecimal rruPdschprbassn;
+
+ @TableField("rru_pdschprbtot")
+ private BigDecimal rruPdschprbtot;
+
+ @TableField("rrc_succconnestab")
+ private BigDecimal rrcSuccconnestab;
+
+ @TableField("rrc_attconnestab")
+ private BigDecimal rrcAttconnestab;
+
+ @TableField("erab_nbrsuccestab_1")
+ private BigDecimal erabNbrsuccestab1;
+
+ @TableField("erab_nbrattestab")
+ private BigDecimal erabNbrattestab;
+
+ @TableField("erab_nbrattestab_1")
+ private BigDecimal erabNbrattestab1;
+
+ @TableField("切换成功率_分母")
+ private BigDecimal 切换成功率分母;
+
+ @TableField("切换成功率_分子")
+ private BigDecimal 切换成功率分子;
+
+ @TableField("掉线率_分母")
+ private BigDecimal 掉线率分母;
+
+ @TableField("iratho_succoutgeran")
+ private BigDecimal irathoSuccoutgeran;
+
+ @TableField("rrc_attconnreestab")
+ private BigDecimal rrcAttconnreestab;
+
+ @TableField("volte掉话率_分母")
+ private BigDecimal volte掉话率分母;
+
+ @TableField("erab_nbrsuccestab")
+ private BigDecimal erabNbrsuccestab;
+
+ @TableField("omcname")
+ private String omcname;
+
+ @TableField("无线接通率")
+ private BigDecimal 无线接通率;
+
+ @TableField("rrc_failconnestab")
+ private BigDecimal rrcFailconnestab;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @TableField("groupid")
+ private Long groupid;
+
+ @TableField("endtime")
+ private LocalDateTime endtime;
+
+ /////////////////////////////////
+ @TableField(exist = false)
+ private Integer orderId;
+
+ @TableField(exist = false)
+ private String 坐席编号;
+
+ @TableField(exist = false)
+ private String 小区频段;
+
+ @TableField(exist = false)
+ private String 设备类型;
+
+ @TableField(exist = false)
+ private Long 带宽;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi4gMin.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi4gMin.java
new file mode 100644
index 0000000000000000000000000000000000000000..a0d19aac78bff95b715fb6ec6b3bb03a9ba48d07
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi4gMin.java
@@ -0,0 +1,126 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ *
+ * 场馆4G小区级1分钟指标
+ *
+ *
+ * @author yqf
+ * @since 2023-04-12
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("pm_kpi4g_min")
+@ApiModel(value = "PmKpi4gMin对象", description = "场馆4G小区级1分钟指标")
+public class PmKpi4gMin {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("groupid")
+ private Integer groupid;
+
+ @TableField("时间")
+ private LocalDateTime 时间;
+
+ @TableField("小区名称")
+ private String 小区名称;
+
+ @TableField("地市区号")
+ private String 地市区号;
+
+ @TableField("厂商id")
+ private String 厂商id;
+
+ @TableField("avg_user")
+ private BigDecimal avgUser;
+
+ @TableField("max_user")
+ private Integer maxUser;
+
+ @TableField("prb_up")
+ private BigDecimal prbUp;
+
+ @TableField("prb_down")
+ private BigDecimal prbDown;
+
+ @TableField("avg_disturb")
+ private Integer avgDisturb;
+
+ @TableField("speed_up")
+ private BigDecimal speedUp;
+
+ @TableField("speed_down")
+ private BigDecimal speedDown;
+
+ @TableField("call_succ_rate")
+ private BigDecimal callSuccRate;
+
+ @TableField("call_drop_rate")
+ private BigDecimal callDropRate;
+
+ @TableField("act_avg_user")
+ private BigDecimal actAvgUser;
+
+ @TableField("act_max_user")
+ private Integer actMaxUser;
+
+ @TableField("volte")
+ private BigDecimal volte;
+
+ @TableField("volte_succ_rate")
+ private BigDecimal volteSuccRate;
+
+ @TableField("volte_drop_rate")
+ private BigDecimal volteDropRate;
+
+ @TableField("data_up")
+ private BigDecimal dataUp;
+
+ @TableField("data_down")
+ private BigDecimal dataDown;
+
+ @TableField("v1_max")
+ private BigDecimal v1Max;
+
+ @TableField("v1_avg")
+ private String v1Avg;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ /////////////////////////////////
+ @TableField(exist = false)
+ private Integer orderId;
+
+ @TableField(exist = false)
+ private String venueName;
+
+ @TableField(exist = false)
+ private String venueId;
+
+ @TableField(exist = false)
+ private String cellcodeci;
+
+ @TableField(exist = false)
+ private String 小区频段;
+
+ @TableField(exist = false)
+ private String 设备类型;
+
+ @TableField(exist = false)
+ private Long 带宽;
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi4gVenue.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi4gVenue.java
new file mode 100644
index 0000000000000000000000000000000000000000..47cdd032ace514d0bf9a1ac6f92c3ade0129bf87
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi4gVenue.java
@@ -0,0 +1,86 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * @author yqf
+ * @date 2023/4/11
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("pm_kpi4g_venue")
+@ApiModel(value = "PmKpi4gVenue对象", description = "4G场馆级15分钟指标")
+public class PmKpi4gVenue {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId("id")
+ private Long id;
+
+ @TableField("开始时间")
+ private LocalDateTime 开始时间;
+
+ @TableField("入库时间")
+ private LocalDateTime 入库时间;
+
+ @TableField("区县")
+ private String 区县;
+
+ @TableField("场馆id")
+ private Integer 场馆id;
+
+ @TableField("无线接通率")
+ private BigDecimal 无线接通率;
+
+// @TableField("流量GB")
+// private Short 流量GB;
+
+ @TableField("最大用户数")
+ private Short 最大用户数;
+
+ @TableField("话务量")
+ private Short 话务量;
+
+ @TableField("上行prb利用率")
+ private BigDecimal 上行prb利用率;
+
+ @TableField("下行prb利用率")
+ private BigDecimal 下行prb利用率;
+
+ @TableField("上行平均干扰")
+ private Short 上行平均干扰;
+
+ @TableField("volte接通率")
+ private BigDecimal volte接通率;
+
+ @TableField("无线掉线率")
+ private BigDecimal 无线掉线率;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @TableField("结束时间")
+ private LocalDateTime 结束时间;
+
+ @TableField("平均用户数")
+ private BigDecimal 平均用户数;
+
+ /////////////////////////////////
+ @TableField(exist = false)
+ private String venueName;
+
+ @TableField(exist = false)
+ private String prbupColor;
+
+ @TableField(exist = false)
+ private String prbdownColor;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi5gCell.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi5gCell.java
new file mode 100644
index 0000000000000000000000000000000000000000..07df6b515fd6d54fc42d5f3e2462f3ab1d48c525
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi5gCell.java
@@ -0,0 +1,183 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ *
+ * 场馆5G小区级15分钟指标
+ *
+ *
+ * @author yqf
+ * @since 2023-04-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("pm_kpi5g_cell_2")
+@ApiModel(value = "PmKpi5gCell对象", description = "场馆5G小区级15分钟指标")
+public class PmKpi5gCell {
+
+ private static final long serialVersionUID = 1L;
+// @ApiModelProperty("id")
+// @TableField("id")
+// private Long id;
+
+ @TableField("venue_id")
+ private Integer venueId;
+
+ @TableField("venue_name")
+ private String venueName;
+
+ @TableField("ci")
+ private String ci;
+
+ @TableField("starttime")
+ private LocalDateTime starttime;
+
+ @TableField("小区名称")
+ private String 小区名称;
+
+ @TableField("nr流量")
+ private BigDecimal nr流量;
+
+ @TableField("上行5g流量")
+ private BigDecimal 上行5g流量;
+
+ @TableField("下行5g流量")
+ private BigDecimal 下行5g流量;
+
+ @TableField("小区rlc层下行丢包率")
+ private BigDecimal 小区rlc层下行丢包率;
+
+ @TableField("小区级rlc层sdu下行空口丢包数")
+ private BigDecimal 小区级rlc层sdu下行空口丢包数;
+
+ @TableField("小区rlc层收到的下行sdu包数")
+ private BigDecimal 小区rlc层收到的下行sdu包数;
+
+ @TableField("平均用户数")
+ private BigDecimal 平均用户数;
+
+ @TableField("最大用户数")
+ private BigDecimal 最大用户数;
+
+ @TableField("sn异常释放率")
+ private BigDecimal sn异常释放率;
+
+ @TableField("sgnb释放总次数")
+ private BigDecimal sgnb释放总次数;
+
+ @TableField("sgnb触发sgnb异常释放总次数")
+ private BigDecimal sgnb触发sgnb异常释放总次数;
+
+ @TableField("nsa_sgnb添加成功率")
+ private BigDecimal nsaSgnb添加成功率;
+
+ @TableField("dc场景下发送sgnb增加成功的次数")
+ private BigDecimal dc场景下发送sgnb增加成功的次数;
+
+ @TableField("dc场景下收到sgnb增加尝试的次数")
+ private BigDecimal dc场景下收到sgnb增加尝试的次数;
+
+ @TableField("无线接通率")
+ private BigDecimal 无线接通率;
+
+ @TableField("rrc建立成功次数")
+ private BigDecimal rrc建立成功次数;
+
+ @TableField("rrc建立请求消息次数")
+ private BigDecimal rrc建立请求消息次数;
+
+ @TableField("小区中qos_flow建立成功次数")
+ private BigDecimal 小区中qosFlow建立成功次数;
+
+ @TableField("小区中qos_flow建立尝试次数")
+ private BigDecimal 小区中qosFlow建立尝试次数;
+
+ @TableField("小区中ng信令连接建立成功次数")
+ private BigDecimal 小区中ng信令连接建立成功次数;
+
+ @TableField("小区中ng信令连接建立尝试次数")
+ private BigDecimal 小区中ng信令连接建立尝试次数;
+
+ @TableField("无线掉线率")
+ private BigDecimal 无线掉线率;
+
+ @TableField("小区中ue上下文异常释放的次数")
+ private BigDecimal 小区中ue上下文异常释放的次数;
+
+ @TableField("小区中ue上下文正常释放的次数")
+ private BigDecimal 小区中ue上下文正常释放的次数;
+
+ @TableField("无线掉线率分母")
+ private BigDecimal 无线掉线率分母;
+
+ @TableField("切换成功率")
+ private BigDecimal 切换成功率;
+
+ @TableField("切换成功率分子")
+ private BigDecimal 切换成功率分子;
+
+ @TableField("切换成功率分母")
+ private BigDecimal 切换成功率分母;
+
+ @TableField("下行平均使用的prb个数")
+ private BigDecimal 下行平均使用的prb个数;
+
+ @TableField("下行平均可用prb个数")
+ private BigDecimal 下行平均可用prb个数;
+
+ @TableField("上行平均使用的prb个数")
+ private BigDecimal 上行平均使用的prb个数;
+
+ @TableField("上行平均可用prb个数")
+ private BigDecimal 上行平均可用prb个数;
+
+ @TableField("上行prb利用率")
+ private BigDecimal 上行prb利用率;
+
+ @TableField("下行prb利用率")
+ private BigDecimal 下行prb利用率;
+
+ @TableField("input_datetime")
+ private LocalDateTime inputDatetime;
+
+ @TableField("cell_name")
+ private String cellName;
+
+ @TableField("groupid")
+ private Long groupid;
+
+ @TableField("上行干扰值")
+ private Double 上行干扰值;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @TableField("endtime")
+ private LocalDateTime endtime;
+
+
+ /////////////////////////////////
+ @TableField(exist = false)
+ private Integer orderId;
+
+ @TableField(exist = false)
+ private String 小区频段;
+
+ @TableField(exist = false)
+ private String 设备类型;
+
+ @TableField(exist = false)
+ private Long 带宽;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi5gMin.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi5gMin.java
new file mode 100644
index 0000000000000000000000000000000000000000..83d5a03b899346ec45a60f6237461203415f0f94
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi5gMin.java
@@ -0,0 +1,109 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ *
+ * 场馆5G小区级1分钟指标
+ *
+ *
+ * @author yqf
+ * @since 2023-04-12
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("pm_kpi5g_min")
+@ApiModel(value = "PmKpi5gMin对象", description = "场馆5G小区级1分钟指标")
+public class PmKpi5gMin {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("groupid")
+ private Integer groupid;
+
+ @TableField("时间")
+ private LocalDateTime 时间;
+
+ @TableField("小区名称")
+ private String 小区名称;
+
+ @TableField("地市区号")
+ private String 地市区号;
+
+ @TableField("厂商id")
+ private String 厂商id;
+
+ @TableField("prb_up")
+ private Double prbUp;
+
+ @TableField("prb_down")
+ private Double prbDown;
+
+ @TableField("up_disturb")
+ private Integer upDisturb;
+
+ @TableField("speed_up")
+ private Double speedUp;
+
+ @TableField("speed_down")
+ private Double speedDown;
+
+ @TableField("act_max_user")
+ private Integer actMaxUser;
+
+ @TableField("act_avg_user")
+ private Double actAvgUser;
+
+ @TableField("rrc_avg_user")
+ private BigDecimal rrcAvgUser;
+
+ @TableField("rrc_max_user")
+ private Integer rrcMaxUser;
+
+ @TableField("call_succ_rate")
+ private BigDecimal callSuccRate;
+
+ @TableField("drop_call_rate")
+ private BigDecimal dropCallRate;
+
+ @TableField("data_down")
+ private BigDecimal dataDown;
+
+ @TableField("data_up")
+ private BigDecimal dataUp;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ /////////////////////////////////
+ @TableField(exist = false)
+ private Integer orderId;
+
+ @TableField(exist = false)
+ private String venueName;
+
+ @TableField(exist = false)
+ private String venueId;
+
+ @TableField(exist = false)
+ private String cellcodeci;
+
+ @TableField(exist = false)
+ private String 小区频段;
+
+ @TableField(exist = false)
+ private String 设备类型;
+
+ @TableField(exist = false)
+ private Long 带宽;
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi5gVenue.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi5gVenue.java
new file mode 100644
index 0000000000000000000000000000000000000000..ef744b661292f875df0a9ee7485ff9f0349a375a
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpi5gVenue.java
@@ -0,0 +1,99 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ *
+ * 5G场馆级15分钟指标
+ *
+ *
+ * @author yqf
+ * @since 2023-04-12
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("pm_kpi5g_venue_2")
+@ApiModel(value = "PmKpi5gVenue对象", description = "5G场馆级15分钟指标")
+public class PmKpi5gVenue {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId("id")
+ private Long id;
+
+ @TableField("开始时间")
+ private LocalDateTime 开始时间;
+
+ @TableField("入库时间")
+ private LocalDateTime 入库时间;
+
+ @TableField("区县")
+ private String 区县;
+
+ @TableField("场馆id")
+ private Integer 场馆id;
+
+ @TableField("无线接通率")
+ private BigDecimal 无线接通率;
+
+ @TableField("nsa_sgnb添加成功率")
+ private BigDecimal nsaSgnb添加成功率;
+
+ @TableField("切换成功率")
+ private BigDecimal 切换成功率;
+
+ @TableField("无线掉线率")
+ private BigDecimal 无线掉线率;
+
+ @TableField("sn异常释放率")
+ private BigDecimal sn异常释放率;
+
+ @TableField("上行prb利用率")
+ private BigDecimal 上行prb利用率;
+
+ @TableField("下行prb利用率")
+ private BigDecimal 下行prb利用率;
+
+ @TableField("流量GB")
+ private BigDecimal 流量GB;
+
+ @TableField("最大用户数")
+ private Short 最大用户数;
+
+ @TableField("话务量")
+ private BigDecimal 话务量;
+
+ @TableField("上行干扰值")
+ private Double 上行干扰值;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @TableField("结束时间")
+ private LocalDateTime 结束时间;
+
+ @TableField("平均用户数")
+ private BigDecimal 平均用户数;
+
+ /////////////////////////////////
+ @TableField(exist = false)
+ private String venueName;
+
+
+ @TableField(exist = false)
+ private String prbupColor;
+
+ @TableField(exist = false)
+ private String prbdownColor;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpiMaxEntity.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpiMaxEntity.java
new file mode 100644
index 0000000000000000000000000000000000000000..fd09fb5c7cea32c1a7ac4b47016187d2654b851b
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpiMaxEntity.java
@@ -0,0 +1,21 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @author yqf
+ * @date 2023/4/19
+ */
+@Data
+public class PmKpiMaxEntity {
+
+ private BigDecimal avgNum;
+ private BigDecimal maxuserNum;
+ private BigDecimal prbupNum;
+ private BigDecimal prbdownNum;
+ private BigDecimal avgDisturb;
+ private BigDecimal succesNum;
+ private BigDecimal failNum;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpiMonitorEntity.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpiMonitorEntity.java
new file mode 100644
index 0000000000000000000000000000000000000000..83d33a4ee44d8a09e263c6be814e88ba1ccf32a4
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/PmKpiMonitorEntity.java
@@ -0,0 +1,75 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * @author yqf
+ * @date 2023/4/17
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value = "PmKpiMonitorEntity对象", description = "场馆4G小区级1分钟指标")
+public class PmKpiMonitorEntity {
+
+ private static final long serialVersionUID = 1L;
+ private Long id;
+
+ private Integer venueid;
+
+ private String venuename;
+
+ private String cellcodeci;
+
+ private LocalDateTime starttime;
+
+ private String 小区名称;
+
+ private BigDecimal 平均用户数;
+
+ private BigDecimal 最大用户数;
+
+ private BigDecimal 上行prb利用率;
+
+ private BigDecimal 下行prb利用率;
+
+ private BigDecimal 上行平均干扰;
+
+ private BigDecimal 无线掉线率;
+
+ private BigDecimal 无线接通率;
+
+ private LocalDateTime endtime;
+
+ private Integer orderId;
+
+ private String 坐席编号;
+
+ private LocalDateTime 时间;
+
+ private Long stationno;
+ private String pointname;
+ private String pointid;
+ private Double longitude;
+ private Double latitude;
+
+ private String maxuserColor;
+ private String prbupColor;
+ private String prbdownColor;
+ private String avgdisColor;
+ private Integer maxuserScore;
+ private Integer prbupScore;
+ private Integer prbdownScore;
+ private Integer avgdisScore;
+
+ private String 小区频段;
+ private String 设备类型;
+ private Long 带宽;
+ private Long 方位角;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/SysNotice.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/SysNotice.java
new file mode 100644
index 0000000000000000000000000000000000000000..2929fcf9d384d7a291ee150adb1a944e82657239
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/SysNotice.java
@@ -0,0 +1,144 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.mybatis.JsonListLongTypeHandler;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *
+ * 通知公告表
+ *
+ *
+ * @author ck
+ * @since 2023-04-14
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName(value = "sys_notice" ,autoResultMap = true)
+@ApiModel(value = "SysNotice对象", description = "通知公告表")
+public class SysNotice {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("自增id")
+ @TableId(value = "notice_id", type = IdType.AUTO)
+ private Integer noticeId;
+
+ @ApiModelProperty("通知标题")
+ @TableField("notice_title")
+ private String noticeTitle;
+
+ @ApiModelProperty("通知类型--字典表sys_notice_type 短信3 移动办公5 IVR7")
+ @TableField("notice_type")
+ private String noticeType;
+
+ @ApiModelProperty("通知内容")
+ @TableField("notice_content")
+ private String noticeContent;
+
+ @ApiModelProperty("状态 0未读 1已读")
+ @TableField("status")
+ private String status;
+
+ @ApiModelProperty("创建人")
+ @TableField("create_by")
+ private String createBy;
+
+ @ApiModelProperty("插入时间")
+ @TableField("create_time")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("更新人")
+ @TableField("update_by")
+ private String updateBy;
+
+ @ApiModelProperty("更新时间")
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @ApiModelProperty("备注")
+ @TableField("remark")
+ private String remark;
+
+ @ApiModelProperty("接收人")
+ @TableField("recive_user")
+ private Long reciveUser;
+
+ @ApiModelProperty("工作流id")
+ @TableField("flw_processid")
+ private String flwProcessid;
+
+ @ApiModelProperty("工作流任务id")
+ @TableField("flw_taskid")
+ private String flwTaskid;
+
+ @ApiModelProperty("实际发送时间")
+ @TableField("send_time")
+ private LocalDateTime sendTime;
+
+ @ApiModelProperty("发送是否成功,1成功 0失败")
+ @TableField("send_status")
+ private String sendStatus;
+
+ @ApiModelProperty("接收人手机号")
+ @TableField("recive_user_phone")
+ private String reciveUserPhone;
+
+ @ApiModelProperty("计划发送时间(同天当前时间之前立即发送)")
+ @TableField("exp_send_time")
+ private LocalDateTime expSendTime;
+
+ @ApiModelProperty("加入定时任务标记 默认0未加入 1已加入")
+ @TableField("add_flag")
+ private String addFlag;
+
+ @ApiModelProperty("通知对象ids数组")
+ @TableField(value = "notice_object_id",typeHandler = JsonListLongTypeHandler.class)
+ private List noticeObjectId;
+
+ @ApiModelProperty("通知模板id")
+ @TableField("notice_model_id")
+ private Long noticeModelId;
+
+ @ApiModelProperty("通知场景--字典yw_notice_scene (0一般告警 1重大告警 ....)")
+ @TableField("model_scene")
+ private String modelScene;
+
+ @ApiModelProperty("对象属性--yw_notice_object(0场馆层 1分公司层 2亚运指挥层 3ITCC层)")
+ @TableField("object_proto")
+ private String objectProto;
+
+ @ApiModelProperty("通知对象(是指具体的通知接受者,呈现方式包括场馆+群组;分公司+群组名;地市+群组名;ITCC+群组名;场馆+个人名;分公司+个人名;地市+个人名;ITCC+个人名这几种组合。具体呈现内容和对象属性、通知方式相关联)")
+ @TableField("notice_object")
+ private String noticeObject;
+
+ @ApiModelProperty("通知类型model_suit_type 1 普通 2 手工 3简报")
+ @TableField("model_suit_type")
+ private String modelSuitType;
+
+ @ApiModelProperty("接收人群号")
+ @TableField("group_id")
+ private String groupId;
+
+ @ApiModelProperty("关联表id(yw_notice_handwork)")
+ @TableField("handwork_id")
+ private Long handworkId;
+
+ @ApiModelProperty("通知对象名称数组")
+ @TableField("notice_object_name_str")
+ private String noticeObjectNameStr;
+
+ @ApiModelProperty("发送人(由谁发送)")
+ @TableField("send_user")
+ private Long sendUser;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/SysUserImp.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/SysUserImp.java
new file mode 100644
index 0000000000000000000000000000000000000000..a0ae3366f9727aca883bfb2d7b04af83c2f8fc59
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/SysUserImp.java
@@ -0,0 +1,45 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.importer.beans.ResultBean;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class SysUserImp extends ResultBean {
+ private Long user_id;
+ @Excel(name = "姓名", sort = 2)
+ private String user_name;
+ @Excel(name = "手机号码", sort = 3)
+ private String phonenumber;
+ private String avatar;
+ @Excel(name = "账号状态", sort = 5)
+ private String status;
+ private Long roleId;
+ @Excel(name = "角色", sort = 6)
+ private String roleName;
+ private String specialtyCode;
+ @Excel(name = "专业", sort = 7)
+ private String specialty;
+ private String cityId;
+ @Excel(name = "地市", sort = 8)
+ private String city;
+ private String countyId;
+ @Excel(name = "区县", sort = 9)
+ private String county;
+ private Long sceneId;
+ @Excel(name = "场馆", sort = 10)
+ private String sceneName;
+ @Excel(name = "场馆分区", sort = 11)
+ private String belongArea;
+ @Excel(name = "是否要签到", sort = 12)
+ private String needSign;
+ @Excel(name = "自有/三方", sort = 13)
+ private String ywUserBelong;
+ private String createTime;
+ private String loginDate;
+ private String loginIp;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarm.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarm.java
new file mode 100644
index 0000000000000000000000000000000000000000..e264655a48356ceb9d8097eebdeef4416cc5b30c
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarm.java
@@ -0,0 +1,55 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+
+
+/**
+* @author jkj
+* @since 2023-01-12
+**/
+
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("v_yw_alarm_all")
+public class YwAlarm implements Serializable {
+ private static final long serialVersionUID=1L;
+
+ private String id;
+
+ private String 告警时间;
+
+ private String 恢复时间;
+
+ private String 告警编号;
+
+ private String 告警名称;
+
+ private String 场馆名称;
+
+ private String 告警等级;
+
+ private String 基站号;
+
+ private String 基站名;
+
+ private String 网元名称;
+
+ private String 关联组号;
+
+ private String 告警类型;
+
+ private String 红线内;
+
+ private String alarmType;
+
+ private String 类型;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmCS.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmCS.java
new file mode 100644
index 0000000000000000000000000000000000000000..295786780020c454be43cc683593936f2a5d8b0b
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmCS.java
@@ -0,0 +1,55 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.util.Date;
+
+
+/**
+* @author jkj
+* @since 2023-01-12
+**/
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("v_yw_alarm_last_cs")
+public class YwAlarmCS extends YwAlarmView implements Serializable {
+
+ private Long 场馆id;
+
+ private String dealUserId;
+
+ private String dealUser;
+
+ private String dealStatus;
+
+ private String processId;
+
+ private String taskId;
+
+ private Date endTime;
+
+ private String areaCountyId;
+
+ private String city;
+
+ private String county;
+
+ private String alarmType;
+
+ private String alarmStatus;
+
+ private String belongArea;
+
+ private String lastClearTime;
+
+ private String isHangup;
+
+ private Integer clearNum;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmConfig.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmConfig.java
new file mode 100644
index 0000000000000000000000000000000000000000..6002a8923d73140110a787b974d0939d512a75e9
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmConfig.java
@@ -0,0 +1,31 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * @author huamile
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("yw_alarm_config")
+public class YwAlarmConfig {
+
+ private Long id;
+
+ private String alarmCode;
+
+ private Long dealHour;
+
+ private Long sceneBigId;
+
+ private String alarmName;
+
+ private String specialty;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmDH.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmDH.java
new file mode 100644
index 0000000000000000000000000000000000000000..519720bc406c0415a3735e48489222d5e00ba9ba
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmDH.java
@@ -0,0 +1,55 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.util.Date;
+
+
+/**
+* @author jkj
+* @since 2023-01-12
+**/
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("v_yw_alarm_last_dh")
+public class YwAlarmDH extends YwAlarmView implements Serializable {
+
+ private Long 场馆id;
+
+ private String dealUserId;
+
+ private String dealUser;
+
+ private String dealStatus;
+
+ private String processId;
+
+ private String taskId;
+
+ private Date endTime;
+
+ private String areaCountyId;
+
+ private String city;
+
+ private String county;
+
+ private String alarmType;
+
+ private String alarmStatus;
+
+ private String belongArea;
+
+ private String lastClearTime;
+
+ private String isHangup;
+
+ private Integer clearNum;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmHangupLog.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmHangupLog.java
new file mode 100644
index 0000000000000000000000000000000000000000..168d0b2ee98cf16f57b939db35a21d063cf59241
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmHangupLog.java
@@ -0,0 +1,77 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ *
+ *
+ *
+ *
+ * @author jkj
+ * @since 2023-02-15
+ */
+@Data
+@TableName("yw_alarm_hangup_log")
+public class YwAlarmHangupLog implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(type= IdType.AUTO)
+ private Long id;
+
+ /**
+ * 大场景id
+ */
+ private Long sceneBigId;
+
+ /**
+ * 挂起时间
+ */
+ private Date hangupTime;
+
+ /**
+ * 挂起人
+ */
+ private Long hangupUserId;
+
+ /**
+ * 恢复处理时间
+ */
+ private Date recoveryTime;
+
+ /**
+ * 恢复结果
+ */
+ private String recoveryResult;
+
+ /**
+ * 挂起原因
+ */
+ private String hangupReason;
+
+ /**
+ * 工作流进程id
+ */
+ private String flwProcessid;
+
+ /**
+ * 工作流任务id
+ */
+ private String flwTaskid;
+
+ /**
+ * 挂起状态
+ */
+ private String hangupStatus;
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmHangupReover.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmHangupReover.java
new file mode 100644
index 0000000000000000000000000000000000000000..39786460d03e39e11a712f069d42b424f0ceb813
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmHangupReover.java
@@ -0,0 +1,26 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ *
+ *
+ *
+ *
+ * @author jkj
+ * @since 2023-02-15
+ */
+@Data
+public class YwAlarmHangupReover extends YwAlarmHangupLog implements Serializable {
+ /**
+ * 告警是否恢复
+ */
+ private String isRecover;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmOprateLog.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmOprateLog.java
new file mode 100644
index 0000000000000000000000000000000000000000..c2f39316250e234a1450e6c8eb5f569e8049f807
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmOprateLog.java
@@ -0,0 +1,49 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ *
+ *
+ *
+ *
+ * @author jkj
+ * @since 2023-03-06
+ */
+@Data
+@TableName("yw_alarm_oprate_log")
+public class YwAlarmOprateLog implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 序号
+ */
+ @TableId(value = "id",type = IdType.AUTO)
+ private Long id;
+
+ /**
+ * 告警组号
+ */
+ private String alarmGroup;
+
+ /**
+ * 用户id
+ */
+ private Long userId;
+
+ /**
+ * 操作时间
+ */
+ private String oprateTime;
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmRecover.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmRecover.java
new file mode 100644
index 0000000000000000000000000000000000000000..4bc292a31b148227978f7032c338878b096d28ac
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmRecover.java
@@ -0,0 +1,44 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ *
+ * 告警自动恢复
+ *
+ *
+ * @author jkj
+ * @since 2023-02-15
+ */
+@Data
+public class YwAlarmRecover implements Serializable {
+
+ /**
+ * 告警分组号
+ */
+ private Long alarmId;
+
+ /**
+ * 告警类型
+ */
+ private String alarmType;
+
+ /**
+ * 工作流进程id
+ */
+ private String flwProcessid;
+
+ /**
+ * 工作流任务id
+ */
+ private String flwTaskid;
+
+
+ /**
+ * 最后清除时间
+ */
+ private String lastClearTime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmView.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmView.java
new file mode 100644
index 0000000000000000000000000000000000000000..6a20ba29a967d2aa742dbc3b3ce32f2be6727b36
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmView.java
@@ -0,0 +1,56 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.util.Date;
+
+
+/**
+* @author jkj
+* @since 2023-01-12
+**/
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("v_yw_alarm_last")
+public class YwAlarmView extends YwAlarm implements Serializable {
+
+ private Long 场馆id;
+
+ private String dealUserId;
+
+ private String dealUser;
+
+ private String dealStatus;
+
+ private String processId;
+
+ private String taskId;
+
+ private Date endTime;
+
+ private String areaCountyId;
+
+ private String city;
+
+ private String county;
+
+ private String alarmType;
+
+ private String alarmStatus;
+
+ private String belongArea;
+
+ private String lastClearTime;
+
+ private String isHangup;
+
+ private Integer clearNum;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmWX.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmWX.java
new file mode 100644
index 0000000000000000000000000000000000000000..9b26a33105039df882ef0cf180735d8d5b5fe22c
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwAlarmWX.java
@@ -0,0 +1,55 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.util.Date;
+
+
+/**
+* @author jkj
+* @since 2023-01-12
+**/
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("v_yw_alarm_last_wx")
+public class YwAlarmWX extends YwAlarmView implements Serializable {
+
+ private Long 场馆id;
+
+ private String dealUserId;
+
+ private String dealUser;
+
+ private String dealStatus;
+
+ private String processId;
+
+ private String taskId;
+
+ private Date endTime;
+
+ private String areaCountyId;
+
+ private String city;
+
+ private String county;
+
+ private String alarmType;
+
+ private String alarmStatus;
+
+ private String belongArea;
+
+ private String lastClearTime;
+
+ private String isHangup;
+
+ private Integer clearNum;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwDrsConfig.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwDrsConfig.java
new file mode 100644
index 0000000000000000000000000000000000000000..f016b5eb8819b2b2fb0d54181fb745f4e437aa51
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwDrsConfig.java
@@ -0,0 +1,67 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.*;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+
+/**
+ *
+ * DRS配置表
+ *
+ *
+ * @author ck
+ * @since 2023-06-13
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("yw_drs_config")
+@ApiModel(value = "YwDrsConfig对象", description = "DRS配置表")
+public class YwDrsConfig {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("任务名称")
+ @TableField("task_name")
+ private String taskName;
+
+ @ApiModelProperty("任务类型 drs_task_type 0 / 1 签到 2巡检")
+ @TableField("drs_task_type")
+ private String drsTaskType;
+
+ @ApiModelProperty("状态")
+ @TableField("status")
+ private String status;
+
+ @ApiModelProperty("创建人")
+ @TableField(value = "create_by", fill = FieldFill.INSERT)
+ private String createBy;
+
+ @ApiModelProperty("创建时间")
+ @TableField(value = "create_time", fill = FieldFill.INSERT)
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("修改人")
+ @TableField(value = "update_by", fill = FieldFill.INSERT_UPDATE)
+ private String updateBy;
+
+ @ApiModelProperty("修改时间")
+ @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
+ private LocalDateTime updateTime;
+
+ @ApiModelProperty("备注")
+ @TableField("remark")
+ private String remark;
+
+ @ApiModelProperty("删除标记")
+ @TableField("del_flag")
+ private String delFlag;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwDrsTempTask.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwDrsTempTask.java
new file mode 100644
index 0000000000000000000000000000000000000000..7ddc7eff697cacebe2c61d4cd61b4a69dace81fe
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwDrsTempTask.java
@@ -0,0 +1,93 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.*;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+
+/**
+ *
+ * DRS临时任务表
+ *
+ *
+ * @author ck
+ * @since 2023-06-13
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("yw_drs_temp_task")
+@KeySequence(value ="yw_drs_temp_task_seq" ,dbType = DbType.POSTGRE_SQL)
+@ApiModel(value = "YwDrsTempTask对象", description = "DRS临时任务表")
+public class YwDrsTempTask {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("场馆id")
+ @TableField("venue_id")
+ private Long venueId;
+
+ @ApiModelProperty("任务日期")
+ @TableField("task_date")
+ private LocalDate taskDate;
+
+ @ApiModelProperty("任务时间")
+ @TableField("task_time")
+ private LocalDateTime taskTime;
+
+ @ApiModelProperty("任务结束时间")
+ @TableField("task_end_time")
+ private LocalDateTime taskEndTime;
+
+ @ApiModelProperty("任务名称")
+ @TableField("task_name")
+ private String taskName;
+
+ @ApiModelProperty("DRS任务类型 drs_task_type 0 / 1 签到 2巡检")
+ @TableField("drs_task_type")
+ private String drsTaskType;
+
+ @ApiModelProperty("DRS任务状态 drs_task_status 0未开始 1进行中 2已完成")
+ @TableField("drs_task_status")
+ private String drsTaskStatus;
+
+ @ApiModelProperty("自动状态变更 drs_auto_update 0自动 1手动")
+ @TableField("drs_auto_update")
+ private String drsAutoUpdate;
+
+ @ApiModelProperty("状态")
+ @TableField("status")
+ private String status;
+
+ @ApiModelProperty("创建人")
+ @TableField(value = "create_by", fill = FieldFill.INSERT)
+ private String createBy;
+
+ @ApiModelProperty("创建时间")
+ @TableField(value = "create_time", fill = FieldFill.INSERT)
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("修改人")
+ @TableField(value = "update_by", fill = FieldFill.INSERT_UPDATE)
+ private String updateBy;
+
+ @ApiModelProperty("修改时间")
+ @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
+ private LocalDateTime updateTime;
+
+ @ApiModelProperty("备注")
+ @TableField("remark")
+ private String remark;
+
+ @ApiModelProperty("删除标记")
+ @TableField("del_flag")
+ private String delFlag;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwKpiConfig.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwKpiConfig.java
new file mode 100644
index 0000000000000000000000000000000000000000..22bdbdec2336456f155e6fd622109354285d4fb3
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwKpiConfig.java
@@ -0,0 +1,84 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ *
+ * 指标字段阈值配置表
+ *
+ *
+ * @author yqf
+ * @since 2023-04-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("yw_kpi_config")
+@ApiModel(value = "YwKpiConfig对象", description = "指标字段阈值配置表")
+public class YwKpiConfig {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("序号")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("专业(字典表)")
+ @TableField("subject")
+ private String subject;
+
+ @ApiModelProperty("网络模式(字典表)")
+ @TableField("net_type")
+ private String netType;
+
+ @ApiModelProperty("指标字段")
+ @TableField("kpi_field")
+ private Long kpiField;
+
+ @ApiModelProperty("阈值范围")
+ @TableField("threshold_value")
+ private String thresholdValue;
+
+ @ApiModelProperty("颜色")
+ @TableField("color")
+ private String color;
+
+ @ApiModelProperty("创建人")
+ @TableField("create_by")
+ private String createBy;
+
+ @ApiModelProperty("创建时间")
+ @TableField("create_time")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("更新人")
+ @TableField("update_by")
+ private String updateBy;
+
+ @ApiModelProperty("更新时间")
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @ApiModelProperty("最小是(包括本值)")
+ @TableField("min_value")
+ private Object minValue;
+
+ @ApiModelProperty("最大值(不包括本值)")
+ @TableField("max_value")
+ private Object maxValue;
+
+ @ApiModelProperty("指标名")
+ @TableField("kpi_field_name")
+ private String kpiFieldName;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeBriefing.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeBriefing.java
new file mode 100644
index 0000000000000000000000000000000000000000..d583b352fddc0117447f6cc41c2be5546c013585
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeBriefing.java
@@ -0,0 +1,108 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
+import com.ruoyi.common.mybatis.JsonListLongTypeHandler;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *
+ * 通知通告简报计划表
+ *
+ *
+ * @author ck
+ * @since 2023-04-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName(value = "yw_notice_briefing",autoResultMap = true)
+@ApiModel(value = "YwNoticeBriefing对象", description = "通知通告简报计划表")
+public class YwNoticeBriefing {
+
+ private static final long serialVersionUID = 1L;
+ @ApiModelProperty("id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("地市")
+ @TableField("city")
+ private String city;
+
+ @ApiModelProperty("场馆id")
+ @TableField("venue_id")
+ private Long venueId;
+
+ @ApiModelProperty("对象属性yw_notice_object(0场馆层 1分公司层 2亚运指挥层 3ITCC层)")
+ @TableField("object_proto")
+ private String objectProto;
+
+ @ApiModelProperty("通知方式sys_notice_type")
+ @TableField("notice_type")
+ private String noticeType;
+
+ @ApiModelProperty("发送日期")
+ @TableField("send_date")
+ private LocalDate sendDate;
+
+ @ApiModelProperty("开始时间")
+ @TableField("begin_time")
+ private LocalDateTime beginTime;
+
+ @ApiModelProperty("结束时间")
+ @TableField("end_time")
+ private LocalDateTime endTime;
+
+ @ApiModelProperty("区县")
+ @TableField("county")
+ private String county;
+
+ @ApiModelProperty("对象ids数组")
+ @TableField(value = "object_ids",typeHandler = JsonListLongTypeHandler.class)
+ private List objectIds;
+
+ @ApiModelProperty("模板id")
+ @TableField("model_id")
+ private Long modelId;
+
+ @ApiModelProperty("排序号")
+ @TableField("order_num")
+ private Integer orderNum;
+
+ @ApiModelProperty("时间间隔(单位分)")
+ @TableField("time_interval")
+ private Integer timeInterval;
+
+ @ApiModelProperty("通知名称")
+ @TableField("notice_name")
+ private String noticeName;
+
+ @ApiModelProperty("启用状态 sys_normal_disable 0启用 1停用")
+ @TableField("sys_normal_disable")
+ private String sysNormalDisable;
+
+ @ApiModelProperty("通知对象名称数组")
+ @TableField("notice_object_name_str")
+ private String noticeObjectNameStr;
+
+ @ApiModelProperty("通知类型model_suit_type 1 普通 2 手工 3文字简报 4h5简报)")
+ @TableField("model_suit_type")
+ private String modelSuitType;
+
+ @ApiModelProperty("发送方式 send_type (1自动发送 2手工发送)")
+ @TableField("send_type")
+ private String sendType;
+
+ @ApiModelProperty("发送人员")
+ @TableField("send_user")
+ private Long sendUser;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeHandwork.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeHandwork.java
new file mode 100644
index 0000000000000000000000000000000000000000..357a979ffa5e81f81e8cea6000bf5edc9a2d87c4
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeHandwork.java
@@ -0,0 +1,96 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
+import com.ruoyi.common.mybatis.JsonListLongTypeHandler;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *
+ * 通知通告手工通知计划表
+ *
+ *
+ * @author ck
+ * @since 2023-04-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName(value = "yw_notice_handwork",autoResultMap = true)
+@ApiModel(value = "YwNoticeHandwork对象", description = "通知通告手工通知计划表")
+public class YwNoticeHandwork {
+
+ private static final long serialVersionUID = 1L;
+ @ApiModelProperty("id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("通知名称")
+ @TableField("notice_name")
+ private String noticeName;
+
+ @ApiModelProperty("通知模板id")
+ @TableField("notice_model")
+ private Long noticeModel;
+
+ @ApiModelProperty("通知方式--sys_notice_type")
+ @TableField("notice_type")
+ private String noticeType;
+
+ @ApiModelProperty("通知对象ids")
+ @TableField(value = "notice_object",typeHandler = JsonListLongTypeHandler.class)
+ private List noticeObject;
+
+ @ApiModelProperty("通知内容")
+ @TableField("notice_content")
+ private String noticeContent;
+
+ @ApiModelProperty("通知状态yw_veriy_status 0待提交 1待审核 2已审核")
+ @TableField("notice_status")
+ private String noticeStatus;
+
+ @ApiModelProperty("日期")
+ @TableField("notice_date")
+ private LocalDateTime noticeDate;
+
+ @ApiModelProperty("开始时间")
+ @TableField("begin_time")
+ private LocalDateTime beginTime;
+
+ @ApiModelProperty("结束时间")
+ @TableField("end_time")
+ private LocalDateTime endTime;
+
+ @ApiModelProperty("时间间隔(单位分)")
+ @TableField("time_interval")
+ private Integer timeInterval;
+
+ @ApiModelProperty("工作流processid")
+ @TableField("flw_processid")
+ private String flwProcessid;
+
+ @ApiModelProperty("申请人id")
+ @TableField("apply_id")
+ private Long applyId;
+
+ @ApiModelProperty("审核人id")
+ @TableField("audit_id")
+ private Long auditId;
+
+ @ApiModelProperty("已添加到sys_notice标记(0否 1是)")
+ @TableField("add_flag")
+ private String addFlag;
+
+ @ApiModelProperty("通知对象名称数组")
+ @TableField("notice_object_name_str")
+ private String noticeObjectNameStr;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeHandworkdetail.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeHandworkdetail.java
new file mode 100644
index 0000000000000000000000000000000000000000..aefaf497dd87853bca6f6c59994fbcb889177dd5
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeHandworkdetail.java
@@ -0,0 +1,55 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ *
+ * 通知通告手工通知审核表
+ *
+ *
+ * @author ck
+ * @since 2023-04-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("yw_notice_handworkdetail")
+@ApiModel(value = "YwNoticeHandworkdetail对象", description = "通知通告手工通知审核表")
+public class YwNoticeHandworkdetail {
+
+ private static final long serialVersionUID = 1L;
+ @ApiModelProperty("id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("手工通知id")
+ @TableField("handwork_id")
+ private Long handworkId;
+
+ @ApiModelProperty("操作人(提交审核的人 或者 审核的人)")
+ @TableField("oprate_user")
+ private Long oprateUser;
+
+ @ApiModelProperty("审核结果(关联字典表yw_veriy_result 0通过 1驳回)")
+ @TableField("veriy_result")
+ private String veriyResult;
+
+ @ApiModelProperty("审核状态(关联字典表yw_veriy_status 0 待审核 1 已审核)")
+ @TableField("veriy_status")
+ private String veriyStatus;
+
+ @ApiModelProperty("驳回原因")
+ @TableField("fail_reason")
+ private String failReason;
+
+ @ApiModelProperty("附件")
+ @TableField("appendix")
+ private String appendix;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeList.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeList.java
new file mode 100644
index 0000000000000000000000000000000000000000..0a896a55454b1fb7d3dae75e741645ee323c9bfc
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeList.java
@@ -0,0 +1,100 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
+import com.ruoyi.common.mybatis.JsonListLongTypeHandler;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *
+ * 通知通告记录表
+ *
+ *
+ * @author ck
+ * @since 2023-04-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName(value = "yw_notice_List",autoResultMap = true)
+@ApiModel(value = "YwNoticeList对象", description = "通知通告记录表")
+public class YwNoticeList {
+
+ private static final long serialVersionUID = 1L;
+ @ApiModelProperty("id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("通知名称")
+ @TableField("notice_name")
+ private String noticeName;
+
+ @ApiModelProperty("通知场景--字典yw_notice_scene (0一般告警 1重大告警 ....)")
+ @TableField("model_scene")
+ private String modelScene;
+
+ @ApiModelProperty("对象属性--yw_notice_object(0场馆层 1分公司层 2亚运指挥层 3ITCC层)")
+ @TableField("object_proto")
+ private String objectProto;
+
+ @ApiModelProperty("通知方式--sys_notice_type")
+ @TableField("notice_type")
+ private String noticeType;
+
+ @ApiModelProperty("通知时间(计划发送时间(同天当前时间之前立即发送))")
+ @TableField("notice_time")
+ private LocalDateTime noticeTime;
+
+ @ApiModelProperty("通知对象")
+ @TableField("notice_object")
+ private String noticeObject;
+
+ @ApiModelProperty("通知内容")
+ @TableField("notice_content")
+ private String noticeContent;
+
+ @ApiModelProperty("状态 0未读 1已读")
+ @TableField("status")
+ private String status;
+
+ @ApiModelProperty("通知对象ids数组")
+ @TableField(value = "notice_object_id",typeHandler = JsonListLongTypeHandler.class)
+ private List noticeObjectId;
+
+ @ApiModelProperty("通知模板id")
+ @TableField("notice_model_id")
+ private Long noticeModelId;
+
+ @ApiModelProperty("实际发送时间")
+ @TableField("send_time")
+ private LocalDateTime sendTime;
+
+ @ApiModelProperty("发送是否成功,1成功 0失败")
+ @TableField("send_status")
+ private String sendStatus;
+
+ @ApiModelProperty("计划发送时间(同天当前时间之前立即发送)")
+ @TableField("exp_send_time")
+ private LocalDateTime expSendTime;
+
+ @ApiModelProperty("加入定时任务标记 默认0未加入 1已加入")
+ @TableField("add_flag")
+ private String addFlag;
+
+ @ApiModelProperty("通知类型model_suit_type 1 普通 2 手工 3简报")
+ @TableField("model_suit_type")
+ private String modelSuitType;
+
+ @ApiModelProperty("计划id(手工与简报会先配置计划)")
+ @TableField("plan_id")
+ private Long planId;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeModel.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeModel.java
new file mode 100644
index 0000000000000000000000000000000000000000..60191c780d4003e798b77e014d949eca792a1090
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeModel.java
@@ -0,0 +1,84 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.ruoyi.common.annotation.Excel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import javax.validation.Valid;
+import javax.validation.constraints.Size;
+import java.time.LocalDateTime;
+
+/**
+ *
+ * 通知通告模板表
+ *
+ *
+ * @author ck
+ * @since 2023-04-07
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("yw_notice_model")
+@ApiModel(value = "YwNoticeModel对象", description = "通知通告模板表")
+public class YwNoticeModel {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("模板名称")
+ @TableField("model_name")
+ @Excel(name = "模板名称")
+ @Size(min = 1,max = 2,message = "模板名称最短为1,最长为10")
+ private String modelName;
+
+ @ApiModelProperty("模板内容")
+ @TableField("model_content")
+ @Excel(name = "模板内容")
+ private String modelContent;
+
+ @ApiModelProperty("场景--字典yw_notice_scene (0一般告警 1重大告警 ....)")
+ @TableField("model_scene")
+ @Excel(name = "适用场景", dictType = "yw_notice_scene")
+ private String modelScene;
+
+ @ApiModelProperty("创建用户id")
+ @TableField(value = "create_user_id", fill = FieldFill.INSERT)
+ private Long createUserId;
+
+ @ApiModelProperty("创建用户昵称")
+ @TableField(value = "create_by", fill = FieldFill.INSERT)
+ private String createBy;
+
+ @ApiModelProperty("创建时间")
+ @TableField(value = "create_time", fill = FieldFill.INSERT)
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("模板适用类型model_suit_type 1 普通 2 手工 3简报")
+ @TableField("model_suit_type")
+ @Excel(name = "适用类型", readConverterExp = "1=普通,2=手工,3=简报")
+ private String modelSuitType;
+
+ @ApiModelProperty("备注(写一些触发要求)")
+ @TableField("model_des")
+ @Excel(name = "备注")
+ private String modelDes;
+
+ @ApiModelProperty("模板类型--字典yw_model_type 0事件触发型")
+ @TableField("model_type")
+ @Excel(name = "模板类型", dictType = "yw_model_type")
+ private String modelType;
+
+ @ApiModelProperty("排序号")
+ @TableField("order_num")
+ private Integer orderNum;
+
+ @ApiModelProperty("场馆id")
+ @TableField("venue_id")
+ private Long venueId;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeObject.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeObject.java
new file mode 100644
index 0000000000000000000000000000000000000000..7e36de9cc796f3c0b8864cc0df194cbe6b786591
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeObject.java
@@ -0,0 +1,103 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
+import com.ruoyi.common.mybatis.JsonListLongTypeHandler;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.List;
+
+/**
+ *
+ * 通知通告对象表
+ *
+ *
+ * @author ck
+ * @since 2023-04-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName(value = "yw_notice_object",autoResultMap = true)
+@ApiModel(value = "YwNoticeObject对象", description = "通知通告对象表")
+public class YwNoticeObject {
+
+ private static final long serialVersionUID = 1L;
+ @ApiModelProperty("id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("地市")
+ @TableField("city")
+ private String city;
+
+ @ApiModelProperty("区县")
+ @TableField("county")
+ private String county;
+
+ @ApiModelProperty("场馆id")
+ @TableField("venue_id")
+ private Long venueId;
+
+ @ApiModelProperty("场馆名称")
+ @TableField(exist=false)
+ private String venueName;
+
+ @ApiModelProperty("专业")
+ @TableField("specialty")
+ private Long specialty;
+
+ @ApiModelProperty("角色id数组")
+ @TableField(value = "role_ids",typeHandler= JacksonTypeHandler.class)
+ private List roleIds;
+
+ @ApiModelProperty("对象属性yw_notice_object(0场馆层 1分公司层 2亚运指挥层 3ITCC层)")
+ @TableField("object_proto")
+ private String objectProto;
+
+ @ApiModelProperty("通知方式sys_notice_type")
+ @TableField("notice_type")
+ private String noticeType;
+
+ @ApiModelProperty("短信组名")
+ @TableField("message_name")
+ private String messageName;
+
+ @ApiModelProperty("短信组内成员id数组")
+ @TableField(value="message_users",typeHandler= JsonListLongTypeHandler.class)
+ private List messageUsers;
+
+ @ApiModelProperty("排序号")
+ @TableField("order_num")
+ private Integer orderNum;
+
+ @ApiModelProperty("群号")
+ @TableField("group_id")
+ private String groupId;
+
+ @ApiModelProperty("群名")
+ @TableField("group_name")
+ private String groupName;
+
+ @ApiModelProperty("备注")
+ @TableField("group_des")
+ private String groupDes;
+
+ @ApiModelProperty("对象名称")
+ @TableField("object_name")
+ private String objectName;
+
+ @ApiModelProperty("ivr组名")
+ @TableField("ivr_name")
+ private String ivrName;
+
+ @ApiModelProperty("ivr组内成员id数组")
+ @TableField(value = "ivr_users",typeHandler= JsonListLongTypeHandler.class)
+ private List ivrUsers;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeUser.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeUser.java
new file mode 100644
index 0000000000000000000000000000000000000000..14110e577e50fa67f43f8b1d832c6851a23ae509
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwNoticeUser.java
@@ -0,0 +1,33 @@
+package com.ruoyi.eastcom_yw.domain;
+
+
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class YwNoticeUser implements Serializable {
+
+ private static final long serialVersionUID=1L;
+
+ private String flwProcessid;
+
+ private String flwTaskid;
+
+ private String title;
+
+ private String content;
+
+ private String userId;
+
+ private String noticType;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwRoutInspectConfig.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwRoutInspectConfig.java
new file mode 100644
index 0000000000000000000000000000000000000000..8c3330c7ba7f3d37321bd80afd63e926e9577f5e
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwRoutInspectConfig.java
@@ -0,0 +1,49 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+
+/**
+ * @author huamile
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("yw_rout_inspect_config")
+public class YwRoutInspectConfig implements Serializable {
+
+ private static final long serialVersionUID=1L;
+
+ private Long id;
+
+ private Long sceneId;
+
+ private String specialty;
+
+ private Integer checkNum;
+
+ private String checkType;
+
+ private String checkDesc;
+
+ private Integer circle;
+
+ private Long stopTimeOption;
+
+ private Long intervalTime;
+
+ private Long sceneBigId;
+
+ private Integer inspectUserId;
+
+ private String repWarnInterval;
+
+ private String noticeType;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwRoutInspectLog.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwRoutInspectLog.java
new file mode 100644
index 0000000000000000000000000000000000000000..fa28d8b0cf3118dc4150e2a6480dcc59d0fcf987
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwRoutInspectLog.java
@@ -0,0 +1,41 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("yw_rout_inspect_log")
+public class YwRoutInspectLog {
+
+ private static final long serialVersionUID=1L;
+
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ private Long routInspectId;
+
+ private String flwProcessid;
+
+ private Integer checkNum;
+
+ private Integer questionNum;
+
+ private String questionDesc;
+
+ private String feedBackUser;
+
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ private Date feedBackTime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwRoutInspectPlan.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwRoutInspectPlan.java
new file mode 100644
index 0000000000000000000000000000000000000000..4ac1c46b05edd15c57fe1d941a72da1cce09932b
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwRoutInspectPlan.java
@@ -0,0 +1,66 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @author huamile
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("yw_rout_inspect_plan")
+public class YwRoutInspectPlan implements Serializable {
+
+ private static final long serialVersionUID=1L;
+
+ private Long id;
+
+ private Long sceneId;
+
+ private Date inspectDate;
+
+ private String inspectSpecialty;
+
+ private Date beginTime;
+
+ private Date planFinTime;
+
+ private Long sceneBigId;
+
+ private Long type;
+
+ private String inspectName;
+
+ private Integer checkNum;
+
+ private String checkType;
+
+ private String checkDesc;
+
+ private Integer circle;
+
+ private Long stopTimeOption;
+
+ private Long intervalTime;
+
+ private Integer inspectUserId;
+
+ private String repWarnInterval;
+
+ private String noticeType;
+
+ private String jobNo;
+
+ @TableField(exist = false)
+ private String isGen;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwRoutInspectQuestionConfig.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwRoutInspectQuestionConfig.java
new file mode 100644
index 0000000000000000000000000000000000000000..832efdbfed9217de18b165847ee5e87735d8530e
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwRoutInspectQuestionConfig.java
@@ -0,0 +1,44 @@
+package com.ruoyi.eastcom_yw.domain;
+
+//import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.annotation.Excel;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * @author huamile
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("yw_rout_inspect_question_config")
+public class YwRoutInspectQuestionConfig {
+
+ @Excel(name = "序号", width = 20, sort = 1)
+ private Long id;
+
+ @Excel(name = "问题类型", width = 20, sort = 3)
+ @NotBlank(message = "问题类型不能为空")
+ private String questionType;
+
+ @Excel(name = "问题子类型", width = 20, sort = 4)
+ @NotBlank(message = "问题子类型不能为空")
+ private String questionSonType;
+
+ private Long sceneBigId;
+
+ @NotBlank(message = "专业不能为空")
+ private String specialtyId;
+
+ @Excel(name = "专业", width = 20, sort = 2)
+ @TableField(exist = false)
+ private String specialtyName;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwScene.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwScene.java
new file mode 100644
index 0000000000000000000000000000000000000000..75e2583327577ffa785f304f28e07a7b79829107
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwScene.java
@@ -0,0 +1,169 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import java.util.List;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.annotation.Excel;
+import lombok.*;
+
+/**
+ *
+ *
+ *
+ *
+ * @author jkj
+ * @since 2023-01-12
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("yw_scene")
+public class YwScene implements Serializable {
+
+ private static final long serialVersionUID=1L;
+
+ /**
+ * 序号
+ */
+ @TableId(value = "id", type = IdType.AUTO)
+ @Excel(name = "场馆ID", type = Excel.Type.IMPORT, sort = 0)
+ private Long id;
+
+ /**
+ * 场馆名称
+ */
+ @Excel(name = "场馆标准名称", type = Excel.Type.IMPORT, sort = 1)
+ private String venueName;
+
+ /**
+ * 场馆介绍
+ */
+ @Excel(name = "备注", type = Excel.Type.IMPORT, sort = 15)
+ private String venueDesc;
+
+ /**
+ * 场馆地址
+ */
+ @Excel(name = "地址", type = Excel.Type.IMPORT, sort = 14)
+ private String venueAddress;
+
+ /**
+ * 所属区县id
+ */
+ private String areaCountyId;
+
+ @TableField(exist = false)
+ @Excel(name = "所属区县", type = Excel.Type.IMPORT, sort = 12)
+ private String county;
+
+ /**
+ * 纬度
+ */
+ @Excel(name = "纬度GPS", type = Excel.Type.IMPORT, sort = 8)
+ private Double latitude;
+
+ /**
+ * 经度
+ */
+ @Excel(name = "经度GPS", type = Excel.Type.IMPORT, sort = 7)
+ private Double longitude;
+
+ /**
+ * 类型
+ */
+ @Excel(name = "场馆属性", type = Excel.Type.IMPORT, sort = 5)
+ private String venueType;
+
+ /**
+ * 级别
+ */
+ @Excel(name = "场馆级别", type = Excel.Type.IMPORT, sort = 6)
+ private String venueLevel;
+
+ /**
+ * 容纳人数
+ */
+ private Integer accPerson;
+
+ /**
+ * 场景ID
+ */
+ private Long sceneBigId;
+
+ /**
+ * 签到范围
+ */
+ private Integer signScope;
+
+ /**
+ * 1开 0关
+ */
+ private String status;
+
+ private String createBy;
+
+ private String createTime;
+
+ private String updateBy;
+
+ private String updateTime;
+
+ /**
+ * 简称
+ */
+ @Excel(name = "场馆简称", type = Excel.Type.IMPORT, sort = 2)
+ private String venueShortname;
+
+ /**
+ * 地市
+ */
+ private String cityId;
+
+ @Excel(name = "所属地市", type = Excel.Type.IMPORT, sort = 11)
+ @TableField(exist = false)
+ private String cityName;
+
+ /**
+ * 英文名称
+ */
+ private String englishName;
+
+ /**
+ * 英文简称
+ */
+ @Excel(name = "场馆英文缩写", type = Excel.Type.IMPORT, sort = 3)
+ private String englishShortname;
+
+ /**
+ * 维护类型
+ */
+ @Excel(name = "维护类别", type = Excel.Type.IMPORT, sort = 4)
+ private String maintainType;
+
+ /**
+ * GCJ02纬度
+ */
+ @Excel(name = "纬度GCJ02", type = Excel.Type.IMPORT, sort = 10)
+ private Double latitudeGcj02;
+
+ /**
+ * GCJ02经度
+ */
+ @Excel(name = "经度GCJ02", type = Excel.Type.IMPORT, sort = 9)
+ private Double longitudeGcj02;
+
+ /**
+ * 赛事类型
+ */
+ @Excel(name = "赛事类型", type = Excel.Type.IMPORT, sort = 13)
+ private String matchType;
+
+ @TableField(exist = false)
+ private List ywSceneFile;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneAlarm.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneAlarm.java
new file mode 100644
index 0000000000000000000000000000000000000000..0a6008c59eb3c85d88a2f4d8c7f848dd1cdbe20e
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneAlarm.java
@@ -0,0 +1,33 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * @author huamile
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("yw_scene_alarm")
+public class YwSceneAlarm {
+
+ private Long id;
+
+ private Long sceneId;
+
+ private String alarmCode;
+
+ private String alarmName;
+
+ private String blackorwhite;
+
+ private String alarmSpecityId;
+
+ private String status;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneBigConfig.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneBigConfig.java
new file mode 100644
index 0000000000000000000000000000000000000000..cbbd9d4ea75cf62b5984e60bc9c0828f53e0dfb9
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneBigConfig.java
@@ -0,0 +1,45 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.Date;
+
+/**
+ * @author huamile
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("yw_scene_big_config")
+public class YwSceneBigConfig {
+
+ private Long id;
+
+ @Excel(name = "场景名称",width = 20,orderNum = "0")
+ private String name;
+
+ private String createBy;
+
+ private Date createTime;
+
+ private String updateBy;
+
+ private Date updateTime;
+
+ @Excel(name = "备注",width = 20,isImportField = "true_st",orderNum = "1")
+ private String remark;
+
+ private String status;
+
+ @TableField(exist = false)
+ @Excel(name = "状态",width = 20,isImportField = "true_st",orderNum = "2")
+ private String statusName;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneCalendar.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneCalendar.java
new file mode 100644
index 0000000000000000000000000000000000000000..9c4d21ac3925d55dba43a1f449612f8b4f47bf89
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneCalendar.java
@@ -0,0 +1,62 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.Date;
+
+/**
+ * @author huamile
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("yw_scene_calendar")
+public class YwSceneCalendar {
+
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ private Long sceneId;
+
+ private String matchType;
+
+ private String matchName;
+
+ private String matchRemark;
+
+ @JsonFormat(pattern = "HH:mm:ss", timezone = "GMT+8", locale = "zh")
+ private Date beginTime;
+
+ @JsonFormat(pattern = "HH:mm:ss", timezone = "GMT+8", locale = "zh")
+ private Date endTime;
+
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8", locale = "zh")
+ private Date matchDate;
+
+ private String status;
+
+ private String createBy;
+
+ private Date createTime;
+
+ private String updateBy;
+
+ private Date updateTime;
+
+ private String goldPoint;
+
+ @TableField(exist = false)
+ private String url;
+
+ @TableField(exist = false)
+ private String scenePictureUrl;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneFile.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneFile.java
new file mode 100644
index 0000000000000000000000000000000000000000..29a74b96f1f38186bdb571c3a0e55081b1ddfdbb
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneFile.java
@@ -0,0 +1,47 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.Date;
+
+/**
+ * @author huamile
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("yw_scene_file")
+public class YwSceneFile {
+
+// private Long id;
+
+ private Long fileId;
+
+ private Long sceneId;
+
+ private String remark;
+
+ private Long createBy;
+
+ private Date createTime;
+
+ private Long updateBy;
+
+ private Date updateTime;
+
+ private String fileName;
+
+ private Long fileSize;
+
+ private String fileUrl;
+
+ private String fileType;
+
+ private String fileResolution;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneNetelement.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneNetelement.java
new file mode 100644
index 0000000000000000000000000000000000000000..2676b52056e3af430b374b52b2d84408d987fe55
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneNetelement.java
@@ -0,0 +1,78 @@
+package com.ruoyi.eastcom_yw.domain;
+
+//import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.annotation.Excel;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * @author huamile
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("yw_scene_netelement")
+public class YwSceneNetelement {
+
+ private Long id;
+
+ private Long sceneId;
+
+ @Excel(name = "场馆名称",width = 20,sort = 1)
+ @TableField(exist = false)
+ private String venueName;
+
+ @Excel(name = "网元名称",width = 20,sort = 2)
+ private String netElementName;
+
+ private String alarmSpecityId;
+
+ @Excel(name = "专业",width = 20,sort = 3)
+ @TableField(exist = false)
+ private String specialty;
+
+ @Excel(name = "网元编号",width = 20,sort = 4)
+ private String netElementCode;
+
+ @Excel(name = "网元经度",width = 20,sort = 5)
+ private Float netElementLat;
+
+ @Excel(name = "网元纬度",width = 20,sort = 6)
+ private Float netElementLon;
+
+ @Excel(name = "网元类型",width = 20,sort = 7)
+ private String type;
+
+ private String status;
+
+ @Excel(name = "状态",width = 20,sort = 8)
+ @TableField(exist = false)
+ private String statusName;
+
+ @Excel(name = "物理站名",width = 20,sort = 9)
+ private String netElementPhyname;
+
+ @Excel(name = "是否红线内",width = 20,sort = 10)
+ private String inRedline;
+
+ @Excel(name = "黑白名单",width = 20,sort = 11)
+ private String blackorwhite;
+
+ @Excel(name = "机房",width = 20,sort = 12)
+ private String room;
+
+ @Excel(name = "端口",width = 20,sort = 13)
+ private String port;
+
+ @Excel(name = "网元中文名称",width = 20,sort = 14)
+ private String netElementCname;
+
+ @Excel(name = "小区ci",width = 20,sort = 15)
+ private String ci;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneTestData.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneTestData.java
new file mode 100644
index 0000000000000000000000000000000000000000..e69ed3dd18a12b31c970b703ae00195ad81ef110
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneTestData.java
@@ -0,0 +1,22 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class YwSceneTestData {
+ private Long id;
+ private String bzname;
+ private String scenename;
+ private String deviceoid;
+ private Float connectdelay;
+ private Float dlspeed;
+ private Float lat;
+ private Float lng;
+ private Float pagecomplete;
+ private Float ulspeed;
+ private Date updateTime;
+ private String nettype;
+ private Integer sceneId;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneUser.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneUser.java
new file mode 100644
index 0000000000000000000000000000000000000000..3ae4dd13c3ed0ecee4f906ebccb8282738caf646
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneUser.java
@@ -0,0 +1,61 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.core.domain.BaseEntity;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @author huamile
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("yw_scene_user")
+public class YwSceneUser {
+
+ @TableId(value = "id",type = IdType.AUTO)
+ private Long id;
+
+ private Long sceneId;
+
+ @TableField(exist = false)
+ @Excel(name = "场馆名称",isImportField = "true_st",width = 20)
+ private String venueName;
+
+ private Long userId;
+
+ @TableField(exist = false)
+ @Excel(name = "用户名",isImportField = "true_st",width = 20)
+ private String userName;
+
+ @Excel(name = "所属区域",isImportField = "true_st",width = 20)
+ private String belongArea;
+
+ @Excel(name = "是否需要签到",isImportField = "true_st",width = 20)
+ private String needSign;
+
+ @TableField(exist = false)
+ private List userIds;
+
+ private String updateBy;
+
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8", locale = "zh")
+ private Date updateTime;
+
+ private String createBy;
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8", locale = "zh")
+ private Date createTime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneView.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneView.java
new file mode 100644
index 0000000000000000000000000000000000000000..2c856983acd29fceef83159c448e42dfa35e4c8e
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSceneView.java
@@ -0,0 +1,42 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.annotation.Excel;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+
+/**
+ *
+ *
+ *
+ *
+ * @author jkj
+ * @since 2023-01-12
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("v_yw_scene")
+public class YwSceneView implements Serializable {
+
+ private static final long serialVersionUID=1L;
+
+ /**
+ * 序号
+ */
+ private Long id;
+
+ /**
+ * 场馆名称
+ */
+ private String venueName;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSignLog.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSignLog.java
new file mode 100644
index 0000000000000000000000000000000000000000..a419bb4dfd9370171cc7a2aeb5e7932d14f93c1b
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSignLog.java
@@ -0,0 +1,39 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+
+import java.sql.Timestamp;
+import java.util.Date;
+
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("yw_sign_log")
+public class YwSignLog {
+
+ @TableId(value = "id")
+ private Long id;
+
+ private Long signPlanId;
+
+ private Long userId;
+
+ private Date signTime;
+
+ private Double signJ;
+
+ private Double signW;
+
+ private Long isDaiSign;
+
+ private String signType;
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSignLogView.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSignLogView.java
new file mode 100644
index 0000000000000000000000000000000000000000..bc161ef6637c2bc1117b6a351e838a7e5d922fd2
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSignLogView.java
@@ -0,0 +1,78 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+
+import java.sql.Timestamp;
+import java.util.Date;
+
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("v_yw_sign_log")
+public class YwSignLogView {
+
+ private Long signPlanId;
+
+ private String signDate;
+
+ private Date beginTime;
+
+ private Date endTime;
+
+ private Long userId;
+
+ private String nickName;
+
+ private String userTypeName;
+
+ private String userType;
+
+ private Long sceneId;
+
+ private String venueName;
+
+ private String areaCountyId;
+
+ private String city;
+
+ private String county;
+
+ private Date signInTime;
+
+ private Double signInJ;
+
+ private Double signInW;
+
+ private Long isDaiSignIn;
+
+ private Date signOutTime;
+
+ private Double signOutJ;
+
+ private Double signOutW;
+
+ private Long isDaiSignOut;
+
+ private String signType;
+
+ private String signStatus;
+
+ private String checkType;
+
+ private String belongArea;
+
+ private Double latitude;
+
+ private Double longitude;
+
+ private Integer signScope;
+
+ private Date genTime;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSignPlan.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSignPlan.java
new file mode 100644
index 0000000000000000000000000000000000000000..7d255b2c45a085ec1f9794224f990394a4b3ce41
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSignPlan.java
@@ -0,0 +1,47 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.Date;
+import java.util.List;
+
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("yw_sign_plan")
+public class YwSignPlan {
+
+ @TableId(value = "id")
+ private Long id;
+
+ private Long sceneId;
+
+ private Date signDate;
+
+ private Date beginTime;
+
+ private Date endTime;
+
+ private String repWarnInterval;
+
+ private Integer repSignInterval;
+
+ private Long sceneBigId;
+
+ private String isOpen;
+
+ private String noticeType;
+
+ private Integer signNum;
+
+ private String signUsers;
+
+ private Date updateTime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSignPlanRemind.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSignPlanRemind.java
new file mode 100644
index 0000000000000000000000000000000000000000..2221942486896fd679c8e08910a6b739c96d6633
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSignPlanRemind.java
@@ -0,0 +1,25 @@
+package com.ruoyi.eastcom_yw.domain;
+
+
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@Data
+public class YwSignPlanRemind extends YwSignPlan implements Serializable {
+
+ private static final long serialVersionUID=1L;
+
+ private Long userId;
+
+ private String phoneNumber;
+
+ private Date remindTime;
+
+ private String noticeTitle;
+
+ private String noticeContent;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSignPlanView.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSignPlanView.java
new file mode 100644
index 0000000000000000000000000000000000000000..aacb2c75416206af838976ba7d04bf6ffb9ef499
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSignPlanView.java
@@ -0,0 +1,37 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.Date;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("v_yw_sign_plan")
+public class YwSignPlanView extends YwSignPlan{
+
+ private String noticeTypeName;
+
+ private String venueName;
+
+ private Double latitude;
+
+ private Double longitude;
+
+ private Integer signScope;
+
+ private String areaCountyId;
+
+ private String city;
+
+ private String county;
+
+ private String venueType;
+
+ private String maintainType;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSpareParts.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSpareParts.java
new file mode 100644
index 0000000000000000000000000000000000000000..c17fda92417010e146be3b7239b0a841ba02bfba
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwSpareParts.java
@@ -0,0 +1,105 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDateTime;
+
+/**
+ *
+ * 亚运备件表
+ *
+ *
+ * @author yqf
+ * @since 2023-08-31
+ */
+@Data
+@TableName("yw_spare_parts")
+@ApiModel(value = "YwSpareParts对象", description = "亚运备件表")
+public class YwSpareParts {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("序号")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("场馆名称")
+ @TableField("venue_name")
+ private String venueName;
+
+ @ApiModelProperty("场馆类型")
+ @TableField("venue_type")
+ private String venueType;
+
+ @ApiModelProperty("设备类型")
+ @TableField("device_type")
+ private String deviceType;
+
+ @ApiModelProperty("单板型号")
+ @TableField("board_model")
+ private String boardModel;
+
+ @ApiModelProperty("通用数量")
+ @TableField("current_num")
+ private String currentNum;
+
+ @ApiModelProperty("单板数量")
+ @TableField("board_num")
+ private String boardNum;
+
+ @ApiModelProperty("备件型号")
+ @TableField("part_model")
+ private String partModel;
+
+ @ApiModelProperty("需求数量")
+ @TableField("need_num")
+ private String needNum;
+
+ @ApiModelProperty("配置数量")
+ @TableField("configure_num")
+ private String configureNum;
+
+ @ApiModelProperty("缺口")
+ @TableField("gap_num")
+ private String gapNum;
+
+ @ApiModelProperty("专业")
+ @TableField("major")
+ private String major;
+
+ @ApiModelProperty("备注")
+ @TableField("comment")
+ private String comment;
+
+ @ApiModelProperty("联系人")
+ @TableField("contacts")
+ private String contacts;
+
+ @ApiModelProperty("联系电话")
+ @TableField("telephone")
+ private String telephone;
+
+ @ApiModelProperty("创建人")
+ @TableField("create_by")
+ private String createBy;
+
+ @ApiModelProperty("创建时间")
+ @TableField("create_time")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("更新人")
+ @TableField("update_by")
+ private String updateBy;
+
+ @ApiModelProperty("更新时间")
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwWireTaskLog.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwWireTaskLog.java
new file mode 100644
index 0000000000000000000000000000000000000000..907b033e6414fa2df619b2afe4041cff5be740d4
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/YwWireTaskLog.java
@@ -0,0 +1,103 @@
+package com.ruoyi.eastcom_yw.domain;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+
+import java.util.Date;
+
+/**
+ * @author jkj
+ * @since 2023-02-07
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("v_yw_wire_task_log")
+public class YwWireTaskLog {
+
+ /**
+ * 序号
+ */
+ @TableId(value = "id")
+ private Long id;
+
+ /**
+ * 工作流processid
+ */
+ private String flwProcessid;
+
+ private String taskId;
+
+ /**
+ * 创建人
+ */
+ private Long createBy;
+
+ private String createName;
+
+ /**
+ * 创建时间
+ */
+ private Date createTime;
+
+ /**
+ * 结束时间
+ */
+ private Date endTime;
+
+ /**
+ * 施工单位
+ */
+ private String construcUnit;
+
+ /**
+ * 任务主id:场馆id-时间戳
+ */
+ private String wireTaskId;
+
+ private String wireTaskName;
+
+ /**
+ * 任务类型:1:布线,2:拆线,3:布线结算 4:拆线结算
+ */
+ private Integer taskType;
+
+ private String dealUser;
+
+ private String curStep;
+
+ private String dealStatus;
+
+ private Long venueId;
+
+ private String venueName;
+
+ private String city;
+
+ private String county;
+
+ private String roleKey;
+
+ private Integer isRemove;
+
+ private Integer isSettle;
+
+ private String report;
+
+ private Integer taskSubType;
+
+ private String matchId;
+
+ private String areaCountyId;
+
+ private String venueType;
+
+ private String maintainType;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/CommonDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/CommonDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..3c0cf38e7327e82505b5df9c408207670e764cc8
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/CommonDTO.java
@@ -0,0 +1,16 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import lombok.Data;
+
+@Data
+public class CommonDTO {
+
+ private Integer pageNum = 1;
+
+ private Integer pageSize = 10;
+
+ private PageSizesDTO pageSizes;
+
+ private PageNumsDTO pageNums;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/Dp2SpotCellDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/Dp2SpotCellDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..8d70d0275be4c11173ec937325913c6db8af371d
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/Dp2SpotCellDTO.java
@@ -0,0 +1,135 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+
+/**
+ *
+ * DTO
+ *
+ *
+ * @author ck
+ * @since 2023-08-10
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class Dp2SpotCellDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("id")
+ private Integer id;
+
+ @TableField("omc")
+ private String omc;
+
+ @ApiModelProperty("需要")
+ @TableField("县市")
+ private String 县市;
+
+ @TableField("enodebid")
+ private Long enodebid;
+
+ @TableField("本地小区标识")
+ private Long 本地小区标识;
+
+ @TableField("小区标识")
+ private Long 小区标识;
+
+ @ApiModelProperty("需要")
+ @TableField("站号")
+ private Long 站号;
+
+ @ApiModelProperty("需要")
+ @TableField("ci")
+ private Long ci;
+
+ @ApiModelProperty("需要")
+ @TableField("基站全称")
+ private String 基站全称;
+
+ @TableField("en名称")
+ private String en名称;
+
+ @ApiModelProperty("需要")
+ @TableField("小区名称")
+ private String 小区名称;
+
+ @ApiModelProperty("需要")
+ @TableField("小区频段")
+ private String 小区频段;
+
+ @ApiModelProperty("需要")
+ @TableField("纬度")
+ private Double 纬度;
+
+ @ApiModelProperty("需要")
+ @TableField("经度")
+ private Double 经度;
+
+ @TableField("纬度gcj")
+ private Double 纬度gcj;
+
+ @TableField("经度gcj")
+ private Double 经度gcj;
+
+ @ApiModelProperty("需要")
+ @TableField("室内室外")
+ private String 室内室外;
+
+ @ApiModelProperty("需要")
+ @TableField("网络")
+ private String 网络;
+
+ @TableField("现网状态")
+ private String 现网状态;
+
+ @TableField("cgi")
+ private String cgi;
+
+ @TableField("频点")
+ private Long 频点;
+
+ @TableField("pci")
+ private Long pci;
+
+ @TableField("tac")
+ private Long tac;
+
+ @TableField("一级场景")
+ private String 一级场景;
+
+ @TableField("二级场景")
+ private String 二级场景;
+
+ @ApiModelProperty("需要")
+ @TableField("设备类型")
+ private String 设备类型;
+
+ @ApiModelProperty("需要")
+ @TableField("带宽")
+ private Long 带宽;
+
+ @ApiModelProperty("需要")
+ @TableField("方位角")
+ private Long 方位角;
+
+ @TableField("扇区id")
+ private Long 扇区id;
+
+ @TableField("更新时间")
+ private LocalDateTime 更新时间;
+
+ @ApiModelProperty("景区ID,需要")
+ @TableField("景区id")
+ private Integer 景区id;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/Dp2SpotConfigDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/Dp2SpotConfigDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..13dfdd804071bde203c99a58ac46488e19765f46
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/Dp2SpotConfigDTO.java
@@ -0,0 +1,49 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ *
+ * DTO
+ *
+ *
+ * @author ck
+ * @since 2023-08-09
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class Dp2SpotConfigDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("景区id")
+ private Integer 景区id;
+
+ @TableField("景区名称")
+ private String 景区名称;
+
+ @TableField("行政区域")
+ private String 行政区域;
+
+ @TableField("中心经度")
+ private Object 中心经度;
+
+ @TableField("中心纬度")
+ private Object 中心纬度;
+
+ @TableField("景区介绍")
+ private String 景区介绍;
+
+ @TableField("景区大类")
+ private String 景区大类;
+
+ @TableField("景区大类id")
+ private Integer 景区大类id;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/Dp2ViewPowerAlarmDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/Dp2ViewPowerAlarmDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..2d866ade001363b7d83b9368abd8f5d57f3d953f
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/Dp2ViewPowerAlarmDTO.java
@@ -0,0 +1,83 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * DTO
+ *
+ *
+ * @author wqx
+ * @since 2023-08-31
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class Dp2ViewPowerAlarmDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("eventtime")
+ private LocalDateTime eventtime;
+
+ @TableField("alarmname")
+ private String alarmname;
+
+ @TableField("alarmid")
+ private Long alarmid;
+
+ @TableField("severity")
+ private String severity;
+
+ @TableField("site_id")
+ private String siteId;
+
+ @TableField("site_name")
+ private String siteName;
+
+ @TableField("device_name")
+ private String deviceName;
+
+ @TableField("owner")
+ private String owner;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @TableField("area")
+ private String area;
+
+ @TableField("logicalsites")
+ private String logicalsites;
+
+ @TableField("场馆id")
+ private Integer 场馆id;
+
+ @TableField("区域id")
+ private Integer 区域id;
+
+ @TableField("场馆名称")
+ private String 场馆名称;
+
+ @TableField("故障处理人")
+ private String 故障处理人;
+
+ @TableField("phonenumber")
+ private String phonenumber;
+
+ @TableField("deal_status")
+ private Integer deal_status;
+
+ @TableField("deal_time")
+ private LocalDateTime deal_time;
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/Dp2ViewWirelessAlarmDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/Dp2ViewWirelessAlarmDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..8be497fd9dc689bf060c49d767fc8b1e53ef7778
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/Dp2ViewWirelessAlarmDTO.java
@@ -0,0 +1,89 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * DTO
+ *
+ *
+ * @author wqx
+ * @since 2023-09-01
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class Dp2ViewWirelessAlarmDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("id")
+ private Long id;
+
+ @TableField("eventtime")
+ private LocalDateTime eventtime;
+
+ @TableField("alarmname")
+ private String alarmname;
+
+ @TableField("omcname")
+ private String omcname;
+
+ @TableField("site_id")
+ private String siteId;
+
+ @TableField("site_name")
+ private String siteName;
+
+ @TableField("area")
+ private String area;
+
+ @TableField("alarmid")
+ private String alarmid;
+
+ @TableField("sitetype")
+ private String sitetype;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @TableField("cell_name")
+ private String cellName;
+
+ @TableField("场馆id")
+ private Long 场馆id;
+
+ @TableField("场馆名称")
+ private String 场馆名称;
+
+ @TableField("longitude")
+ private Object longitude;
+
+ @TableField("latitude")
+ private Object latitude;
+
+ @TableField("坐席编号")
+ private String 坐席编号;
+
+ @TableField("场内场外")
+ private String 场内场外;
+
+ @TableField("区域id")
+ private Integer 区域id;
+
+ @TableField("故障处理人")
+ private String 故障处理人;
+
+ @TableField("phonenumber")
+ private String phonenumber;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/DpSceneConfigDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/DpSceneConfigDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..c842eedd7c7bead2d7eeae63a605ee403425c158
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/DpSceneConfigDTO.java
@@ -0,0 +1,75 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+
+import com.ruoyi.common.annotation.Excel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * DTO
+ *
+ *
+ * @author yqf
+ * @since 2023-04-12
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class DpSceneConfigDTO {
+
+
+ private static final long serialVersionUID = 1L;
+ @ApiModelProperty("自增id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Integer id;
+
+ @ApiModelProperty("颜色等级")
+ @TableField("level")
+ private Short level;
+
+ @ApiModelProperty("指标名称")
+ @TableField("name")
+ private String name;
+
+ @ApiModelProperty("最小值")
+ @TableField("range1")
+ private Object range1;
+
+ @ApiModelProperty("最大值")
+ @TableField("range2")
+ private Object range2;
+
+ @ApiModelProperty("颜色")
+ @TableField("color")
+ private String color;
+
+ @ApiModelProperty("备注")
+ @TableField("content")
+ private String content;
+
+ @ApiModelProperty("指标等级:cell、scene")
+ @TableField("type")
+ private String type;
+
+ @ApiModelProperty("网络类型")
+ @TableField("nettype")
+ private String nettype;
+
+ @ApiModelProperty("小区类型")
+ @TableField("celltype")
+ private String celltype;
+
+ @ApiModelProperty("颜色分值")
+ @TableField("colorscore")
+ private Double colorscore;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/MmlObjectDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/MmlObjectDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..badf3363d8221d151cde8f8b70e8e6a0d12ddd67
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/MmlObjectDTO.java
@@ -0,0 +1,19 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.List;
+
+/**
+ * @author yqf
+ * @date 2023/6/6
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class MmlObjectDTO {
+ private String 基站名;
+ private List 指令集;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PageNumsDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PageNumsDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..ab5fa02c05e46a98f90a55a9ea44ce2f0f523151
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PageNumsDTO.java
@@ -0,0 +1,16 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import lombok.Data;
+
+@Data
+public class PageNumsDTO {
+
+ private Integer cs;
+
+ private Integer dh;
+
+ private Integer agis;
+
+ private Integer wx;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PageSizesDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PageSizesDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..c47b9d68432dd6f132c3d0e5d7289f3f31441b90
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PageSizesDTO.java
@@ -0,0 +1,16 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import lombok.Data;
+
+@Data
+public class PageSizesDTO {
+
+ private Integer cs;
+
+ private Integer dh;
+
+ private Integer agis;
+
+ private Integer wx;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi4gCellDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi4gCellDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..71d2ee2db4b55778ad5fe186ded75f8206c81ffb
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi4gCellDTO.java
@@ -0,0 +1,185 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * 场馆4G小区级15分钟指标DTO
+ *
+ *
+ * @author yqf
+ * @since 2023-04-11
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class PmKpi4gCellDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+// @ApiModelProperty("id")
+// @TableField("id")
+// private Long id;
+
+ @TableField("venue_id")
+ private Integer venueId;
+
+ @TableField("venue_name")
+ private String venueName;
+
+ @TableField("cellcodeci")
+ private String cellcodeci;
+
+ @TableField("starttime")
+ private LocalDateTime starttime;
+
+ @TableField("input_datetime")
+ private LocalDateTime inputDatetime;
+
+ @TableField("小区名称")
+ private String 小区名称;
+
+ @TableField("上行流量mb")
+ private BigDecimal 上行流量mb;
+
+ @TableField("下行流量mb")
+ private BigDecimal 下行流量mb;
+
+ @TableField("有效rrc连接平均数")
+ private BigDecimal 有效rrc连接平均数;
+
+ @TableField("有效rrc连接最大数")
+ private BigDecimal 有效rrc连接最大数;
+
+ @TableField("平均用户数")
+ private BigDecimal 平均用户数;
+
+ @TableField("最大用户数")
+ private BigDecimal 最大用户数;
+
+ @TableField("volte话务量")
+ private BigDecimal volte话务量;
+
+ @TableField("上行prb利用率")
+ private BigDecimal 上行prb利用率;
+
+ @TableField("下行prb利用率")
+ private BigDecimal 下行prb利用率;
+
+ @TableField("上行平均干扰")
+ private BigDecimal 上行平均干扰;
+
+ @TableField("rrc建立成功率")
+ private BigDecimal rrc建立成功率;
+
+ @TableField("e_rab建立成功率")
+ private BigDecimal eRab建立成功率;
+
+ @TableField("qci为1的e_rab建立成功率")
+ private BigDecimal qci为1的eRab建立成功率;
+
+ @TableField("无线掉线率")
+ private BigDecimal 无线掉线率;
+
+ @TableField("掉线次数")
+ private BigDecimal 掉线次数;
+
+ @TableField("切换成功率")
+ private BigDecimal 切换成功率;
+
+ @TableField("esrvcc切换成功率")
+ private BigDecimal esrvcc切换成功率;
+
+ @TableField("esrvcc切换请求次数")
+ private BigDecimal esrvcc切换请求次数;
+
+ @TableField("rrc重建成功率")
+ private BigDecimal rrc重建成功率;
+
+ @TableField("rrc重建次数")
+ private BigDecimal rrc重建次数;
+
+ @TableField("volte掉话率")
+ private BigDecimal volte掉话率;
+
+ @TableField("volte掉话次数")
+ private BigDecimal volte掉话次数;
+
+ @TableField("rru_puschprbassn")
+ private BigDecimal rruPuschprbassn;
+
+ @TableField("rru_puschprbtot")
+ private BigDecimal rruPuschprbtot;
+
+ @TableField("rru_pdschprbassn")
+ private BigDecimal rruPdschprbassn;
+
+ @TableField("rru_pdschprbtot")
+ private BigDecimal rruPdschprbtot;
+
+ @TableField("rrc_succconnestab")
+ private BigDecimal rrcSuccconnestab;
+
+ @TableField("rrc_attconnestab")
+ private BigDecimal rrcAttconnestab;
+
+ @TableField("erab_nbrsuccestab_1")
+ private BigDecimal erabNbrsuccestab1;
+
+ @TableField("erab_nbrattestab")
+ private BigDecimal erabNbrattestab;
+
+ @TableField("erab_nbrattestab_1")
+ private BigDecimal erabNbrattestab1;
+
+ @TableField("切换成功率_分母")
+ private BigDecimal 切换成功率分母;
+
+ @TableField("切换成功率_分子")
+ private BigDecimal 切换成功率分子;
+
+ @TableField("掉线率_分母")
+ private BigDecimal 掉线率分母;
+
+ @TableField("iratho_succoutgeran")
+ private BigDecimal irathoSuccoutgeran;
+
+ @TableField("rrc_attconnreestab")
+ private BigDecimal rrcAttconnreestab;
+
+ @TableField("volte掉话率_分母")
+ private BigDecimal volte掉话率分母;
+
+ @TableField("erab_nbrsuccestab")
+ private BigDecimal erabNbrsuccestab;
+
+ @TableField("omcname")
+ private String omcname;
+
+ @TableField("无线接通率")
+ private BigDecimal 无线接通率;
+
+ @TableField("rrc_failconnestab")
+ private BigDecimal rrcFailconnestab;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @TableField("groupid")
+ private Long groupid;
+
+ @TableField("endtime")
+ private LocalDateTime endtime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi4gMinDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi4gMinDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..1c80682a6f414bef7b36d10748fb328a15d7d96c
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi4gMinDTO.java
@@ -0,0 +1,102 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * 场馆4G小区级1分钟指标DTO
+ *
+ *
+ * @author yqf
+ * @since 2023-04-12
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class PmKpi4gMinDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+
+ @TableField("groupid")
+ private Integer groupid;
+
+ @TableField("时间")
+ private LocalDateTime 时间;
+
+ @TableField("小区名称")
+ private String 小区名称;
+
+ @TableField("地市区号")
+ private String 地市区号;
+
+ @TableField("厂商id")
+ private String 厂商id;
+
+ @TableField("avg_user")
+ private BigDecimal avgUser;
+
+ @TableField("max_user")
+ private Integer maxUser;
+
+ @TableField("prb_up")
+ private BigDecimal prbUp;
+
+ @TableField("prb_down")
+ private BigDecimal prbDown;
+
+ @TableField("avg_disturb")
+ private Integer avgDisturb;
+
+ @TableField("speed_up")
+ private BigDecimal speedUp;
+
+ @TableField("speed_down")
+ private BigDecimal speedDown;
+
+ @TableField("call_succ_rate")
+ private BigDecimal callSuccRate;
+
+ @TableField("call_drop_rate")
+ private BigDecimal callDropRate;
+
+ @TableField("act_avg_user")
+ private BigDecimal actAvgUser;
+
+ @TableField("act_max_user")
+ private Integer actMaxUser;
+
+ @TableField("volte")
+ private BigDecimal volte;
+
+ @TableField("volte_succ_rate")
+ private BigDecimal volteSuccRate;
+
+ @TableField("volte_drop_rate")
+ private BigDecimal volteDropRate;
+
+ @TableField("data_up")
+ private BigDecimal dataUp;
+
+ @TableField("data_down")
+ private BigDecimal dataDown;
+
+ @TableField("v1_max")
+ private BigDecimal v1Max;
+
+ @TableField("v1_avg")
+ private String v1Avg;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi4gVenueDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi4gVenueDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..b5395a47d7ce810a32f77aa75eb450946690bdb9
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi4gVenueDTO.java
@@ -0,0 +1,75 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * @author yqf
+ * @date 2023/4/11
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class PmKpi4gVenueDTO {
+
+ private static final long serialVersionUID = 1L;
+
+
+ @TableId("id")
+ private Long id;
+
+ @TableField("开始时间")
+ private LocalDateTime 开始时间;
+
+ @TableField("入库时间")
+ private LocalDateTime 入库时间;
+
+ @TableField("区县")
+ private String 区县;
+
+ @TableField("场馆id")
+ private Integer 场馆id;
+
+ @TableField("无线接通率")
+ private BigDecimal 无线接通率;
+
+ @TableField("流量GB")
+ private Short 流量GB;
+
+ @TableField("最大用户数")
+ private Short 最大用户数;
+
+ @TableField("话务量")
+ private Short 话务量;
+
+ @TableField("上行prb利用率")
+ private BigDecimal 上行prb利用率;
+
+ @TableField("下行prb利用率")
+ private BigDecimal 下行prb利用率;
+
+ @TableField("上行平均干扰")
+ private Short 上行平均干扰;
+
+ @TableField("volte接通率")
+ private BigDecimal volte接通率;
+
+ @TableField("无线掉线率")
+ private BigDecimal 无线掉线率;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @TableField("结束时间")
+ private LocalDateTime 结束时间;
+
+ @TableField("平均用户数")
+ private BigDecimal 平均用户数;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi5gCellDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi5gCellDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..0ec97d0d3c75bede147875f4193ece9a025cac94
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi5gCellDTO.java
@@ -0,0 +1,170 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * 场馆5G小区级15分钟指标DTO
+ *
+ *
+ * @author yqf
+ * @since 2023-04-11
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class PmKpi5gCellDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+// @ApiModelProperty("id")
+// @TableField("id")
+// private Long id;
+
+ @TableField("venue_id")
+ private Integer venueId;
+
+ @TableField("venue_name")
+ private String venueName;
+
+ @TableField("ci")
+ private String ci;
+
+ @TableField("starttime")
+ private LocalDateTime starttime;
+
+ @TableField("小区名称")
+ private String 小区名称;
+
+ @TableField("nr流量")
+ private Short nr流量;
+
+ @TableField("上行5g流量")
+ private Short 上行5g流量;
+
+ @TableField("下行5g流量")
+ private Short 下行5g流量;
+
+ @TableField("小区rlc层下行丢包率")
+ private BigDecimal 小区rlc层下行丢包率;
+
+ @TableField("小区级rlc层sdu下行空口丢包数")
+ private Short 小区级rlc层sdu下行空口丢包数;
+
+ @TableField("小区rlc层收到的下行sdu包数")
+ private Short 小区rlc层收到的下行sdu包数;
+
+ @TableField("平均用户数")
+ private Short 平均用户数;
+
+ @TableField("最大用户数")
+ private Short 最大用户数;
+
+ @TableField("sn异常释放率")
+ private BigDecimal sn异常释放率;
+
+ @TableField("sgnb释放总次数")
+ private Short sgnb释放总次数;
+
+ @TableField("sgnb触发sgnb异常释放总次数")
+ private Short sgnb触发sgnb异常释放总次数;
+
+ @TableField("nsa_sgnb添加成功率")
+ private BigDecimal nsaSgnb添加成功率;
+
+ @TableField("dc场景下发送sgnb增加成功的次数")
+ private Short dc场景下发送sgnb增加成功的次数;
+
+ @TableField("dc场景下收到sgnb增加尝试的次数")
+ private Short dc场景下收到sgnb增加尝试的次数;
+
+ @TableField("无线接通率")
+ private BigDecimal 无线接通率;
+
+ @TableField("rrc建立成功次数")
+ private Short rrc建立成功次数;
+
+ @TableField("rrc建立请求消息次数")
+ private Short rrc建立请求消息次数;
+
+ @TableField("小区中qos_flow建立成功次数")
+ private Short 小区中qosFlow建立成功次数;
+
+ @TableField("小区中qos_flow建立尝试次数")
+ private Short 小区中qosFlow建立尝试次数;
+
+ @TableField("小区中ng信令连接建立成功次数")
+ private Short 小区中ng信令连接建立成功次数;
+
+ @TableField("小区中ng信令连接建立尝试次数")
+ private Short 小区中ng信令连接建立尝试次数;
+
+ @TableField("无线掉线率")
+ private BigDecimal 无线掉线率;
+
+ @TableField("小区中ue上下文异常释放的次数")
+ private Short 小区中ue上下文异常释放的次数;
+
+ @TableField("小区中ue上下文正常释放的次数")
+ private Short 小区中ue上下文正常释放的次数;
+
+ @TableField("无线掉线率分母")
+ private Short 无线掉线率分母;
+
+ @TableField("切换成功率")
+ private BigDecimal 切换成功率;
+
+ @TableField("切换成功率分子")
+ private Short 切换成功率分子;
+
+ @TableField("切换成功率分母")
+ private Short 切换成功率分母;
+
+ @TableField("下行平均使用的prb个数")
+ private Short 下行平均使用的prb个数;
+
+ @TableField("下行平均可用prb个数")
+ private Short 下行平均可用prb个数;
+
+ @TableField("上行平均使用的prb个数")
+ private Short 上行平均使用的prb个数;
+
+ @TableField("上行平均可用prb个数")
+ private Short 上行平均可用prb个数;
+
+ @TableField("上行prb利用率")
+ private BigDecimal 上行prb利用率;
+
+ @TableField("下行prb利用率")
+ private BigDecimal 下行prb利用率;
+
+ @TableField("input_datetime")
+ private LocalDateTime inputDatetime;
+
+ @TableField("cell_name")
+ private String cellName;
+
+ @TableField("pmsid")
+ private Long pmsid;
+
+ @TableField("上行干扰值")
+ private Double 上行干扰值;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @TableField("endtime")
+ private LocalDateTime endtime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi5gMinDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi5gMinDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..5a0d76bfa9c99fe4475485d58b1f8bb5596b25e8
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi5gMinDTO.java
@@ -0,0 +1,88 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * 场馆5G小区级1分钟指标DTO
+ *
+ *
+ * @author yqf
+ * @since 2023-04-12
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class PmKpi5gMinDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+
+ @TableField("groupid")
+ private Integer groupid;
+
+ @TableField("时间")
+ private LocalDateTime 时间;
+
+ @TableField("小区名称")
+ private String 小区名称;
+
+ @TableField("地市区号")
+ private String 地市区号;
+
+ @TableField("厂商id")
+ private String 厂商id;
+
+ @TableField("prb_up")
+ private Double prbUp;
+
+ @TableField("prb_down")
+ private Double prbDown;
+
+ @TableField("up_disturb")
+ private Integer upDisturb;
+
+ @TableField("speed_up")
+ private Double speedUp;
+
+ @TableField("speed_down")
+ private Double speedDown;
+
+ @TableField("act_max_user")
+ private Integer actMaxUser;
+
+ @TableField("act_avg_user")
+ private Double actAvgUser;
+
+ @TableField("rrc_avg_user")
+ private BigDecimal rrcAvgUser;
+
+ @TableField("rrc_max_user")
+ private Integer rrcMaxUser;
+
+ @TableField("call_succ_rate")
+ private BigDecimal callSuccRate;
+
+ @TableField("drop_call_rate")
+ private BigDecimal dropCallRate;
+
+ @TableField("data_down")
+ private BigDecimal dataDown;
+
+ @TableField("data_up")
+ private BigDecimal dataUp;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi5gVenueDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi5gVenueDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..e9dfba95f0c19a07c60be3321e235af9fda2a8cb
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/PmKpi5gVenueDTO.java
@@ -0,0 +1,88 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * 5G场馆级15分钟指标DTO
+ *
+ *
+ * @author yqf
+ * @since 2023-04-12
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class PmKpi5gVenueDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId("id")
+ private Long id;
+
+ @TableField("开始时间")
+ private LocalDateTime 开始时间;
+
+ @TableField("入库时间")
+ private LocalDateTime 入库时间;
+
+ @TableField("区县")
+ private String 区县;
+
+ @TableField("场馆id")
+ private Integer 场馆id;
+
+ @TableField("无线接通率")
+ private BigDecimal 无线接通率;
+
+ @TableField("nsa_sgnb添加成功率")
+ private BigDecimal nsaSgnb添加成功率;
+
+ @TableField("切换成功率")
+ private BigDecimal 切换成功率;
+
+ @TableField("无线掉线率")
+ private BigDecimal 无线掉线率;
+
+ @TableField("sn异常释放率")
+ private BigDecimal sn异常释放率;
+
+ @TableField("上行prb利用率")
+ private BigDecimal 上行prb利用率;
+
+ @TableField("下行prb利用率")
+ private BigDecimal 下行prb利用率;
+
+ @TableField("流量GB")
+ private BigDecimal 流量GB;
+
+ @TableField("最大用户数")
+ private Short 最大用户数;
+
+ @TableField("话务量")
+ private BigDecimal 话务量;
+
+ @TableField("上行干扰值")
+ private Double 上行干扰值;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @TableField("结束时间")
+ private LocalDateTime 结束时间;
+
+ @TableField("平均用户数")
+ private BigDecimal 平均用户数;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/SysNoticeDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/SysNoticeDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..8e6396153d61c52ab4f860ada84ec9c814b880a7
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/SysNoticeDTO.java
@@ -0,0 +1,131 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *
+ * 通知公告表DTO
+ *
+ *
+ * @author ck
+ * @since 2023-04-14
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class SysNoticeDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("自增id")
+ @TableId(value = "notice_id", type = IdType.AUTO)
+ private Integer noticeId;
+
+ @ApiModelProperty("通知标题")
+ @TableField("notice_title")
+ private String noticeTitle;
+
+ @ApiModelProperty("通知类型--字典表sys_notice_type")
+ @TableField("notice_type")
+ private String noticeType;
+
+ @ApiModelProperty("通知内容")
+ @TableField("notice_content")
+ private String noticeContent;
+
+ @ApiModelProperty("状态 0未读 1已读")
+ @TableField("status")
+ private String status;
+
+ @ApiModelProperty("创建人")
+ @TableField("create_by")
+ private String createBy;
+
+ @ApiModelProperty("插入时间")
+ @TableField("create_time")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("更新人")
+ @TableField("update_by")
+ private String updateBy;
+
+ @ApiModelProperty("更新时间")
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @ApiModelProperty("备注")
+ @TableField("remark")
+ private String remark;
+
+ @ApiModelProperty("接收人")
+ @TableField("recive_user")
+ private Integer reciveUser;
+
+ @ApiModelProperty("工作流id")
+ @TableField("flw_processid")
+ private String flwProcessid;
+
+ @ApiModelProperty("工作流任务id")
+ @TableField("flw_taskid")
+ private String flwTaskid;
+
+ @ApiModelProperty("实际发送时间")
+ @TableField("send_time")
+ private LocalDateTime sendTime;
+
+ @ApiModelProperty("发送是否成功,1成功 0失败")
+ @TableField("send_status")
+ private String sendStatus;
+
+ @ApiModelProperty("接收人手机号")
+ @TableField("recive_user_phone")
+ private String reciveUserPhone;
+
+ @ApiModelProperty("计划发送时间(同天当前时间之前立即发送)")
+ @TableField("exp_send_time")
+ private LocalDateTime expSendTime;
+
+ @ApiModelProperty("加入定时任务标记 默认0未加入 1已加入")
+ @TableField("add_flag")
+ private String addFlag;
+
+ @ApiModelProperty("通知对象ids数组")
+ @TableField("notice_object_id")
+ private List noticeObjectId;
+
+ @ApiModelProperty("通知模板id")
+ @TableField("notice_model_id")
+ private Long noticeModelId;
+
+ @ApiModelProperty("通知场景--字典yw_notice_scene (0一般告警 1重大告警 ....)")
+ @TableField("model_scene")
+ private String modelScene;
+
+ @ApiModelProperty("对象属性--yw_notice_object(0场馆层 1分公司层 2亚运指挥层 3ITCC层)")
+ @TableField("object_proto")
+ private String objectProto;
+
+ @ApiModelProperty("通知对象(是指具体的通知接受者,呈现方式包括场馆+群组;分公司+群组名;地市+群组名;ITCC+群组名;场馆+个人名;分公司+个人名;地市+个人名;ITCC+个人名这几种组合。具体呈现内容和对象属性、通知方式相关联)")
+ @TableField("notice_object")
+ private String noticeObject;
+
+ @ApiModelProperty("通知类型model_suit_type 1 普通 2 手工 3简报")
+ @TableField("model_suit_type")
+ private String modelSuitType;
+
+ @ApiModelProperty("关联表id(yw_notice_handwork)")
+ @TableField("handwork_id")
+ private Long handworkId;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/WorkFlowDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/WorkFlowDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..142e0c238b1e6ba4f34cc7a19f0140a829be288b
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/WorkFlowDTO.java
@@ -0,0 +1,11 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import lombok.Data;
+
+@Data
+public class WorkFlowDTO {
+
+ private String processInstanceId;
+
+ private String taskName;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwAlarmDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwAlarmDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..1885169dfeda6ceb003e6f0d6903e9d39acef4a7
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwAlarmDTO.java
@@ -0,0 +1,103 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.ruoyi.eastcom_yw.domain.model.StepInfo;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+import java.util.List;
+/**
+ * @author jkj
+ */
+@Data
+public class YwAlarmDTO extends CommonDTO {
+
+ private Long alarmId;
+
+ private Long groupId;
+
+ //告警类型 专业 wx 11种类型
+ private String alarmType;
+
+ //告警状态 0,1 PC端分别表示实时和全量 2 挂起,特殊要求
+ private String alarmStatus;
+
+ //告警的处理状态
+ private String dealStatus;
+
+ //告警处理人
+ private String dealUser;
+
+ //场馆Ids
+ private List venues;
+
+ private List venueNames;
+
+ //专业
+ private String alarmGroup;
+
+ //开始时间
+ private String startTime;
+
+ //结束时间
+ private String endTime;
+
+ private String city;
+
+ //区县
+ private String county;
+
+ private List countys;
+
+ //开始时间
+ private LocalDateTime start;
+
+ //结束时间
+ private LocalDateTime end;
+
+ //告警名称
+ private String alarmName;
+
+ //搜索框(告警名称、反馈人、告警网元、基站号)
+ private String searchBox;
+
+ //进程号
+ private String processId;
+
+ //查询时间
+ private String searchTime;
+
+ private Long userId;
+
+ //红线筛选
+ private String inRedLine;
+
+ private Integer isRefresh;
+
+ private Boolean isAll;
+
+ private Boolean isAPP = false;
+
+ //默认false,导出需要设置未true
+ private Boolean isExport = false;
+
+ private String venueName;
+
+ private String venueType;
+
+ private String maintainType;
+
+ private String orderByTime;
+
+ private String record;
+
+ private String siteType;
+
+ private Long [] alarmIds;
+
+ private StepInfo stepInfo;
+
+ private List alarmLevels;
+
+// private String orderBy;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwAlarmDTONoPage.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwAlarmDTONoPage.java
new file mode 100644
index 0000000000000000000000000000000000000000..0f240b72c94e5b0fdb3b88e9b576695142c6030e
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwAlarmDTONoPage.java
@@ -0,0 +1,104 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.ruoyi.eastcom_yw.domain.model.StepInfo;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * @author jkj
+ */
+@Data
+public class YwAlarmDTONoPage {
+
+ private Long alarmId;
+
+ private Long groupId;
+
+ //告警类型 专业 wx 11种类型
+ private String alarmType;
+
+ //告警状态 0,1 PC端分别表示实时和全量 2 挂起,特殊要求
+ private String alarmStatus;
+
+ //告警的处理状态
+ private String dealStatus;
+
+ //告警处理人
+ private String dealUser;
+
+ //场馆Ids
+ private List venues;
+
+ private List venueNames;
+
+ //专业
+ private String alarmGroup;
+
+ //开始时间
+ private String startTime;
+
+ //结束时间
+ private String endTime;
+
+ private String city;
+
+ //区县
+ private String county;
+
+ private List countys;
+
+ //开始时间
+ private LocalDateTime start;
+
+ //结束时间
+ private LocalDateTime end;
+
+ //告警名称
+ private String alarmName;
+
+ //搜索框(告警名称、反馈人、告警网元、基站号)
+ private String searchBox;
+
+ //进程号
+ private String processId;
+
+ //查询时间
+ private String searchTime;
+
+ private Long userId;
+
+ //红线筛选
+ private String inRedLine;
+
+ private Integer isRefresh;
+
+ private Boolean isAll;
+
+ private Boolean isAPP = false;
+
+ //默认false,导出需要设置未true
+ private Boolean isExport = false;
+
+ private String venueName;
+
+ private String venueType;
+
+ private String maintainType;
+
+ private String orderByTime;
+
+ private String record;
+
+ private String siteType;
+
+ private Long [] alarmIds;
+
+ private StepInfo stepInfo;
+
+ private List alarmLevels;
+
+// private String orderBy;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwAlarmHangupLogDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwAlarmHangupLogDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..c595c6bfcd2c52e4839361df41fc30401eb0c62c
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwAlarmHangupLogDTO.java
@@ -0,0 +1,66 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ *
+ *
+ *
+ *
+ * @author jkj
+ * @since 2023-02-15
+ */
+@Data
+public class YwAlarmHangupLogDTO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 大场景id
+ */
+ private Long sceneBigId;
+
+ /**
+ * 挂起时间
+ */
+ private String hangupTime;
+
+ /**
+ * 挂起人
+ */
+ private Long hangupUserId;
+
+ /**
+ * 恢复处理时间
+ */
+ private String recoveryTime;
+
+ /**
+ * 挂起原因
+ */
+ private String hangupReason;
+
+ /**
+ * 工作流进程id
+ */
+ private String flwProcessid;
+
+ /**
+ * 工作流任务id
+ */
+ private String flwTaskid;
+
+
+ /**
+ * 挂起类型
+ */
+ private String hangupStatus;
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwDataDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwDataDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..e918b8a00359dee4c558e95ebfe724c3b5910b51
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwDataDTO.java
@@ -0,0 +1,32 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author jkj
+ */
+@Data
+public class YwDataDTO {
+
+ private Long signPlanId;
+
+ private Long [] venueIds;
+
+ private String [] roles;
+
+ private String role;
+
+ private String [] userTypes;
+
+ //0签到1签退
+ private Integer signType;
+
+ private String signDate;
+
+ private Long [] ids;
+
+ private Long sceneBigId;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwDrsConfigDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwDrsConfigDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..33ea6cf7e43291eafc0525f64b307e061d1658e8
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwDrsConfigDTO.java
@@ -0,0 +1,71 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+
+/**
+ *
+ * DRS配置表DTO
+ *
+ *
+ * @author ck
+ * @since 2023-06-13
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwDrsConfigDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("任务名称")
+ @TableField("task_name")
+ private String taskName;
+
+ @ApiModelProperty("任务类型 drs_task_type 0 / 1 签到 2巡检")
+ @TableField("drs_task_type")
+ private String drsTaskType;
+
+ @ApiModelProperty("状态")
+ @TableField("status")
+ private String status;
+
+ @ApiModelProperty("创建人")
+ @TableField(value = "create_by", fill = FieldFill.INSERT)
+ private String createBy;
+
+ @ApiModelProperty("创建时间")
+ @TableField(value = "create_time", fill = FieldFill.INSERT)
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("修改人")
+ @TableField(value = "update_by", fill = FieldFill.UPDATE)
+ private String updateBy;
+
+ @ApiModelProperty("修改时间")
+ @TableField(value = "update_time", fill = FieldFill.UPDATE)
+ private LocalDateTime updateTime;
+
+ @ApiModelProperty("备注")
+ @TableField("remark")
+ private String remark;
+
+ @ApiModelProperty("删除标记")
+ @TableField("del_flag")
+ private String delFlag;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwDrsTempTaskDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwDrsTempTaskDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..a5d56d9af58ab52b43fa5148d758ae89dac07899
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwDrsTempTaskDTO.java
@@ -0,0 +1,100 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *
+ * DRS临时任务表DTO
+ *
+ *
+ * @author ck
+ * @since 2023-06-13
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwDrsTempTaskDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("场馆id")
+ @TableField("venue_id")
+ private Long venueId;
+
+ @ApiModelProperty("任务日期")
+ @TableField("task_date")
+ private LocalDate taskDate;
+
+ @ApiModelProperty("多组任务开始结束时间")
+ private List ywDrsTempTaskTimes;
+
+ @ApiModelProperty("任务时间")
+ @TableField("task_time")
+ private LocalDateTime taskTime;
+
+ @ApiModelProperty("任务结束时间")
+ @TableField("task_end_time")
+ private LocalDateTime taskEndTime;
+
+ @ApiModelProperty("任务名称")
+ @TableField("task_name")
+ private String taskName;
+
+ @ApiModelProperty("DRS任务类型 drs_task_type 0 / 1 签到 2巡检")
+ @TableField("drs_task_type")
+ private String drsTaskType;
+
+ @ApiModelProperty("DRS任务状态 drs_task_status 0未开始 1进行中 2已完成")
+ @TableField("drs_task_status")
+ private String drsTaskStatus;
+
+ @ApiModelProperty("自动状态变更 0自动 1手动")
+ @TableField("drs_auto_update")
+ private String drsAutoUpdate;
+
+ @ApiModelProperty("状态")
+ @TableField("status")
+ private String status;
+
+ @ApiModelProperty("创建人")
+ @TableField(value = "create_by", fill = FieldFill.INSERT)
+ private String createBy;
+
+ @ApiModelProperty("创建时间")
+ @TableField(value = "create_time", fill = FieldFill.INSERT)
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("修改人")
+ @TableField("update_by")
+ private String updateBy;
+
+ @ApiModelProperty("修改时间")
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @ApiModelProperty("备注")
+ @TableField("remark")
+ private String remark;
+
+ @ApiModelProperty("删除标记")
+ @TableField("del_flag")
+ private String delFlag;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwDrsTempTaskTimeDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwDrsTempTaskTimeDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..3bc97af0858ed225d45fd0a77c9ffad7b03e1f0c
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwDrsTempTaskTimeDTO.java
@@ -0,0 +1,35 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwDrsTempTaskTimeDTO {
+
+ @ApiModelProperty("任务时间")
+ @TableField("task_time")
+ private LocalDateTime taskTime;
+
+ @ApiModelProperty("任务结束时间")
+ @TableField("task_end_time")
+ private LocalDateTime taskEndTime;
+
+ @ApiModelProperty("任务名称")
+ @TableField("task_name")
+ private String taskName;
+
+ @ApiModelProperty("DRS任务状态 drs_task_status 0未开始 1进行中 2已完成")
+ @TableField("drs_task_status")
+ private String drsTaskStatus;
+
+ @ApiModelProperty("自动状态变更 0自动 1手动")
+ @TableField("drs_auto_update")
+ private String drsAutoUpdate;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwInspectPlanDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwInspectPlanDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..6ce7be6e0ae953aaece8ca6b8165bebfacdcfdbe
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwInspectPlanDTO.java
@@ -0,0 +1,65 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author huamile
+ */
+@Data
+public class YwInspectPlanDTO {
+
+ private Long id;
+
+ private Long sceneId;
+
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8", locale = "zh")
+ private Date inspectDate;
+
+ private String inspectSpecialty;
+
+ private List specialtyList;
+
+ private String beginTime;
+
+ private String planFinTime;
+
+ private List> timePeriods;
+
+ private Long sceneBigId;
+
+ private Long type;
+
+ private String inspectName;
+
+ private Integer checkNum;
+
+ private String checkType;
+
+ private String checkDesc;
+
+ private Integer circle;
+
+ private Long stopTimeOption;
+
+ private Long intervalTime;
+
+ private Integer inspectUserId;
+
+ private String repWarnInterval;
+
+ private String noticeType;
+
+ private String jobNo;
+
+ private String city;
+
+ private String county;
+
+ private String description;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwInspectPlanExportDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwInspectPlanExportDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..daaf17a5b89f360e4bf03d5a677b808638b21cd9
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwInspectPlanExportDTO.java
@@ -0,0 +1,41 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author huamile
+ */
+@Data
+public class YwInspectPlanExportDTO {
+
+ @Excel(name = "计划名称", width = 20)
+ private String inspectName;
+
+ @Excel(name = "场馆",width = 20)
+ private String venueName;
+
+ @Excel(name = "巡检日期",width = 20)
+ private String inspectDate;
+
+ @Excel(name = "专业",width = 20)
+ private String specialtyName;
+
+// @Excel(name = "巡检周期",width = 20)
+ private Integer circle;
+
+ @Excel(name = "计划开始时间",width = 20,exportFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date beginTime;
+
+ @Excel(name = "计划结束时间",width = 20,exportFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date planFinTime;
+
+// @Excel(name = "提前通知时间量",width = 20)
+ private String repWarnInterval;
+
+ @Excel(name = "通知方式",width = 20)
+ private String noticeType;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwInspectStatDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwInspectStatDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..0e1ad468ccc4010ed58339e1e00f297a9b1fa29a
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwInspectStatDTO.java
@@ -0,0 +1,41 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+//import cn.afterturn.easypoi.excel.annotation.Excel;
+
+import com.ruoyi.common.annotation.Excel;
+import lombok.Data;
+
+/**
+ * @author huamile
+ */
+@Data
+public class YwInspectStatDTO {
+
+ private Long sceneId;
+
+ @Excel(name = "场馆", width = 20)
+ private String venueName;
+
+ private String imageurl;
+
+ @Excel(name = "应完成数", width = 20)
+ private Integer allNum;
+
+ @Excel(name = "已完成数", width = 20)
+ private Integer completedNum;
+
+ @Excel(name = "任务完成率", width = 20)
+ private Double rate;
+
+ private String rateStr;
+
+ @Excel(name = "总项数", width = 20)
+ private Integer resultAllNum;
+
+ @Excel(name = "正常数", width = 20)
+ private Integer resulNormalNum;
+
+ @Excel(name = "任务正常率", width = 20)
+ private Double resulRate;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwInspectTaskDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwInspectTaskDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..493bc036208de8bed20958bff0e5d3b53ff419b7
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwInspectTaskDTO.java
@@ -0,0 +1,19 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.ruoyi.eastcom_yw.domain.YwRoutInspectConfig;
+import com.ruoyi.eastcom_yw.domain.YwRoutInspectPlan;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author huamile
+ */
+@Data
+public class YwInspectTaskDTO {
+
+ private YwInspectPlanDTO ywRoutInspectPlan;
+
+ private List list;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwInspectTaskExportDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwInspectTaskExportDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..97f099930dca3dcb1a4d24bf0eb52af507e14d78
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwInspectTaskExportDTO.java
@@ -0,0 +1,50 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.ruoyi.common.annotation.Excel;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author huamile
+ */
+@Data
+public class YwInspectTaskExportDTO {
+
+ @Excel(name = "任务号", width = 20,sort = 1)
+ private String jobNo;
+
+ @Excel(name = "任务名称", width = 20,sort = 2)
+ private String inspectName;
+
+ @Excel(name = "场馆", width = 20,sort = 3)
+ private String venueName;
+
+ @Excel(name = "专业", width = 20,sort = 4)
+ private String specialtyName;
+
+ @Excel(name = "责任人", width = 20,sort = 5)
+ private String feedBackUserName;
+
+ @Excel(name = "计划开始时间", width = 20, dateFormat = "yyyy-MM-dd HH:mm:ss",sort = 6)
+ private Date beginTime;
+
+ @Excel(name = "计划完成时间", width = 20, dateFormat = "yyyy-MM-dd HH:mm:ss",sort = 7)
+ private Date planFinTime;
+
+ @Excel(name = "是否超时", width = 20,sort = 8)
+ private String timeoutOrNot;
+
+ @Excel(name = "任务状态", width = 20,sort = 9)
+ private String taskStatus;
+
+// @Excel(name = "异常数/总项数",sort = 10)
+ private String rate;
+
+ @Excel(name = "异常数",sort = 11)
+ private Integer errorNum;
+
+ @Excel(name = "总项数",sort = 12)
+ private Integer num;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwKpiConfigDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwKpiConfigDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..05f512c1146331bce1801128cb24a8840648d850
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwKpiConfigDTO.java
@@ -0,0 +1,84 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * 指标字段阈值配置表DTO
+ *
+ *
+ * @author yqf
+ * @since 2023-04-11
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwKpiConfigDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+
+
+ @TableId(value = "id", type = IdType.AUTO)
+ @ApiModelProperty("id")
+ private Long id;
+
+ @ApiModelProperty("专业(字典表)")
+ @TableField("subject")
+ private String subject;
+
+ @ApiModelProperty("网络模式(字典表)")
+ @TableField("net_type")
+ private String netType;
+
+ @ApiModelProperty("指标字段")
+ @TableField("kpi_field")
+ private Long kpiField;
+
+ @ApiModelProperty("阈值范围")
+ @TableField("threshold_value")
+ private String thresholdValue;
+
+ @ApiModelProperty("颜色")
+ @TableField("color")
+ private String color;
+
+ @ApiModelProperty("创建人")
+ @TableField("create_by")
+ private String createBy;
+
+ @ApiModelProperty("创建时间")
+ @TableField("create_time")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("更新人")
+ @TableField("update_by")
+ private String updateBy;
+
+ @ApiModelProperty("更新时间")
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @ApiModelProperty("最小是(包括本值)")
+ @TableField("min_value")
+ private Object minValue;
+
+ @ApiModelProperty("最大值(不包括本值)")
+ @TableField("max_value")
+ private Object maxValue;
+
+ @ApiModelProperty("指标名")
+ @TableField("kpi_field_name")
+ private String kpiFieldName;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeBriefingDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeBriefingDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..a2ab3a040c3b9e1e041d8bc345938a069e4ddacd
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeBriefingDTO.java
@@ -0,0 +1,101 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *
+ * 通知通告简报计划表DTO
+ *
+ *
+ * @author ck
+ * @since 2023-04-11
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwNoticeBriefingDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("id")
+ @TableField("id")
+ private Long id;
+
+ @ApiModelProperty("地市")
+ @TableField("city")
+ private String city;
+
+ @ApiModelProperty("场馆id")
+ @TableField("venue_id")
+ private Long venueId;
+
+ @ApiModelProperty("对象属性yw_notice_object(0场馆层 1分公司层 2亚运指挥层 3ITCC层)")
+ @TableField("object_proto")
+ private String objectProto;
+
+ @ApiModelProperty("通知方式sys_notice_type")
+ @TableField("notice_type")
+ private List noticeType;
+
+ @ApiModelProperty("发送日期")
+ @TableField("send_date")
+ private LocalDate sendDate;
+
+ @ApiModelProperty("开始时间")
+ @TableField("begin_time")
+ private LocalDateTime beginTime;
+
+ @ApiModelProperty("结束时间")
+ @TableField("end_time")
+ private LocalDateTime endTime;
+
+ @ApiModelProperty("区县")
+ @TableField("county")
+ private String county;
+
+ @ApiModelProperty("对象ids数组")
+ @TableField("object_ids")
+ private List objectIds;
+
+ @ApiModelProperty("模板id")
+ @TableField("model_id")
+ private Long modelId;
+
+ @ApiModelProperty("排序号")
+ @TableField("order_num")
+ private Integer orderNum;
+
+ @ApiModelProperty("时间间隔(单位分)")
+ @TableField("time_interval")
+ private Integer timeInterval;
+
+ @ApiModelProperty("通知名称")
+ @TableField("notice_name")
+ private String noticeName;
+
+ @ApiModelProperty("启用状态 sys_normal_disable 0启用 1停用")
+ @TableField("sys_normal_disable")
+ private String sysNormalDisable;
+
+ @ApiModelProperty("通知类型model_suit_type 1 普通 2 手工 3文字简报 4h5简报)")
+ @TableField("model_suit_type")
+ private String modelSuitType;
+
+ @ApiModelProperty("发送方式 send_type (1自动发送 2手工发送)")
+ @TableField("send_type")
+ private String sendType;
+
+ @ApiModelProperty("发送人员")
+ @TableField("send_user")
+ private Long sendUser;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeHandworkDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeHandworkDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..b28b60a19c98be021f6c911edbc58ccb4fb599d6
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeHandworkDTO.java
@@ -0,0 +1,90 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *
+ * 通知通告手工通知计划表DTO
+ *
+ *
+ * @author ck
+ * @since 2023-04-11
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwNoticeHandworkDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("id")
+ @TableField("id")
+ private Long id;
+
+ @ApiModelProperty("通知名称")
+ @TableField("notice_name")
+ private String noticeName;
+
+ @ApiModelProperty("通知模板id")
+ @TableField("notice_model")
+ private Long noticeModel;
+
+ @ApiModelProperty("通知方式--sys_notice_type")
+ @TableField("notice_type")
+ private List noticeType;
+
+ @ApiModelProperty("通知对象ids")
+ @TableField("notice_object")
+ private List noticeObject;
+
+ @ApiModelProperty("通知内容")
+ @TableField("notice_content")
+ private String noticeContent;
+
+ @ApiModelProperty("通知状态yw_veriy_status 0待提交 1待审核 2已审核")
+ @TableField("notice_status")
+ private String noticeStatus;
+
+ @ApiModelProperty("日期")
+ @TableField("notice_date")
+ private LocalDateTime noticeDate;
+
+ @ApiModelProperty("开始时间")
+ @TableField("begin_time")
+ private LocalDateTime beginTime;
+
+ @ApiModelProperty("结束时间")
+ @TableField("end_time")
+ private LocalDateTime endTime;
+
+ @ApiModelProperty("时间间隔(单位分)")
+ @TableField("time_interval")
+ private Integer timeInterval;
+
+ @ApiModelProperty("工作流processid")
+ @TableField("flw_processid")
+ private String flwProcessid;
+
+ @ApiModelProperty("申请人id")
+ @TableField("apply_id")
+ private Long applyId;
+
+ @ApiModelProperty("审核人id")
+ @TableField("audit_id")
+ private Long auditId;
+
+ @ApiModelProperty("已添加到sys_notice标记(0否 1是)")
+ @TableField("add_flag")
+ private String addFlag;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeHandworkdetailDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeHandworkdetailDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..d9c4832d4dde3b13f8c6fc37e56285e2787707c7
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeHandworkdetailDTO.java
@@ -0,0 +1,55 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ *
+ * 通知通告手工通知审核表DTO
+ *
+ *
+ * @author ck
+ * @since 2023-04-11
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwNoticeHandworkdetailDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("id")
+ @TableField("id")
+ private Long id;
+
+ @ApiModelProperty("手工通知id")
+ @TableField("handwork_id")
+ private Long handworkId;
+
+ @ApiModelProperty("操作人(提交审核的人 或者 审核的人)")
+ @TableField("oprate_user")
+ private Long oprateUser;
+
+ @ApiModelProperty("审核结果(关联字典表yw_veriy_result 0通过 1驳回)")
+ @TableField("veriy_result")
+ private String veriyResult;
+
+ @ApiModelProperty("审核状态(关联字典表yw_veriy_status 0 待审核 1 已审核)")
+ @TableField("veriy_status")
+ private String veriyStatus;
+
+ @ApiModelProperty("驳回原因")
+ @TableField("fail_reason")
+ private String failReason;
+
+ @ApiModelProperty("附件")
+ @TableField("appendix")
+ private String appendix;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeListDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeListDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..178de73069d8bbf9143e8b139765b25527ba5b89
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeListDTO.java
@@ -0,0 +1,98 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *
+ * 通知通告记录表DTO
+ *
+ *
+ * @author ck
+ * @since 2023-04-11
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwNoticeListDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("id")
+ @TableField("id")
+ private Long id;
+
+ @ApiModelProperty("通知名称")
+ @TableField("notice_name")
+ private String noticeName;
+
+ @ApiModelProperty("通知场景--字典yw_notice_scene (0一般告警 1重大告警 ....)")
+ @TableField("model_scene")
+ private String modelScene;
+
+ @ApiModelProperty("对象属性--yw_notice_object(0场馆层 1分公司层 2亚运指挥层 3ITCC层)")
+ @TableField("object_proto")
+ private String objectProto;
+
+ @ApiModelProperty("通知方式--sys_notice_type")
+ @TableField("notice_type")
+ private String noticeType;
+
+ @ApiModelProperty("通知时间(计划发送时间(同天当前时间之前立即发送))")
+ @TableField("notice_time")
+ private LocalDateTime noticeTime;
+
+ @ApiModelProperty("通知对象")
+ @TableField("notice_object")
+ private String noticeObject;
+
+ @ApiModelProperty("通知内容")
+ @TableField("notice_content")
+ private String noticeContent;
+
+ @ApiModelProperty("状态 0未读 1已读")
+ @TableField("status")
+ private String status;
+
+ @ApiModelProperty("通知对象ids数组")
+ @TableField("notice_object_id")
+ private List noticeObjectId;
+
+ @ApiModelProperty("通知模板id")
+ @TableField("notice_model_id")
+ private Long noticeModelId;
+
+ @ApiModelProperty("实际发送时间")
+ @TableField("send_time")
+ private LocalDateTime sendTime;
+
+ @ApiModelProperty("发送是否成功,1成功 0失败")
+ @TableField("send_status")
+ private String sendStatus;
+
+ @ApiModelProperty("计划发送时间(同天当前时间之前立即发送)")
+ @TableField("exp_send_time")
+ private LocalDateTime expSendTime;
+
+ @ApiModelProperty("加入定时任务标记 默认0未加入 1已加入")
+ @TableField("add_flag")
+ private String addFlag;
+
+ @ApiModelProperty("通知类型model_suit_type 1 普通 2 手工 3简报")
+ @TableField("model_suit_type")
+ private String modelSuitType;
+
+ @ApiModelProperty("计划id(手工与简报会先配置计划)")
+ @TableField("plan_id")
+ private Long planId;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeModelDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeModelDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..36506968612cb048fc2d05aa87e4e37157085b08
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeModelDTO.java
@@ -0,0 +1,77 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.ruoyi.common.annotation.Excel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+
+/**
+ *
+ * 通知通告模板表DTO
+ *
+ *
+ * @author ck
+ * @since 2023-04-07
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwNoticeModelDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("id")
+ @TableField("id")
+ private Long id;
+
+ @ApiModelProperty("模板名称")
+ @TableField("model_name")
+ private String modelName;
+
+ @ApiModelProperty("模板内容")
+ @TableField("model_content")
+ private String modelContent;
+
+ @ApiModelProperty("场景--字典yw_notice_scene (0一般告警 1重大告警 ....)")
+ @TableField("model_scene")
+ private String modelScene;
+
+ @ApiModelProperty("用户id")
+ @TableField(value = "create_user_id",fill= FieldFill.INSERT)
+ private Long createUserId;
+
+ @ApiModelProperty("创建用户昵称")
+ @TableField(value = "create_by",fill= FieldFill.INSERT)
+ private String createBy;
+
+ @ApiModelProperty("创建时间")
+ @TableField("create_time")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("模板适用类型model_suit_type 1 普通 2 手工 3简报")
+ @TableField("model_suit_type")
+ private String modelSuitType;
+
+ @ApiModelProperty("备注(写一些触发要求)")
+ @TableField("model_des")
+ private String modelDes;
+
+ @ApiModelProperty("模板类型--字典yw_model_type 0事件触发型")
+ @TableField("model_type")
+ private String modelType;
+
+ @ApiModelProperty("排序号")
+ @TableField("order_num")
+ private Integer orderNum;
+
+ @ApiModelProperty("场馆id")
+ @TableField("venue_id")
+ private Long venueId;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeObjectDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeObjectDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..a754a8e8a7cfa70062a544348198704ea7c7b304
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwNoticeObjectDTO.java
@@ -0,0 +1,97 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.List;
+
+/**
+ *
+ * 通知通告对象表DTO
+ *
+ *
+ * @author ck
+ * @since 2023-04-11
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwNoticeObjectDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("id")
+ @TableField("id")
+ private Long id;
+
+ @ApiModelProperty("地市")
+ @TableField("city")
+ private String city;
+
+ @ApiModelProperty("区县")
+ @TableField("county")
+ private String county;
+
+ @ApiModelProperty("场馆id")
+ @TableField("venue_id")
+ private Long venueId;
+
+ @ApiModelProperty("专业")
+ @TableField("specialty")
+ private Long specialty;
+
+ @ApiModelProperty("角色id数组")
+ @TableField("roleIds")
+ private List roleIds;
+
+ @ApiModelProperty("对象属性yw_notice_object(0场馆层 1分公司层 2亚运指挥层 3ITCC层)")
+ @TableField("object_proto")
+ private String objectProto;
+
+ @ApiModelProperty("通知方式sys_notice_type")
+ @TableField("notice_type")
+ private String noticeType;
+
+ @ApiModelProperty("短信组名")
+ @TableField("message_name")
+ private String messageName;
+
+ @ApiModelProperty("短信组内成员id数组")
+ @TableField("message_users")
+ private List messageUsers;
+
+ @ApiModelProperty("排序号")
+ @TableField("order_num")
+ private Integer orderNum;
+
+ @ApiModelProperty("群号")
+ @TableField("group_id")
+ private String groupId;
+
+ @ApiModelProperty("群名")
+ @TableField("group_name")
+ private String groupName;
+
+ @ApiModelProperty("备注")
+ @TableField("group_des")
+ private String groupDes;
+
+ @ApiModelProperty("对象名称")
+ @TableField("object_name")
+ private String objectName;
+
+ @ApiModelProperty("ivr组名")
+ @TableField("ivr_name")
+ private String ivrName;
+
+ @ApiModelProperty("ivr组内成员id数组")
+ @TableField("ivr_users")
+ private List ivrUsers;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSceneCalendarDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSceneCalendarDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..762bb09ccca566c80e8ff53bf2cdf92c50992cde
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSceneCalendarDTO.java
@@ -0,0 +1,29 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import lombok.Data;
+
+/**
+ * @author huamile
+ */
+@Data
+public class YwSceneCalendarDTO {
+
+ private Long id;
+
+ private Long sceneId;
+
+ private String matchType;
+
+ private String matchName;
+
+ private String matchRemark;
+
+ private String beginTime;
+
+ private String endTime;
+
+ private String matchDate;
+
+ private String status;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSceneDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSceneDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..1d3c9c6fafe56aabe7ab1e5e678294b79e994f84
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSceneDTO.java
@@ -0,0 +1,106 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.importer.beans.ResultBean;
+import com.ruoyi.eastcom_yw.domain.YwSceneFile;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author huamile
+ */
+@Data
+public class YwSceneDTO extends ResultBean {
+
+ private Long id;
+
+ @Excel(name = "场馆标准名称", type = Excel.Type.ALL, sort = 1)
+ private String venueName;
+
+ @Excel(name = "场馆简称", type = Excel.Type.ALL, sort = 2)
+ private String venueShortname;
+
+ @Excel(name = "场馆英文缩写", type = Excel.Type.ALL, sort = 3)
+ private String englishShortname;
+
+ @Excel(name = "维护类别", type = Excel.Type.ALL, sort = 4)
+ private String maintainType;
+
+ @Excel(name = "场馆属性", type = Excel.Type.ALL, sort = 5)
+ private String venueType;
+
+ @Excel(name = "场馆级别", type = Excel.Type.ALL, sort = 6)
+ private String venueLevel;
+
+ private Double longitude;
+
+ @Excel(name = "经度GPS", type = Excel.Type.ALL, sort = 7)
+ @TableField(exist = false)
+ private String longitudeStr;
+
+ private Double latitude;
+
+ @Excel(name = "纬度GPS", type = Excel.Type.ALL, sort = 8)
+ @TableField(exist = false)
+ private String latitudeStr;
+
+ private Double longitudeGcj02;
+
+ @Excel(name = "经度GCJ02", type = Excel.Type.ALL, sort = 9)
+ @TableField(exist = false)
+ private String longitudeGcj02Str;
+
+ private Double latitudeGcj02;
+
+ @Excel(name = "纬度GCJ02", type = Excel.Type.ALL, sort = 10)
+ @TableField(exist = false)
+ private String latitudeGcj02Str;
+
+ private String cityId;
+
+ @Excel(name = "所属地市", type = Excel.Type.ALL, sort = 11)
+ @TableField(exist = false)
+ private String city;
+
+ private String areaCountyId;
+
+ @Excel(name = "所属区县", type = Excel.Type.ALL, sort = 12)
+ @TableField(exist = false)
+ private String county;
+
+ @Excel(name = "赛事类型", type = Excel.Type.ALL, sort = 13)
+ private String matchType;
+
+ @Excel(name = "地址", type = Excel.Type.ALL, sort = 14)
+ private String venueAddress;
+
+ @Excel(name = "备注", type = Excel.Type.ALL, sort = 15)
+ private String venueDesc;
+
+ private Integer accPerson;
+
+ private Long sceneBigId;
+
+ private Integer signScope;
+
+ private String status;
+
+ private String createBy;
+
+ private String createTime;
+
+ private String updateBy;
+
+ private String updateTime;
+
+ private String englishName;
+
+ @TableField(exist = false)
+ private List files;
+
+
+ private String venueCategory;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSceneNoticeinfoSearchDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSceneNoticeinfoSearchDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..11cb3cfae960ee23c307ca2770ab490ee8f1b97a
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSceneNoticeinfoSearchDTO.java
@@ -0,0 +1,14 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import lombok.Data;
+
+@Data
+public class YwSceneNoticeinfoSearchDTO extends CommonDTO {
+
+ private String sceneName;
+
+ private Long sceneId;
+
+ private Long userId;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSearchDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSearchDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..e016164e562e76f7078ca484d3f5fa967b61d370
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSearchDTO.java
@@ -0,0 +1,31 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import lombok.Data;
+
+//工作流查询,字段名必须小写
+@Data
+public class YwSearchDTO {
+
+ //城市区县
+ private String area_county_id;
+ //子场景,场馆
+ private String venue_id;
+ //场馆名称
+ private String venue_name;
+ //地市名称
+ private String city;
+ //区县名称
+ private String county;
+ //任务类别
+ private String task_type;
+ //名称
+ private String task_name;
+ //专业
+ private String specialty;
+ //网元名称
+ private String net_name;
+ //告警名称
+ private String alarm_name;
+ //基站名称
+ private String site_name;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..e16f9c67bb78b5b88cf329126037696ee33e0813
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignDTO.java
@@ -0,0 +1,23 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import lombok.Data;
+
+@Data
+public class YwSignDTO {
+
+ //签到计划id
+ private Long signPlanId;
+
+ //场馆id
+ private Long venueId;
+
+ //签到类型 0签到1签退
+ private Integer signType;
+
+ //纬度
+ private String latitude;
+
+ //经度
+ private String longitude;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignInDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignInDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..85936e678ae64964e94c05165ad5dbb145107168
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignInDTO.java
@@ -0,0 +1,22 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import lombok.Data;
+
+@Data
+public class YwSignInDTO {
+
+ private Long signPlanId;
+
+ private Long venueId;
+
+ private String[] userTypes;
+
+ private String signTime;
+
+ private Long[] users;
+
+ private Long userId;
+
+ private Integer signType;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignLogDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignLogDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..6599b375d493406112a2d29d97f0e638e30db506
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignLogDTO.java
@@ -0,0 +1,41 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author jkj
+ */
+@Data
+public class YwSignLogDTO extends CommonDTO{
+
+ private String city;
+
+ private String nickName;
+
+ private String county;
+
+ private Long[] venueIds;
+
+ private String userType;
+
+ private String startDate;
+
+ private String endDate;
+
+ private String signStatus;
+
+ private Boolean isExport;
+
+ private String venueType;
+
+ private String maintainType;
+
+ private boolean taskFlag = false;
+
+ private Boolean genTime;
+
+ private boolean isToday;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignPlanDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignPlanDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..33ffdd960211ae440ae9bfd87ef2d9e705ca730c
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignPlanDTO.java
@@ -0,0 +1,67 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.ruoyi.common.annotation.Excel;
+import lombok.Data;
+
+@Data
+public class YwSignPlanDTO extends CommonDTO {
+
+ private Long id;
+
+ private Long[] venueIds;
+
+ private Long venueId;
+
+ @Excel(name = "场馆", type = Excel.Type.ALL)
+ private String venueName;
+
+ @Excel(name = "签到日期", type = Excel.Type.ALL, dateFormat = "yyyy-MM-dd")
+ private String signDate;
+
+ private String[] signDates;
+
+ private String startDate;
+
+ private String endDate;
+
+ private Double latitude;
+
+ private Double longitude;
+
+ private Integer signScope;
+
+ @Excel(name = "早签到时间", type = Excel.Type.ALL, dateFormat = "HH:mm:ss")
+ private String beginTime;
+
+ @Excel(name = "晚签到时间", type = Excel.Type.ALL, dateFormat = "HH:mm:ss")
+ private String endTime;
+
+ @Excel(name = "通知时间量", type = Excel.Type.ALL)
+ private String repWarnInterval;
+
+ @Excel(name = "签到时间量", type = Excel.Type.ALL)
+ private Integer repSignInterval;
+
+ @Excel(name = "通知方式", type = Excel.Type.ALL)
+ private String noticeType;
+
+ private String isOpen;
+
+ private String createBy;
+
+ private String updateBy;
+
+ private Boolean isExport = false;
+
+ @Excel(name = "失败原因", type = Excel.Type.EXPORT)
+ private String reason;
+
+ private Integer signNum;
+
+ private String signUsers;
+
+ private String venueType;
+
+ private String maintainType;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignPlanImportDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignPlanImportDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..ee2adb6c9524529656474a0d2238a8503acc070f
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignPlanImportDTO.java
@@ -0,0 +1,26 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.importer.beans.ResultBean;
+import lombok.Data;
+
+@Data
+public class YwSignPlanImportDTO extends ResultBean {
+ @Excel(name = "场馆", type = Excel.Type.ALL, sort = 1)
+ private String venueName;
+
+ @Excel(name = "签到日期", type = Excel.Type.ALL, dateFormat = "yyyy-MM-dd", sort = 2)
+ private String signDate;
+
+ @Excel(name = "早签到时间", type = Excel.Type.ALL, dateFormat = "HH:mm:ss", sort = 3)
+ private String beginTime;
+
+ @Excel(name = "晚签到时间", type = Excel.Type.ALL, dateFormat = "HH:mm:ss", sort = 4)
+ private String endTime;
+
+ @Excel(name = "提醒时间量", type = Excel.Type.ALL, sort = 5)
+ private String repWarnInterval;
+
+ @Excel(name = "通知方式", type = Excel.Type.ALL, sort = 6)
+ private String noticeType;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignPlanUserDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignPlanUserDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..5500e60568598f0a109fca3a35bf768489bd2eee
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSignPlanUserDTO.java
@@ -0,0 +1,15 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import com.ruoyi.common.annotation.Excel;
+import lombok.Data;
+
+@Data
+public class YwSignPlanUserDTO {
+
+ private String beginTime;
+
+ private String endTime;
+
+ private String[] signUsers;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSparePartsDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSparePartsDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..dfeb89fbf89c86071179d8c1c3033ed3d595d753
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwSparePartsDTO.java
@@ -0,0 +1,124 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.importer.beans.ResultBean;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * 亚运备件表DTO
+ *
+ *
+ * @author yqf
+ * @since 2023-08-31
+ */
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwSparePartsDTO extends ResultBean {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("序号")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @Excel(name = "场馆名称", type = Excel.Type.ALL, sort = 1)
+ @ApiModelProperty("场馆名称")
+ @TableField("venue_name")
+ private String venueName;
+
+ @Excel(name = "场馆类型", type = Excel.Type.ALL, sort = 2)
+ @ApiModelProperty("场馆类型")
+ @TableField("venue_type")
+ private String venueType;
+
+ @Excel(name = "设备类型", type = Excel.Type.ALL, sort = 3)
+ @ApiModelProperty("设备类型")
+ @TableField("device_type")
+ private String deviceType;
+
+ @Excel(name = "单板型号", type = Excel.Type.ALL, sort = 4)
+ @ApiModelProperty("单板型号")
+ @TableField("board_model")
+ private String boardModel;
+
+ @Excel(name = "单板数量", type = Excel.Type.ALL, sort = 5)
+ @ApiModelProperty("单板数量")
+ @TableField("board_num")
+ private String boardNum;
+
+ @Excel(name = "备件型号", type = Excel.Type.ALL, sort = 6)
+ @ApiModelProperty("备件型号")
+ @TableField("part_model")
+ private String partModel;
+
+ @Excel(name = "通用数量", type = Excel.Type.ALL, sort = 7)
+ @ApiModelProperty("通用数量")
+ @TableField("current_num")
+ private String currentNum;
+
+ @Excel(name = "需求数量", type = Excel.Type.ALL, sort = 8)
+ @ApiModelProperty("需求数量")
+ @TableField("need_num")
+ private String needNum;
+
+ @Excel(name = "配置数量", type = Excel.Type.ALL, sort = 9)
+ @ApiModelProperty("配置数量")
+ @TableField("configure_num")
+ private String configureNum;
+
+ @Excel(name = "缺口", type = Excel.Type.ALL, sort = 10)
+ @ApiModelProperty("缺口")
+ @TableField("gap_num")
+ private String gapNum;
+
+ @Excel(name = "专业", type = Excel.Type.ALL, sort = 11)
+ @ApiModelProperty("专业")
+ @TableField("major")
+ private String major;
+
+ @Excel(name = "备注", type = Excel.Type.ALL, sort = 12)
+ @ApiModelProperty("备注")
+ @TableField("comment")
+ private String comment;
+
+ @Excel(name = "联系人", type = Excel.Type.ALL, sort = 13)
+ @ApiModelProperty("联系人")
+ @TableField("contacts")
+ private String contacts;
+
+ @Excel(name = "联系电话", type = Excel.Type.ALL, sort = 14)
+ @ApiModelProperty("联系电话")
+ @TableField("telephone")
+ private String telephone;
+
+ @ApiModelProperty("创建人")
+ @TableField("create_by")
+ private String createBy;
+
+ @ApiModelProperty("创建时间")
+ @TableField("create_time")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("更新人")
+ @TableField("update_by")
+ private String updateBy;
+
+ @ApiModelProperty("更新时间")
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwWireTaskLogDTO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwWireTaskLogDTO.java
new file mode 100644
index 0000000000000000000000000000000000000000..4185a47bc1781ac6712ec62629559a91425e3925
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/dto/YwWireTaskLogDTO.java
@@ -0,0 +1,71 @@
+package com.ruoyi.eastcom_yw.domain.dto;
+
+import lombok.Data;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @author jkj
+ */
+@Data
+public class YwWireTaskLogDTO extends CommonDTO {
+
+ private String flwProcessid;
+
+ private Long createBy;
+
+ private String createTime;
+
+ private String wireTaskId;
+
+ private String wireTaskName;
+
+ private String currentUser;
+
+ private Long userId;
+
+ //创建人
+ private String creater;
+
+ private Integer [] taskTypes;
+
+ private Integer taskType;
+
+ //必须要有,新增要用到
+ private Long venueId;
+
+ private Long [] venueIds;
+
+ private String county;
+
+ private String city;
+
+ private String [] countys;
+
+ private String status;
+
+ private String curStep;
+
+ //开始时间
+ private String startTime;
+
+ //结束时间
+ private String endTime;
+
+ //施工单位
+ private String sgdw;
+
+ private Boolean isApp= false;
+
+ private String construcUnit;
+
+ private String report;
+
+ private String venueType;
+
+ private String maintainType;
+
+ private Boolean isExport = false;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/enums/TaskNameWithRoleEnum.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/enums/TaskNameWithRoleEnum.java
new file mode 100644
index 0000000000000000000000000000000000000000..882784562c9e4566f712b8f32c73e36b4bea3fdc
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/enums/TaskNameWithRoleEnum.java
@@ -0,0 +1,47 @@
+package com.ruoyi.eastcom_yw.domain.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+@Getter
+@AllArgsConstructor
+public enum TaskNameWithRoleEnum {
+
+// 任务发起("任务发起",new Long[]{101L,14L},new String[]{"venuemanager,venueassistant"},new String[]{"场馆经理,场馆经理助理"}),
+ 任务发起("任务发起",new Long[]{101L},new String[]{"venuemanager"},new String[]{"场馆经理"}),
+ 任务审核("任务审核",new Long[]{19L},new String[]{"commdirector"},new String[]{"通信主管"}),
+ 图纸设计("图纸设计",new Long[]{15L},new String[]{"designer"},new String[]{"设计院人员"}),
+ 图纸确认("图纸确认",new Long[]{101L},new String[]{"venuemanager"},new String[]{"场馆经理"}),
+ 施工建设("施工建设",new Long[]{16L},new String[]{"builder"},new String[]{"施工队人员"}),
+ 工程监理("工程监理",new Long[]{17L},new String[]{"supervisor"},new String[]{"监理人员"}),
+ 现场验收("现场验收",new Long[]{101L},new String[]{"venuemanager"},new String[]{"场馆经理"}),
+ 任务派发("任务派发",new Long[]{101L},new String[]{"venuemanager"},new String[]{"场馆经理"}),
+// 任务派发("任务派发",new Long[]{101L,14L},new String[]{"venuemanager,venueassistant"},new String[]{"场馆经理,场馆经理助理"}),
+ ;
+
+ private final String taskName;
+
+ private final Long[] roleId;
+
+ private final String[] roleKey;
+
+ private final String[] roleName;
+
+ public static Long[] getRoleId(String taskName) {
+ for (TaskNameWithRoleEnum entry : values()) {
+ if (entry.getTaskName().equals(taskName)) {
+ return entry.getRoleId();
+ }
+ }
+ return new Long[0];
+ }
+
+ public static String[] getRoleName(String taskName) {
+ for (TaskNameWithRoleEnum entry : values()) {
+ if (entry.getTaskName().equals(taskName)) {
+ return entry.getRoleName();
+ }
+ }
+ return new String[0];
+ }
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/enums/WireTaskStatus.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/enums/WireTaskStatus.java
new file mode 100644
index 0000000000000000000000000000000000000000..2b54c704c799fbbe68c02ffc2de5ebfa2f46d608
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/enums/WireTaskStatus.java
@@ -0,0 +1,67 @@
+package com.ruoyi.eastcom_yw.domain.enums;
+
+public enum WireTaskStatus {
+
+ rwfq(1, "任务发起"),rwpf(2, "任务派发") ,rwsh(3, "任务审核") ,tzsj(4,"图纸设计") ,tzqr(5,"图纸确认") ,sgjs(6,"施工建设"),
+ gcjl(7,"工程监理"),xcys(8,"现场验收"),lcjs(9,"流程结束");
+
+ /** code */
+ private Integer code;
+
+ /** 显示标签 */
+ private String label;
+
+ WireTaskStatus(Integer code, String label){
+
+ this.code = code;
+
+ this.label = label;
+ }
+
+ public static String getLabelByCode (Integer code) {
+
+ for (WireTaskStatus enuma : WireTaskStatus.values()) {
+
+ if (enuma.getCode().equals(code)) {
+
+ return enuma.getLabel();
+ }
+ }
+ return "";
+ }
+
+ public static Integer getCodeByLabel (String label) {
+
+ for (WireTaskStatus enuma : WireTaskStatus.values()) {
+
+ if (enuma.getLabel().equals(label)) {
+
+ return enuma.getCode();
+ }
+ }
+ return -1;
+ }
+
+
+ @Override
+ public String toString(){
+
+ return label;
+
+ }
+
+ public String getLabel() {
+
+ return label;
+
+ }
+
+
+ public Integer getCode(){
+
+ return this.code;
+
+ }
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/model/AppEntity.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/model/AppEntity.java
new file mode 100644
index 0000000000000000000000000000000000000000..bba727b502c34722bcbb75db53b464e5ec4bbf82
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/model/AppEntity.java
@@ -0,0 +1,19 @@
+package com.ruoyi.eastcom_yw.domain.model;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+/**
+ * @author los
+ */
+@Data
+@TableName("m_app")
+public class AppEntity {
+ private Long id;
+ private String appId;
+ private String appName;
+ private String appSecret;
+ private String accessToken;
+ private String isFlag;
+ private String ip;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/model/StepInfo.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/model/StepInfo.java
new file mode 100644
index 0000000000000000000000000000000000000000..05c83d3894653289d51a2340c7b74989ec9cea1d
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/model/StepInfo.java
@@ -0,0 +1,9 @@
+package com.ruoyi.eastcom_yw.domain.model;
+
+import lombok.Data;
+
+@Data
+public class StepInfo {
+ private String title;
+ private String info;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/SysUserParam.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/SysUserParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..5caef8767539588d8d4c30274abb3265d34d0f0e
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/SysUserParam.java
@@ -0,0 +1,12 @@
+package com.ruoyi.eastcom_yw.domain.param;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import lombok.Data;
+
+@Data
+public class SysUserParam extends CommonDTO {
+ private String userName;
+ private String nickName;
+ private Integer phoneNumber;
+ private Long sceneBigId;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwInspectQuestionConfigParam.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwInspectQuestionConfigParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..6d793f0bf8aa0805ca1d302396f38b343aff30bd
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwInspectQuestionConfigParam.java
@@ -0,0 +1,17 @@
+package com.ruoyi.eastcom_yw.domain.param;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import lombok.Data;
+
+/**
+ * @author huamile
+ */
+@Data
+public class YwInspectQuestionConfigParam extends CommonDTO {
+
+ private Long sceneBigId;
+ private String specialty;
+ private String questionType;
+ private String questionSonType;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwRoutInspectConfigParam.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwRoutInspectConfigParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..a5083bd6a19894b3b9cf6b91cff1bbe2bccde82d
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwRoutInspectConfigParam.java
@@ -0,0 +1,33 @@
+package com.ruoyi.eastcom_yw.domain.param;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import lombok.Data;
+
+
+/**
+ * @author huamile
+ */
+@Data
+public class YwRoutInspectConfigParam extends CommonDTO {
+
+ /**
+ * 场馆
+ */
+ private Long[] venueIds;
+
+ /**
+ * 专业
+ */
+ private String specialty;
+
+ private String beginDate;
+
+ private String endDate;
+
+ private Long userId;
+
+ private String venueType;
+
+ private String maintainType;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwRoutInspectPlanParam.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwRoutInspectPlanParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..66696c6a33f9340ace2f086654f7324d9f031c33
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwRoutInspectPlanParam.java
@@ -0,0 +1,38 @@
+package com.ruoyi.eastcom_yw.domain.param;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import lombok.Data;
+
+/**
+ * @author huamile
+ */
+@Data
+public class YwRoutInspectPlanParam extends CommonDTO {
+
+ private String taskNo;
+
+ private String taskName;
+
+ private Long[] venueIds;
+
+ private String specialty;
+
+ private String beginDate;
+
+ private String endDate;
+
+ private String city;
+
+ private String county;
+
+ private String taskStatus;
+
+ private Long userId;
+
+ private Boolean isApp = false;
+
+ private String maintainType;
+
+ private String venueType;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwRoutInspectStatParam.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwRoutInspectStatParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..93c377922d1e8f1e254058b136df762a444d59ac
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwRoutInspectStatParam.java
@@ -0,0 +1,46 @@
+package com.ruoyi.eastcom_yw.domain.param;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import lombok.Data;
+
+/**
+ * @author huamile
+ */
+@Data
+public class YwRoutInspectStatParam extends CommonDTO {
+
+ /**
+ * 地市
+ */
+ private String city;
+
+ /**
+ * 区县
+ */
+ private String county;
+
+ /**
+ * 场馆
+ */
+ private Long[] venueIds;
+
+ /**
+ * 专业
+ */
+ private String specialty;
+
+ private String beginDate;
+
+ private String endDate;
+
+ private Long userId;
+
+ private String venueType;
+
+ private String maintainType;
+
+ private boolean isExport = false;
+
+ private boolean taskFlag = false;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneAlarmParam.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneAlarmParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..dca47eb2e2739e93547cbc8a5c2daa129ae862ed
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneAlarmParam.java
@@ -0,0 +1,18 @@
+package com.ruoyi.eastcom_yw.domain.param;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import lombok.Data;
+
+/**
+ * @author huamile
+ */
+@Data
+public class YwSceneAlarmParam extends CommonDTO {
+
+ private Long sceneId;
+
+ private String alarmCode;
+
+ private String keywords;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneCalendarParam.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneCalendarParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..e7679292c397c0ca98f736eec2182f0844ef7fac
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneCalendarParam.java
@@ -0,0 +1,24 @@
+package com.ruoyi.eastcom_yw.domain.param;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import lombok.Data;
+
+/**
+ * @author huamile
+ */
+@Data
+public class YwSceneCalendarParam extends CommonDTO {
+
+ private Long sceneId;
+
+ private String matchType;
+
+ private String matchName;
+
+ private String beginDate;
+
+ private String endDate;
+
+ private String keywords;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneMatchParam.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneMatchParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..414e4e18ad644f240f5c59e6002246bb7135bb81
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneMatchParam.java
@@ -0,0 +1,7 @@
+package com.ruoyi.eastcom_yw.domain.param;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+
+public class YwSceneMatchParam extends CommonDTO {
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneNetelementAgisParam.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneNetelementAgisParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..48a9b437a6a89798fb8725b12d82501610bedd58
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneNetelementAgisParam.java
@@ -0,0 +1,15 @@
+package com.ruoyi.eastcom_yw.domain.param;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import lombok.Data;
+
+@Data
+public class YwSceneNetelementAgisParam extends CommonDTO {
+
+ private Long sceneId;
+ private String sceneName;
+ private String keywords;
+ private Long sceneBigId;
+ private String alarmSpecityId;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneNetelementCsParam.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneNetelementCsParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..837b6057673c240b4d82b6a7e5863e33d250bb05
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneNetelementCsParam.java
@@ -0,0 +1,15 @@
+package com.ruoyi.eastcom_yw.domain.param;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import lombok.Data;
+
+@Data
+public class YwSceneNetelementCsParam extends CommonDTO {
+
+ private Long sceneId;
+ private String sceneName;
+ private String equipmentType;
+ private String networkingType;
+ private String keywords;
+ private Long sceneBigId;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneNetelementDhParam.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneNetelementDhParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..8c052e695595c9f68e3177b5c492a6edd53b4df4
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneNetelementDhParam.java
@@ -0,0 +1,18 @@
+package com.ruoyi.eastcom_yw.domain.param;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import lombok.Data;
+
+@Data
+public class YwSceneNetelementDhParam extends CommonDTO {
+
+ private String city;
+ private String county;
+ private String netElementPhyname;
+ private String inRedline;
+ private Long sceneId;
+ private String sceneName;
+ private String roomType;
+ private String keywords;
+ private Long sceneBigId;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneNetelementParam.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneNetelementParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..721f6061b3a08542458eabc4091f7a3428a9dbca
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneNetelementParam.java
@@ -0,0 +1,18 @@
+package com.ruoyi.eastcom_yw.domain.param;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import lombok.Data;
+
+/**
+ * @author huamile
+ */
+@Data
+public class YwSceneNetelementParam extends CommonDTO {
+
+ private Long sceneId;
+
+ private String status;
+
+ private String keywords;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneNetelementWxParam.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneNetelementWxParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..05382fde02c02919fbacaa3dd1932a8a0542241a
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneNetelementWxParam.java
@@ -0,0 +1,16 @@
+package com.ruoyi.eastcom_yw.domain.param;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import lombok.Data;
+
+@Data
+public class YwSceneNetelementWxParam extends CommonDTO {
+
+ private Long sceneId;
+ private String sceneName;
+ private String inRedline;
+ private String ci;
+ private String keywords;
+ private Long sceneBigId;
+ private Long[] sceneIds;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneParam.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..0d2f4e1d21a70f059676b6f85f28a1902f2d8c0e
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneParam.java
@@ -0,0 +1,26 @@
+package com.ruoyi.eastcom_yw.domain.param;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import lombok.Data;
+
+/**
+ * @author huamile
+ */
+@Data
+public class YwSceneParam extends CommonDTO {
+
+ private Long sceneBigId;
+
+ private String venueLevel;
+
+ private String areaCountyId;
+
+ private String keywords;
+
+ private String status;
+
+ private String city;
+
+ private Long[] venueIds;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneUserParam.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneUserParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..f561c9b697e2d3b20131a6f3545c44aeb66e30a5
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSceneUserParam.java
@@ -0,0 +1,24 @@
+package com.ruoyi.eastcom_yw.domain.param;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import lombok.Data;
+
+/**
+ * @author huamile
+ */
+@Data
+public class YwSceneUserParam extends CommonDTO {
+
+ private Long sceneId;
+
+ private String status;
+
+ private String belongArea;
+
+ private Long roleId;
+
+ private String specialty;
+
+ private String keywords;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSignPlanParam.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSignPlanParam.java
new file mode 100644
index 0000000000000000000000000000000000000000..419fdc2aeea3e83630c13b1a86dc2fac35465a73
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/param/YwSignPlanParam.java
@@ -0,0 +1,63 @@
+package com.ruoyi.eastcom_yw.domain.param;
+
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import com.ruoyi.eastcom_yw.domain.dto.YwSignPlanUserDTO;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class YwSignPlanParam {
+
+ private Long id;
+
+ private Long[] venueIds;
+
+ @Excel(name = "场馆" , type = Excel.Type.ALL)
+ private String venueName;
+
+ @Excel(name = "签到日期" , type = Excel.Type.ALL, dateFormat = "yyyy-MM-dd")
+ private String signDate;
+
+ private String[] signDates;
+
+ private String startDate;
+
+ private String endDate;
+
+ private Double latitude;
+
+ private Double longitude;
+
+ private Integer signScope;
+
+ @Excel(name = "早签到时间" , type = Excel.Type.ALL, dateFormat = "HH:mm:ss")
+ private String beginTime;
+
+ @Excel(name = "晚签到时间" , type = Excel.Type.ALL, dateFormat = "HH:mm:ss")
+ private String endTime;
+
+ @Excel(name = "提前通知时间量" , type = Excel.Type.ALL)
+ private String repWarnInterval;
+
+ @Excel(name = "提前签到时间量" , type = Excel.Type.ALL)
+ private Integer repSignInterval;
+
+ @Excel(name = "通知方式" , type = Excel.Type.ALL)
+ private String noticeType;
+
+ private String isOpen;
+
+ private String createBy;
+
+ private Boolean isExport=false;
+
+ @Excel(name = "失败原因", type = Excel.Type.EXPORT)
+ private String reason;
+
+ private Integer signNum;
+
+ private List timePeriods;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/Dp2MmlListQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/Dp2MmlListQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..100c5610f25a81c72f249480f4dd65b2103c8ac6
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/Dp2MmlListQO.java
@@ -0,0 +1,32 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ *
+ * QO
+ *
+ *
+ * @author ck
+ * @since 2023-09-12
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class Dp2MmlListQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("场馆名称")
+ private String venueName;
+
+ @ApiModelProperty("场馆id")
+ private Long venueId;
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/Dp2SpotCellQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/Dp2SpotCellQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..0ad4c9c8918308ed415132a5f5cbd75cfaf5b3ae
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/Dp2SpotCellQO.java
@@ -0,0 +1,137 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+
+/**
+ *
+ * QO
+ *
+ *
+ * @author ck
+ * @since 2023-08-10
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class Dp2SpotCellQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ private String keywords;
+
+ @TableField("id")
+ private Integer id;
+
+ @TableField("omc")
+ private String omc;
+
+ @ApiModelProperty("需要")
+ @TableField("县市")
+ private String 县市;
+
+ @TableField("enodebid")
+ private Long enodebid;
+
+ @TableField("本地小区标识")
+ private Long 本地小区标识;
+
+ @TableField("小区标识")
+ private Long 小区标识;
+
+ @ApiModelProperty("需要")
+ @TableField("站号")
+ private Long 站号;
+
+ @ApiModelProperty("需要")
+ @TableField("ci")
+ private Long ci;
+
+ @ApiModelProperty("需要")
+ @TableField("基站全称")
+ private String 基站全称;
+
+ @TableField("en名称")
+ private String en名称;
+
+ @ApiModelProperty("需要")
+ @TableField("小区名称")
+ private String 小区名称;
+
+ @ApiModelProperty("需要")
+ @TableField("小区频段")
+ private String 小区频段;
+
+ @ApiModelProperty("需要")
+ @TableField("纬度")
+ private Object 纬度;
+
+ @ApiModelProperty("需要")
+ @TableField("经度")
+ private Object 经度;
+
+ @TableField("纬度gcj")
+ private Object 纬度gcj;
+
+ @TableField("经度gcj")
+ private Object 经度gcj;
+
+ @ApiModelProperty("需要")
+ @TableField("室内室外")
+ private String 室内室外;
+
+ @ApiModelProperty("需要")
+ @TableField("网络")
+ private String 网络;
+
+ @TableField("现网状态")
+ private String 现网状态;
+
+ @TableField("cgi")
+ private String cgi;
+
+ @TableField("频点")
+ private Long 频点;
+
+ @TableField("pci")
+ private Long pci;
+
+ @TableField("tac")
+ private Long tac;
+
+ @TableField("一级场景")
+ private String 一级场景;
+
+ @TableField("二级场景")
+ private String 二级场景;
+
+ @ApiModelProperty("需要")
+ @TableField("设备类型")
+ private String 设备类型;
+
+ @ApiModelProperty("需要")
+ @TableField("带宽")
+ private Long 带宽;
+
+ @ApiModelProperty("需要")
+ @TableField("方位角")
+ private Long 方位角;
+
+ @TableField("扇区id")
+ private Long 扇区id;
+
+ @TableField("更新时间")
+ private LocalDateTime 更新时间;
+
+ @ApiModelProperty("景区ID,需要")
+ @TableField("景区id")
+ private Integer 景区id;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/Dp2SpotConfigQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/Dp2SpotConfigQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..f39a6be6c06df63fe15ab01fbb4b3791d4af04f7
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/Dp2SpotConfigQO.java
@@ -0,0 +1,38 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ *
+ * QO
+ *
+ *
+ * @author ck
+ * @since 2023-08-09
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class Dp2SpotConfigQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("景区名称")
+ private String 景区名称;
+
+ @TableField("行政区域")
+ private String 行政区域;
+
+ @TableField("景区介绍")
+ private String 景区介绍;
+
+ @TableField("景区大类")
+ private String 景区大类;
+
+ private String keywords;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/Dp2ViewPowerAlarmQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/Dp2ViewPowerAlarmQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..930254eec3e62f8b1e512f1adc9d370d3df4ac20
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/Dp2ViewPowerAlarmQO.java
@@ -0,0 +1,37 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.github.pagehelper.Page;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * QO
+ *
+ *
+ * @author wqx
+ * @since 2023-08-31
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class Dp2ViewPowerAlarmQO extends CommonDTO {
+
+ private static final long serialVersionUID = 1L;
+
+ private String keywords;
+
+ //开始时间
+ private String startTime;
+
+ //结束时间
+ private String endTime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/Dp2ViewWirelessAlarmQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/Dp2ViewWirelessAlarmQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..59883d05edac8a49a7d6323e6318a25b68f3bef1
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/Dp2ViewWirelessAlarmQO.java
@@ -0,0 +1,100 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.github.pagehelper.Page;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * QO
+ *
+ *
+ * @author wqx
+ * @since 2023-09-01
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class Dp2ViewWirelessAlarmQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("id")
+ private Long id;
+
+ @TableField("eventtime")
+ private LocalDateTime eventtime;
+
+ @TableField("alarmname")
+ private String alarmname;
+
+ @TableField("omcname")
+ private String omcname;
+
+ @TableField("site_id")
+ private String siteId;
+
+ @TableField("site_name")
+ private String siteName;
+
+ @TableField("area")
+ private String area;
+
+ @TableField("alarmid")
+ private String alarmid;
+
+ @TableField("sitetype")
+ private String sitetype;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @TableField("cell_name")
+ private String cellName;
+
+ @TableField("场馆id")
+ private Long 场馆id;
+
+ @TableField("场馆名称")
+ private String 场馆名称;
+
+ @TableField("longitude")
+ private Object longitude;
+
+ @TableField("latitude")
+ private Object latitude;
+
+ @TableField("坐席编号")
+ private String 坐席编号;
+
+ @TableField("场内场外")
+ private String 场内场外;
+
+ @TableField("区域id")
+ private Integer 区域id;
+
+ @TableField("故障处理人")
+ private String 故障处理人;
+
+ @TableField("phonenumber")
+ private String phonenumber;
+
+ private String keywords;
+
+ private Integer type;
+
+ //开始时间
+ private String startTime;
+
+ //结束时间
+ private String endTime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/DpKpiMonitorQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/DpKpiMonitorQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..72f6e8dcbb3c661ce0c0fb80b3734e388bd469ad
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/DpKpiMonitorQO.java
@@ -0,0 +1,58 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.time.LocalDateTime;
+
+/**
+ * @author yqf
+ * @date 2023/4/17
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class DpKpiMonitorQO extends CommonDTO {
+
+ @ApiModelProperty(value = "数据类型", required = true)
+ @NotBlank(message = "timetype不能为空")
+ private String datatype;
+
+ @ApiModelProperty(value = "网络类型", required = true)
+ @NotBlank(message = "netType不能为空")
+ private String nettype;
+
+ @ApiModelProperty(value = "场馆ids")
+ private Integer sceneid;
+
+ @ApiModelProperty(value = "指标名称",required = true)
+ @NotBlank(message = "指标名称不能为空")
+ private String kpiname;
+
+
+ @ApiModelProperty(value = "开始时间")
+ @TableField("starttime")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8", locale = "zh")
+ private LocalDateTime starttime;
+
+ @ApiModelProperty(value = "结束时间")
+ @TableField("endtime")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8", locale = "zh")
+ private LocalDateTime endtime;
+
+ private String seatno;
+
+ @ApiModelProperty(value = "查询表方式,1-查询特定表")
+ private int sceneruntype;
+
+ @ApiModelProperty(value = "最大时间")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8", locale = "zh")
+ private LocalDateTime maxtime;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/DpSceneConfigQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/DpSceneConfigQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..4825b6eefeeac38c74a3a3a3025a913e9ad428b1
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/DpSceneConfigQO.java
@@ -0,0 +1,80 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.github.pagehelper.Page;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * QO
+ *
+ *
+ * @author yqf
+ * @since 2023-04-12
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class DpSceneConfigQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+ @ApiModelProperty("自增id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Integer id;
+
+
+ @ApiModelProperty("颜色等级")
+ @TableField("level")
+ private Short level;
+
+ @ApiModelProperty("指标名称")
+ @TableField("name")
+ private String name;
+
+ @ApiModelProperty("最小值")
+ @TableField("range1")
+ private Double range1;
+
+ @ApiModelProperty("最大值")
+ @TableField("range2")
+ private Double range2;
+
+ @ApiModelProperty("颜色")
+ @TableField("color")
+ private String color;
+
+ @ApiModelProperty("备注")
+ @TableField("content")
+ private String content;
+
+
+ @ApiModelProperty("指标等级:cell、scene")
+ @TableField("type")
+ private String type;
+
+ @ApiModelProperty("网络类型")
+ @TableField("nettype")
+ private String nettype;
+
+ @ApiModelProperty("设备类型")
+ @TableField("celltype")
+ private String celltype;
+
+ @ApiModelProperty("颜色分值")
+ @TableField("colorscore")
+ private Double colorscore;
+
+ private BigDecimal value;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpi4gMinQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpi4gMinQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..8c574321ea0a88d578fb2d46ec1034464c79ca5b
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpi4gMinQO.java
@@ -0,0 +1,103 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.github.pagehelper.Page;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * 场馆4G小区级1分钟指标QO
+ *
+ *
+ * @author yqf
+ * @since 2023-04-12
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class PmKpi4gMinQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("groupid")
+ private Integer groupid;
+
+ @TableField("时间")
+ private LocalDateTime 时间;
+
+ @TableField("小区名称")
+ private String 小区名称;
+
+ @TableField("地市区号")
+ private String 地市区号;
+
+ @TableField("厂商id")
+ private String 厂商id;
+
+ @TableField("avg_user")
+ private BigDecimal avgUser;
+
+ @TableField("max_user")
+ private Integer maxUser;
+
+ @TableField("prb_up")
+ private BigDecimal prbUp;
+
+ @TableField("prb_down")
+ private BigDecimal prbDown;
+
+ @TableField("avg_disturb")
+ private Integer avgDisturb;
+
+ @TableField("speed_up")
+ private BigDecimal speedUp;
+
+ @TableField("speed_down")
+ private BigDecimal speedDown;
+
+ @TableField("call_succ_rate")
+ private BigDecimal callSuccRate;
+
+ @TableField("call_drop_rate")
+ private BigDecimal callDropRate;
+
+ @TableField("act_avg_user")
+ private BigDecimal actAvgUser;
+
+ @TableField("act_max_user")
+ private Integer actMaxUser;
+
+ @TableField("volte")
+ private BigDecimal volte;
+
+ @TableField("volte_succ_rate")
+ private BigDecimal volteSuccRate;
+
+ @TableField("volte_drop_rate")
+ private BigDecimal volteDropRate;
+
+ @TableField("data_up")
+ private BigDecimal dataUp;
+
+ @TableField("data_down")
+ private BigDecimal dataDown;
+
+ @TableField("v1_max")
+ private BigDecimal v1Max;
+
+ @TableField("v1_avg")
+ private String v1Avg;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpi5gCellQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpi5gCellQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..f9551ee68f0d5012983338664fd2e724c485ea11
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpi5gCellQO.java
@@ -0,0 +1,169 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.github.pagehelper.Page;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * 场馆5G小区级15分钟指标QO
+ *
+ *
+ * @author yqf
+ * @since 2023-04-11
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class PmKpi5gCellQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+// @ApiModelProperty("id")
+// @TableField("id")
+// private Long id;
+
+ @TableField("venue_id")
+ private Integer venueId;
+
+ @TableField("venue_name")
+ private String venueName;
+
+ @TableField("ci")
+ private String ci;
+
+ @TableField("starttime")
+ private LocalDateTime starttime;
+
+ @TableField("小区名称")
+ private String 小区名称;
+
+ @TableField("nr流量")
+ private Short nr流量;
+
+ @TableField("上行5g流量")
+ private Short 上行5g流量;
+
+ @TableField("下行5g流量")
+ private Short 下行5g流量;
+
+ @TableField("小区rlc层下行丢包率")
+ private BigDecimal 小区rlc层下行丢包率;
+
+ @TableField("小区级rlc层sdu下行空口丢包数")
+ private Short 小区级rlc层sdu下行空口丢包数;
+
+ @TableField("小区rlc层收到的下行sdu包数")
+ private Short 小区rlc层收到的下行sdu包数;
+
+ @TableField("平均用户数")
+ private Short 平均用户数;
+
+ @TableField("最大用户数")
+ private Short 最大用户数;
+
+ @TableField("sn异常释放率")
+ private BigDecimal sn异常释放率;
+
+ @TableField("sgnb释放总次数")
+ private Short sgnb释放总次数;
+
+ @TableField("sgnb触发sgnb异常释放总次数")
+ private Short sgnb触发sgnb异常释放总次数;
+
+ @TableField("nsa_sgnb添加成功率")
+ private BigDecimal nsaSgnb添加成功率;
+
+ @TableField("dc场景下发送sgnb增加成功的次数")
+ private Short dc场景下发送sgnb增加成功的次数;
+
+ @TableField("dc场景下收到sgnb增加尝试的次数")
+ private Short dc场景下收到sgnb增加尝试的次数;
+
+ @TableField("无线接通率")
+ private BigDecimal 无线接通率;
+
+ @TableField("rrc建立成功次数")
+ private Short rrc建立成功次数;
+
+ @TableField("rrc建立请求消息次数")
+ private Short rrc建立请求消息次数;
+
+ @TableField("小区中qos_flow建立成功次数")
+ private Short 小区中qosFlow建立成功次数;
+
+ @TableField("小区中qos_flow建立尝试次数")
+ private Short 小区中qosFlow建立尝试次数;
+
+ @TableField("小区中ng信令连接建立成功次数")
+ private Short 小区中ng信令连接建立成功次数;
+
+ @TableField("小区中ng信令连接建立尝试次数")
+ private Short 小区中ng信令连接建立尝试次数;
+
+ @TableField("无线掉线率")
+ private BigDecimal 无线掉线率;
+
+ @TableField("小区中ue上下文异常释放的次数")
+ private Short 小区中ue上下文异常释放的次数;
+
+ @TableField("小区中ue上下文正常释放的次数")
+ private Short 小区中ue上下文正常释放的次数;
+
+ @TableField("无线掉线率分母")
+ private Short 无线掉线率分母;
+
+ @TableField("切换成功率")
+ private BigDecimal 切换成功率;
+
+ @TableField("切换成功率分子")
+ private Short 切换成功率分子;
+
+ @TableField("切换成功率分母")
+ private Short 切换成功率分母;
+
+ @TableField("下行平均使用的prb个数")
+ private Short 下行平均使用的prb个数;
+
+ @TableField("下行平均可用prb个数")
+ private Short 下行平均可用prb个数;
+
+ @TableField("上行平均使用的prb个数")
+ private Short 上行平均使用的prb个数;
+
+ @TableField("上行平均可用prb个数")
+ private Short 上行平均可用prb个数;
+
+ @TableField("上行prb利用率")
+ private BigDecimal 上行prb利用率;
+
+ @TableField("下行prb利用率")
+ private BigDecimal 下行prb利用率;
+
+ @TableField("input_datetime")
+ private LocalDateTime inputDatetime;
+
+ @TableField("cell_name")
+ private String cellName;
+
+ @TableField("pmsid")
+ private Long pmsid;
+
+ @TableField("上行干扰值")
+ private Double 上行干扰值;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @TableField("endtime")
+ private LocalDateTime endtime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpi5gMinQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpi5gMinQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..8b872cd7f201d89885629059314bda9c9edf0fde
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpi5gMinQO.java
@@ -0,0 +1,88 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.github.pagehelper.Page;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * 场馆5G小区级1分钟指标QO
+ *
+ *
+ * @author yqf
+ * @since 2023-04-12
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class PmKpi5gMinQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("groupid")
+ private Integer groupid;
+
+ @TableField("时间")
+ private LocalDateTime 时间;
+
+ @TableField("小区名称")
+ private String 小区名称;
+
+ @TableField("地市区号")
+ private String 地市区号;
+
+ @TableField("厂商id")
+ private String 厂商id;
+
+ @TableField("prb_up")
+ private Double prbUp;
+
+ @TableField("prb_down")
+ private Double prbDown;
+
+ @TableField("up_disturb")
+ private Integer upDisturb;
+
+ @TableField("speed_up")
+ private Double speedUp;
+
+ @TableField("speed_down")
+ private Double speedDown;
+
+ @TableField("act_max_user")
+ private Integer actMaxUser;
+
+ @TableField("act_avg_user")
+ private Double actAvgUser;
+
+ @TableField("rrc_avg_user")
+ private BigDecimal rrcAvgUser;
+
+ @TableField("rrc_max_user")
+ private Integer rrcMaxUser;
+
+ @TableField("call_succ_rate")
+ private BigDecimal callSuccRate;
+
+ @TableField("drop_call_rate")
+ private BigDecimal dropCallRate;
+
+ @TableField("data_down")
+ private BigDecimal dataDown;
+
+ @TableField("data_up")
+ private BigDecimal dataUp;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpiCellMonitorQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpiCellMonitorQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..8ad5abf48731f238bd3467c1f1cf6cf7ab5bb721
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpiCellMonitorQO.java
@@ -0,0 +1,96 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.time.LocalDateTime;
+
+/**
+ * @author yqf
+ * @date 2023/4/14
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class PmKpiCellMonitorQO extends CommonDTO {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty(value = "数据类型", required = true)
+ @NotBlank(message = "timetype不能为空")
+ private String datatype;
+
+ @ApiModelProperty(value = "网络类型", required = true)
+ @NotBlank(message = "netType不能为空")
+ private String nettype;
+
+ @ApiModelProperty(value = "区县id")
+ private String regionid;
+
+ @ApiModelProperty(value = "区县id")
+ private String regionIdv;
+
+ @ApiModelProperty(value = "场馆ids")
+ private Integer[] sceneids;
+
+ @ApiModelProperty(value = "场馆id")
+ private Integer sceneid;
+
+ @ApiModelProperty(value = "小区id(多选)")
+ @TableField("小区id")
+ private String[] villageids;
+
+ @ApiModelProperty(value = "小区名称(多选)")
+ @TableField("小区名称")
+ private String[] villagenames;
+
+ @ApiModelProperty(value = "开始时间", required = true)
+ @TableField("starttime")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8", locale = "zh")
+ @NotNull(message = "starttime不能为空")
+ private LocalDateTime starttime;
+
+ @ApiModelProperty(value = "结束时间", required = true)
+ @TableField("endtime")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8", locale = "zh")
+ @NotNull(message = "endtime不能为空")
+ private LocalDateTime endtime;
+
+ @ApiModelProperty(value = "排序字段名")
+ @NotBlank(message = "排序字段名不能为空")
+ private String sortcol;
+
+ @ApiModelProperty(value = "排序")
+ @NotBlank(message = "排序不能为空")
+ private String sort;
+
+ @ApiModelProperty(value = "坐席区(多选)")
+ private String[] seat;
+
+ @ApiModelProperty(value = "坐席区颜色")
+ private String seatcolor;
+
+ @ApiModelProperty(value = "指标名称")
+ @NotBlank(message = "指标名称不能为空")
+ private String kpiname;
+
+ @ApiModelProperty(value = "是否为缓存查询(是:true)",required = true)
+ @NotNull(message = "isCache参数不能为空")
+ private Boolean iscache;
+
+ private String seatno;
+
+
+ @ApiModelProperty(value = "查询表方式,1-查询特定表")
+ private int sceneruntype;
+
+ private String venuetype;
+ private String maintaintype;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpiCellQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpiCellQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..fa6d52bc19f4e9101e7ebe80e9a413590af1d72f
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpiCellQO.java
@@ -0,0 +1,90 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.github.pagehelper.Page;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.List;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+import reactor.util.annotation.NonNull;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+/**
+ *
+ * 场馆4G小区级15分钟指标QO
+ *
+ *
+ * @author yqf
+ * @since 2023-04-11
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class PmKpiCellQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty(value = "网络类型:0-4G,1-5G", required = true)
+ @NotBlank(message = "netType不能为空")
+ private String netType;
+
+ @ApiModelProperty(value = "区县id")
+ private String regionId;
+
+ @ApiModelProperty(value = "区县id")
+ private String regionIdv;
+
+ @ApiModelProperty(value = "场馆ids")
+ private Integer[] venueIds;
+
+ @ApiModelProperty(value = "场馆id")
+ private Integer venueid;
+
+
+ @ApiModelProperty(value = "小区id(多选)")
+ @TableField("小区id")
+ private String[] villageIds;
+
+ @ApiModelProperty(value = "小区名称(多选)")
+ @TableField("小区名称")
+ private String[] villageNames;
+
+ @ApiModelProperty(value = "开始时间", required = true)
+ @TableField("starttime")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8", locale = "zh")
+ @NotNull(message = "starttime不能为空")
+ private LocalDateTime starttime;
+
+ @ApiModelProperty(value = "结束时间", required = true)
+ @TableField("endtime")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8", locale = "zh")
+ @NotNull(message = "endtime不能为空")
+ private LocalDateTime endtime;
+
+ @ApiModelProperty(value = "排序字段名")
+ @NotBlank(message = "排序字段名不能为空")
+ private String sortcol;
+
+ @ApiModelProperty(value = "排序")
+ @NotBlank(message = "排序不能为空")
+ private String sort;
+
+ private LocalDateTime querystarttime;
+
+ private Integer queryvenueid;
+
+ private String venuetype;
+ private String maintaintype;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpiColorQo.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpiColorQo.java
new file mode 100644
index 0000000000000000000000000000000000000000..772d45e9655ab6fc562074e9776dc24338776bcc
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpiColorQo.java
@@ -0,0 +1,44 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.math.BigDecimal;
+
+/**
+ * @author yqf
+ * @date 2023/4/26
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class PmKpiColorQo {
+
+
+ @ApiModelProperty(value = "网络类型")
+ private String nettype;
+
+ @ApiModelProperty("最大用户数值")
+ private BigDecimal maxuservalue;
+
+ @ApiModelProperty("上行prb利用率值")
+ private BigDecimal prbupvalue;
+
+ @ApiModelProperty("下行prb利用率值")
+ private BigDecimal prbdownvalue;
+
+ @ApiModelProperty("上行平均干扰值")
+ private BigDecimal avgdisvalue;
+
+ @ApiModelProperty("小区频段")
+ private String freqtype;
+
+ @ApiModelProperty("设备类型")
+ private String devicetype;
+
+ @ApiModelProperty("带宽")
+ private Long bandwidth;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpiMinQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpiMinQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..8486b4806cdaa619125153b411362e22ae497d77
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpiMinQO.java
@@ -0,0 +1,73 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.time.LocalDateTime;
+
+/**
+ * @author yqf
+ * @date 2023/4/12
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class PmKpiMinQO extends CommonDTO {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty(value = "网络类型:0-4G,1-5G", required = true)
+ @NotBlank(message = "netType不能为空")
+ private String netType;
+
+ @ApiModelProperty(value = "区县id")
+ private String regionId;
+
+ @ApiModelProperty(value = "区县id")
+ private String regionIdv;
+
+ @ApiModelProperty(value = "场馆ids")
+ private Integer[] venueIds;
+
+ @ApiModelProperty(value = "场馆id")
+ private Integer venueid;
+
+ @ApiModelProperty(value = "小区id(多选)")
+ @TableField("小区id")
+ private String[] villageIds;
+
+ @ApiModelProperty(value = "小区名称(多选)")
+ @TableField("小区名称")
+ private String[] villageNames;
+
+ @ApiModelProperty(value = "开始时间", required = true)
+ @TableField("starttime")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8", locale = "zh")
+ @NotNull(message = "starttime不能为空")
+ private LocalDateTime starttime;
+
+ @ApiModelProperty(value = "结束时间", required = true)
+ @TableField("endtime")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8", locale = "zh")
+ @NotNull(message = "endtime不能为空")
+ private LocalDateTime endtime;
+
+ @ApiModelProperty(value = "排序字段名")
+ @NotBlank(message = "排序字段名不能为空")
+ private String sortcol;
+
+ @ApiModelProperty(value = "排序")
+ @NotBlank(message = "排序不能为空")
+ private String sort;
+
+ private String venuetype;
+ private String maintaintype;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpiVenueQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpiVenueQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..72994a0e38d7115ad016ac2184544a50410361f0
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/PmKpiVenueQO.java
@@ -0,0 +1,56 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.time.LocalDateTime;
+
+/**
+ * @author yqf
+ * @date 2023/4/11
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class PmKpiVenueQO extends CommonDTO {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty(value = "网络类型:1-4G,2-5G", required = true)
+ @NotBlank(message = "netType不能为空")
+ private String netType;
+
+ @ApiModelProperty(value = "市级id")
+ private String cityId;
+
+ @ApiModelProperty(value = "区县id")
+ private String regionId;
+
+ @ApiModelProperty(value = "场馆ids")
+ @TableField("venue_id")
+ private Integer[] venueIds;
+
+ @TableField("venue_id")
+ private Integer venueId;
+
+ @ApiModelProperty(value = "开始时间", required = true)
+ @TableField("starttime")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8", locale = "zh")
+ @NotNull(message = "starttime不能为空")
+ private LocalDateTime starttime;
+
+ @ApiModelProperty(value = "结束时间", required = true)
+ @TableField("endtime")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8", locale = "zh")
+ @NotNull(message = "endtime不能为空")
+ private LocalDateTime endtime;
+
+ private String orderby;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/SysNoticeQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/SysNoticeQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..2a65ddee8699b644b7b87b37d52b98d85c64e9dd
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/SysNoticeQO.java
@@ -0,0 +1,138 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+
+/**
+ *
+ * 通知公告表QO
+ *
+ *
+ * @author ck
+ * @since 2023-04-14
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class SysNoticeQO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("自增id")
+ @TableId(value = "notice_id", type = IdType.AUTO)
+ private Integer noticeId;
+
+ @ApiModelProperty("通知标题")
+ @TableField("notice_title")
+ private String noticeTitle;
+
+ @ApiModelProperty("通知类型--字典表sys_notice_type")
+ @TableField("notice_type")
+ private String noticeType;
+
+ @ApiModelProperty("通知内容")
+ @TableField("notice_content")
+ private String noticeContent;
+
+ @ApiModelProperty("状态 0未读 1已读")
+ @TableField("status")
+ private String status;
+
+ @ApiModelProperty("创建人")
+ @TableField("create_by")
+ private String createBy;
+
+ @ApiModelProperty("插入时间")
+ @TableField("create_time")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("更新人")
+ @TableField("update_by")
+ private String updateBy;
+
+ @ApiModelProperty("更新时间")
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @ApiModelProperty("备注")
+ @TableField("remark")
+ private String remark;
+
+ @ApiModelProperty("接收人")
+ @TableField("recive_user")
+ private Integer reciveUser;
+
+ @ApiModelProperty("工作流id")
+ @TableField("flw_processid")
+ private String flwProcessid;
+
+ @ApiModelProperty("工作流任务id")
+ @TableField("flw_taskid")
+ private String flwTaskid;
+
+ @ApiModelProperty("实际发送时间")
+ @TableField("send_time")
+ private LocalDateTime sendTime;
+
+ private LocalDateTime beginTime;
+ private LocalDateTime endTime;
+
+ @ApiModelProperty("发送是否成功,1成功 0失败")
+ @TableField("send_status")
+ private String sendStatus;
+
+ @ApiModelProperty("接收人手机号")
+ @TableField("recive_user_phone")
+ private String reciveUserPhone;
+
+ @ApiModelProperty("计划发送时间(同天当前时间之前立即发送)")
+ @TableField("exp_send_time")
+ private LocalDateTime expSendTime;
+
+ @ApiModelProperty("加入定时任务标记 默认0未加入 1已加入")
+ @TableField("add_flag")
+ private String addFlag;
+
+ @ApiModelProperty("通知对象ids数组")
+ @TableField("notice_object_id")
+ private String noticeObjectId;
+
+ @ApiModelProperty("通知模板id")
+ @TableField("notice_model_id")
+ private Long noticeModelId;
+
+ @ApiModelProperty("通知场景--字典yw_notice_scene (0一般告警 1重大告警 ....)")
+ @TableField("model_scene")
+ private String modelScene;
+
+ @ApiModelProperty("对象属性--yw_notice_object(0场馆层 1分公司层 2亚运指挥层 3ITCC层)")
+ @TableField("object_proto")
+ private String objectProto;
+
+ @ApiModelProperty("通知对象(是指具体的通知接受者,呈现方式包括场馆+群组;分公司+群组名;地市+群组名;ITCC+群组名;场馆+个人名;分公司+个人名;地市+个人名;ITCC+个人名这几种组合。具体呈现内容和对象属性、通知方式相关联)")
+ @TableField("notice_object")
+ private String noticeObject;
+
+ @ApiModelProperty("通知类型model_suit_type 1 普通 2 手工 3简报")
+ @TableField("model_suit_type")
+ private String modelSuitType;
+
+ @ApiModelProperty("关联表id(yw_notice_handwork)")
+ @TableField("handwork_id")
+ private Long handworkId;
+
+ @ApiModelProperty("关键字")
+ private String keyWord;
+
+ private Integer pageNum;
+
+ private Integer pageSize;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwDrsConfigQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwDrsConfigQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..04d2e90769d24b7507f0d3f38ab07152f329d70f
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwDrsConfigQO.java
@@ -0,0 +1,71 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+
+/**
+ *
+ * DRS配置表QO
+ *
+ *
+ * @author ck
+ * @since 2023-06-13
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwDrsConfigQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("任务名称")
+ @TableField("task_name")
+ private String taskName;
+
+ @ApiModelProperty("任务类型 drs_task_type 0 / 1 签到 2巡检")
+ @TableField("drs_task_type")
+ private String drsTaskType;
+
+ @ApiModelProperty("状态")
+ @TableField("status")
+ private String status;
+
+ @ApiModelProperty("创建人")
+ @TableField(value = "create_by", fill = FieldFill.INSERT)
+ private String createBy;
+
+ @ApiModelProperty("创建时间")
+ @TableField(value = "create_time", fill = FieldFill.INSERT)
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("修改人")
+ @TableField(value = "update_by", fill = FieldFill.UPDATE)
+ private String updateBy;
+
+ @ApiModelProperty("修改时间")
+ @TableField(value = "update_time", fill = FieldFill.UPDATE)
+ private LocalDateTime updateTime;
+
+ @ApiModelProperty("备注")
+ @TableField("remark")
+ private String remark;
+
+ @ApiModelProperty("删除标记")
+ @TableField("del_flag")
+ private String delFlag;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwDrsTempTaskQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwDrsTempTaskQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..b1fab19a788dbd989535c562b9a2211cf490a88b
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwDrsTempTaskQO.java
@@ -0,0 +1,106 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *
+ * DRS临时任务表QO
+ *
+ *
+ * @author ck
+ * @since 2023-06-13
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwDrsTempTaskQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("场馆id")
+ @TableField("venue_id")
+ private Long venueId;
+
+ @ApiModelProperty("场馆属性")
+ private String venueType;
+
+ @ApiModelProperty("维护类型")
+ private String maintainType;
+
+ @ApiModelProperty("场馆id数组")
+ private List venueIds;
+
+ @ApiModelProperty("任务日期")
+ @TableField("task_date")
+ private LocalDate taskDate;
+
+ @ApiModelProperty("任务时间")
+ @TableField("task_time")
+ private LocalDateTime taskTime;
+
+ @ApiModelProperty("任务结束时间")
+ @TableField("task_end_time")
+ private LocalDateTime taskEndTime;
+
+ @ApiModelProperty("任务名称")
+ @TableField("task_name")
+ private String taskName;
+
+ @ApiModelProperty("DRS任务类型 drs_task_type 0 / 1 签到 2巡检")
+ @TableField("drs_task_type")
+ private String drsTaskType;
+
+ @ApiModelProperty("DRS任务状态 drs_task_status 0未开始 1进行中 2已完成")
+ @TableField("drs_task_status")
+ private String drsTaskStatus;
+
+ @ApiModelProperty("自动状态变更 0自动 1手动")
+ @TableField("drs_auto_update")
+ private String drsAutoUpdate;
+
+ @ApiModelProperty("状态")
+ @TableField("status")
+ private String status;
+
+ @ApiModelProperty("创建人")
+ @TableField(value = "create_by", fill = FieldFill.INSERT)
+ private String createBy;
+
+ @ApiModelProperty("创建时间")
+ @TableField(value = "create_time", fill = FieldFill.INSERT)
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("修改人")
+ @TableField("update_by")
+ private String updateBy;
+
+ @ApiModelProperty("修改时间")
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @ApiModelProperty("备注")
+ @TableField("remark")
+ private String remark;
+
+ @ApiModelProperty("删除标记")
+ @TableField("del_flag")
+ private String delFlag;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwKpiConfigQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwKpiConfigQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..a65735c7e366a4ed5354b3663f38d542bd003423
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwKpiConfigQO.java
@@ -0,0 +1,84 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.github.pagehelper.Page;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * 指标字段阈值配置表QO
+ *
+ *
+ * @author yqf
+ * @since 2023-04-11
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwKpiConfigQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("序号")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("专业(字典表)")
+ @TableField("subject")
+ private String subject;
+
+ @ApiModelProperty("网络模式(字典表)")
+ @TableField("net_type")
+ private String netType;
+
+ @ApiModelProperty("指标字段")
+ @TableField("kpi_field")
+ private Long kpiField;
+
+ @ApiModelProperty("阈值范围")
+ @TableField("threshold_value")
+ private String thresholdValue;
+
+ @ApiModelProperty("颜色")
+ @TableField("color")
+ private String color;
+
+ @ApiModelProperty("创建人")
+ @TableField("create_by")
+ private String createBy;
+
+ @ApiModelProperty("创建时间")
+ @TableField("create_time")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("更新人")
+ @TableField("update_by")
+ private String updateBy;
+
+ @ApiModelProperty("更新时间")
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @ApiModelProperty("最小是(包括本值)")
+ @TableField("min_value")
+ private Object minValue;
+
+ @ApiModelProperty("最大值(不包括本值)")
+ @TableField("max_value")
+ private Object maxValue;
+
+ @ApiModelProperty("指标名")
+ @TableField("kpi_field_name")
+ private String kpiFieldName;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeBriefingQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeBriefingQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..bf8ff8c5cb1b7261bf63c485ec96c2380d25bd4f
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeBriefingQO.java
@@ -0,0 +1,112 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonAlias;
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *
+ * 通知通告简报计划表QO
+ *
+ *
+ * @author ck
+ * @since 2023-04-11
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwNoticeBriefingQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+ @ApiModelProperty("id")
+ @TableField("id")
+ private Long id;
+
+ @ApiModelProperty("地市")
+ @TableField("city")
+ //这个注解只在反序列化时起作用,指定该java属性可以接受的更多名称 (别名嘛~)
+ @JsonAlias({"city"})
+ private String city;
+
+ @ApiModelProperty("场馆id")
+ @TableField("venue_id")
+ private List venueId;
+
+ @ApiModelProperty("场馆属性")
+ private String venueType;
+
+ @ApiModelProperty("维护类型")
+ private String maintainType;
+
+ @ApiModelProperty("对象属性yw_notice_object(0场馆层 1分公司层 2亚运指挥层 3ITCC层)")
+ @TableField("object_proto")
+ private String objectProto;
+
+ @ApiModelProperty("通知方式sys_notice_type")
+ @TableField("notice_type")
+ private String noticeType;
+
+ @ApiModelProperty("发送日期")
+ @TableField("send_date")
+ private LocalDate sendDate;
+
+ @ApiModelProperty("开始时间")
+ @TableField("begin_time")
+ private LocalDateTime beginTime;
+
+ @ApiModelProperty("结束时间")
+ @TableField("end_time")
+ private LocalDateTime endTime;
+
+ @ApiModelProperty("区县")
+ @TableField("county")
+ private String county;
+
+ @ApiModelProperty("对象ids数组")
+ @TableField("object_ids")
+ private List objectIds;
+
+ @ApiModelProperty("模板id")
+ @TableField("model_id")
+ private Long modelId;
+
+ @ApiModelProperty("排序号")
+ @TableField("order_num")
+ private Integer orderNum;
+
+ @ApiModelProperty("时间间隔(单位分)")
+ @TableField("time_interval")
+ private Integer timeInterval;
+
+ @ApiModelProperty("通知名称")
+ @TableField("notice_name")
+ private String noticeName;
+
+ @ApiModelProperty("启用状态 sys_normal_disable 0启用 1停用")
+ @TableField("sys_normal_disable")
+ private String sysNormalDisable;
+
+ @ApiModelProperty("关键字")
+ private String keyWord;
+
+ @ApiModelProperty("通知类型model_suit_type 1 普通 2 手工 3文字简报 4h5简报)")
+ @TableField("model_suit_type")
+ private String modelSuitType;
+
+ @ApiModelProperty("发送方式 send_type (1自动发送 2手工发送)")
+ @TableField("send_type")
+ private String sendType;
+
+ @ApiModelProperty("发送人员")
+ @TableField("send_user")
+ private Long sendUser;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeHandworkQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeHandworkQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..ddc38bc5a940a7d0868aef524e44967d6dac10f8
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeHandworkQO.java
@@ -0,0 +1,89 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *
+ * 通知通告手工通知计划表QO
+ *
+ *
+ * @author ck
+ * @since 2023-04-11
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwNoticeHandworkQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+ @ApiModelProperty("id")
+ @TableField("id")
+ private Long id;
+
+ @ApiModelProperty("通知名称")
+ @TableField("notice_name")
+ private String noticeName;
+
+ @ApiModelProperty("通知模板id")
+ @TableField("notice_model")
+ private Long noticeModel;
+
+ @ApiModelProperty("通知方式--sys_notice_type")
+ @TableField("notice_type")
+ private List noticeType;
+
+ @ApiModelProperty("通知对象ids")
+ @TableField("notice_object")
+ private List noticeObject;
+
+ @ApiModelProperty("通知内容")
+ @TableField("notice_content")
+ private String noticeContent;
+
+ @ApiModelProperty("通知状态yw_veriy_status 0待提交 1待审核 2已审核")
+ @TableField("notice_status")
+ private List noticeStatus;
+
+ @ApiModelProperty("日期")
+ @TableField("notice_date")
+ private LocalDateTime noticeDate;
+
+ @ApiModelProperty("开始时间")
+ private LocalDateTime beginTime;
+
+ @ApiModelProperty("结束时间")
+ private LocalDateTime endTime;
+
+ @ApiModelProperty("时间间隔(单位分)")
+ @TableField("time_interval")
+ private Integer timeInterval;
+
+ @ApiModelProperty("工作流processid")
+ @TableField("flw_processid")
+ private String flwProcessid;
+
+ @ApiModelProperty("申请人id")
+ @TableField("apply_id")
+ private Long applyId;
+
+ @ApiModelProperty("审核人id")
+ @TableField("audit_id")
+ private Long auditId;
+
+ @ApiModelProperty("已添加到sys_notice标记(0否 1是)")
+ @TableField("add_flag")
+ private String addFlag;
+
+ @ApiModelProperty("关键字")
+ private String keyWord;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeHandworkdetailQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeHandworkdetailQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..0bb5698771ef48f01804052cd8f2a09737b6b209
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeHandworkdetailQO.java
@@ -0,0 +1,55 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.List;
+
+/**
+ *
+ * 通知通告手工通知审核表QO
+ *
+ *
+ * @author ck
+ * @since 2023-04-11
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwNoticeHandworkdetailQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+ @ApiModelProperty("id")
+ @TableField("id")
+ private Long id;
+
+ @ApiModelProperty("手工通知id")
+ @TableField("handwork_id")
+ private Long handworkId;
+
+ @ApiModelProperty("操作人(提交审核的人 或者 审核的人)")
+ @TableField("oprate_user")
+ private Long oprateUser;
+
+ @ApiModelProperty("审核结果(关联字典表yw_veriy_result 0通过 1驳回)")
+ @TableField("veriy_result")
+ private String veriyResult;
+
+ @ApiModelProperty("审核状态(关联字典表yw_veriy_status 0 待审核 1 已审核)")
+ @TableField("veriy_status")
+ private String veriyStatus;
+
+ @ApiModelProperty("驳回原因")
+ @TableField("fail_reason")
+ private String failReason;
+
+ @ApiModelProperty("附件")
+ @TableField("appendix")
+ private String appendix;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeListQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeListQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..936af69450afdbb0bd07a688d7df91aad265901e
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeListQO.java
@@ -0,0 +1,96 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *
+ * 通知通告记录表QO
+ *
+ *
+ * @author ck
+ * @since 2023-04-11
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwNoticeListQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+ @ApiModelProperty("id")
+ @TableField("id")
+ private Long id;
+
+ @ApiModelProperty("通知名称")
+ @TableField("notice_name")
+ private String noticeName;
+
+ @ApiModelProperty("通知场景--字典yw_notice_scene (0一般告警 1重大告警 ....)")
+ @TableField("model_scene")
+ private String modelScene;
+
+ @ApiModelProperty("对象属性--yw_notice_object(0场馆层 1分公司层 2亚运指挥层 3ITCC层)")
+ @TableField("object_proto")
+ private String objectProto;
+
+ @ApiModelProperty("通知方式--sys_notice_type")
+ @TableField("notice_type")
+ private String noticeType;
+
+ @ApiModelProperty("通知时间(计划发送时间(同天当前时间之前立即发送))")
+ @TableField("notice_time")
+ private LocalDateTime noticeTime;
+
+ @ApiModelProperty("通知对象")
+ @TableField("notice_object")
+ private String noticeObject;
+
+ @ApiModelProperty("通知内容")
+ @TableField("notice_content")
+ private String noticeContent;
+
+ @ApiModelProperty("状态 0未读 1已读")
+ @TableField("status")
+ private String status;
+
+ @ApiModelProperty("通知对象ids数组")
+ @TableField("notice_object_id")
+ private List noticeObjectId;
+
+ @ApiModelProperty("通知模板id")
+ @TableField("notice_model_id")
+ private Long noticeModelId;
+
+ @ApiModelProperty("实际发送时间")
+ @TableField("send_time")
+ private LocalDateTime sendTime;
+
+ @ApiModelProperty("发送是否成功,1成功 0失败")
+ @TableField("send_status")
+ private String sendStatus;
+
+ @ApiModelProperty("计划发送时间(同天当前时间之前立即发送)")
+ @TableField("exp_send_time")
+ private LocalDateTime expSendTime;
+
+ @ApiModelProperty("加入定时任务标记 默认0未加入 1已加入")
+ @TableField("add_flag")
+ private String addFlag;
+
+ @ApiModelProperty("通知类型model_suit_type 1 普通 2 手工 3简报")
+ @TableField("model_suit_type")
+ private String modelSuitType;
+
+ @ApiModelProperty("计划id(手工与简报会先配置计划)")
+ @TableField("plan_id")
+ private Long planId;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeModelQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeModelQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..86e0b3e8944a47d9cb5d3babdccd551662028bc9
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeModelQO.java
@@ -0,0 +1,80 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.github.pagehelper.Page;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *
+ * 通知通告模板表QO
+ *
+ *
+ * @author ck
+ * @since 2023-04-07
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwNoticeModelQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("id")
+ @TableField("id")
+ private Long id;
+
+ @ApiModelProperty("模板名称")
+ @TableField("model_name")
+ private String modelName;
+
+ @ApiModelProperty("模板内容")
+ @TableField("model_content")
+ private String modelContent;
+
+ @ApiModelProperty("场景--字典yw_notice_scene (0一般告警 1重大告警 ....)")
+ @TableField("model_scene")
+ private String modelScene;
+
+ @ApiModelProperty("用户id")
+ @TableField(value = "create_user_id", fill = FieldFill.INSERT)
+ private Long createUserId;
+
+ @ApiModelProperty("创建用户昵称")
+ @TableField(value = "create_by", fill = FieldFill.INSERT)
+ private String createBy;
+
+ @ApiModelProperty("创建时间")
+ @TableField("create_time")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("模板适用类型model_suit_type 1 普通 2 手工 3简报")
+ @TableField("model_suit_type")
+ private String modelSuitType;
+
+ @ApiModelProperty("备注(写一些触发要求)")
+ @TableField("model_des")
+ private String modelDes;
+
+ @ApiModelProperty("模板类型--字典model_type 0事件触发型")
+ @TableField("model_type")
+ private String modelType;
+
+ @ApiModelProperty("排序号")
+ @TableField("order_num")
+ private Integer orderNum;
+
+ @ApiModelProperty("场馆id")
+ @TableField("venue_id")
+ private Long venueId;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeObjectQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeObjectQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..38852248e9f60ff05254fcfd330767193e55aecb
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwNoticeObjectQO.java
@@ -0,0 +1,103 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.List;
+
+/**
+ *
+ * 通知通告对象表QO
+ *
+ *
+ * @author ck
+ * @since 2023-04-11
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwNoticeObjectQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+ @ApiModelProperty("id")
+ @TableField("id")
+ private Long id;
+
+ @ApiModelProperty("地市")
+ @TableField("city")
+ private String city;
+
+ @ApiModelProperty("区县")
+ @TableField("county")
+ private String county;
+
+ @ApiModelProperty("场馆id")
+ @TableField("venue_id")
+ private List venueId;
+
+ @ApiModelProperty("场馆属性")
+ private String venueType;
+
+ @ApiModelProperty("维护类型")
+ private String maintainType;
+
+ @ApiModelProperty("专业")
+ @TableField("specialty")
+ private Long specialty;
+
+ @ApiModelProperty("角色id数组")
+ @TableField("role_ids")
+ private List roleIds;
+
+ @ApiModelProperty("对象属性yw_notice_object(0场馆层 1分公司层 2亚运指挥层 3ITCC层)")
+ @TableField("object_proto")
+ private String objectProto;
+
+ @ApiModelProperty("通知方式sys_notice_type")
+ @TableField("notice_type")
+ private String noticeType;
+
+ @ApiModelProperty("短信组名")
+ @TableField("message_name")
+ private String messageName;
+
+ @ApiModelProperty("短信组内成员id数组")
+ @TableField("message_users")
+ private List messageUsers;
+
+ @ApiModelProperty("排序号")
+ @TableField("order_num")
+ private Integer orderNum;
+
+ @ApiModelProperty("群号")
+ @TableField("group_id")
+ private String groupId;
+
+ @ApiModelProperty("群名")
+ @TableField("group_name")
+ private String groupName;
+
+ @ApiModelProperty("备注")
+ @TableField("group_des")
+ private String groupDes;
+
+ @ApiModelProperty("对象名称")
+ @TableField("object_name")
+ private String objectName;
+
+ @ApiModelProperty("ivr组名")
+ @TableField("ivr_name")
+ private String ivrName;
+
+ @ApiModelProperty("ivr组内成员id数组")
+ @TableField("ivr_users")
+ private List ivrUsers;
+
+ @ApiModelProperty("关键字")
+ private String keyWord;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwSparePartsQO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwSparePartsQO.java
new file mode 100644
index 0000000000000000000000000000000000000000..6ad276b1578c29f01d3f70b4cf123222f7829eaf
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/qo/YwSparePartsQO.java
@@ -0,0 +1,59 @@
+package com.ruoyi.eastcom_yw.domain.qo;
+
+import com.github.pagehelper.Page;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+
+import com.ruoyi.eastcom_yw.domain.dto.CommonDTO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * 亚运备件表QO
+ *
+ *
+ * @author yqf
+ * @since 2023-08-31
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class YwSparePartsQO extends CommonDTO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("场馆名称")
+ @TableField("venue_name")
+ private String venueName;
+
+ @ApiModelProperty("场馆类型")
+ @TableField("venue_type")
+ private String venueType;
+
+ @ApiModelProperty("设备类型")
+ @TableField("device_type")
+ private String deviceType;
+
+ @ApiModelProperty("专业")
+ @TableField("major")
+ private String major;
+
+
+ @ApiModelProperty("联系人")
+ @TableField("contacts")
+ private String contacts;
+
+ @ApiModelProperty("联系电话")
+ @TableField("telephone")
+ private String telephone;
+
+ @ApiModelProperty("搜索型号")
+ private String queryType;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/AlarmStaticListVo.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/AlarmStaticListVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..cd531e50d12ea07549c3606bceaaa0cc2810b7d3
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/AlarmStaticListVo.java
@@ -0,0 +1,17 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class AlarmStaticListVo {
+
+ private String venueName;
+ private Integer alarmNum;
+ private Integer alarmWxNum;
+ private Integer alarmCsNum;
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/AlarmStatisticsListVo.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/AlarmStatisticsListVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..16777c6b60383ffa3e856725a4029c29dfbbe933
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/AlarmStatisticsListVo.java
@@ -0,0 +1,10 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+import lombok.Data;
+
+@Data
+public class AlarmStatisticsListVo {
+ private String subscene_name;
+ private String profession;
+ private Integer alarm_count;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/AlarmTopListVo.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/AlarmTopListVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..a19c4a5e61e6cb2c20dc7afbb8bce385ebc12427
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/AlarmTopListVo.java
@@ -0,0 +1,18 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class AlarmTopListVo {
+ private String alarm_serial;
+ private String alarm_title;
+ private String subscene_name;
+ private String ne_name;
+ private String profession;
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8", locale = "zh")
+ private Date alarm_occr_time;
+ private String handler;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/DictTreeVO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/DictTreeVO.java
new file mode 100644
index 0000000000000000000000000000000000000000..f56e59e7c2a69dfd84d0299ef9db2adf05ca52b5
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/DictTreeVO.java
@@ -0,0 +1,17 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.List;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class DictTreeVO {
+
+ private String label;
+ private String value;
+ private List children;
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2AgisLink5miVO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2AgisLink5miVO.java
new file mode 100644
index 0000000000000000000000000000000000000000..d3bfb1c8489983bb775ea6721df839a6cce31f0a
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2AgisLink5miVO.java
@@ -0,0 +1,140 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * VO
+ *
+ *
+ * @author yqf
+ * @since 2023-08-18
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class Dp2AgisLink5miVO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("stat_date")
+ private LocalDateTime statDate;
+
+ @TableField("city_code")
+ private String cityCode;
+
+ @TableField("city_name")
+ private String cityName;
+
+ @TableField("venue_code")
+ private String venueCode;
+
+ @TableField("venue_name")
+ private String venueName;
+
+ @TableField("link_value_code")
+ private String linkValueCode;
+
+ @TableField("link_value")
+ private String linkValue;
+
+ @TableField("link_code")
+ private String linkCode;
+
+ @TableField("link_name")
+ private String linkName;
+
+ @TableField("bandwith")
+ private BigDecimal bandwith;
+
+ @TableField("delay")
+ private BigDecimal delay;
+
+ @TableField("jitter")
+ private BigDecimal jitter;
+
+ @TableField("lpack_ratio")
+ private BigDecimal lpackRatio;
+
+ @TableField("ul_velocity")
+ private BigDecimal ulVelocity;
+
+ @TableField("dl_velocity")
+ private BigDecimal dlVelocity;
+
+ @TableField("ul_flow")
+ private BigDecimal ulFlow;
+
+ @TableField("dl_flow")
+ private BigDecimal dlFlow;
+
+ @TableField("ul_band_ratio")
+ private BigDecimal ulBandRatio;
+
+ @TableField("dl_band_ratio")
+ private BigDecimal dlBandRatio;
+
+ @TableField("total_band_ratio")
+ private BigDecimal totalBandRatio;
+
+ @TableField("load_time")
+ private LocalDateTime loadTime;
+
+ @TableField("a_device_alias")
+ private String aDeviceAlias;
+
+ @TableField("z_device_alias")
+ private String zDeviceAlias;
+
+ @TableField("dl_max_24h_ratio")
+ private BigDecimal dlMax24hRatio;
+
+ @TableField("ul_max_24h_ratio")
+ private BigDecimal ulMax24hRatio;
+
+ @TableField("dl_avg_24h_ratio")
+ private BigDecimal dlAvg24hRatio;
+
+ @TableField("ul_avg_24h_ratio")
+ private BigDecimal ulAvg24hRatio;
+
+ @TableField("a_device_name")
+ private String aDeviceName;
+
+ @TableField("a_port_name")
+ private String aPortName;
+
+ @TableField("z_device_name")
+ private String zDeviceName;
+
+ @TableField("z_port_name")
+ private String zPortName;
+
+ @TableField("a_port_full_name")
+ private String aPortFullName;
+
+ @TableField("z_port_full_name")
+ private String zPortFullName;
+
+ @TableField("a_port_short_name")
+ private String aPortShortName;
+
+ @TableField("z_port_short_name")
+ private String zPortShortName;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ //AGIS流量
+ private BigDecimal flowcount;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2PnNetVenue5miVO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2PnNetVenue5miVO.java
new file mode 100644
index 0000000000000000000000000000000000000000..0e20e19ef32541dac67761e5372106a34c62c49d
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2PnNetVenue5miVO.java
@@ -0,0 +1,138 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * VO
+ *
+ *
+ * @author yqf
+ * @since 2023-08-21
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class Dp2PnNetVenue5miVO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("stat_date")
+ private LocalDateTime statDate;
+
+ @TableField("city_code")
+ private String cityCode;
+
+ @TableField("city_name")
+ private String cityName;
+
+ @ApiModelProperty("互联网在线用户数")
+ @TableField("online_user_cnt")
+ private Double onlineUserCnt;
+
+ @TableField("inter_exp_bandwith")
+ private Double interExpBandwith;
+
+ @TableField("interc_bandwith")
+ private Double intercBandwith;
+
+ @TableField("venue_bandwith")
+ private Double venueBandwith;
+
+ @TableField("dl_inter_exp_flow")
+ private Double dlInterExpFlow;
+
+ @TableField("ul_inter_exp_flow")
+ private Double ulInterExpFlow;
+
+ @TableField("dl_interc_flow")
+ private Double dlIntercFlow;
+
+ @TableField("ul_interc_flow")
+ private Double ulIntercFlow;
+
+ @TableField("dl_venue_flow")
+ private Double dlVenueFlow;
+
+ @TableField("ul_venue_flow")
+ private Double ulVenueFlow;
+
+ @TableField("dl_inter_exp_band_ratio")
+ private Double dlInterExpBandRatio;
+
+ @TableField("ul_inter_exp_band_ratio")
+ private Double ulInterExpBandRatio;
+
+ @TableField("dl_interc_band_ratio")
+ private Double dlIntercBandRatio;
+
+ @TableField("ul_interc_band_ratio")
+ private Double ulIntercBandRatio;
+
+ @ApiModelProperty("互联网下行带宽利用率")
+ @TableField("dl_venue_band_ratio")
+ private Double dlVenueBandRatio;
+
+ @ApiModelProperty("互联网上行带宽利用率")
+ @TableField("ul_venue_band_ratio")
+ private Double ulVenueBandRatio;
+
+ @TableField("dl_inter_exp_velocity")
+ private Double dlInterExpVelocity;
+
+ @TableField("ul_inter_exp_velocity")
+ private Double ulInterExpVelocity;
+
+ @TableField("dl_interc_velocity")
+ private Double dlIntercVelocity;
+
+ @TableField("ul_interc_velocity")
+ private Double ulIntercVelocity;
+
+ @ApiModelProperty("互联网场馆出口_下行流速")
+ @TableField("dl_venue_velocity")
+ private Double dlVenueVelocity;
+
+ @ApiModelProperty("互联网出口_上行流速")
+ @TableField("ul_venue_velocity")
+ private Double ulVenueVelocity;
+
+ @TableField("interc_delay")
+ private Double intercDelay;
+
+ @TableField("inter_exp_delay")
+ private Double interExpDelay;
+
+ @TableField("interc_jitter")
+ private Double intercJitter;
+
+ @TableField("inter_exp_jitter")
+ private Double interExpJitter;
+
+ @TableField("interc_lpack_ratio")
+ private Double intercLpackRatio;
+
+ @TableField("inter_exp_lpack_ratio")
+ private Double interExpLpackRatio;
+
+ @TableField("load_time")
+ private LocalDateTime loadTime;
+
+ @TableField("venue_code")
+ private String venueCode;
+
+ @TableField("venue_name")
+ private String venueName;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2SpotCellVO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2SpotCellVO.java
new file mode 100644
index 0000000000000000000000000000000000000000..e4355f1bfe4f4162b5bdc4410c66a7462398a0fc
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2SpotCellVO.java
@@ -0,0 +1,167 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.ruoyi.common.annotation.Excel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+
+/**
+ *
+ * VO
+ *
+ *
+ * @author ck
+ * @since 2023-08-10
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class Dp2SpotCellVO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("id")
+ private Integer id;
+
+ @TableField("omc")
+ @Excel(name = "OMC")
+ private String omc;
+
+ @ApiModelProperty("需要")
+ @TableField("县市")
+ @Excel(name = "县市")
+ private String 县市;
+
+ @TableField("enodebid")
+ @Excel(name = "enodebid")
+ private Long enodebid;
+
+ @TableField("本地小区标识")
+ @Excel(name = "本地小区标识")
+ private Long 本地小区标识;
+
+ @TableField("小区标识")
+ @Excel(name = "小区标识")
+ private Long 小区标识;
+
+ @ApiModelProperty("需要")
+ @TableField("站号")
+ @Excel(name = "站号")
+ private Long 站号;
+
+ @ApiModelProperty("需要")
+ @TableField("ci")
+ @Excel(name = "ci")
+ private Long ci;
+
+ @ApiModelProperty("需要")
+ @TableField("基站全称")
+ @Excel(name = "基站全称")
+ private String 基站全称;
+
+ @TableField("en名称")
+ @Excel(name = "en名称")
+ private String en名称;
+
+ @ApiModelProperty("需要")
+ @TableField("小区名称")
+ @Excel(name = "小区名称")
+ private String 小区名称;
+
+ @ApiModelProperty("需要")
+ @TableField("小区频段")
+ @Excel(name = "小区频段")
+ private String 小区频段;
+
+ @ApiModelProperty("需要")
+ @TableField("纬度")
+ @Excel(name = "纬度")
+ private Double 纬度;
+
+ @ApiModelProperty("需要")
+ @TableField("经度")
+ @Excel(name = "经度")
+ private Double 经度;
+
+ @TableField("纬度gcj")
+ @Excel(name = "纬度gcj")
+ private Double 纬度gcj;
+
+ @TableField("经度gcj")
+ @Excel(name = "经度gcj")
+ private Double 经度gcj;
+
+ @ApiModelProperty("需要")
+ @TableField("室内室外")
+ @Excel(name = "室内室外")
+ private String 室内室外;
+
+ @ApiModelProperty("需要")
+ @TableField("网络")
+ @Excel(name = "网络")
+ private String 网络;
+
+ @TableField("现网状态")
+ @Excel(name = "现网状态")
+ private String 现网状态;
+
+ @TableField("cgi")
+ @Excel(name = "cgi")
+ private String cgi;
+
+ @TableField("频点")
+ @Excel(name = "频点")
+ private Long 频点;
+
+ @TableField("pci")
+ @Excel(name = "pci")
+ private Long pci;
+
+ @TableField("tac")
+ @Excel(name = "tac")
+ private Long tac;
+
+ @TableField("一级场景")
+ @Excel(name = "一级场景")
+ private String 一级场景;
+
+ @TableField("二级场景")
+ @Excel(name = "二级场景")
+ private String 二级场景;
+
+ @ApiModelProperty("需要")
+ @TableField("设备类型")
+ @Excel(name = "设备类型")
+ private String 设备类型;
+
+ @ApiModelProperty("需要")
+ @TableField("带宽")
+ @Excel(name = "带宽")
+ private Double 带宽;
+
+ @ApiModelProperty("需要")
+ @TableField("方位角")
+ @Excel(name = "方位角")
+ private Long 方位角;
+
+ @TableField("扇区id")
+ @Excel(name = "扇区id")
+ private Long 扇区id;
+
+ @TableField("更新时间")
+ private LocalDateTime 更新时间;
+
+ @ApiModelProperty("景区ID,需要")
+ @TableField("景区id")
+ @Excel(name = "景区id")
+ private Integer 景区id;
+
+
+ private String reason;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2SpotConfigVO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2SpotConfigVO.java
new file mode 100644
index 0000000000000000000000000000000000000000..65bc3cfea245f954897efb4b1c564ec6c5faaf73
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2SpotConfigVO.java
@@ -0,0 +1,48 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ *
+ * VO
+ *
+ *
+ * @author ck
+ * @since 2023-08-09
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class Dp2SpotConfigVO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("景区id")
+ private Integer 景区id;
+
+ @TableField("景区名称")
+ private String 景区名称;
+
+ @TableField("行政区域")
+ private String 行政区域;
+
+ @TableField("中心经度")
+ private Object 中心经度;
+
+ @TableField("中心纬度")
+ private Object 中心纬度;
+
+ @TableField("景区介绍")
+ private String 景区介绍;
+
+ @TableField("景区大类")
+ private String 景区大类;
+
+ @TableField("景区大类id")
+ private Integer 景区大类id;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2ViewPowerAlarmVO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2ViewPowerAlarmVO.java
new file mode 100644
index 0000000000000000000000000000000000000000..402e49fefc467965b3eaf3e2d9d003a86b1c524f
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2ViewPowerAlarmVO.java
@@ -0,0 +1,95 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+import com.ruoyi.common.annotation.Excel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * VO
+ *
+ *
+ * @author wqx
+ * @since 2023-08-31
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class Dp2ViewPowerAlarmVO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("eventtime")
+ @Excel(name="告警时间")
+ private LocalDateTime eventtime;
+
+ @TableField("alarmname")
+ @Excel(name="告警名称")
+ private String alarmname;
+
+ @TableField("alarmid")
+ @Excel(name="告警ID")
+ private Long alarmid;
+
+ @TableField("severity")
+ @Excel(name="severity")
+ private String severity;
+
+ @TableField("site_id")
+ @Excel(name="基站ID")
+ private String siteId;
+
+ @TableField("site_name")
+ @Excel(name="基站名称")
+ private String siteName;
+
+ @TableField("device_name")
+ @Excel(name="设备名称")
+ private String deviceName;
+
+ @TableField("owner")
+ @Excel(name="所有者")
+ private String owner;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @TableField("area")
+ @Excel(name="区域")
+ private String area;
+
+ @TableField("logicalsites")
+ private String logicalsites;
+
+ @TableField("场馆id")
+ @Excel(name="场馆ID")
+ private Integer 场馆id;
+
+ @TableField("区域id")
+ @Excel(name="区域ID")
+ private Integer 区域id;
+
+ @TableField("场馆名称")
+ @Excel(name="场馆名称")
+ private String 场馆名称;
+
+ @TableField("故障处理人")
+ @Excel(name="故障处理人")
+ private String 故障处理人;
+
+ @TableField("phonenumber")
+ @Excel(name="故障处理人联系电话")
+ private String phonenumber;
+
+ @Excel(name="景区名称")
+ private String 景区名称;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2ViewWirelessAlarmVO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2ViewWirelessAlarmVO.java
new file mode 100644
index 0000000000000000000000000000000000000000..c8d3b9eaf0e63b7702d5389209457b78ff373213
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/Dp2ViewWirelessAlarmVO.java
@@ -0,0 +1,110 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+import com.ruoyi.common.annotation.Excel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * VO
+ *
+ *
+ * @author wqx
+ * @since 2023-09-01
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class Dp2ViewWirelessAlarmVO {
+
+
+ private static final long serialVersionUID = 1L;
+
+ @TableField("id")
+ private Long id;
+
+ @TableField("eventtime")
+ @Excel(name ="告警时间")
+ private LocalDateTime eventtime;
+
+ @TableField("alarmname")
+ @Excel(name ="告警名称")
+ private String alarmname;
+
+ @TableField("omcname")
+ @Excel(name ="OMC名称")
+ private String omcname;
+
+ @TableField("site_id")
+ @Excel(name ="基站ID")
+ private String siteId;
+
+ @TableField("site_name")
+ @Excel(name ="基站名称")
+ private String siteName;
+
+ @TableField("area")
+ @Excel(name ="基站区域")
+ private String area;
+
+ @TableField("alarmid")
+ @Excel(name ="告警ID")
+ private String alarmid;
+
+ @TableField("sitetype")
+ @Excel(name ="基站类型")
+ private String sitetype;
+
+ @TableField("update_time")
+ private LocalDateTime updateTime;
+
+ @TableField("cell_name")
+ @Excel(name ="小区名称")
+ private String cellName;
+
+ @TableField("场馆id")
+ @Excel(name ="场馆id")
+ private Long 场馆id;
+
+ @TableField("场馆名称")
+ @Excel(name ="场馆名称")
+ private String 场馆名称;
+
+ @TableField("longitude")
+ @Excel(name ="经度")
+ private Object longitude;
+
+ @TableField("latitude")
+ @Excel(name ="纬度")
+ private Object latitude;
+
+ @TableField("坐席编号")
+ @Excel(name ="坐席编号")
+ private String 坐席编号;
+
+ @TableField("场内场外")
+ @Excel(name ="场内场外")
+ private String 场内场外;
+
+ @TableField("区域id")
+ @Excel(name ="区域id")
+ private Integer 区域id;
+
+ @TableField("故障处理人")
+ @Excel(name ="故障处理人")
+ private String 故障处理人;
+
+ @TableField("phonenumber")
+ @Excel(name ="故障处理人手机")
+ private String phonenumber;
+ @Excel(name ="景区名称")
+ private String 景区名称;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/DpSceneConfigVO.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/DpSceneConfigVO.java
new file mode 100644
index 0000000000000000000000000000000000000000..16954650853be3c79632d1c923622f531faed590
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/DpSceneConfigVO.java
@@ -0,0 +1,94 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+
+import com.ruoyi.common.annotation.Excel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+/**
+ *
+ * VO
+ *
+ *
+ * @author yqf
+ * @since 2023-04-12
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class DpSceneConfigVO {
+
+
+ private static final long serialVersionUID = 1L;
+ @Excel(name = "序号",width = 20)
+ @ApiModelProperty("自增id")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Integer id;
+
+ @Excel(name = "网络制式",width = 20)
+ @ApiModelProperty("网络类型")
+ @TableField("nettype")
+ private String nettype;
+
+ @Excel(name = "指标等级",width = 20)
+ @ApiModelProperty("指标等级:cell、scene")
+ @TableField("type")
+ private String type;
+
+ @Excel(name = "指标名称",width = 20)
+ @ApiModelProperty("指标名称")
+ @TableField("name")
+ private String name;
+
+ @Excel(name = "设备类型",width = 20)
+ @ApiModelProperty("设备类型")
+ @TableField("celltype")
+ private String celltype;
+
+
+ @Excel(name = "最小值",width = 20)
+ @ApiModelProperty("最小值")
+ @TableField("range1")
+ private Object range1;
+
+ @Excel(name = "最大值",width = 20)
+ @ApiModelProperty("最大值")
+ @TableField("range2")
+ private Object range2;
+
+ @Excel(name = "颜色",width = 20)
+ @ApiModelProperty("颜色")
+ @TableField("color")
+ private String color;
+
+ @Excel(name = "颜色分值",width = 20)
+ @ApiModelProperty("颜色分值")
+ @TableField("colorscore")
+ private Double colorscore;
+
+ @Excel(name = "颜色等级",width = 20)
+ @ApiModelProperty("颜色等级")
+ @TableField("level")
+ private Short level;
+
+ @Excel(name = "备注",width = 20)
+ @ApiModelProperty("备注")
+ @TableField("content")
+ private String content;
+
+
+
+
+
+
+
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/DpcSeneControlVo.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/DpcSeneControlVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..3c477de58b1e4a933bed786ae7fc594fd223d968
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/DpcSeneControlVo.java
@@ -0,0 +1,32 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+/**
+ * @author yqf
+ * @date 2023/4/21
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class DpcSeneControlVo {
+
+ @ApiModelProperty(value = "数据类型 1或15", required = true)
+ @NotNull(message = "mintype不能为空")
+ private Integer mintype;
+
+ @ApiModelProperty(value = "网络类型", required = true)
+ @NotBlank(message = "nettype不能为空")
+ private String nettype;
+
+ @ApiModelProperty(value = "指标名称", required = true)
+ @NotBlank(message = "kpiname不能为空")
+ private String kpiname;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/FlowContentVo.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/FlowContentVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..b42d5e8a998ded1774c17e83e8e6ba810d068e10
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/FlowContentVo.java
@@ -0,0 +1,17 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+
+import lombok.Data;
+
+@Data
+public class FlowContentVo {
+
+ private String flwId;
+
+ private String name;
+
+ private String text;
+
+ private String matchName;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/HmAlarmDeriveVo.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/HmAlarmDeriveVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..c6a4001bdf050108ee99f4a9cd3a8c1903be7e22
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/HmAlarmDeriveVo.java
@@ -0,0 +1,56 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ *
+ *
+ *
+ *
+ * @author jkj
+ * @since 2023-08-02
+ */
+@Data
+public class HmAlarmDeriveVo implements Serializable {
+
+private static final long serialVersionUID=1L;
+
+ private Long id;
+
+ private Long groupid;
+
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime 告警时间;
+
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime 恢复时间;
+
+ private String 分公司;
+
+ private String 网元名称;
+
+ private String 端口;
+
+ private String 场馆名称;
+
+ private String 场馆等级;
+
+ private String 告警名称;
+
+ private String 详细位置;
+
+ private String 专业;
+
+ private String 网元属性;
+
+ private String 端口类型;
+
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime 告警插入时间;
+
+}
\ No newline at end of file
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/KpiLinkTrendVo.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/KpiLinkTrendVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..b17c42c0773261b88d5ad411dbbfa3a57149b8d9
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/KpiLinkTrendVo.java
@@ -0,0 +1,31 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.math.BigDecimal;
+
+/**
+ * @author yqf
+ * @date 2023/8/21
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class KpiLinkTrendVo {
+
+ @TableField("链路名称")
+ private String linkname;
+
+ @TableField("设备名称")
+ private String evicename;
+
+ @TableField("指标值")
+ private BigDecimal number;
+
+ @TableField("时间")
+ private String time;
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/KpiReport4gVo.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/KpiReport4gVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..84d4a80d1419df95900c17856f953ae5ca9895e3
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/KpiReport4gVo.java
@@ -0,0 +1,69 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * @author yqf
+ * @date 2023/5/24
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class KpiReport4gVo {
+
+
+ private List gbTop5List;
+ private List avgdisturbTop5List;
+ private List mauserTop5List;
+ private List prbupTop5List;
+ private List prbdownTop5List;
+
+ @TableField("流量GB")
+ private BigDecimal 流量GB4g;
+
+ @TableField("无线接通率")
+ private BigDecimal 无线接通率4g;
+
+ @TableField("无线掉线率")
+ private BigDecimal 无线掉线率4g;
+
+ @TableField("切换成功率")
+ private BigDecimal 切换成功率4g;
+
+ @TableField("上行平均干扰")
+ private Short 上行平均干扰4g;
+
+ @TableField("最大用户数")
+ private BigDecimal 最大用户数4g;
+
+// @TableField("最大用户数")
+// private String 最大用户数小区4g;
+
+ @TableField("上行prb利用率")
+ private BigDecimal 上行prb利用率4g;
+
+// @TableField("上行prb利用率")
+// private String 上行prb利用率小区4g;
+
+ @TableField("下行prb利用率")
+ private String 下行prb利用率4g;
+
+// @TableField("下行prb利用率")
+// private String 下行prb利用率小区4g;
+
+
+ private List gbList;
+ private List avgdisturbList;
+ private List mauserList;
+ private List prbupList;
+ private List prbdownList;
+
+
+}
diff --git a/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/KpiReport5gVo.java b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/KpiReport5gVo.java
new file mode 100644
index 0000000000000000000000000000000000000000..093e03bd0512ca9dcbd48cd933e7ba0ffebceaeb
--- /dev/null
+++ b/eastcom_yw/src/main/java/com/ruoyi/eastcom_yw/domain/vo/KpiReport5gVo.java
@@ -0,0 +1,80 @@
+package com.ruoyi.eastcom_yw.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * @author yqf
+ * @date 2023/5/24
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class KpiReport5gVo {
+
+// @TableField("场馆id")
+// private Integer 场馆id;
+//
+// @TableField("开始时间")
+// private LocalDateTime 开始时间;
+//
+// @TableField("结束时间")
+// private LocalDateTime 结束时间;
+
+ @TableField("流量GB")
+ private BigDecimal 流量GB5g;
+
+ @TableField("最大用户数")
+ private Short 最大用户数5g;
+
+ @TableField("无线接通率")
+ private BigDecimal 无线接通率5g;
+
+ @TableField("无线掉线率")
+ private BigDecimal 无线掉线率5g;
+
+ @TableField("切换成功率")
+ private BigDecimal 切换成功率5g;
+
+ @TableField("上行干扰值")
+ private Double 上行干扰值5g;
+
+ @TableField("上行prb利用率")
+ private BigDecimal 上行prb利用率5g;
+
+ @TableField("下行prb利用率")
+ private BigDecimal 下行prb利用率5g;
+
+ private List