Compare commits
168 Commits
63c95ecda8
...
master
Author | SHA1 | Date | |
---|---|---|---|
![]() |
2816c22a4d | ||
c941443bca | |||
8a9d74bbd5 | |||
a29e680bce | |||
021a767677 | |||
64ec07d7b2 | |||
ad36d4cfd5 | |||
ba206c4d32 | |||
d598409b28 | |||
6a2898e0d7 | |||
9a6bd54fba | |||
![]() |
71c82fa345 | ||
![]() |
68abebc90f | ||
![]() |
2f70cd13ad | ||
![]() |
16b883fadc | ||
![]() |
ce53d02a63 | ||
![]() |
3faafb9bd6 | ||
![]() |
cbdd2532c1 | ||
![]() |
ae652e364e | ||
55c54d6e6b | |||
d5504a1a23 | |||
7f813393c5 | |||
4a3097e490 | |||
bc1301518c | |||
1e4eec8401 | |||
0bf8cf45e8 | |||
22c6efea63 | |||
0b0103ea07 | |||
c565114c4c | |||
e70e245cdd | |||
6538635e6d | |||
0bf05f52f9 | |||
![]() |
391bf01ce7 | ||
87f5ee97fa | |||
7cef50cc19 | |||
745145ebe2 | |||
1e1da7964f | |||
86116cbf5c | |||
e98890cd79 | |||
287672d28b | |||
06bf8220d8 | |||
ddf00d23d6 | |||
a02864c003 | |||
ecc1dadb4f | |||
863366de7e | |||
bb4ac2bcb8 | |||
![]() |
046e9d925a | ||
![]() |
0d83a93a7b | ||
![]() |
d29c901352 | ||
4890e9c8e3 | |||
f9544ad4e1 | |||
b1f0ce3d3c | |||
28f44a1c5f | |||
85a943a697 | |||
10033dd646 | |||
![]() |
fe8c5a76f3 | ||
![]() |
3c6595e591 | ||
97a3c106cb | |||
14b8370f44 | |||
0b22169649 | |||
826684ed66 | |||
e2fbd251b3 | |||
2200ef4880 | |||
ff2bc3cf93 | |||
659f3089e4 | |||
ce0c4b201c | |||
bad3ffdf4c | |||
0e0646f4b8 | |||
fbc07ac629 | |||
d8f5713a3d | |||
8afc12f3b6 | |||
710379c1a4 | |||
ac5cff7cc6 | |||
![]() |
6d2741a8a5 | ||
![]() |
0233dad442 | ||
![]() |
feb16fc4b7 | ||
c773aed9c7 | |||
db29ef77fa | |||
![]() |
fecaa7921d | ||
![]() |
92cb1fcd63 | ||
fbcc6ec713 | |||
f3591e7ff1 | |||
6d25db8c59 | |||
![]() |
57e9ac1079 | ||
d6623bb9da | |||
efeafd5e13 | |||
130e3aeb04 | |||
cfff5df7d0 | |||
1b138ab299 | |||
b7e9dfa148 | |||
76c0aa74f1 | |||
![]() |
825e1ed183 | ||
c2f0b64e6f | |||
e61b56b05e | |||
eb1b2084b5 | |||
4d76a4df45 | |||
0330b023a3 | |||
1eb95bf6f6 | |||
df9adf700c | |||
368eea91e8 | |||
19e259a15e | |||
816b90e9e1 | |||
6133d7761d | |||
318da3f0ee | |||
3c8eb59165 | |||
3c480d92f0 | |||
78d97e14ee | |||
c2c1818ba6 | |||
3ebc58f5e3 | |||
07b9e8b722 | |||
b20828a800 | |||
9c0b0bad03 | |||
c4495d2cf2 | |||
a16c333759 | |||
6e84a1c646 | |||
a6b0277ff6 | |||
ef0976c621 | |||
e949122b37 | |||
638a98a4c6 | |||
360f87ea0d | |||
555de9f5aa | |||
da131cda5c | |||
c86f887d3e | |||
2c127576a0 | |||
15a0f3f884 | |||
0d4754eef9 | |||
dad6666107 | |||
87b77b26d1 | |||
0584a44601 | |||
![]() |
18bd1724c4 | ||
![]() |
c8475f818d | ||
d3a1d16b8f | |||
5ec2a67049 | |||
9eeca6f32e | |||
8966b52cc5 | |||
b022d3a68c | |||
63e5abc003 | |||
1d8b948a13 | |||
953a545ba6 | |||
a8dc8d99df | |||
fb7e5c7e19 | |||
1b5204e6ed | |||
8340f5cf6a | |||
9897bb8db7 | |||
4a62ad17c3 | |||
1e39769309 | |||
df9e3b77ff | |||
42b5c78658 | |||
49401d42ba | |||
1aa576a9ae | |||
d0ccd668fa | |||
3c144d00e5 | |||
359a380937 | |||
a36667e599 | |||
1d8ad14ebc | |||
73e47e5127 | |||
2e314b2901 | |||
2103be1de5 | |||
2a143bb147 | |||
37966e73c1 | |||
f01d28b21e | |||
db9b1e1cd3 | |||
0385bef3f4 | |||
eba9e78695 | |||
![]() |
be3992c1dc | ||
5c9672dc18 | |||
5fb396575d | |||
f23b02fe51 |
@@ -1,205 +0,0 @@
|
||||
run-name: ${{ gitea.actor }} 构建镜像并推送(不含JAR依赖上传)🚀
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
build-parent-pom:
|
||||
runs-on: ubuntu
|
||||
steps:
|
||||
- name: 拉取代码仓库
|
||||
uses: http://git.missmoc.top/mocheng/checkout@v4
|
||||
|
||||
- name: 配置环境变量(绝对路径)
|
||||
run: |
|
||||
export JAVA_HOME="/java17/java17"
|
||||
export MAVEN_HOME="/maven/apache-maven-3.9.11"
|
||||
|
||||
if [ ! -f "$JAVA_HOME/bin/java" ]; then
|
||||
echo "错误:JDK可执行文件不存在于 $JAVA_HOME/bin/java"
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -f "$MAVEN_HOME/bin/mvn" ]; then
|
||||
echo "错误:Maven可执行文件不存在于 $MAVEN_HOME/bin/mvn"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "JAVA_HOME=$JAVA_HOME" >> $GITHUB_ENV
|
||||
echo "$JAVA_HOME/bin" >> $GITHUB_PATH
|
||||
echo "MAVEN_HOME=$MAVEN_HOME" >> $GITHUB_ENV
|
||||
echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
|
||||
|
||||
"$JAVA_HOME/bin/java" -version
|
||||
"$MAVEN_HOME/bin/mvn" -v
|
||||
|
||||
- name: 配置Maven仓库
|
||||
run: |
|
||||
mkdir -p ~/.m2
|
||||
cat > ~/.m2/settings.xml << EOF
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<settings>
|
||||
<localRepository>/root/.m2/repository</localRepository>
|
||||
<profiles>
|
||||
<profile>
|
||||
<id>multi-repo</id>
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>local-repo</id>
|
||||
<url>file:///root/.m2/repository</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>aliyun-public</id>
|
||||
<url>https://maven.aliyun.com/repository/public</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
</profile>
|
||||
</profiles>
|
||||
<activeProfiles>
|
||||
<activeProfile>multi-repo</activeProfile>
|
||||
</activeProfiles>
|
||||
</settings>
|
||||
EOF
|
||||
|
||||
- name: 构建主POM(仅本地安装,不上传)
|
||||
run: |
|
||||
MAIN_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/pom.xml"
|
||||
if [ ! -f "$MAIN_POM_ABSOLUTE_PATH" ]; then
|
||||
echo "错误:主POM文件不存在"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
retries=3
|
||||
count=0
|
||||
until "$MAVEN_HOME/bin/mvn" clean install -U -DskipTests -f "$MAIN_POM_ABSOLUTE_PATH"; do
|
||||
count=$((count + 1))
|
||||
if [ $count -ge $retries ]; then
|
||||
echo "错误:主POM构建失败"
|
||||
exit 1
|
||||
fi
|
||||
sleep 10
|
||||
done
|
||||
|
||||
# build-common-modules:
|
||||
# needs: build-parent-pom
|
||||
# runs-on: ubuntu
|
||||
# steps:
|
||||
# - name: 拉取代码仓库
|
||||
# uses: http://git.missmoc.top/mocheng/checkout@v4
|
||||
|
||||
# - name: 配置环境变量
|
||||
# run: |
|
||||
# export JAVA_HOME="/java17/java17"
|
||||
# export MAVEN_HOME="/maven/apache-maven-3.9.11"
|
||||
# echo "JAVA_HOME=$JAVA_HOME" >> $GITHUB_ENV
|
||||
# echo "$JAVA_HOME/bin" >> $GITHUB_PATH
|
||||
# echo "MAVEN_HOME=$MAVEN_HOME" >> $GITHUB_ENV
|
||||
# echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
|
||||
|
||||
# - name: 构建通用模块(仅本地使用,不上传)
|
||||
# run: |
|
||||
# COMMON_MODULES=(
|
||||
# "ruoyi-common"
|
||||
# "ruoyi-api"
|
||||
# "ruoyi-common-bom"
|
||||
# "ruoyi-common-alibaba-bom"
|
||||
# "ruoyi-api-bom"
|
||||
# )
|
||||
|
||||
# for module in "${COMMON_MODULES[@]}"; do
|
||||
# MODULE_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/${module}/pom.xml"
|
||||
# if [ ! -f "$MODULE_POM_ABSOLUTE_PATH" ]; then
|
||||
# echo "警告:模块 $module 不存在,跳过"
|
||||
# continue
|
||||
# fi
|
||||
|
||||
# retries=3
|
||||
# count=0
|
||||
# until "$MAVEN_HOME/bin/mvn" clean compile install -U -DskipTests -f "$MODULE_POM_ABSOLUTE_PATH"; do
|
||||
# count=$((count + 1))
|
||||
# if [ $count -ge $retries ]; then
|
||||
# echo "错误:模块 $module 构建失败"
|
||||
# exit 1
|
||||
# fi
|
||||
# sleep 10
|
||||
# done
|
||||
# done
|
||||
|
||||
build-and-push-services:
|
||||
needs: build-common-modules
|
||||
runs-on: ubuntu
|
||||
strategy:
|
||||
matrix:
|
||||
service:
|
||||
- ruoyi-auth
|
||||
- ruoyi-gateway
|
||||
- ruoyi-modules/Property
|
||||
- ruoyi-modules/ruoyi-gen
|
||||
- ruoyi-modules/ruoyi-job
|
||||
- ruoyi-modules/ruoyi-resource
|
||||
- ruoyi-modules/ruoyi-system
|
||||
- ruoyi-modules/ruoyi-workflow
|
||||
- ruoyi-modules/Sis
|
||||
- ruoyi-visual/ruoyi-monitor
|
||||
- ruoyi-visual/ruoyi-nacos
|
||||
- ruoyi-seata-server
|
||||
- ruoyi-sentinel-dashboard
|
||||
- ruoyi-snailjob-server
|
||||
steps:
|
||||
- name: 拉取代码仓库
|
||||
uses: http://git.missmoc.top/mocheng/checkout@v4
|
||||
|
||||
- name: 配置环境变量
|
||||
run: |
|
||||
export JAVA_HOME="/java17/java17"
|
||||
export MAVEN_HOME="/maven/apache-maven-3.9.11"
|
||||
echo "JAVA_HOME=$JAVA_HOME" >> $GITHUB_ENV
|
||||
echo "$JAVA_HOME/bin" >> $GITHUB_PATH
|
||||
echo "MAVEN_HOME=$MAVEN_HOME" >> $GITHUB_ENV
|
||||
echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
|
||||
|
||||
- name: 构建服务模块
|
||||
run: |
|
||||
SERVICE_NAME="${{ matrix.service }}"
|
||||
SERVICE_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/${SERVICE_NAME}/pom.xml"
|
||||
if [ ! -f "$SERVICE_POM_ABSOLUTE_PATH" ]; then
|
||||
echo "错误:服务 $SERVICE_NAME 的POM文件不存在"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
"$MAVEN_HOME/bin/mvn" clean package -U -DskipTests -f "$SERVICE_POM_ABSOLUTE_PATH"
|
||||
|
||||
- name: 配置Docker Buildx
|
||||
uses: http://git.missmoc.top/mocheng/setup-buildx-action@v3
|
||||
|
||||
- name: 登录到容器仓库
|
||||
uses: http://git.missmoc.top/mocheng/login-action@v3
|
||||
with:
|
||||
registry: ${{ secrets.REGISTRY_URL }}
|
||||
username: ${{ secrets.REGISTRY_USER }}
|
||||
password: ${{ secrets.REGISTRY_PASS }}
|
||||
|
||||
- name: 确定Dockerfile路径
|
||||
id: dockerfile-path
|
||||
run: |
|
||||
SERVICE_NAME="${{ matrix.service }}"
|
||||
DOCKERFILE_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/${SERVICE_NAME}/Dockerfile"
|
||||
|
||||
if [ -f "$DOCKERFILE_ABSOLUTE_PATH" ]; then
|
||||
echo "dockerfile_path=$DOCKERFILE_ABSOLUTE_PATH" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "dockerfile_path=${GITHUB_WORKSPACE}/Dockerfile" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
|
||||
- name: 构建并推送Docker镜像(仅推送镜像,不上传JAR)
|
||||
uses: http://git.missmoc.top/mocheng/build-push-action@v5
|
||||
with:
|
||||
context: "${{ github.workspace }}"
|
||||
file: ${{ github.workspace }}/${{ matrix.service }}/Dockerfile
|
||||
tags: 172.100.10.45:3000/by2025/smartparks/${{ matrix.service }}:latest
|
||||
# tags: ${{ secrets.REGISTRY_URL }}/by2025/$(echo ${{ matrix.service }} | tr 'A-Z' 'a-z'):${{ github.sha }}
|
||||
# tags: ${{ secrets.REGISTRY_URL }}/by2025/${{ matrix.service }}:2.0.4
|
||||
push: true
|
||||
cache-from: type=gha
|
||||
cache-to: type=gha,mode=max
|
||||
|
@@ -3,7 +3,7 @@ name: Build and Push to Target Registry
|
||||
# 监听master分支的推送事件
|
||||
on:
|
||||
push:
|
||||
branches: [ master ]
|
||||
branches: [ prod ]
|
||||
|
||||
jobs:
|
||||
build-and-deploy:
|
||||
@@ -87,3 +87,8 @@ jobs:
|
||||
echo "===== 清理操作 ====="
|
||||
docker system prune -f
|
||||
echo "===== 所有操作完成 ===="
|
||||
|
||||
- name: 重启服务
|
||||
run: |
|
||||
kubectl rollout restart deployment sis -n smartparks
|
||||
kubectl rollout restart deployment property -n smartparks
|
||||
|
12
pom.xml
12
pom.xml
@@ -73,7 +73,7 @@
|
||||
<id>local</id>
|
||||
<properties>
|
||||
<!-- 环境标识,需要与配置文件的名称相对应 -->
|
||||
<profiles.active>dev</profiles.active>
|
||||
<profiles.active>dev</profiles.active>
|
||||
<nacos.server>10.20.1.65:8848</nacos.server>
|
||||
<logstash.address>10.20.1.65:4560</logstash.address>
|
||||
<nacos.discovery.group>DEFAULT_GROUP</nacos.discovery.group>
|
||||
@@ -91,12 +91,12 @@
|
||||
<properties>
|
||||
<!-- 环境标识,需要与配置文件的名称相对应 -->
|
||||
<profiles.active>dev</profiles.active>
|
||||
<nacos.server>127.0.0.1:8848</nacos.server>
|
||||
<logstash.address>127.0.0.1:4560</logstash.address>
|
||||
<nacos.server>113.249.101.254:8848</nacos.server>
|
||||
<logstash.address>113.249.101.254:4560</logstash.address>
|
||||
<nacos.discovery.group>DEFAULT_GROUP</nacos.discovery.group>
|
||||
<nacos.config.group>DEFAULT_GROUP</nacos.config.group>
|
||||
<nacos.username>nacos</nacos.username>
|
||||
<nacos.password>nacos</nacos.password>
|
||||
<nacos.password>by@2025??</nacos.password>
|
||||
</properties>
|
||||
</profile>
|
||||
|
||||
@@ -118,8 +118,8 @@
|
||||
<id>prod</id>
|
||||
<properties>
|
||||
<profiles.active>prod</profiles.active>
|
||||
<nacos.server>10.20.1.185:8848</nacos.server>
|
||||
<logstash.address>10.20.1.185:4560</logstash.address>
|
||||
<nacos.server>127.0.0.1:8848</nacos.server>
|
||||
<logstash.address>127.0.0.1:4560</logstash.address>
|
||||
<nacos.discovery.group>DEFAULT_GROUP</nacos.discovery.group>
|
||||
<nacos.config.group>DEFAULT_GROUP</nacos.config.group>
|
||||
<nacos.username>nacos</nacos.username>
|
||||
|
@@ -18,6 +18,15 @@ public interface RemoteAttendanceService {
|
||||
* @param date 查询时间
|
||||
* @return 返回排班人员信息
|
||||
*/
|
||||
public List<RemoteAttendanceUserGroupVo> queryAttendPersonInfo(Date date);
|
||||
List<RemoteAttendanceUserGroupVo> queryAttendPersonInfo(Date date);
|
||||
|
||||
/**
|
||||
* 根据时间和设备ip查询当前设备所处区域的排班人员信息
|
||||
*
|
||||
* @param date 查询时间
|
||||
* @param deviceIp 设备ip
|
||||
* @return 返回排班人员信息
|
||||
*/
|
||||
List<RemoteAttendanceUserGroupVo> queryAttendByCurrDateAndDeviceIp(Date date, String deviceIp);
|
||||
|
||||
}
|
||||
|
@@ -1,6 +1,8 @@
|
||||
package org.dromara.property.api;
|
||||
|
||||
import org.dromara.common.core.exception.residentPerson.ResidentPersonException;
|
||||
import org.dromara.property.api.domain.vo.RemoteResidentPersonVo;
|
||||
import org.dromara.property.api.model.LoginResidentPerson;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -16,4 +18,13 @@ public interface RemoteResidentPersonService {
|
||||
|
||||
// 更新E8平台id
|
||||
Boolean updateE8Id(Long personId, Long e8Id);
|
||||
|
||||
/**
|
||||
* 通过手机号查询用户信息
|
||||
*
|
||||
* @param phone 手机号
|
||||
* @param tenantId 租户id
|
||||
* @return 结果
|
||||
*/
|
||||
LoginResidentPerson getResidentPersonInfo(String phone, String tenantId) throws ResidentPersonException;
|
||||
}
|
||||
|
@@ -49,5 +49,4 @@ public class RemoteAttendanceUserGroupVo implements Serializable {
|
||||
*/
|
||||
private LocalDate endDate;
|
||||
|
||||
|
||||
}
|
||||
|
@@ -33,10 +33,10 @@ public class RemoteFloorVo implements Serializable {
|
||||
*/
|
||||
private String floorName;
|
||||
|
||||
/**
|
||||
* 楼层号
|
||||
*/
|
||||
private Long floorNumber;
|
||||
// /**
|
||||
// * 楼层号
|
||||
// */
|
||||
// private Long floorNumber;
|
||||
|
||||
/**
|
||||
* 楼层类型
|
||||
|
@@ -0,0 +1,119 @@
|
||||
package org.dromara.property.api.model;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* @author lsm
|
||||
* @apiNote LoginResidentPerson
|
||||
* @since 2025/9/5
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
public class LoginResidentPerson implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 租户ID
|
||||
*/
|
||||
private String tenantId;
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 所属单位id
|
||||
*/
|
||||
private Long unitId;
|
||||
|
||||
/**
|
||||
* 所属单位名称
|
||||
*/
|
||||
private String unitName;
|
||||
|
||||
/**
|
||||
* 用户唯一标识
|
||||
*/
|
||||
private String token;
|
||||
|
||||
/**
|
||||
* 用户类型
|
||||
*/
|
||||
private String userType;
|
||||
|
||||
/**
|
||||
* 登录时间
|
||||
*/
|
||||
private Long loginTime;
|
||||
|
||||
/**
|
||||
* 过期时间
|
||||
*/
|
||||
private Long expireTime;
|
||||
|
||||
/**
|
||||
* 登录IP地址
|
||||
*/
|
||||
private String ipaddr;
|
||||
|
||||
/**
|
||||
* 登录地点
|
||||
*/
|
||||
private String loginLocation;
|
||||
|
||||
/**
|
||||
* 浏览器类型
|
||||
*/
|
||||
private String browser;
|
||||
|
||||
/**
|
||||
* 操作系统
|
||||
*/
|
||||
private String os;
|
||||
|
||||
/**
|
||||
* 用户名
|
||||
*/
|
||||
private String username;
|
||||
|
||||
/**
|
||||
* 用户昵称
|
||||
*/
|
||||
private String nickname;
|
||||
|
||||
/**
|
||||
* 密码
|
||||
*/
|
||||
private String password;
|
||||
|
||||
/**
|
||||
* 用户角色(1管理员2普通用户)
|
||||
*/
|
||||
private Integer userRoles;
|
||||
|
||||
/**
|
||||
* 客户端
|
||||
*/
|
||||
private String clientKey;
|
||||
|
||||
/**
|
||||
* 获取登录id
|
||||
*/
|
||||
public String getLoginId() {
|
||||
if (userType == null) {
|
||||
throw new IllegalArgumentException("用户类型不能为空");
|
||||
}
|
||||
if (userId == null) {
|
||||
throw new IllegalArgumentException("用户ID不能为空");
|
||||
}
|
||||
return userType + ":" + userId;
|
||||
}
|
||||
}
|
@@ -23,4 +23,13 @@ public interface RemoteMessageService {
|
||||
* @param message 消息内容
|
||||
*/
|
||||
void publishAll(String message);
|
||||
|
||||
/**
|
||||
* 向指定的用户的指定会话发送消息
|
||||
*
|
||||
* @param userId 要发送消息的用户id
|
||||
* @param token 用户的会话令牌
|
||||
* @param message 要发送的消息内容
|
||||
*/
|
||||
void sendMessage(Long userId, String token, String message);
|
||||
}
|
||||
|
@@ -44,4 +44,20 @@ public class RemoteMessageServiceStub implements RemoteMessageService {
|
||||
log.warn("推送功能未开启或服务未找到");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 向指定的用户的指定会话发送消息
|
||||
*
|
||||
* @param userId 要发送消息的用户id
|
||||
* @param token 用户的会话令牌
|
||||
* @param message 要发送的消息内容
|
||||
*/
|
||||
@Override
|
||||
public void sendMessage(Long userId, String token, String message) {
|
||||
try {
|
||||
remoteMessageService.sendMessage(userId, token, message);
|
||||
} catch (Exception e) {
|
||||
log.warn("推送功能未开启或服务未找到");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -25,6 +25,7 @@ public interface RemoteUserService {
|
||||
* @return 结果
|
||||
*/
|
||||
LoginUser getUserInfo(String username, String tenantId) throws UserException;
|
||||
|
||||
/**
|
||||
* 通过用户id查询用户信息
|
||||
*
|
||||
@@ -196,6 +197,10 @@ public interface RemoteUserService {
|
||||
*/
|
||||
Map<Long, String> selectPostNamesByIds(List<Long> postIds);
|
||||
|
||||
Map<String ,Integer> seelectOrgcount();
|
||||
Map<String, Integer> seelectOrgcount();
|
||||
|
||||
/**
|
||||
* 查询用户列表
|
||||
*/
|
||||
List<RemoteUserVo> selectUserList(List<Long> userIds);
|
||||
}
|
||||
|
@@ -2,6 +2,8 @@ package org.dromara.sis.api;
|
||||
|
||||
import org.dromara.sis.api.domain.RemoteVisitor;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author lsm
|
||||
* @apiNote RemoteVisitorService
|
||||
@@ -15,5 +17,13 @@ public interface RemoteVisitorService {
|
||||
* @param visitor 访客信息
|
||||
* @return 访客ID
|
||||
*/
|
||||
Long syncE8PlatVisitor(RemoteVisitor visitor);
|
||||
Map<String, Object> syncE8PlatVisitor(RemoteVisitor visitor);
|
||||
|
||||
/**
|
||||
* 获取访客二维码
|
||||
*
|
||||
* @param id 访客id
|
||||
* @return String
|
||||
*/
|
||||
Map<String, Object> getQrCode(Long id);
|
||||
}
|
||||
|
@@ -2,9 +2,13 @@ package org.dromara.sis.api.domain;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class RemoteSdkChannel {
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
@Data
|
||||
public class RemoteSdkChannel implements Serializable {
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private Long deviceId;
|
||||
|
||||
|
@@ -2,9 +2,14 @@ package org.dromara.sis.api.domain;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class RemoteSisDeviceChannel {
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
@Data
|
||||
public class RemoteSisDeviceChannel implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
|
@@ -99,6 +99,11 @@
|
||||
<artifactId>ruoyi-common-loadbalancer</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.dromara</groupId>
|
||||
<artifactId>property-api</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- ELK 日志收集 -->
|
||||
<!-- <dependency>-->
|
||||
<!-- <groupId>org.dromara</groupId>-->
|
||||
|
@@ -0,0 +1,31 @@
|
||||
package org.dromara.auth.form;
|
||||
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.dromara.common.core.domain.model.LoginBody;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
/**
|
||||
* @author lsm
|
||||
* @apiNote ResidentLoginBody
|
||||
* @since 2025/9/5
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class ResidentLoginBody extends LoginBody {
|
||||
|
||||
/**
|
||||
* 用户名
|
||||
*/
|
||||
@NotBlank(message = "{user.username.not.blank}")
|
||||
@Length(min = 2, max = 30, message = "{user.username.length.valid}")
|
||||
private String username;
|
||||
|
||||
/**
|
||||
* 用户密码
|
||||
*/
|
||||
@NotBlank(message = "{user.password.not.blank}")
|
||||
@Length(min = 5, max = 30, message = "{user.password.length.valid}")
|
||||
private String password;
|
||||
}
|
@@ -0,0 +1,68 @@
|
||||
package org.dromara.auth.service.impl;
|
||||
|
||||
import cn.dev33.satoken.stp.StpUtil;
|
||||
import cn.dev33.satoken.stp.parameter.SaLoginParameter;
|
||||
import cn.hutool.crypto.digest.BCrypt;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.dubbo.config.annotation.DubboReference;
|
||||
import org.dromara.auth.domain.vo.LoginVo;
|
||||
import org.dromara.auth.form.PasswordLoginBody;
|
||||
import org.dromara.auth.service.IAuthStrategy;
|
||||
import org.dromara.auth.service.SysLoginService;
|
||||
import org.dromara.common.core.enums.LoginType;
|
||||
import org.dromara.common.core.utils.ValidatorUtils;
|
||||
import org.dromara.common.json.utils.JsonUtils;
|
||||
import org.dromara.common.satoken.utils.LoginHelper;
|
||||
import org.dromara.common.tenant.helper.TenantHelper;
|
||||
import org.dromara.property.api.RemoteResidentPersonService;
|
||||
import org.dromara.property.api.model.LoginResidentPerson;
|
||||
import org.dromara.system.api.domain.vo.RemoteClientVo;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* @author lsm
|
||||
* @apiNote ResidentAuthStrategy
|
||||
* @since 2025/9/5
|
||||
*/
|
||||
@Slf4j
|
||||
@Service("resident" + IAuthStrategy.BASE_NAME)
|
||||
@RequiredArgsConstructor
|
||||
public class ResidentAuthStrategy implements IAuthStrategy {
|
||||
|
||||
private final SysLoginService loginService;
|
||||
|
||||
@DubboReference
|
||||
private RemoteResidentPersonService remoteResidentPersonService;
|
||||
|
||||
@Override
|
||||
public LoginVo login(String body, RemoteClientVo client) {
|
||||
PasswordLoginBody loginBody = JsonUtils.parseObject(body, PasswordLoginBody.class);
|
||||
ValidatorUtils.validate(loginBody);
|
||||
assert loginBody != null;
|
||||
String tenantId = loginBody.getTenantId();
|
||||
String username = loginBody.getUsername();
|
||||
String password = loginBody.getPassword();
|
||||
|
||||
LoginResidentPerson loginUser = TenantHelper.dynamic(tenantId, () -> {
|
||||
LoginResidentPerson user = remoteResidentPersonService.getResidentPersonInfo(username, tenantId);
|
||||
loginService.checkLogin(LoginType.PASSWORD, tenantId, username, () -> !BCrypt.checkpw(password, user.getPassword()));
|
||||
return user;
|
||||
});
|
||||
loginUser.setClientKey(client.getClientKey());
|
||||
SaLoginParameter model = new SaLoginParameter();
|
||||
model.setDeviceType(client.getDeviceType());
|
||||
// 自定义分配 不同用户体系 不同 token 授权时间 不设置默认走全局 yml 配置
|
||||
// 例如: 后台用户30分钟过期 app用户1天过期
|
||||
model.setTimeout(client.getTimeout());
|
||||
model.setActiveTimeout(client.getActiveTimeout());
|
||||
model.setExtra(LoginHelper.CLIENT_KEY, client.getClientId());
|
||||
LoginHelper.residentLogin(loginUser, model);
|
||||
|
||||
LoginVo loginVo = new LoginVo();
|
||||
loginVo.setAccessToken(StpUtil.getTokenValue());
|
||||
loginVo.setExpireIn(StpUtil.getTokenTimeout());
|
||||
loginVo.setClientId(client.getClientId());
|
||||
return loginVo;
|
||||
}
|
||||
}
|
@@ -0,0 +1,19 @@
|
||||
package org.dromara.common.core.exception.residentPerson;
|
||||
|
||||
import org.dromara.common.core.exception.base.BaseException;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* @author lsm
|
||||
* @apiNote ResidentPersonException
|
||||
* @since 2025/9/5
|
||||
*/
|
||||
public class ResidentPersonException extends BaseException {
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
public ResidentPersonException(String message) {
|
||||
super("residentPerson", null, null, message);
|
||||
}
|
||||
}
|
@@ -35,6 +35,11 @@
|
||||
<artifactId>ruoyi-api-system</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.dromara</groupId>
|
||||
<artifactId>property-api</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- RuoYi Common Redis-->
|
||||
<dependency>
|
||||
<groupId>org.dromara</groupId>
|
||||
|
@@ -8,10 +8,13 @@ import org.dromara.common.core.service.PermissionService;
|
||||
import org.dromara.common.core.utils.SpringUtils;
|
||||
import org.dromara.common.core.utils.StringUtils;
|
||||
import org.dromara.common.satoken.utils.LoginHelper;
|
||||
import org.dromara.property.api.model.LoginResidentPerson;
|
||||
import org.dromara.system.api.model.LoginUser;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* sa-token 权限管理实现类
|
||||
@@ -26,15 +29,46 @@ public class SaPermissionImpl implements StpInterface {
|
||||
@Override
|
||||
public List<String> getPermissionList(Object loginId, String loginType) {
|
||||
LoginUser loginUser = LoginHelper.getLoginUser();
|
||||
if (ObjectUtil.isNull(loginUser) || !loginUser.getLoginId().equals(loginId)) {
|
||||
LoginResidentPerson loginResidentPerson = LoginHelper.getLoginResident();
|
||||
// 使用Objects.equals进行null安全的比较
|
||||
boolean isUserMatch = ObjectUtil.isNotNull(loginUser) && Objects.equals(loginUser.getLoginId(), loginId);
|
||||
boolean isResidentMatch = ObjectUtil.isNotNull(loginResidentPerson) && Objects.equals(loginResidentPerson.getLoginId(), loginId);
|
||||
if (isUserMatch) {
|
||||
// 用户匹配时的逻辑
|
||||
PermissionService permissionService = getPermissionService();
|
||||
if (ObjectUtil.isNotNull(permissionService)) {
|
||||
List<String> list = StringUtils.splitList(loginId.toString(), ":");
|
||||
return new ArrayList<>(permissionService.getMenuPermission(Long.parseLong(list.get(1))));
|
||||
} else {
|
||||
if (ObjectUtil.isNull(permissionService)) {
|
||||
throw new ServiceException("PermissionService 实现类不存在");
|
||||
}
|
||||
List<String> parts = StringUtils.splitList(loginId.toString(), ":");
|
||||
return new ArrayList<>(permissionService.getMenuPermission(Long.parseLong(parts.get(1))));
|
||||
} else if (isResidentMatch) {
|
||||
// 居民匹配时的逻辑
|
||||
return Arrays.asList(
|
||||
// 入驻员工管理
|
||||
"xcx:person:list",
|
||||
"xcx:person:add",
|
||||
"xcx:person:query",
|
||||
"xcx:person:edit",
|
||||
"xcx:person:remove",
|
||||
// 入驻单位管理
|
||||
"xcx:unit:query",
|
||||
// 工单管理
|
||||
"xcx:workOrders:add",
|
||||
"xcx:workOrders:query",
|
||||
// 工单类型管理
|
||||
"xcx:workOrdersType:query",
|
||||
// 访客管理
|
||||
"xcx:visitorManagement:add",
|
||||
"xcx:visitorManagement:query",
|
||||
"xcx:visitorManagement:edit",
|
||||
"xcx:visitorManagement:list",
|
||||
"xcx:visitorManagement:getQrCode",
|
||||
// 文件上传
|
||||
"system:oss:upload"
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
UserType userType = UserType.getUserType(loginUser.getUserType());
|
||||
if (userType == UserType.APP_USER) {
|
||||
// 其他端 自行根据业务编写
|
||||
|
@@ -11,6 +11,7 @@ import lombok.NoArgsConstructor;
|
||||
import org.dromara.common.core.constant.SystemConstants;
|
||||
import org.dromara.common.core.constant.TenantConstants;
|
||||
import org.dromara.common.core.enums.UserType;
|
||||
import org.dromara.property.api.model.LoginResidentPerson;
|
||||
import org.dromara.system.api.model.LoginUser;
|
||||
|
||||
import java.util.Set;
|
||||
@@ -83,6 +84,57 @@ public class LoginHelper {
|
||||
return (T) session.get(LOGIN_USER_KEY);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 入驻员工
|
||||
*/
|
||||
private static final String UNIT_KEY = "unitId";
|
||||
public static final String UNIT_NAME_KEY = "unitName";
|
||||
private static final String RESIDENT_PERSON_KEY = "residentPerson";
|
||||
|
||||
/**
|
||||
* 登录系统 基于 设备类型
|
||||
* 针对相同用户体系不同设备
|
||||
*
|
||||
* @param loginUser 登录用户信息
|
||||
* @param model 配置参数
|
||||
*/
|
||||
public static void residentLogin(LoginResidentPerson loginUser, SaLoginParameter model) {
|
||||
model = ObjectUtil.defaultIfNull(model, new SaLoginParameter());
|
||||
StpUtil.login(loginUser.getLoginId(),
|
||||
model.setExtra(TENANT_KEY, loginUser.getTenantId())
|
||||
.setExtra(USER_KEY, loginUser.getUserId())
|
||||
.setExtra(USER_NAME_KEY, loginUser.getUsername())
|
||||
.setExtra(UNIT_KEY, loginUser.getUnitId())
|
||||
.setExtra(UNIT_NAME_KEY, loginUser.getUnitName())
|
||||
);
|
||||
StpUtil.getTokenSession().set(RESIDENT_PERSON_KEY, loginUser);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户(多级缓存)
|
||||
*/
|
||||
@SuppressWarnings("unchecked cast")
|
||||
public static <T extends LoginResidentPerson> T getLoginResident() {
|
||||
SaSession session = StpUtil.getTokenSession();
|
||||
if (ObjectUtil.isNull(session)) {
|
||||
return null;
|
||||
}
|
||||
return (T) session.get(RESIDENT_PERSON_KEY);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户基于token
|
||||
*/
|
||||
@SuppressWarnings("unchecked cast")
|
||||
public static <T extends LoginResidentPerson> T getLoginResident(String token) {
|
||||
SaSession session = StpUtil.getTokenSessionByToken(token);
|
||||
if (ObjectUtil.isNull(session)) {
|
||||
return null;
|
||||
}
|
||||
return (T) session.get(RESIDENT_PERSON_KEY);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户id
|
||||
*/
|
||||
|
@@ -132,6 +132,34 @@ public class SseEmitterManager {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 向指定的用户的指定会话发送消息
|
||||
*
|
||||
* @param userId 要发送消息的用户id
|
||||
* @param token 用户的会话令牌
|
||||
* @param message 要发送的消息内容
|
||||
*/
|
||||
public void sendMessage(Long userId, String token, String message) {
|
||||
Map<String, SseEmitter> emitters = USER_TOKEN_EMITTERS.get(userId);
|
||||
if (MapUtil.isNotEmpty(emitters)) {
|
||||
for (Map.Entry<String, SseEmitter> entry : emitters.entrySet()){
|
||||
if (entry.getKey().equals(token)) {
|
||||
try {
|
||||
entry.getValue().send(SseEmitter.event()
|
||||
.name("message")
|
||||
.data(message));
|
||||
} catch (Exception e) {
|
||||
SseEmitter remove = emitters.remove(entry.getKey());
|
||||
if (remove != null) {
|
||||
remove.complete();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 本机全用户会话发送消息
|
||||
*
|
||||
|
@@ -38,6 +38,20 @@ public class SseMessageUtils {
|
||||
MANAGER.sendMessage(userId, message);
|
||||
}
|
||||
|
||||
/**
|
||||
* 向指定的用户的指定会话发送消息
|
||||
*
|
||||
* @param userId 要发送消息的用户id
|
||||
* @param token 用户的会话令牌
|
||||
* @param message 要发送的消息内容
|
||||
*/
|
||||
public static void sendMessage(Long userId, String token, String message) {
|
||||
if (!isEnable()) {
|
||||
return;
|
||||
}
|
||||
MANAGER.sendMessage(userId, token, message);
|
||||
}
|
||||
|
||||
/**
|
||||
* 本机全用户会话发送消息
|
||||
*
|
||||
|
@@ -11,7 +11,7 @@ RUN mkdir -p /ruoyi/Property/logs \
|
||||
|
||||
WORKDIR /ruoyi/Property
|
||||
|
||||
ENV SERVER_PORT=9201 LANG=C.UTF-8 LC_ALL=C.UTF-8 JAVA_OPTS=""
|
||||
ENV SERVER_PORT=9201 LANG=C.UTF-8 LC_ALL=C.UTF-8 JAVA_OPTS="-Duser.timezone=Asia/Shanghai"
|
||||
|
||||
EXPOSE ${SERVER_PORT}
|
||||
|
||||
|
@@ -125,6 +125,16 @@
|
||||
<artifactId>ruoyi-common-websocket</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.dromara</groupId>
|
||||
<artifactId>ruoyi-common-sse</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.rocketmq</groupId>
|
||||
<artifactId>rocketmq-spring-boot-starter</artifactId>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
|
@@ -62,7 +62,7 @@ public class ApplicationController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
//@SaCheckPermission("property:application:query")
|
||||
@SaCheckPermission("property:application:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<ApplicationVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
|
@@ -24,7 +24,7 @@ import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
||||
* 资产申请
|
||||
* 前端访问路由地址为:/domain/application
|
||||
* 前端访问路由地址为:/domain/procurementApplication
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-25
|
||||
@@ -40,7 +40,7 @@ public class CapitalApplicationController extends BaseController {
|
||||
/**
|
||||
* 查询资产申请列表
|
||||
*/
|
||||
// @SaCheckPermission("domain:application:list")
|
||||
@SaCheckPermission("domain:procurementApplication:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<CapitalApplicationVo> list(CapitalApplicationBo bo, PageQuery pageQuery) {
|
||||
return capitalApplicationService.queryPageList(bo, pageQuery);
|
||||
@@ -49,7 +49,7 @@ public class CapitalApplicationController extends BaseController {
|
||||
/**
|
||||
* 导出资产申请列表
|
||||
*/
|
||||
@SaCheckPermission("domain:application:export")
|
||||
@SaCheckPermission("domain:procurementApplication:export")
|
||||
@Log(title = "资产申请", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(CapitalApplicationBo bo, HttpServletResponse response) {
|
||||
@@ -62,7 +62,7 @@ public class CapitalApplicationController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("domain:application:query")
|
||||
@SaCheckPermission("domain:procurementApplication:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<CapitalApplicationVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@@ -72,7 +72,7 @@ public class CapitalApplicationController extends BaseController {
|
||||
/**
|
||||
* 新增资产申请
|
||||
*/
|
||||
// @SaCheckPermission("domain:application:add")
|
||||
// @SaCheckPermission("domain:procurementApplication:add")
|
||||
@Log(title = "资产申请", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
@@ -83,7 +83,7 @@ public class CapitalApplicationController extends BaseController {
|
||||
/**
|
||||
* 修改资产申请
|
||||
*/
|
||||
@SaCheckPermission("domain:application:edit")
|
||||
@SaCheckPermission("domain:procurementApplication:edit")
|
||||
@Log(title = "资产申请", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
@@ -96,7 +96,7 @@ public class CapitalApplicationController extends BaseController {
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("domain:application:remove")
|
||||
@SaCheckPermission("domain:procurementApplication:remove")
|
||||
@Log(title = "资产申请", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
|
@@ -40,7 +40,7 @@ public class CostItemsController extends BaseController {
|
||||
/**
|
||||
* 查询费用项设置列表
|
||||
*/
|
||||
@SaCheckPermission("property:costItems:list")
|
||||
@SaCheckPermission("property:costItemSetting:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<CostItemsVo> list(CostItemsBo bo, PageQuery pageQuery) {
|
||||
return costItemsService.queryPageList(bo, pageQuery);
|
||||
@@ -49,7 +49,7 @@ public class CostItemsController extends BaseController {
|
||||
/**
|
||||
* 导出费用项设置列表
|
||||
*/
|
||||
@SaCheckPermission("property:costItems:export")
|
||||
@SaCheckPermission("property:costItemSetting:export")
|
||||
@Log(title = "费用项设置", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(CostItemsBo bo, HttpServletResponse response) {
|
||||
@@ -62,7 +62,7 @@ public class CostItemsController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("property:costItems:query")
|
||||
@SaCheckPermission("property:costItemSetting:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<CostItemsVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@@ -72,7 +72,7 @@ public class CostItemsController extends BaseController {
|
||||
/**
|
||||
* 新增费用项设置
|
||||
*/
|
||||
@SaCheckPermission("property:costItems:add")
|
||||
@SaCheckPermission("property:costItemSetting:add")
|
||||
@Log(title = "费用项设置", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
@@ -83,7 +83,7 @@ public class CostItemsController extends BaseController {
|
||||
/**
|
||||
* 修改费用项设置
|
||||
*/
|
||||
@SaCheckPermission("property:costItems:edit")
|
||||
@SaCheckPermission("property:costItemSetting:edit")
|
||||
@Log(title = "费用项设置", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
@@ -96,7 +96,7 @@ public class CostItemsController extends BaseController {
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("property:costItems:remove")
|
||||
@SaCheckPermission("property:costItemSetting:remove")
|
||||
@Log(title = "费用项设置", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
|
@@ -40,7 +40,7 @@ public class CostMeterWaterController extends BaseController {
|
||||
/**
|
||||
* 查询费用-水电抄列表
|
||||
*/
|
||||
@SaCheckPermission("system:meterWater:list")
|
||||
@SaCheckPermission("property:costMeterWater:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<CostMeterWaterVo> list(CostMeterWaterBo bo, PageQuery pageQuery) {
|
||||
return costMeterWaterService.queryPageList(bo, pageQuery);
|
||||
@@ -49,7 +49,7 @@ public class CostMeterWaterController extends BaseController {
|
||||
/**
|
||||
* 导出费用-水电抄列表
|
||||
*/
|
||||
@SaCheckPermission("system:meterWater:export")
|
||||
@SaCheckPermission("property:costMeterWater:export")
|
||||
@Log(title = "费用-水电抄", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(CostMeterWaterBo bo, HttpServletResponse response) {
|
||||
@@ -62,7 +62,7 @@ public class CostMeterWaterController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("system:meterWater:query")
|
||||
@SaCheckPermission("property:costMeterWater:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<CostMeterWaterVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@@ -82,7 +82,7 @@ public class CostMeterWaterController extends BaseController {
|
||||
/**
|
||||
* 新增费用-水电抄
|
||||
*/
|
||||
@SaCheckPermission("system:meterWater:add")
|
||||
@SaCheckPermission("property:costMeterWater:add")
|
||||
@Log(title = "费用-水电抄", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
@@ -93,7 +93,7 @@ public class CostMeterWaterController extends BaseController {
|
||||
/**
|
||||
* 修改费用-水电抄
|
||||
*/
|
||||
@SaCheckPermission("system:meterWater:edit")
|
||||
@SaCheckPermission("property:costMeterWater:edit")
|
||||
@Log(title = "费用-水电抄", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
@@ -106,7 +106,7 @@ public class CostMeterWaterController extends BaseController {
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("system:meterWater:remove")
|
||||
@SaCheckPermission("property:costMeterWater:remove")
|
||||
@Log(title = "费用-水电抄", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
|
@@ -40,7 +40,7 @@ public class CostPayFeeAuditController extends BaseController {
|
||||
/**
|
||||
* 查询费用-缴费审核列表
|
||||
*/
|
||||
// @SaCheckPermission("system:payFeeAudit:list")
|
||||
@SaCheckPermission("property:payFeeAudit:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<CostPayFeeAuditVo> list(CostPayFeeAuditBo bo, PageQuery pageQuery) {
|
||||
return costPayFeeAuditService.queryPageList(bo, pageQuery);
|
||||
@@ -49,7 +49,7 @@ public class CostPayFeeAuditController extends BaseController {
|
||||
/**
|
||||
* 导出费用-缴费审核列表
|
||||
*/
|
||||
@SaCheckPermission("system:payFeeAudit:export")
|
||||
@SaCheckPermission("property:payFeeAudit:export")
|
||||
@Log(title = "费用-缴费审核", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(CostPayFeeAuditBo bo, HttpServletResponse response) {
|
||||
@@ -62,7 +62,7 @@ public class CostPayFeeAuditController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("system:payFeeAudit:query")
|
||||
@SaCheckPermission("property:payFeeAudit:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<CostPayFeeAuditVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@@ -72,7 +72,7 @@ public class CostPayFeeAuditController extends BaseController {
|
||||
/**
|
||||
* 新增费用-缴费审核
|
||||
*/
|
||||
@SaCheckPermission("system:payFeeAudit:add")
|
||||
@SaCheckPermission("property:payFeeAudit:add")
|
||||
@Log(title = "费用-缴费审核", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
@@ -83,7 +83,7 @@ public class CostPayFeeAuditController extends BaseController {
|
||||
/**
|
||||
* 修改费用-缴费审核
|
||||
*/
|
||||
@SaCheckPermission("system:payFeeAudit:edit")
|
||||
@SaCheckPermission("property:payFeeAudit:edit")
|
||||
@Log(title = "费用-缴费审核", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
@@ -96,7 +96,7 @@ public class CostPayFeeAuditController extends BaseController {
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("system:payFeeAudit:remove")
|
||||
@SaCheckPermission("property:payFeeAudit:remove")
|
||||
@Log(title = "费用-缴费审核", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
|
@@ -24,7 +24,7 @@ import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
||||
* 费用-抄类型
|
||||
* 前端访问路由地址为:/system/returnPayFee
|
||||
* 前端访问路由地址为:/property/returnPayFee
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-17
|
||||
@@ -40,7 +40,7 @@ public class CostReturnPayFeeController extends BaseController {
|
||||
/**
|
||||
* 查询费用-抄类型列表
|
||||
*/
|
||||
//@SaCheckPermission("system:returnPayFee:list")
|
||||
@SaCheckPermission("property:returnPayFee:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<CostReturnPayFeeVo> list(CostReturnPayFeeBo bo, PageQuery pageQuery) {
|
||||
return costReturnPayFeeService.queryPageList(bo, pageQuery);
|
||||
@@ -49,7 +49,7 @@ public class CostReturnPayFeeController extends BaseController {
|
||||
/**
|
||||
* 导出费用-抄类型列表
|
||||
*/
|
||||
@SaCheckPermission("system:returnPayFee:export")
|
||||
@SaCheckPermission("property:returnPayFee:export")
|
||||
@Log(title = "费用-抄类型", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(CostReturnPayFeeBo bo, HttpServletResponse response) {
|
||||
@@ -62,7 +62,7 @@ public class CostReturnPayFeeController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("system:returnPayFee:query")
|
||||
@SaCheckPermission("property:returnPayFee:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<CostReturnPayFeeVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@@ -72,7 +72,7 @@ public class CostReturnPayFeeController extends BaseController {
|
||||
/**
|
||||
* 新增费用-抄类型
|
||||
*/
|
||||
@SaCheckPermission("system:returnPayFee:add")
|
||||
@SaCheckPermission("property:returnPayFee:add")
|
||||
@Log(title = "费用-抄类型", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
@@ -83,7 +83,7 @@ public class CostReturnPayFeeController extends BaseController {
|
||||
/**
|
||||
* 修改费用-抄类型
|
||||
*/
|
||||
@SaCheckPermission("system:returnPayFee:edit")
|
||||
@SaCheckPermission("property:returnPayFee:edit")
|
||||
@Log(title = "费用-抄类型", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
@@ -96,7 +96,7 @@ public class CostReturnPayFeeController extends BaseController {
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("system:returnPayFee:remove")
|
||||
@SaCheckPermission("property:returnPayFee:remove")
|
||||
@Log(title = "费用-抄类型", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
|
@@ -0,0 +1,106 @@
|
||||
package org.dromara.property.controller;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.constraints.*;
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.property.domain.vo.CustomerActivityVo;
|
||||
import org.dromara.property.domain.bo.CustomerActivityBo;
|
||||
import org.dromara.property.service.ICustomerActivityService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
||||
* 客户服务-活动
|
||||
* 前端访问路由地址为:/property/activity
|
||||
*
|
||||
* @author yuyongle
|
||||
* @date 2025-09-08
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/activity")
|
||||
public class CustomerActivityController extends BaseController {
|
||||
|
||||
private final ICustomerActivityService customerActivityService;
|
||||
|
||||
/**
|
||||
* 查询客户服务-活动列表
|
||||
*/
|
||||
@SaCheckPermission("property:activity:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<CustomerActivityVo> list(CustomerActivityBo bo, PageQuery pageQuery) {
|
||||
return customerActivityService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出客户服务-活动列表
|
||||
*/
|
||||
@SaCheckPermission("property:activity:export")
|
||||
@Log(title = "客户服务-活动", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(CustomerActivityBo bo, HttpServletResponse response) {
|
||||
List<CustomerActivityVo> list = customerActivityService.queryList(bo);
|
||||
ExcelUtil.exportExcel(list, "客户服务-活动", CustomerActivityVo.class, response);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取客户服务-活动详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("property:activity:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<CustomerActivityVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(customerActivityService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增客户服务-活动
|
||||
*/
|
||||
@SaCheckPermission("property:activity:add")
|
||||
@Log(title = "客户服务-活动", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody CustomerActivityBo bo) {
|
||||
return toAjax(customerActivityService.insertByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改客户服务-活动
|
||||
*/
|
||||
@SaCheckPermission("property:activity:edit")
|
||||
@Log(title = "客户服务-活动", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody CustomerActivityBo bo) {
|
||||
return toAjax(customerActivityService.updateByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除客户服务-活动
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("property:activity:remove")
|
||||
@Log(title = "客户服务-活动", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable("ids") Long[] ids) {
|
||||
return toAjax(customerActivityService.deleteWithValidByIds(List.of(ids), true));
|
||||
}
|
||||
}
|
@@ -62,7 +62,9 @@ public class CustomerFeedbacksController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("system:feedbacks:query")
|
||||
//
|
||||
//
|
||||
// @SaCheckPermission("system:feedbacks:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<CustomerFeedbacksVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
|
@@ -33,4 +33,15 @@ public class EnumFetcherController {
|
||||
List<Map<Object, Object>> map = enumFetcherService.getEnumValues(name);
|
||||
return R.ok(map);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据工单类型或部门下的排班人员
|
||||
* @param type
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/enum-getShiftScheduler/{type}")
|
||||
public R<List<Map<Object, Object>>> getShiftScheduler(@PathVariable("type") String type) {
|
||||
List<Map<Object, Object>> map = enumFetcherService.getShiftScheduler(type);
|
||||
return R.ok(map);
|
||||
}
|
||||
}
|
||||
|
@@ -0,0 +1,32 @@
|
||||
package org.dromara.property.controller;
|
||||
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.property.domain.vo.IndexCountVo;
|
||||
import org.dromara.property.service.IndexService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* @author yuyongle
|
||||
* @version 1.0
|
||||
* @description: 首页展示数据
|
||||
* @date 2025/9/5 14:35
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/index")
|
||||
public class IndexController {
|
||||
private final IndexService indexService;
|
||||
/**
|
||||
* 首页统计数量
|
||||
*/
|
||||
@GetMapping("/indexCount")
|
||||
public R<IndexCountVo> indexCount() {
|
||||
return R.ok(indexService.indexCount());
|
||||
}
|
||||
}
|
@@ -40,7 +40,7 @@ public class InspectionItemController extends BaseController {
|
||||
/**
|
||||
* 查询巡检项目列表
|
||||
*/
|
||||
@SaCheckPermission("system:item:list")
|
||||
@SaCheckPermission("property:inspectionItem:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<InspectionItemVo> list(InspectionItemBo bo, PageQuery pageQuery) {
|
||||
return inspectionItemService.queryPageList(bo, pageQuery);
|
||||
@@ -49,7 +49,7 @@ public class InspectionItemController extends BaseController {
|
||||
/**
|
||||
* 导出巡检项目列表
|
||||
*/
|
||||
@SaCheckPermission("system:item:export")
|
||||
@SaCheckPermission("property:inspectionItem:export")
|
||||
@Log(title = "巡检项目", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(InspectionItemBo bo, HttpServletResponse response) {
|
||||
@@ -62,7 +62,7 @@ public class InspectionItemController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("system:item:query")
|
||||
@SaCheckPermission("property:inspectionItem:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<InspectionItemVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@@ -72,7 +72,7 @@ public class InspectionItemController extends BaseController {
|
||||
/**
|
||||
* 新增巡检项目
|
||||
*/
|
||||
@SaCheckPermission("system:item:add")
|
||||
@SaCheckPermission("property:inspectionItem:add")
|
||||
@Log(title = "巡检项目", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
@@ -83,7 +83,7 @@ public class InspectionItemController extends BaseController {
|
||||
/**
|
||||
* 修改巡检项目
|
||||
*/
|
||||
@SaCheckPermission("system:item:edit")
|
||||
@SaCheckPermission("property:inspectionItem:edit")
|
||||
@Log(title = "巡检项目", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
@@ -96,7 +96,7 @@ public class InspectionItemController extends BaseController {
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("system:item:remove")
|
||||
@SaCheckPermission("property:inspectionItem:remove")
|
||||
@Log(title = "巡检项目", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
|
@@ -40,7 +40,7 @@ public class InspectionPointController extends BaseController {
|
||||
/**
|
||||
* 查询巡检点列表
|
||||
*/
|
||||
@SaCheckPermission("system:point:list")
|
||||
@SaCheckPermission("property:inspectionPoint:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<InspectionPointVo> list(InspectionPointBo bo, PageQuery pageQuery) {
|
||||
return inspectionPointService.queryPageList(bo, pageQuery);
|
||||
@@ -49,7 +49,7 @@ public class InspectionPointController extends BaseController {
|
||||
/**
|
||||
* 导出巡检点列表
|
||||
*/
|
||||
@SaCheckPermission("system:point:export")
|
||||
@SaCheckPermission("property:inspectionPoint:export")
|
||||
@Log(title = "巡检点", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(InspectionPointBo bo, HttpServletResponse response) {
|
||||
@@ -62,7 +62,7 @@ public class InspectionPointController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("system:point:query")
|
||||
@SaCheckPermission("property:inspectionPoint:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<InspectionPointVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@@ -72,7 +72,7 @@ public class InspectionPointController extends BaseController {
|
||||
/**
|
||||
* 新增巡检点
|
||||
*/
|
||||
@SaCheckPermission("system:point:add")
|
||||
@SaCheckPermission("property:inspectionPoint:add")
|
||||
@Log(title = "巡检点", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
@@ -83,7 +83,7 @@ public class InspectionPointController extends BaseController {
|
||||
/**
|
||||
* 修改巡检点
|
||||
*/
|
||||
@SaCheckPermission("system:point:edit")
|
||||
@SaCheckPermission("property:inspectionPoint:edit")
|
||||
@Log(title = "巡检点", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
@@ -96,7 +96,7 @@ public class InspectionPointController extends BaseController {
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("system:point:remove")
|
||||
@SaCheckPermission("property:inspectionPoint:remove")
|
||||
@Log(title = "巡检点", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
|
@@ -40,7 +40,7 @@ public class InspectionRouteController extends BaseController {
|
||||
/**
|
||||
* 查询巡检路线列表
|
||||
*/
|
||||
//@SaCheckPermission("system:route:list")
|
||||
@SaCheckPermission("property:inspectionRoute:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<InspectionRouteVo> list(InspectionRouteBo bo, PageQuery pageQuery) {
|
||||
return inspectionRouteService.queryPageList(bo, pageQuery);
|
||||
@@ -49,7 +49,7 @@ public class InspectionRouteController extends BaseController {
|
||||
/**
|
||||
* 导出巡检路线列表
|
||||
*/
|
||||
@SaCheckPermission("system:route:export")
|
||||
@SaCheckPermission("property:inspectionRoute:export")
|
||||
@Log(title = "巡检路线", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(InspectionRouteBo bo, HttpServletResponse response) {
|
||||
@@ -62,7 +62,7 @@ public class InspectionRouteController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("system:route:query")
|
||||
@SaCheckPermission("property:inspectionRoute:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<InspectionRouteVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@@ -72,7 +72,7 @@ public class InspectionRouteController extends BaseController {
|
||||
/**
|
||||
* 新增巡检路线
|
||||
*/
|
||||
@SaCheckPermission("system:route:add")
|
||||
@SaCheckPermission("property:inspectionRoute:add")
|
||||
@Log(title = "巡检路线", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
@@ -83,7 +83,7 @@ public class InspectionRouteController extends BaseController {
|
||||
/**
|
||||
* 修改巡检路线
|
||||
*/
|
||||
@SaCheckPermission("system:route:edit")
|
||||
@SaCheckPermission("property:inspectionRoute:edit")
|
||||
@Log(title = "巡检路线", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
@@ -96,7 +96,7 @@ public class InspectionRouteController extends BaseController {
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("system:route:remove")
|
||||
@SaCheckPermission("property:inspectionRoute:remove")
|
||||
@Log(title = "巡检路线", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
|
@@ -40,7 +40,7 @@ public class MachineMaintainPlanController extends BaseController {
|
||||
/**
|
||||
* 查询设备保养计划列表
|
||||
*/
|
||||
@SaCheckPermission("system:maintainPlan:list")
|
||||
@SaCheckPermission("property:maintainPlan:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<MachineMaintainPlanVo> list(MachineMaintainPlanBo bo, PageQuery pageQuery) {
|
||||
return machineMaintainPlanService.queryPageList(bo, pageQuery);
|
||||
@@ -49,7 +49,7 @@ public class MachineMaintainPlanController extends BaseController {
|
||||
/**
|
||||
* 导出设备保养计划列表
|
||||
*/
|
||||
@SaCheckPermission("system:maintainPlan:export")
|
||||
@SaCheckPermission("property:maintainPlan:export")
|
||||
@Log(title = "设备保养计划", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(MachineMaintainPlanBo bo, HttpServletResponse response) {
|
||||
@@ -62,7 +62,7 @@ public class MachineMaintainPlanController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
//@SaCheckPermission("system:maintainPlan:query")
|
||||
@SaCheckPermission("property:maintainPlan:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<MachineMaintainPlanVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@@ -72,7 +72,7 @@ public class MachineMaintainPlanController extends BaseController {
|
||||
/**
|
||||
* 新增设备保养计划
|
||||
*/
|
||||
@SaCheckPermission("system:maintainPlan:add")
|
||||
@SaCheckPermission("property:maintainPlan:add")
|
||||
@Log(title = "设备保养计划", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
@@ -83,7 +83,7 @@ public class MachineMaintainPlanController extends BaseController {
|
||||
/**
|
||||
* 修改设备保养计划
|
||||
*/
|
||||
@SaCheckPermission("system:maintainPlan:edit")
|
||||
@SaCheckPermission("property:maintainPlan:edit")
|
||||
@Log(title = "设备保养计划", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
@@ -96,7 +96,7 @@ public class MachineMaintainPlanController extends BaseController {
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("system:maintainPlan:remove")
|
||||
@SaCheckPermission("property:maintainPlan:remove")
|
||||
@Log(title = "设备保养计划", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
|
@@ -24,7 +24,7 @@ import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
||||
* 设备保养任务明细
|
||||
* 前端访问路由地址为:/domain/maintainTaskDetail
|
||||
* 前端访问路由地址为:/property/maintainTaskDetail
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-16
|
||||
@@ -40,7 +40,7 @@ public class MachineMaintainTaskDetailController extends BaseController {
|
||||
/**
|
||||
* 查询设备保养任务明细列表
|
||||
*/
|
||||
@SaCheckPermission("domain:maintainTaskDetail:list")
|
||||
@SaCheckPermission("property:maintainTaskDetail:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<MachineMaintainTaskDetailVo> list(MachineMaintainTaskDetailBo bo, PageQuery pageQuery) {
|
||||
return machineMaintainTaskDetailService.queryPageList(bo, pageQuery);
|
||||
@@ -49,7 +49,7 @@ public class MachineMaintainTaskDetailController extends BaseController {
|
||||
/**
|
||||
* 导出设备保养任务明细列表
|
||||
*/
|
||||
@SaCheckPermission("domain:maintainTaskDetail:export")
|
||||
@SaCheckPermission("property:maintainTaskDetail:export")
|
||||
@Log(title = "设备保养任务明细", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(MachineMaintainTaskDetailBo bo, HttpServletResponse response) {
|
||||
@@ -62,7 +62,7 @@ public class MachineMaintainTaskDetailController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("domain:maintainTaskDetail:query")
|
||||
@SaCheckPermission("property:maintainTaskDetail:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<MachineMaintainTaskDetailVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@@ -72,7 +72,7 @@ public class MachineMaintainTaskDetailController extends BaseController {
|
||||
/**
|
||||
* 新增设备保养任务明细
|
||||
*/
|
||||
@SaCheckPermission("domain:maintainTaskDetail:add")
|
||||
@SaCheckPermission("property:maintainTaskDetail:add")
|
||||
@Log(title = "设备保养任务明细", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
@@ -83,7 +83,7 @@ public class MachineMaintainTaskDetailController extends BaseController {
|
||||
/**
|
||||
* 修改设备保养任务明细
|
||||
*/
|
||||
@SaCheckPermission("domain:maintainTaskDetail:edit")
|
||||
@SaCheckPermission("property:maintainTaskDetail:edit")
|
||||
@Log(title = "设备保养任务明细", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
@@ -96,7 +96,7 @@ public class MachineMaintainTaskDetailController extends BaseController {
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("domain:maintainTaskDetail:remove")
|
||||
@SaCheckPermission("property:maintainTaskDetail:remove")
|
||||
@Log(title = "设备保养任务明细", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
|
@@ -40,7 +40,7 @@ public class MeetAttachController extends BaseController {
|
||||
/**
|
||||
* 查询分页会议室增值服务列表
|
||||
*/
|
||||
// @SaCheckPermission("property:attach:list")
|
||||
@SaCheckPermission("property:conferenceAddServices:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<MeetAttachVo> pageList(MeetAttachBo bo, PageQuery pageQuery) {
|
||||
return meetAttachService.queryPageList(bo, pageQuery);
|
||||
@@ -57,7 +57,7 @@ public class MeetAttachController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
//@SaCheckPermission("property:attach:query")
|
||||
@SaCheckPermission("property:conferenceAddServices:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<MeetAttachVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@@ -67,7 +67,7 @@ public class MeetAttachController extends BaseController {
|
||||
/**
|
||||
* 新增会议室增值服务
|
||||
*/
|
||||
@SaCheckPermission("property:attach:add")
|
||||
@SaCheckPermission("property:conferenceAddServices:add")
|
||||
@Log(title = "会议室增值服务", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
@@ -78,7 +78,7 @@ public class MeetAttachController extends BaseController {
|
||||
/**
|
||||
* 修改会议室增值服务
|
||||
*/
|
||||
// @SaCheckPermission("property:attach:edit")
|
||||
@SaCheckPermission("property:conferenceAddServices:edit")
|
||||
@Log(title = "会议室增值服务", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
@@ -91,7 +91,7 @@ public class MeetAttachController extends BaseController {
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
// @SaCheckPermission("property:attach:remove")
|
||||
@SaCheckPermission("property:conferenceAddServices:remove")
|
||||
@Log(title = "会议室增值服务", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
|
@@ -1,5 +1,6 @@
|
||||
package org.dromara.property.controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
@@ -40,7 +41,7 @@ public class MeetBookingController extends BaseController {
|
||||
/**
|
||||
* 查询会议预约记录列表
|
||||
*/
|
||||
//@SaCheckPermission("property:meetbooking:list")
|
||||
@SaCheckPermission("property:meetbooking:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<MeetBookingVo> list(MeetBookingBo bo, PageQuery pageQuery) {
|
||||
return meetBookingService.queryPageList(bo, pageQuery);
|
||||
@@ -64,7 +65,7 @@ public class MeetBookingController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
//@SaCheckPermission("property:meetbooking:query")
|
||||
@SaCheckPermission("property:meetbooking:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<MeetBookingDetailVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@@ -74,7 +75,7 @@ public class MeetBookingController extends BaseController {
|
||||
/**
|
||||
* 新增会议预约
|
||||
*/
|
||||
//@SaCheckPermission("property:meetbooking:add")
|
||||
@SaCheckPermission("property:meetbooking:add")
|
||||
@Log(title = "会议预约", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
@@ -85,7 +86,7 @@ public class MeetBookingController extends BaseController {
|
||||
/**
|
||||
* 修改会议预约
|
||||
*/
|
||||
// @SaCheckPermission("property:meetbooking:edit")
|
||||
@SaCheckPermission("property:meetbooking:edit")
|
||||
@Log(title = "会议预约", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
|
@@ -43,7 +43,7 @@ public class MeetController extends BaseController {
|
||||
/**
|
||||
* 查询会议室管理列表
|
||||
*/
|
||||
// @SaCheckPermission("property:meet:list")
|
||||
@SaCheckPermission("property:meet:list")
|
||||
@Operation
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<MeetVo> list(MeetBo bo, PageQuery pageQuery) {
|
||||
@@ -66,7 +66,7 @@ public class MeetController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
//@SaCheckPermission("property:meet:query")
|
||||
@SaCheckPermission("property:meet:query")
|
||||
@Operation
|
||||
@GetMapping("/{id}")
|
||||
public R<MeetVo> getInfo(@NotNull(message = "主键不能为空") @PathVariable("id") Long id) {
|
||||
|
@@ -0,0 +1,67 @@
|
||||
package org.dromara.property.controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.property.domain.bo.MeetParticipantsBo;
|
||||
import org.dromara.property.domain.vo.MeetParticipantsVo;
|
||||
import org.dromara.property.service.IMeetParticipantsService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
/**
|
||||
* 会议室参会记录
|
||||
* 前端访问路由地址为:/property/participants
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-09-03
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/participants")
|
||||
public class MeetParticipantsController extends BaseController {
|
||||
|
||||
private final IMeetParticipantsService meetParticipantsService;
|
||||
|
||||
/**
|
||||
* 查询会议室参会记录列表
|
||||
*/
|
||||
//@SaCheckPermission("property:participants:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<MeetParticipantsVo> list(MeetParticipantsBo bo, PageQuery pageQuery) {
|
||||
return meetParticipantsService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取会议室参会记录详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("property:participants:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<MeetParticipantsVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(meetParticipantsService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增会议室参会记录
|
||||
*/
|
||||
@SaCheckPermission("property:participants:add")
|
||||
@Log(title = "会议室参会记录", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody MeetParticipantsBo bo) {
|
||||
return toAjax(meetParticipantsService.insertByBo(bo));
|
||||
}
|
||||
}
|
@@ -26,7 +26,7 @@ import java.util.List;
|
||||
|
||||
/**
|
||||
* 【业务管理-工单处理】
|
||||
* 前端访问路由地址为:/system/workOrders
|
||||
* 前端访问路由地址为:/property/workOrders
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-07
|
||||
@@ -42,7 +42,7 @@ public class ServiceWorkOrdersController extends BaseController {
|
||||
/**
|
||||
* 查询【工单处理】列表
|
||||
*/
|
||||
//@SaCheckPermission("system:workOrders:list")
|
||||
@SaCheckPermission("property:workOrders:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<ServiceWorkOrdersVo> list(ServiceWorkOrdersBo bo, PageQuery pageQuery) {
|
||||
return serviceWorkOrdersService.queryPageList(bo, pageQuery);
|
||||
@@ -51,7 +51,7 @@ public class ServiceWorkOrdersController extends BaseController {
|
||||
/**
|
||||
* 导出【工单处理】列表
|
||||
*/
|
||||
// @SaCheckPermission("system:workOrders:export")
|
||||
@SaCheckPermission("property:workOrders:export")
|
||||
@Log(title = "【工单处理】", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(ServiceWorkOrdersBo bo, HttpServletResponse response) {
|
||||
@@ -64,7 +64,7 @@ public class ServiceWorkOrdersController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
// @SaCheckPermission("system:workOrders:query")
|
||||
@SaCheckPermission("property:workOrders:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<ServiceWorkOrdersInfoVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@@ -74,7 +74,7 @@ public class ServiceWorkOrdersController extends BaseController {
|
||||
/**
|
||||
* 新增【工单处理】
|
||||
*/
|
||||
// @SaCheckPermission("system:workOrders:add")
|
||||
@SaCheckPermission("property:workOrders:add")
|
||||
@Log(title = "【工单处理】", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
@@ -85,20 +85,40 @@ public class ServiceWorkOrdersController extends BaseController {
|
||||
/**
|
||||
* 修改【工单处理】
|
||||
*/
|
||||
//@SaCheckPermission("system:workOrders:edit")
|
||||
@SaCheckPermission("property:workOrders:edit")
|
||||
@Log(title = "【工单处理】", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody ServiceWorkOrdersBo bo) {
|
||||
return toAjax(serviceWorkOrdersService.updateByBo(bo));
|
||||
}
|
||||
/**
|
||||
* 派单【工单处理】
|
||||
*/
|
||||
@SaCheckPermission("property:workOrders:dispatch")
|
||||
@Log(title = "【工单处理】", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping("/dispatch")
|
||||
public R<Void> dispatch(@Validated(EditGroup.class) @RequestBody ServiceWorkOrdersBo bo) {
|
||||
return toAjax(serviceWorkOrdersService.updateByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 抢单【工单处理】
|
||||
*/
|
||||
@SaCheckPermission("property:workOrders:grab")
|
||||
@Log(title = "【工单处理】", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping("grab")
|
||||
public R<Void> grab(@Validated(EditGroup.class) @RequestBody ServiceWorkOrdersBo bo) {
|
||||
return toAjax(serviceWorkOrdersService.updateByBo(bo));
|
||||
}
|
||||
/**
|
||||
* 删除【工单处理】
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
// @SaCheckPermission("system:workOrders:remove")
|
||||
@SaCheckPermission("property:workOrders:remove")
|
||||
@Log(title = "【工单处理】", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
|
@@ -24,7 +24,7 @@ import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
||||
* 【工单类型】
|
||||
* 前端访问路由地址为:/system/workOrdersType
|
||||
* 前端访问路由地址为:/property/workOrdersType
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-07-09
|
||||
@@ -40,7 +40,7 @@ public class ServiceWorkOrdersTypeController extends BaseController {
|
||||
/**
|
||||
* 查询【工单类型】列表
|
||||
*/
|
||||
@SaCheckPermission("system:workOrdersType:list")
|
||||
@SaCheckPermission("property:workOrdersType:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<ServiceWorkOrdersTypeVo> list(ServiceWorkOrdersTypeBo bo, PageQuery pageQuery) {
|
||||
return serviceWorkOrdersTypeService.queryPageList(bo, pageQuery);
|
||||
@@ -49,7 +49,7 @@ public class ServiceWorkOrdersTypeController extends BaseController {
|
||||
/**
|
||||
* 导出【工单类型】列表
|
||||
*/
|
||||
@SaCheckPermission("system:workOrdersType:export")
|
||||
@SaCheckPermission("property:workOrdersType:export")
|
||||
@Log(title = "【导出工单类型】", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(ServiceWorkOrdersTypeBo bo, HttpServletResponse response) {
|
||||
@@ -62,7 +62,7 @@ public class ServiceWorkOrdersTypeController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("system:workOrdersType:query")
|
||||
@SaCheckPermission("property:workOrdersType:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<ServiceWorkOrdersTypeVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@@ -72,7 +72,7 @@ public class ServiceWorkOrdersTypeController extends BaseController {
|
||||
/**
|
||||
* 新增【工单类型】
|
||||
*/
|
||||
@SaCheckPermission("system:workOrdersType:add")
|
||||
@SaCheckPermission("property:workOrdersType:add")
|
||||
@Log(title = "【新增工单类型】", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
@@ -83,7 +83,7 @@ public class ServiceWorkOrdersTypeController extends BaseController {
|
||||
/**
|
||||
* 修改【工单类型】
|
||||
*/
|
||||
@SaCheckPermission("system:workOrdersType:edit")
|
||||
@SaCheckPermission("property:workOrdersType:edit")
|
||||
@Log(title = "【工单类型】", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
@@ -96,7 +96,7 @@ public class ServiceWorkOrdersTypeController extends BaseController {
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("system:workOrdersType:remove")
|
||||
@SaCheckPermission("property:workOrdersType:remove")
|
||||
@Log(title = "【工单类型】", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
|
@@ -62,7 +62,7 @@ public class TbRoomController extends BaseController {
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("property:room:query")
|
||||
// @SaCheckPermission("property:room:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<TbRoomVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
|
@@ -145,17 +145,37 @@ public class TbVisitorManagementController extends BaseController {
|
||||
if (info==null){
|
||||
return R.fail("请确认Qr码有效");
|
||||
}
|
||||
bo.setType(0);
|
||||
return toAjax(tbVisitorManagementService.insertByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* h5端新增访客管理
|
||||
* @param bo
|
||||
* @return
|
||||
*/
|
||||
@SaCheckPermission("property:visitorManagement:addH5VistorManagement")
|
||||
@Log(title = "访客管理", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping("/addH5VistorManagement")
|
||||
public R<Void> addH5VistorManagement(@Validated(AddGroup.class) @RequestBody TbVisitorManagementBo bo) {
|
||||
QrCodeInfo info = RedisUtils.getCacheObject(GlobalConstants.CAPTCHA_CODE_KEY +"Qrcode" + bo.getQrCodeId());
|
||||
if (info==null){
|
||||
return R.fail("请确认Qr码有效");
|
||||
}
|
||||
bo.setType(0);
|
||||
return toAjax(tbVisitorManagementService.insertH5ByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* pc端新增访客管理
|
||||
*/
|
||||
@SaCheckPermission("property:visitorManagement::addVisitorManagement")
|
||||
@SaCheckPermission("property:visitorManagement:addVisitorManagement")
|
||||
@Log(title = "访客管理", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping
|
||||
public R<Void> addVistorManagement(@Validated(AddGroup.class) @RequestBody TbVisitorManagementBo bo) {
|
||||
bo.setType(1);
|
||||
return toAjax(tbVisitorManagementService.insertVistorManagementByBo(bo));
|
||||
}
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.attendance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -17,9 +17,9 @@ import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.property.domain.vo.AttendanceAreaVo;
|
||||
import org.dromara.property.domain.bo.AttendanceAreaBo;
|
||||
import org.dromara.property.service.IAttendanceAreaService;
|
||||
import org.dromara.property.domain.vo.attendanceVo.AttendanceAreaVo;
|
||||
import org.dromara.property.domain.bo.attendanceBo.AttendanceAreaBo;
|
||||
import org.dromara.property.service.attendanceService.IAttendanceAreaService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.attendance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -17,9 +17,9 @@ import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.property.domain.vo.AttendanceAreaDeviceVo;
|
||||
import org.dromara.property.domain.bo.AttendanceAreaDeviceBo;
|
||||
import org.dromara.property.service.IAttendanceAreaDeviceService;
|
||||
import org.dromara.property.domain.vo.attendanceVo.AttendanceAreaDeviceVo;
|
||||
import org.dromara.property.domain.bo.attendanceBo.AttendanceAreaDeviceBo;
|
||||
import org.dromara.property.service.attendanceService.IAttendanceAreaDeviceService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.attendance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -17,9 +17,9 @@ import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.property.domain.vo.AttendanceArrangementAreaVo;
|
||||
import org.dromara.property.domain.bo.AttendanceArrangementAreaBo;
|
||||
import org.dromara.property.service.IAttendanceArrangementAreaService;
|
||||
import org.dromara.property.domain.vo.attendanceVo.AttendanceArrangementAreaVo;
|
||||
import org.dromara.property.domain.bo.attendanceBo.AttendanceArrangementAreaBo;
|
||||
import org.dromara.property.service.attendanceService.IAttendanceArrangementAreaService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.attendance;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
@@ -13,9 +13,9 @@ import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.property.domain.bo.AttendanceArrangementBo;
|
||||
import org.dromara.property.domain.vo.AttendanceArrangementVo;
|
||||
import org.dromara.property.service.IAttendanceArrangementService;
|
||||
import org.dromara.property.domain.bo.attendanceBo.AttendanceArrangementBo;
|
||||
import org.dromara.property.domain.vo.attendanceVo.AttendanceArrangementVo;
|
||||
import org.dromara.property.service.attendanceService.IAttendanceArrangementService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.attendance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -17,9 +17,9 @@ import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.property.domain.vo.AttendanceClockDateVo;
|
||||
import org.dromara.property.domain.bo.AttendanceClockDateBo;
|
||||
import org.dromara.property.service.IAttendanceClockDateService;
|
||||
import org.dromara.property.domain.vo.attendanceVo.AttendanceClockDateVo;
|
||||
import org.dromara.property.domain.bo.attendanceBo.AttendanceClockDateBo;
|
||||
import org.dromara.property.service.attendanceService.IAttendanceClockDateService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.attendance;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
@@ -15,9 +15,9 @@ import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.property.domain.bo.AttendanceFixedScheduleBo;
|
||||
import org.dromara.property.domain.vo.AttendanceFixedScheduleVo;
|
||||
import org.dromara.property.service.IAttendanceFixedScheduleService;
|
||||
import org.dromara.property.domain.bo.attendanceBo.AttendanceFixedScheduleBo;
|
||||
import org.dromara.property.domain.vo.attendanceVo.AttendanceFixedScheduleVo;
|
||||
import org.dromara.property.service.attendanceService.IAttendanceFixedScheduleService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.attendance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -17,9 +17,9 @@ import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.property.domain.vo.AttendanceGroupVo;
|
||||
import org.dromara.property.domain.bo.AttendanceGroupBo;
|
||||
import org.dromara.property.service.IAttendanceGroupService;
|
||||
import org.dromara.property.domain.vo.attendanceVo.AttendanceGroupVo;
|
||||
import org.dromara.property.domain.bo.attendanceBo.AttendanceGroupBo;
|
||||
import org.dromara.property.service.attendanceService.IAttendanceGroupService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.attendance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -17,9 +17,9 @@ import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.property.domain.vo.AttendanceScheduleCycleVo;
|
||||
import org.dromara.property.domain.bo.AttendanceScheduleCycleBo;
|
||||
import org.dromara.property.service.IAttendanceScheduleCycleService;
|
||||
import org.dromara.property.domain.vo.attendanceVo.AttendanceScheduleCycleVo;
|
||||
import org.dromara.property.domain.bo.attendanceBo.AttendanceScheduleCycleBo;
|
||||
import org.dromara.property.service.attendanceService.IAttendanceScheduleCycleService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.attendance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -17,9 +17,9 @@ import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.property.domain.vo.AttendanceShiftVo;
|
||||
import org.dromara.property.domain.bo.AttendanceShiftBo;
|
||||
import org.dromara.property.service.IAttendanceShiftService;
|
||||
import org.dromara.property.domain.vo.attendanceVo.AttendanceShiftVo;
|
||||
import org.dromara.property.domain.bo.attendanceBo.AttendanceShiftBo;
|
||||
import org.dromara.property.service.attendanceService.IAttendanceShiftService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.attendance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -17,9 +17,9 @@ import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.property.domain.vo.AttendanceShiftScheduleVo;
|
||||
import org.dromara.property.domain.bo.AttendanceShiftScheduleBo;
|
||||
import org.dromara.property.service.IAttendanceShiftScheduleService;
|
||||
import org.dromara.property.domain.vo.attendanceVo.AttendanceShiftScheduleVo;
|
||||
import org.dromara.property.domain.bo.attendanceBo.AttendanceShiftScheduleBo;
|
||||
import org.dromara.property.service.attendanceService.IAttendanceShiftScheduleService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.attendance;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
@@ -15,9 +15,9 @@ import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.property.domain.bo.AttendanceUserGroupBo;
|
||||
import org.dromara.property.domain.vo.AttendanceUserGroupVo;
|
||||
import org.dromara.property.service.IAttendanceUserGroupService;
|
||||
import org.dromara.property.domain.bo.attendanceBo.AttendanceUserGroupBo;
|
||||
import org.dromara.property.domain.vo.attendanceVo.AttendanceUserGroupVo;
|
||||
import org.dromara.property.service.attendanceService.IAttendanceUserGroupService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.attendance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -17,9 +17,9 @@ import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.property.domain.vo.AttendanceWeekSetVo;
|
||||
import org.dromara.property.domain.bo.AttendanceWeekSetBo;
|
||||
import org.dromara.property.service.IAttendanceWeekSetService;
|
||||
import org.dromara.property.domain.vo.attendanceVo.AttendanceWeekSetVo;
|
||||
import org.dromara.property.domain.bo.attendanceBo.AttendanceWeekSetBo;
|
||||
import org.dromara.property.service.attendanceService.IAttendanceWeekSetService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.attendance;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -17,9 +17,9 @@ import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.property.domain.vo.AttendanceWeeksetShiftVo;
|
||||
import org.dromara.property.domain.bo.AttendanceWeeksetShiftBo;
|
||||
import org.dromara.property.service.IAttendanceWeeksetShiftService;
|
||||
import org.dromara.property.domain.vo.attendanceVo.AttendanceWeeksetShiftVo;
|
||||
import org.dromara.property.domain.bo.attendanceBo.AttendanceWeeksetShiftBo;
|
||||
import org.dromara.property.service.attendanceService.IAttendanceWeeksetShiftService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.cleanOrder;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -17,9 +17,9 @@ import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.property.domain.vo.CleanVo;
|
||||
import org.dromara.property.domain.bo.CleanBo;
|
||||
import org.dromara.property.service.ICleanService;
|
||||
import org.dromara.property.domain.vo.cleanOrderVo.CleanVo;
|
||||
import org.dromara.property.domain.bo.cleanOrderBo.CleanBo;
|
||||
import org.dromara.property.service.cleanOrderService.ICleanService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
@@ -1,8 +1,7 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.cleanOrder;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaIgnore;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.constraints.*;
|
||||
@@ -18,9 +17,9 @@ import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.property.domain.vo.CleanOrderVo;
|
||||
import org.dromara.property.domain.bo.CleanOrderBo;
|
||||
import org.dromara.property.service.ICleanOrderService;
|
||||
import org.dromara.property.domain.vo.cleanOrderVo.CleanOrderVo;
|
||||
import org.dromara.property.domain.bo.cleanOrderBo.CleanOrderBo;
|
||||
import org.dromara.property.service.cleanOrderService.ICleanOrderService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
||||
@@ -41,7 +40,7 @@ public class CleanOrderController extends BaseController {
|
||||
/**
|
||||
* 查询保洁订单列表
|
||||
*/
|
||||
@SaCheckPermission("property:clean_order:list")
|
||||
//@SaCheckPermission("property:clean_order:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<CleanOrderVo> list(CleanOrderBo bo, PageQuery pageQuery) {
|
||||
return cleanOrderService.queryPageList(bo, pageQuery);
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.cleanOrder;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -17,9 +17,9 @@ import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.property.domain.vo.CleanserverOrderVo;
|
||||
import org.dromara.property.domain.bo.CleanserverOrderBo;
|
||||
import org.dromara.property.service.ICleanserverOrderService;
|
||||
import org.dromara.property.domain.vo.cleanOrderVo.CleanserverOrderVo;
|
||||
import org.dromara.property.domain.bo.cleanOrderBo.CleanserverOrderBo;
|
||||
import org.dromara.property.service.cleanOrderService.ICleanserverOrderService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
@@ -0,0 +1,38 @@
|
||||
package org.dromara.property.controller.mobile;
|
||||
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.property.domain.bo.CustomerNoticesBo;
|
||||
import org.dromara.property.domain.vo.CustomerNoticesVo;
|
||||
import org.dromara.property.service.ICustomerNoticesService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* @author yuyongle
|
||||
* @version 1.0
|
||||
* @description: TODO
|
||||
* @date 2025/9/8 11:15
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/mobile/notices")
|
||||
public class MCustomerNoticesController {
|
||||
private final ICustomerNoticesService customerNoticesService;
|
||||
|
||||
/**
|
||||
* 头条滚动列表
|
||||
* @param bo
|
||||
* @param pageQuery
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/todayList")
|
||||
public TableDataInfo<CustomerNoticesVo> todayList(CustomerNoticesBo bo, PageQuery pageQuery) {
|
||||
return customerNoticesService.todayList(bo, pageQuery);
|
||||
}
|
||||
}
|
@@ -0,0 +1,37 @@
|
||||
package org.dromara.property.controller.mobile;
|
||||
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.property.domain.bo.InspectionTaskBo;
|
||||
import org.dromara.property.domain.vo.InspectionTaskVo;
|
||||
import org.dromara.property.domain.vo.mobile.MInspectionTaskVo;
|
||||
import org.dromara.property.service.IInspectionTaskService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* @author yuyongle
|
||||
* @version 1.0
|
||||
* @description: 移动端巡检任务
|
||||
* @date 2025/9/1 11:18
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/mobile/inspectionTask")
|
||||
public class MInspectionTaskController extends BaseController {
|
||||
private final IInspectionTaskService inspectionTaskService;
|
||||
|
||||
/**
|
||||
* 移动端查询巡检任务列表
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<MInspectionTaskVo> list(InspectionTaskBo bo, PageQuery pageQuery) {
|
||||
return inspectionTaskService.mQueryPageList(bo, pageQuery);
|
||||
}
|
||||
}
|
@@ -0,0 +1,59 @@
|
||||
package org.dromara.property.controller.mobile;
|
||||
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.property.domain.bo.InspectionTaskDetailBo;
|
||||
import org.dromara.property.domain.bo.mobile.InspectionTaskDetailToOrderBo;
|
||||
import org.dromara.property.domain.vo.mobile.MInspectionTaskDetailVo;
|
||||
import org.dromara.property.service.IInspectionTaskDetailService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
/**
|
||||
* @author yuyongle
|
||||
* @version 1.0
|
||||
* @description: 移动端巡检点任务
|
||||
* @date 2025/9/1 17:13
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/mobile/taskDetail")
|
||||
public class MInspectionTaskDetailController extends BaseController {
|
||||
private final IInspectionTaskDetailService inspectionTaskDetailService;
|
||||
/**
|
||||
* 查询巡检点列表
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<MInspectionTaskDetailVo> list(InspectionTaskDetailBo bo, PageQuery pageQuery) {
|
||||
return inspectionTaskDetailService.mQueryPageList(bo,pageQuery);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 扫码签到
|
||||
*/
|
||||
@PostMapping("/signIn")
|
||||
public R<Void> signIn(@Validated(EditGroup.class) @RequestBody InspectionTaskDetailBo bo) {
|
||||
return toAjax(inspectionTaskDetailService.signIn(bo));
|
||||
}
|
||||
/**
|
||||
* 提交巡检明细
|
||||
*/
|
||||
@PostMapping("/submit")
|
||||
public R<Void> submit(@Validated(EditGroup.class) @RequestBody InspectionTaskDetailBo bo) {
|
||||
return toAjax(inspectionTaskDetailService.submit(bo));
|
||||
}
|
||||
/**
|
||||
* 巡检提报工单
|
||||
*/
|
||||
@PostMapping("/reportedOrder")
|
||||
public R<Void> reportedOrder(@Validated(EditGroup.class) @RequestBody InspectionTaskDetailToOrderBo bo) {
|
||||
return toAjax(inspectionTaskDetailService.reportedOrder(bo));
|
||||
}
|
||||
}
|
@@ -3,6 +3,7 @@ package org.dromara.property.controller.mobile;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
@@ -12,6 +13,7 @@ import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.property.domain.bo.ServiceWorkOrdersBo;
|
||||
import org.dromara.property.domain.bo.mobile.MServiceWorkOrdersBo;
|
||||
import org.dromara.property.domain.vo.ServiceWorkOrdersVo;
|
||||
import org.dromara.property.domain.vo.mobile.MServiceWorkOrdersVo;
|
||||
import org.dromara.property.service.IServiceWorkOrdersService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
@@ -34,7 +36,6 @@ public class MServiceWorkOrdersController extends BaseController {
|
||||
* 小程序新增【工单处理】
|
||||
*/
|
||||
@Log(title = "【小程序新增工单处理】", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody MServiceWorkOrdersBo bo) {
|
||||
return toAjax(serviceWorkOrdersService.insertMServiceWorkOrdersBo(bo));
|
||||
@@ -43,7 +44,16 @@ public class MServiceWorkOrdersController extends BaseController {
|
||||
* 小程序查询【工单处理】
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<ServiceWorkOrdersVo> list(ServiceWorkOrdersBo bo, PageQuery pageQuery) {
|
||||
return serviceWorkOrdersService.queryPageList(bo, pageQuery);
|
||||
public TableDataInfo<MServiceWorkOrdersVo> list(ServiceWorkOrdersBo bo, PageQuery pageQuery) {
|
||||
return serviceWorkOrdersService.queryMobilePageList(bo, pageQuery);
|
||||
}
|
||||
/**
|
||||
* 修改【工单处理】
|
||||
*/
|
||||
@Log(title = "【工单处理】", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody ServiceWorkOrdersBo bo) {
|
||||
return toAjax(serviceWorkOrdersService.updateByBo(bo));
|
||||
}
|
||||
}
|
||||
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.residentController;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -9,8 +9,7 @@ import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.constraints.*;
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.common.excel.core.ExcelResult;
|
||||
import org.dromara.property.domain.vo.ResidentPersonImportVo;
|
||||
import org.dromara.property.domain.vo.residentVo.ResidentPersonImportVo;
|
||||
import org.dromara.property.listener.ResidentPersonImportListener;
|
||||
import org.dromara.property.utils.UploadFaceUtil;
|
||||
import org.springframework.http.MediaType;
|
||||
@@ -26,9 +25,9 @@ import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.property.domain.vo.ResidentPersonVo;
|
||||
import org.dromara.property.domain.bo.ResidentPersonBo;
|
||||
import org.dromara.property.service.IResidentPersonService;
|
||||
import org.dromara.property.domain.vo.residentVo.ResidentPersonVo;
|
||||
import org.dromara.property.domain.bo.residentBo.ResidentPersonBo;
|
||||
import org.dromara.property.service.residentService.IResidentPersonService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
@@ -1,4 +1,4 @@
|
||||
package org.dromara.property.controller;
|
||||
package org.dromara.property.controller.residentController;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -17,9 +17,9 @@ import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.property.domain.vo.ResidentUnitVo;
|
||||
import org.dromara.property.domain.bo.ResidentUnitBo;
|
||||
import org.dromara.property.service.IResidentUnitService;
|
||||
import org.dromara.property.domain.vo.residentVo.ResidentUnitVo;
|
||||
import org.dromara.property.domain.bo.residentBo.ResidentUnitBo;
|
||||
import org.dromara.property.service.residentService.IResidentUnitService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
@@ -6,6 +6,7 @@ import lombok.RequiredArgsConstructor;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.constraints.*;
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import org.dromara.common.core.domain.TreeNode;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
|
||||
@@ -27,7 +28,7 @@ import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
* 前端访问路由地址为:/property/meterInfo
|
||||
*
|
||||
* @author lsm
|
||||
* @date 2025-07-19
|
||||
* @since 2025-07-19
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@@ -43,6 +44,8 @@ public class TbMeterInfoController extends BaseController {
|
||||
@SaCheckPermission("property:meterInfo:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<TbMeterInfoVo> list(TbMeterInfoBo bo, PageQuery pageQuery) {
|
||||
pageQuery.setOrderByColumn("createTime");
|
||||
pageQuery.setIsAsc("desc");
|
||||
return tbMeterInfoService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@@ -65,7 +68,7 @@ public class TbMeterInfoController extends BaseController {
|
||||
@SaCheckPermission("property:meterInfo:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<TbMeterInfoVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(tbMeterInfoService.queryById(id));
|
||||
}
|
||||
|
||||
@@ -103,4 +106,29 @@ public class TbMeterInfoController extends BaseController {
|
||||
@PathVariable("ids") Long[] ids) {
|
||||
return toAjax(tbMeterInfoService.deleteWithValidByIds(List.of(ids), true));
|
||||
}
|
||||
|
||||
/**
|
||||
* 生成 社区/建组/单元/楼栋/(水电气表)树结构
|
||||
*
|
||||
* @param meterType 水电气类型
|
||||
* @param isMeter 是否返回仪表
|
||||
* @return (水电气表)树结构
|
||||
*/
|
||||
@GetMapping("/tree")
|
||||
public R<List<TreeNode<Long>>> queryMeterInfoTree(@RequestParam Long meterType, @RequestParam Boolean isMeter) {
|
||||
return R.ok(tbMeterInfoService.queryMeterInfoTree(meterType, isMeter));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取水/电/气表当前读数/状态
|
||||
*
|
||||
* @param meterType 水电气类型
|
||||
* @param floorId 楼栋id
|
||||
*/
|
||||
@GetMapping("/currentReading")
|
||||
public R<Void> currentReading(@RequestParam Long meterType, @RequestParam Long floorId) {
|
||||
tbMeterInfoService.getMeterStatus(meterType, floorId);
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -1,6 +1,7 @@
|
||||
package org.dromara.property.controller.smartDevicesController;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
@@ -65,7 +66,7 @@ public class TbMeterRecordController extends BaseController {
|
||||
@SaCheckPermission("property:meterRecord:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<TbMeterRecordVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(tbMeterRecordService.queryById(id));
|
||||
}
|
||||
|
||||
@@ -103,4 +104,25 @@ public class TbMeterRecordController extends BaseController {
|
||||
@PathVariable("ids") Long[] ids) {
|
||||
return toAjax(tbMeterRecordService.deleteWithValidByIds(List.of(ids), true));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用电/水/气趋势分析数据
|
||||
*
|
||||
* @param floorId 楼层id
|
||||
* @param meterId 仪表id
|
||||
* @param meterType 仪表类型
|
||||
* @param day 日期
|
||||
* @param month 月份
|
||||
* @param year 年份
|
||||
*/
|
||||
@GetMapping("/trend")
|
||||
public R<Map<String, Object>> getEnergyTrend(@RequestParam(required = false) String floorId,
|
||||
@RequestParam(required = false) String meterId,
|
||||
@RequestParam Long meterType,
|
||||
@RequestParam String day,
|
||||
@RequestParam String month,
|
||||
@RequestParam String year) {
|
||||
Map<String, Object> resultMap = tbMeterRecordService.getEnergyTrend(floorId, meterId, meterType, day, month, year);
|
||||
return R.ok(resultMap);
|
||||
}
|
||||
}
|
||||
|
@@ -0,0 +1,114 @@
|
||||
package org.dromara.property.controller.xcx;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.satoken.utils.LoginHelper;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.property.api.model.LoginResidentPerson;
|
||||
import org.dromara.property.domain.bo.residentBo.ResidentPersonBo;
|
||||
import org.dromara.property.domain.vo.residentVo.ResidentPersonVo;
|
||||
import org.dromara.property.service.residentService.IResidentPersonService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 移动端访问入驻员工
|
||||
* 前端访问路由地址为:/property/person
|
||||
*
|
||||
* @author mocheng
|
||||
* @since 2025-06-19
|
||||
*/
|
||||
@Slf4j
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/xcx/person")
|
||||
public class XResidentPersonController extends BaseController {
|
||||
|
||||
private final IResidentPersonService residentPersonService;
|
||||
/**
|
||||
* 获取登录员工信息
|
||||
*/
|
||||
@GetMapping("/getInfo")
|
||||
public R<ResidentPersonVo> getInfo() {
|
||||
LoginResidentPerson loginUser = LoginHelper.getLoginResident();
|
||||
ResidentPersonVo vo = new ResidentPersonVo();
|
||||
assert loginUser != null;
|
||||
vo.setId(loginUser.getUserId());
|
||||
vo.setUserName(loginUser.getUsername());
|
||||
vo.setUserRoles(loginUser.getUserRoles());
|
||||
vo.setUnitId(loginUser.getUnitId());
|
||||
vo.setUnitName(loginUser.getUnitName());
|
||||
return R.ok(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询入驻员工列表
|
||||
*/
|
||||
@SaCheckPermission("xcx:person:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<ResidentPersonVo> list(ResidentPersonBo bo, PageQuery pageQuery) {
|
||||
return residentPersonService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取入驻员工详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("xcx:person:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<ResidentPersonVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(residentPersonService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增入驻员工
|
||||
*/
|
||||
@SaCheckPermission("xcx:person:add")
|
||||
@Log(title = "入驻员工", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody ResidentPersonBo bo) {
|
||||
return toAjax(residentPersonService.insertByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改入驻员工
|
||||
*/
|
||||
@SaCheckPermission("xcx:person:edit")
|
||||
@Log(title = "入驻员工", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody ResidentPersonBo bo) {
|
||||
return toAjax(residentPersonService.updateByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除入驻员工
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("xcx:person:remove")
|
||||
@Log(title = "入驻员工", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable("ids") Long[] ids) {
|
||||
return toAjax(residentPersonService.deleteWithValidByIds(List.of(ids), true));
|
||||
}
|
||||
|
||||
}
|
@@ -0,0 +1,107 @@
|
||||
package org.dromara.property.controller.xcx;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.property.domain.bo.residentBo.ResidentUnitBo;
|
||||
import org.dromara.property.domain.vo.residentVo.ResidentUnitVo;
|
||||
import org.dromara.property.service.residentService.IResidentUnitService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 入驻单位
|
||||
* 前端访问路由地址为:/property/resident_unit
|
||||
*
|
||||
* @author mocheng
|
||||
* @since 2025-06-19
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/xcx/unit")
|
||||
public class XResidentUnitController extends BaseController {
|
||||
|
||||
private final IResidentUnitService residentUnitService;
|
||||
|
||||
/**
|
||||
* 查询入驻单位列表
|
||||
*/
|
||||
@SaCheckPermission("property:resident_unit:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<ResidentUnitVo> list(ResidentUnitBo bo, PageQuery pageQuery) {
|
||||
return residentUnitService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出入驻单位列表
|
||||
*/
|
||||
@SaCheckPermission("property:resident_unit:export")
|
||||
@Log(title = "入驻单位", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(ResidentUnitBo bo, HttpServletResponse response) {
|
||||
List<ResidentUnitVo> list = residentUnitService.queryList(bo);
|
||||
ExcelUtil.exportExcel(list, "入驻单位", ResidentUnitVo.class, response);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取入驻单位详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("xcx:unit:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<ResidentUnitVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(residentUnitService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增入驻单位
|
||||
*/
|
||||
@SaCheckPermission("property:resident_unit:add")
|
||||
@Log(title = "入驻单位", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody ResidentUnitBo bo) {
|
||||
return toAjax(residentUnitService.insertByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改入驻单位
|
||||
*/
|
||||
@SaCheckPermission("property:resident_unit:edit")
|
||||
@Log(title = "入驻单位", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody ResidentUnitBo bo) {
|
||||
return toAjax(residentUnitService.updateByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除入驻单位
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("property:resident_unit:remove")
|
||||
@Log(title = "入驻单位", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable("ids") Long[] ids) {
|
||||
return toAjax(residentUnitService.deleteWithValidByIds(List.of(ids), true));
|
||||
}
|
||||
}
|
@@ -0,0 +1,50 @@
|
||||
package org.dromara.property.controller.xcx;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.property.domain.bo.ServiceWorkOrdersBo;
|
||||
import org.dromara.property.domain.vo.ServiceWorkOrdersVo;
|
||||
import org.dromara.property.service.IServiceWorkOrdersService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 【业务管理-工单处理】
|
||||
*
|
||||
* @author mocheng
|
||||
* @since 2025-07-07
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/xcx/workOrders")
|
||||
public class XServiceWorkOrdersController extends BaseController {
|
||||
|
||||
private final IServiceWorkOrdersService serviceWorkOrdersService;
|
||||
|
||||
/**
|
||||
* 小程序新增【工单处理】
|
||||
*/
|
||||
@PostMapping()
|
||||
@SaCheckPermission("xcx:workOrders:add")
|
||||
@Log(title = "【小程序新增工单处理】", businessType = BusinessType.INSERT)
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody ServiceWorkOrdersBo bo) {
|
||||
return toAjax(serviceWorkOrdersService.insertOrderByXcx(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 小程序查询【工单处理】
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
@SaCheckPermission("xcx:workOrders:query")
|
||||
public R<List<ServiceWorkOrdersVo>> list() {
|
||||
return R.ok(serviceWorkOrdersService.queryMyOrderByXcx());
|
||||
}
|
||||
}
|
@@ -0,0 +1,62 @@
|
||||
package org.dromara.property.controller.xcx;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.property.domain.bo.ServiceWorkOrdersTypeBo;
|
||||
import org.dromara.property.domain.vo.ServiceWorkOrdersTypeVo;
|
||||
import org.dromara.property.service.IServiceWorkOrdersTypeService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 【工单类型】
|
||||
* 前端访问路由地址为:/property/workOrdersType
|
||||
*
|
||||
* @author mocheng
|
||||
* @since 2025-07-09
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/xcx/workOrdersType")
|
||||
public class XServiceWorkOrdersTypeController extends BaseController {
|
||||
|
||||
private final IServiceWorkOrdersTypeService serviceWorkOrdersTypeService;
|
||||
|
||||
/**
|
||||
* 获取【工单类型】详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("xcx:workOrdersType:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<ServiceWorkOrdersTypeVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(serviceWorkOrdersTypeService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询【工单类型】树结构
|
||||
*/
|
||||
@GetMapping("/typeTree/{id}")
|
||||
public R<List<ServiceWorkOrdersTypeVo>> typeTree(@NotNull(message = "id不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
List<ServiceWorkOrdersTypeVo> list = serviceWorkOrdersTypeService.typeTree();
|
||||
return R.ok(list.stream().filter(vo -> vo.getId().equals(id)).toList());
|
||||
}
|
||||
}
|
@@ -0,0 +1,113 @@
|
||||
package org.dromara.property.controller.xcx;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import cn.dev33.satoken.stp.StpUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.apache.dubbo.config.annotation.DubboReference;
|
||||
import org.dromara.common.core.constant.GlobalConstants;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.redis.utils.RedisUtils;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.common.websocket.dto.WebSocketMessageDto;
|
||||
import org.dromara.common.websocket.holder.WebSocketSessionHolder;
|
||||
import org.dromara.common.websocket.utils.WebSocketUtils;
|
||||
import org.dromara.property.domain.bo.QrCodeInfo;
|
||||
import org.dromara.property.domain.bo.TbVisitorManagementBo;
|
||||
import org.dromara.property.domain.vo.TbVisitorManagementVo;
|
||||
import org.dromara.property.service.ITbVisitorManagementService;
|
||||
import org.dromara.system.api.RemoteConfigService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.time.Duration;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* 访客管理
|
||||
* 前端访问路由地址为:/property/visitorManagement
|
||||
*
|
||||
* @author lsm
|
||||
* @since 2025-06-19
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/xcx/visitorManagement")
|
||||
public class XTbVisitorManagementController extends BaseController {
|
||||
|
||||
private final ITbVisitorManagementService tbVisitorManagementService;
|
||||
|
||||
|
||||
/**
|
||||
* 小程序新增访客邀约
|
||||
*
|
||||
* @param bo bean
|
||||
*/
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
@SaCheckPermission("xcx:visitorManagement:add")
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody TbVisitorManagementBo bo) {
|
||||
return toAjax(tbVisitorManagementService.insertByXcxBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 小程序修改访客邀约
|
||||
*
|
||||
* @param bo bean
|
||||
*/
|
||||
@PutMapping()
|
||||
@RepeatSubmit()
|
||||
@SaCheckPermission("xcx:visitorManagement:edit")
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TbVisitorManagementBo bo) {
|
||||
return toAjax(tbVisitorManagementService.updateByXcxBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 小程序查询访客邀约详情
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@GetMapping("/{id}")
|
||||
@SaCheckPermission("xcx:visitorManagement:query")
|
||||
public R<TbVisitorManagementVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
return R.ok(tbVisitorManagementService.queryByIdForXcx(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 小程序查询本人邀约/预约列表
|
||||
*/
|
||||
@GetMapping("/list/{type}")
|
||||
@SaCheckPermission("xcx:visitorManagement:list")
|
||||
public R<List<TbVisitorManagementVo>> list(@NotNull(message = "类型不能为空")
|
||||
@PathVariable("type") Integer type) {
|
||||
return R.ok(tbVisitorManagementService.queryMyListByXcx(type));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取访客二维码
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@GetMapping("/qrCode/{id}")
|
||||
@SaCheckPermission("xcx:visitorManagement:getQrCode")
|
||||
public R<String> getQrCode(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("id") Long id) {
|
||||
int code = Integer.parseInt(tbVisitorManagementService.getQrCodeByIdForXcx(id).get("code").toString());
|
||||
return code == 200 ? R.ok(tbVisitorManagementService.getQrCodeByIdForXcx(id).get("data").toString()) : R.fail(tbVisitorManagementService.getQrCodeByIdForXcx(id).get("data").toString());
|
||||
}
|
||||
|
||||
}
|
@@ -8,8 +8,6 @@ import org.dromara.common.tenant.core.TenantEntity;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.time.LocalDate;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 排班对象 attendance_arrangement
|
||||
|
@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
|
@@ -6,7 +6,6 @@ import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 考勤组基本信息对象 attendance_group
|
||||
|
@@ -1,15 +1,11 @@
|
||||
package org.dromara.property.domain;
|
||||
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import org.dromara.common.tenant.core.TenantEntity;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalTime;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
|
@@ -39,20 +39,20 @@ public class AttendanceUserGroup extends TenantEntity {
|
||||
*/
|
||||
private Long employeeId;
|
||||
|
||||
/**
|
||||
* 员工姓名
|
||||
*/
|
||||
private String employeeName;
|
||||
// /**
|
||||
// * 员工姓名
|
||||
// */
|
||||
// private String employeeName;
|
||||
|
||||
/**
|
||||
* 部门ID
|
||||
*/
|
||||
private Long deptId;
|
||||
|
||||
/**
|
||||
* 部门名称
|
||||
*/
|
||||
private String deptName;
|
||||
// /**
|
||||
// * 部门名称
|
||||
// */
|
||||
// private String deptName;
|
||||
|
||||
/**
|
||||
* 开始日期
|
||||
|
@@ -0,0 +1,78 @@
|
||||
package org.dromara.property.domain;
|
||||
|
||||
import org.dromara.common.tenant.core.TenantEntity;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 客户服务-活动对象 customer_activity
|
||||
*
|
||||
* @author yuyongle
|
||||
* @date 2025-09-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("customer_activity")
|
||||
public class CustomerActivity extends TenantEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 标题
|
||||
*/
|
||||
private String title;
|
||||
|
||||
/**
|
||||
* 状态(1待进行2进行中3已完成)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 活动图片
|
||||
*/
|
||||
private String activityImgUrl;
|
||||
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
private Date startTime;
|
||||
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 活动内容
|
||||
*/
|
||||
private String activityContent;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 发布人
|
||||
*/
|
||||
private Long issuers;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
|
||||
}
|
@@ -30,7 +30,7 @@ public class CustomerFeedbacks extends TenantEntity {
|
||||
/**
|
||||
* 反馈类型(0保修1保洁2会议)
|
||||
*/
|
||||
private String feedbackType;
|
||||
private Long feedbackType;
|
||||
|
||||
/**
|
||||
* 反馈人
|
||||
@@ -58,7 +58,7 @@ public class CustomerFeedbacks extends TenantEntity {
|
||||
private String feedbackImg;
|
||||
|
||||
/**
|
||||
* 是否转至工单
|
||||
* 工单id
|
||||
*/
|
||||
private Long orderId;
|
||||
/**
|
||||
@@ -72,7 +72,7 @@ public class CustomerFeedbacks extends TenantEntity {
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 客服电话
|
||||
* 反馈单位
|
||||
*/
|
||||
private String serviceName;
|
||||
private Long feedbackUnit;
|
||||
}
|
||||
|
@@ -36,7 +36,10 @@ public class InspectionPoint extends TenantEntity {
|
||||
* 巡检点名称
|
||||
*/
|
||||
private String pointName;
|
||||
|
||||
/**
|
||||
* 巡检位置
|
||||
*/
|
||||
private String inspectionLocation;
|
||||
/**
|
||||
* 巡检点类型
|
||||
*/
|
||||
|
@@ -29,6 +29,10 @@ public class InspectionTask extends TenantEntity {
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 任务名称
|
||||
*/
|
||||
private String taskName;
|
||||
/**
|
||||
* 巡检计划id
|
||||
*/
|
||||
@@ -45,7 +49,7 @@ public class InspectionTask extends TenantEntity {
|
||||
private Long actUserId;
|
||||
|
||||
/**
|
||||
* 巡检方式
|
||||
*巡检方式(0现场拍照,1现场扫码)
|
||||
*/
|
||||
private String taskType;
|
||||
|
||||
@@ -55,7 +59,7 @@ public class InspectionTask extends TenantEntity {
|
||||
private String transferDesc;
|
||||
|
||||
/**
|
||||
* 巡检状态
|
||||
* 巡检状态(0未开始1巡检中,2巡检完成3已超时)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
|
@@ -1,5 +1,6 @@
|
||||
package org.dromara.property.domain;
|
||||
|
||||
import cn.idev.excel.annotation.ExcelProperty;
|
||||
import org.dromara.common.tenant.core.TenantEntity;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
@@ -51,25 +52,19 @@ public class InspectionTaskDetail extends TenantEntity {
|
||||
*/
|
||||
private Long pointId;
|
||||
|
||||
/**
|
||||
* 巡检方式
|
||||
*/
|
||||
private String patrolType;
|
||||
|
||||
/**
|
||||
* 签到类型(1.现场拍照、2.摄像头签到、3.现场扫码)
|
||||
*/
|
||||
private String signType;
|
||||
/**
|
||||
* 实际签到状态(0未签到1.已签到)
|
||||
*/
|
||||
private String actualSignState;
|
||||
|
||||
/**
|
||||
* 实际巡检时间
|
||||
*/
|
||||
private Date actualInspectionTime;
|
||||
|
||||
/**
|
||||
* 实际签到状态(1已签到2.未签到)
|
||||
*/
|
||||
private String actualSignState;
|
||||
private Date inspectionTime;
|
||||
|
||||
/**
|
||||
* 巡检状态(0未完成,1已完成)
|
||||
@@ -91,10 +86,6 @@ public class InspectionTaskDetail extends TenantEntity {
|
||||
*/
|
||||
private String actualInspectionPerson;
|
||||
|
||||
/**
|
||||
* 任务状态
|
||||
*/
|
||||
private String taskStatus;
|
||||
|
||||
/**
|
||||
* 巡检结果
|
||||
@@ -111,11 +102,6 @@ public class InspectionTaskDetail extends TenantEntity {
|
||||
*/
|
||||
private String inspectionLocation;
|
||||
|
||||
/**
|
||||
* 实际巡检时间
|
||||
*/
|
||||
private Date inspectionTime;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@@ -130,7 +116,10 @@ public class InspectionTaskDetail extends TenantEntity {
|
||||
* 点结束时间
|
||||
*/
|
||||
private Date pointEndTime;
|
||||
|
||||
/**
|
||||
* 工单id
|
||||
*/
|
||||
private Long orderId;
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
|
@@ -1,5 +1,6 @@
|
||||
package org.dromara.property.domain;
|
||||
|
||||
import cn.idev.excel.annotation.ExcelProperty;
|
||||
import org.dromara.common.tenant.core.TenantEntity;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
@@ -41,6 +42,9 @@ public class Meet extends TenantEntity {
|
||||
* 5圆形会议室
|
||||
* 6贵宾会议室)
|
||||
*/
|
||||
|
||||
private String secrecyGrade;
|
||||
|
||||
private String meetingRoomType;
|
||||
|
||||
/**
|
||||
@@ -94,9 +98,18 @@ public class Meet extends TenantEntity {
|
||||
private String appointmentTime;
|
||||
|
||||
/**
|
||||
* 开放时段
|
||||
* 图片
|
||||
*/
|
||||
private String openHours;
|
||||
private String picture;
|
||||
|
||||
/**
|
||||
* 开放开始时段
|
||||
*/
|
||||
private String openStartHours;
|
||||
/**
|
||||
* 开放结束时段
|
||||
*/
|
||||
private String openEndHours;
|
||||
|
||||
/**
|
||||
* 状态(0启用,1禁用)
|
||||
|
@@ -0,0 +1,55 @@
|
||||
package org.dromara.property.domain;
|
||||
|
||||
import net.sf.jsqlparser.util.validation.metadata.DatabaseException;
|
||||
import org.dromara.common.tenant.core.TenantEntity;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 会议室参会记录对象 meet_participants
|
||||
*
|
||||
* @author mocheng
|
||||
* @date 2025-09-03
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("meet_participants")
|
||||
public class MeetParticipants extends TenantEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 会议室id
|
||||
*/
|
||||
private Long meetBookId;
|
||||
|
||||
/**
|
||||
* 入驻人员id
|
||||
*/
|
||||
private Long residentPersonId;
|
||||
/**
|
||||
* 签到状态
|
||||
*/
|
||||
private String signState;
|
||||
/**
|
||||
* 签到时间
|
||||
*/
|
||||
private Date signTime;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
}
|
@@ -47,7 +47,7 @@ public class ServiceWorkOrders extends TenantEntity {
|
||||
private Long type;
|
||||
|
||||
/**
|
||||
* 状态
|
||||
* 状态(0创建工单,1已派单2已抢单3处理中,4已完成,5已评价)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
@@ -104,7 +104,7 @@ public class ServiceWorkOrders extends TenantEntity {
|
||||
*/
|
||||
private String orderImgUrl;
|
||||
/**
|
||||
* 上报类型
|
||||
* 上报类型(1电话上报2现场上报,3系统上报)
|
||||
*/
|
||||
private String reportingType;
|
||||
/**
|
||||
|
@@ -38,9 +38,13 @@ public class ServiceWorkOrdersType extends TenantEntity {
|
||||
private String orderTypeName;
|
||||
|
||||
/**
|
||||
* 运作模式
|
||||
* 运作模式(0派单+抢单,1派单,2自动派单)
|
||||
*/
|
||||
private String operationMode;
|
||||
/**
|
||||
*部门id
|
||||
*/
|
||||
private Long deptId;
|
||||
|
||||
/**
|
||||
* 排序值
|
||||
@@ -56,7 +60,10 @@ public class ServiceWorkOrdersType extends TenantEntity {
|
||||
* 是否支持转单(0支持,1不支持)
|
||||
*/
|
||||
private Integer isTransfers;
|
||||
|
||||
/**
|
||||
* 权重(1一般2紧急3危急)
|
||||
*/
|
||||
private String processingWeight;
|
||||
/**
|
||||
* 搜索值
|
||||
*/
|
||||
|
@@ -58,16 +58,28 @@ public class TbBuilding extends TenantEntity {
|
||||
* 电梯数量
|
||||
*/
|
||||
private Integer elevatorCount;
|
||||
/**
|
||||
* 建筑面积(平方米)
|
||||
*/
|
||||
private Float area;
|
||||
/**
|
||||
* 套内面积(平方米)
|
||||
*/
|
||||
private Float insideInArea;
|
||||
/**
|
||||
* 公摊面积(平方米)
|
||||
*/
|
||||
private Float sharedArea;
|
||||
|
||||
/**
|
||||
* 竣工日期
|
||||
*/
|
||||
private Date completionDate;
|
||||
|
||||
/**
|
||||
* 地址
|
||||
*/
|
||||
private String addr;
|
||||
// /**
|
||||
// * 地址
|
||||
// */
|
||||
// private String addr;
|
||||
|
||||
/**
|
||||
* 经度
|
||||
|
@@ -34,10 +34,10 @@ public class TbCommunity extends TenantEntity {
|
||||
*/
|
||||
private String communityName;
|
||||
|
||||
/**
|
||||
* 社区类型 1:园区,2:小区
|
||||
*/
|
||||
private Integer communityType;
|
||||
// /**
|
||||
// * 社区类型 1:园区,2:小区
|
||||
// */
|
||||
// private Integer communityType;
|
||||
|
||||
private String cityFullCode;
|
||||
|
||||
|
@@ -47,16 +47,27 @@ public class TbFloor extends TenantEntity {
|
||||
*/
|
||||
private String floorName;
|
||||
|
||||
/**
|
||||
* 楼层号
|
||||
*/
|
||||
private Integer floorNumber;
|
||||
// /**
|
||||
// * 楼层号
|
||||
// */
|
||||
// private Integer floorNumber;
|
||||
|
||||
/**
|
||||
* 楼层类型
|
||||
*/
|
||||
private Integer floorType;
|
||||
|
||||
/**
|
||||
* 建筑面积(平方米)
|
||||
*/
|
||||
private Float area;
|
||||
/**
|
||||
* 套内面积(平方米)
|
||||
*/
|
||||
private Float insideInArea;
|
||||
/**
|
||||
* 公摊面积(平方米)
|
||||
*/
|
||||
private Float sharedArea;
|
||||
/**
|
||||
* 房间数量
|
||||
*/
|
||||
|
@@ -118,6 +118,11 @@ public class TbVisitorManagement extends TenantEntity {
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* e8平台id
|
||||
*/
|
||||
|
@@ -50,6 +50,11 @@ public class CostCarChargeBo extends BaseEntity {
|
||||
* 车位
|
||||
*/
|
||||
private String location;
|
||||
/**
|
||||
* 车位名称
|
||||
*/
|
||||
private String locationName;
|
||||
|
||||
/**
|
||||
* 缴费状态
|
||||
*/
|
||||
|
@@ -0,0 +1,77 @@
|
||||
package org.dromara.property.domain.bo;
|
||||
|
||||
import org.dromara.property.domain.CustomerActivity;
|
||||
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
/**
|
||||
* 客户服务-活动业务对象 customer_activity
|
||||
*
|
||||
* @author yuyongle
|
||||
* @date 2025-09-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = CustomerActivity.class, reverseConvertGenerate = false)
|
||||
public class CustomerActivityBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 标题
|
||||
*/
|
||||
@NotBlank(message = "标题不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String title;
|
||||
|
||||
/**
|
||||
* 状态(1待进行2进行中3已完成)
|
||||
*/
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 活动图片
|
||||
*/
|
||||
// @NotBlank(message = "活动图片不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String activityImgUrl;
|
||||
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
@NotNull(message = "开始时间不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Date startTime;
|
||||
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
@NotNull(message = "结束时间不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 活动内容
|
||||
*/
|
||||
@NotBlank(message = "活动内容不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String activityContent;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 发布人
|
||||
*/
|
||||
private Long issuers;
|
||||
|
||||
|
||||
}
|
@@ -29,8 +29,8 @@ public class CustomerFeedbacksBo extends BaseEntity {
|
||||
/**
|
||||
* 反馈类型(0保修1保洁2会议)
|
||||
*/
|
||||
@NotBlank(message = "反馈类型(0保修1保洁2会议)不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String feedbackType;
|
||||
@NotNull (message = "反馈类型(0保修1保洁2会议)不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long feedbackType;
|
||||
|
||||
/**
|
||||
* 反馈人
|
||||
@@ -76,11 +76,8 @@ public class CustomerFeedbacksBo extends BaseEntity {
|
||||
* 客服电话
|
||||
*/
|
||||
private String serviceName;
|
||||
|
||||
/**
|
||||
* 搜索值
|
||||
* 反馈单位
|
||||
*/
|
||||
private String searchValue;
|
||||
|
||||
|
||||
private Long feedbackUnit;
|
||||
}
|
||||
|
@@ -43,7 +43,11 @@ public class InspectionPointBo extends BaseEntity {
|
||||
*/
|
||||
@NotBlank(message = "巡检点类型不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String pointType;
|
||||
|
||||
/**
|
||||
* 巡检位置
|
||||
*/
|
||||
@NotBlank(message = "巡检位置不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String inspectionLocation;
|
||||
/**
|
||||
* nfc编码
|
||||
*/
|
||||
|
@@ -52,11 +52,6 @@ public class InspectionTaskDetailBo extends BaseEntity {
|
||||
*/
|
||||
private Long pointId;
|
||||
|
||||
/**
|
||||
* 巡检方式
|
||||
*/
|
||||
private String patrolType;
|
||||
|
||||
/**
|
||||
* 签到类型(1.现场拍照、2.摄像头签到、3.现场扫码)
|
||||
*/
|
||||
@@ -92,10 +87,6 @@ public class InspectionTaskDetailBo extends BaseEntity {
|
||||
*/
|
||||
private String actualInspectionPerson;
|
||||
|
||||
/**
|
||||
* 任务状态
|
||||
*/
|
||||
private String taskStatus;
|
||||
|
||||
/**
|
||||
* 巡检结果
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user