Compare commits
44 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bfdfa05cd7 | ||
|
|
2ea75ee5ef | ||
|
|
b83735e993 | ||
|
|
981d059ceb | ||
|
|
726168dfde | ||
|
|
68214b7a39 | ||
|
|
276bd43878 | ||
|
|
7b20d3e7ef | ||
|
|
3b0e3928eb | ||
|
|
406cf90db5 | ||
|
|
144b9d9670 | ||
|
|
0dfd541769 | ||
|
|
3fa96351d7 | ||
|
|
28959cff23 | ||
|
|
de2b0fec48 | ||
|
|
6ac733cdd2 | ||
|
|
03e2fa531a | ||
|
|
3048aa3f88 | ||
|
|
ffa0d1067a | ||
|
|
519df168c6 | ||
|
|
0717bb489b | ||
|
|
1c11add746 | ||
|
|
f66c0fb145 | ||
|
|
586ec70274 | ||
|
|
ef681e4eb3 | ||
|
|
fa39c98a95 | ||
|
|
40196737d3 | ||
|
|
494b7869ea | ||
|
|
ca5f214bac | ||
|
|
2907f9202c | ||
|
|
903c92fef0 | ||
|
|
0c4c9676b5 | ||
|
|
37970c547b | ||
|
|
725bdfa3fe | ||
|
|
4efb535730 | ||
|
|
298f93380c | ||
|
|
3a808750ac | ||
|
|
54d467ede7 | ||
|
|
dff51dd4d4 | ||
|
|
4e2ae414c4 | ||
|
|
33d35c8d70 | ||
|
|
826bf3c782 | ||
|
|
ea8129216b | ||
|
|
50e7b14fd6 |
@@ -1,68 +1,62 @@
|
||||
# 页面标题
|
||||
VITE_APP_TITLE = 智慧物业后台管理系统
|
||||
VITE_APP_TITLE=智慧物业后台管理系统
|
||||
|
||||
VITE_APP_LOGO_TITLE = 智慧物业后台管理系统
|
||||
VITE_APP_LOGO_TITLE=智慧物业后台管理系统
|
||||
|
||||
# 开发环境配置
|
||||
VITE_APP_ENV = 'development'
|
||||
VITE_APP_ENV='development'
|
||||
|
||||
# 开发环境
|
||||
VITE_APP_BASE_API = '/dev-api'
|
||||
VITE_APP_BASE_API='/dev-api'
|
||||
# # 开发环境 接口代理地址
|
||||
VITE_APP_PROXY_API = 'http://192.168.1.222:8080'
|
||||
#VITE_APP_PROXY_API='http://192.168.1.222:8080'
|
||||
# 开发环境 接口代理地址
|
||||
# VITE_APP_PROXY_API = 'http://192.168.0.239:8080'
|
||||
VITE_APP_PROXY_API='http://192.168.1.6:8080'
|
||||
# 图片基础地址
|
||||
VITE_IMG_URL = 'http://192.168.1.222:8080'
|
||||
VITE_IMG_URL='http://192.168.1.222:8080'
|
||||
|
||||
# 应用访问路径 例如使用前缀 /admin/
|
||||
VITE_APP_CONTEXT_PATH = '/'
|
||||
VITE_APP_CONTEXT_PATH='/'
|
||||
|
||||
# 监控地址
|
||||
VITE_APP_MONITOR_ADMIN = 'http://192.168.1.215/admin/applications'
|
||||
|
||||
VITE_APP_MONITOR_ADMIN='http://192.168.1.215/admin/applications'
|
||||
|
||||
# SnailJob 控制台地址
|
||||
VITE_APP_SNAILJOB_ADMIN = 'http://192.168.1.215/snail-job'
|
||||
VITE_APP_SNAILJOB_ADMIN='http://192.168.1.215/snail-job'
|
||||
|
||||
VITE_APP_PORT = 5173
|
||||
VITE_APP_PORT=5174
|
||||
|
||||
# 登录成功跳转地址
|
||||
# VITE_LOGIN_BACK_URL = '/equipment/WaterDevice'
|
||||
VITE_LOGIN_BACK_URL = '/index'
|
||||
VITE_LOGIN_BACK_URL='/index'
|
||||
# 工作台正式内容:false 假内容:true
|
||||
VITE_LOGIN_BACK_URL_WORKBENCH_TRUE= true
|
||||
VITE_LOGIN_BACK_URL_WORKBENCH_TRUE=false
|
||||
# 是否展示工作台
|
||||
VITE_APP_SHOW_WORK_PLATFORM = true
|
||||
VITE_APP_SHOW_WORK_PLATFORM=true
|
||||
|
||||
|
||||
# 地图类型 天地图 or 高德地图 天地图 WGS84 高德地图 GCJ02, 高德地图 需要在高德地图官网申请key
|
||||
# 高德地图 GCJ02
|
||||
# 天地图 WGS84
|
||||
VITE_APP_MAP_TYPE = 'GCJ02'
|
||||
# 地图类型 天地图 WGS84 高德地图 GCJ02, 高德地图 需要在高德地图官网申请key
|
||||
VITE_APP_MAP_TYPE='GCJ02'
|
||||
|
||||
# 高德地图key 建议放入环境变量中,避免泄露
|
||||
VITE_GCJ02_KEY_GD = '8e302fe1be5f4db62bc734db23dca149'
|
||||
VITE_GCJ02_JS_CODE_GD = '09534b3534d8da53968529a9ce164118'
|
||||
VITE_GCJ02_KEY_GD='8e302fe1be5f4db62bc734db23dca149'
|
||||
VITE_GCJ02_JS_CODE_GD='09534b3534d8da53968529a9ce164118'
|
||||
|
||||
# 天地图key 建议放入环境变量中,避免泄露
|
||||
VITE_TIANDITU_KEY = 'f71689f9e22158947ebf64ad95e0a595'
|
||||
VITE_TIANDITU_JS_CODE = ''
|
||||
|
||||
VITE_TIANDITU_KEY='f71689f9e22158947ebf64ad95e0a595'
|
||||
|
||||
# 接口加密功能开关(如需关闭 后端也必须对应关闭)
|
||||
VITE_APP_ENCRYPT = true
|
||||
VITE_APP_ENCRYPT=true
|
||||
# 接口加密传输 RSA 公钥与后端解密私钥对应 如更换需前后端一同更换
|
||||
VITE_APP_RSA_PUBLIC_KEY = 'MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKoR8mX0rGKLqzcWmOzbfj64K8ZIgOdHnzkXSOVOZbFu/TJhZ7rFAN+eaGkl3C4buccQd/EjEsj9ir7ijT7h96MCAwEAAQ=='
|
||||
VITE_APP_RSA_PUBLIC_KEY='MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKoR8mX0rGKLqzcWmOzbfj64K8ZIgOdHnzkXSOVOZbFu/TJhZ7rFAN+eaGkl3C4buccQd/EjEsj9ir7ijT7h96MCAwEAAQ=='
|
||||
# 接口响应解密 RSA 私钥与后端加密公钥对应 如更换需前后端一同更换
|
||||
VITE_APP_RSA_PRIVATE_KEY = 'MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAmc3CuPiGL/LcIIm7zryCEIbl1SPzBkr75E2VMtxegyZ1lYRD+7TZGAPkvIsBcaMs6Nsy0L78n2qh+lIZMpLH8wIDAQABAkEAk82Mhz0tlv6IVCyIcw/s3f0E+WLmtPFyR9/WtV3Y5aaejUkU60JpX4m5xNR2VaqOLTZAYjW8Wy0aXr3zYIhhQQIhAMfqR9oFdYw1J9SsNc+CrhugAvKTi0+BF6VoL6psWhvbAiEAxPPNTmrkmrXwdm/pQQu3UOQmc2vCZ5tiKpW10CgJi8kCIFGkL6utxw93Ncj4exE/gPLvKcT+1Emnoox+O9kRXss5AiAMtYLJDaLEzPrAWcZeeSgSIzbL+ecokmFKSDDcRske6QIgSMkHedwND1olF8vlKsJUGK3BcdtM8w4Xq7BpSBwsloE='
|
||||
VITE_APP_RSA_PRIVATE_KEY='MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAmc3CuPiGL/LcIIm7zryCEIbl1SPzBkr75E2VMtxegyZ1lYRD+7TZGAPkvIsBcaMs6Nsy0L78n2qh+lIZMpLH8wIDAQABAkEAk82Mhz0tlv6IVCyIcw/s3f0E+WLmtPFyR9/WtV3Y5aaejUkU60JpX4m5xNR2VaqOLTZAYjW8Wy0aXr3zYIhhQQIhAMfqR9oFdYw1J9SsNc+CrhugAvKTi0+BF6VoL6psWhvbAiEAxPPNTmrkmrXwdm/pQQu3UOQmc2vCZ5tiKpW10CgJi8kCIFGkL6utxw93Ncj4exE/gPLvKcT+1Emnoox+O9kRXss5AiAMtYLJDaLEzPrAWcZeeSgSIzbL+ecokmFKSDDcRske6QIgSMkHedwND1olF8vlKsJUGK3BcdtM8w4Xq7BpSBwsloE='
|
||||
|
||||
# 客户端id
|
||||
VITE_APP_CLIENT_ID = 'e5cd7e4891bf95d1d19206ce24a7b32e'
|
||||
VITE_APP_CLIENT_ID='e5cd7e4891bf95d1d19206ce24a7b32e'
|
||||
|
||||
# websocket 开关 默认使用sse推送
|
||||
VITE_APP_WEBSOCKET = false
|
||||
VITE_APP_WEBSOCKET=false
|
||||
|
||||
# sse 开关
|
||||
VITE_APP_SSE = true
|
||||
VITE_APP_SSE=true
|
||||
|
||||
|
||||
@@ -1,60 +1,58 @@
|
||||
# 页面标题
|
||||
VITE_APP_TITLE = 智慧物业后台管理系统
|
||||
VITE_APP_TITLE=智慧物业后台管理系统
|
||||
|
||||
VITE_APP_LOGO_TITLE = 智慧物业后台管理系统
|
||||
VITE_APP_LOGO_TITLE=智慧物业后台管理系统
|
||||
# 生产环境配置
|
||||
VITE_APP_ENV = 'production'
|
||||
VITE_APP_ENV='production'
|
||||
|
||||
# 应用访问路径 例如使用前缀 /admin/
|
||||
VITE_APP_CONTEXT_PATH = '/'
|
||||
VITE_APP_CONTEXT_PATH='/'
|
||||
|
||||
# 监控地址
|
||||
VITE_APP_MONITOR_ADMIN = '/admin/applications'
|
||||
VITE_APP_MONITOR_ADMIN='/admin/applications'
|
||||
|
||||
# SnailJob 控制台地址
|
||||
VITE_APP_SNAILJOB_ADMIN = '/snail-job'
|
||||
VITE_APP_SNAILJOB_ADMIN='/snail-job'
|
||||
|
||||
# 生产环境
|
||||
VITE_APP_BASE_API = 'https://wuyeapi.bugtc.com'
|
||||
# VITE_APP_BASE_API = 'http://192.168.0.222:8080'
|
||||
|
||||
# VITE_APP_BASE_API = 'https://wuyeapi.bugtc.com'
|
||||
VITE_APP_BASE_API='https://wuyeapi.ckdzkj.com'
|
||||
#VITE_APP_BASE_API='http://192.168.1.198'
|
||||
# 登录成功跳转地址
|
||||
# VITE_LOGIN_BACK_URL = '/equipment/WaterDevice'
|
||||
VITE_LOGIN_BACK_URL = '/index'
|
||||
VITE_LOGIN_BACK_URL='/index'
|
||||
# 工作台正式内容:false 假内容:true
|
||||
VITE_LOGIN_BACK_URL_WORKBENCH_TRUE= true
|
||||
VITE_LOGIN_BACK_URL_WORKBENCH_TRUE=false
|
||||
# 是否展示工作台
|
||||
VITE_APP_SHOW_WORK_PLATFORM = true
|
||||
VITE_APP_SHOW_WORK_PLATFORM=true
|
||||
|
||||
|
||||
# 地图类型 天地图 or 高德地图 天地图 WGS84 高德地图 GCJ02, 高德地图 需要在高德地图官网申请key
|
||||
# 高德地图 GCJ02
|
||||
# 天地图 WGS84
|
||||
VITE_APP_MAP_TYPE = 'GCJ02'
|
||||
# 地图类型 天地图 WGS84 高德地图 GCJ02, 高德地图 需要在高德地图官网申请key
|
||||
VITE_APP_MAP_TYPE='GCJ02'
|
||||
|
||||
# 高德地图key 建议放入环境变量中,避免泄露
|
||||
VITE_GCJ02_KEY_GD = '8e302fe1be5f4db62bc734db23dca149'
|
||||
VITE_GCJ02_JS_CODE_GD = '09534b3534d8da53968529a9ce164118'
|
||||
|
||||
VITE_GCJ02_KEY_GD='8e302fe1be5f4db62bc734db23dca149'
|
||||
VITE_GCJ02_JS_CODE_GD='09534b3534d8da53968529a9ce164118'
|
||||
|
||||
# 天地图key 建议放入环境变量中,避免泄露
|
||||
VITE_TIANDITU_KEY='f71689f9e22158947ebf64ad95e0a595'
|
||||
|
||||
# 是否在打包时开启压缩,支持 gzip 和 brotli
|
||||
# VITE_BUILD_COMPRESS = gzip
|
||||
|
||||
VITE_APP_PORT = 80
|
||||
VITE_APP_PORT=80
|
||||
|
||||
# 接口加密功能开关(如需关闭 后端也必须对应关闭)
|
||||
VITE_APP_ENCRYPT = true
|
||||
VITE_APP_ENCRYPT=true
|
||||
# 接口加密传输 RSA 公钥与后端解密私钥对应 如更换需前后端一同更换
|
||||
VITE_APP_RSA_PUBLIC_KEY = 'MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKoR8mX0rGKLqzcWmOzbfj64K8ZIgOdHnzkXSOVOZbFu/TJhZ7rFAN+eaGkl3C4buccQd/EjEsj9ir7ijT7h96MCAwEAAQ=='
|
||||
VITE_APP_RSA_PUBLIC_KEY='MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKoR8mX0rGKLqzcWmOzbfj64K8ZIgOdHnzkXSOVOZbFu/TJhZ7rFAN+eaGkl3C4buccQd/EjEsj9ir7ijT7h96MCAwEAAQ=='
|
||||
# 接口响应解密 RSA 私钥与后端加密公钥对应 如更换需前后端一同更换
|
||||
VITE_APP_RSA_PRIVATE_KEY = 'MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAmc3CuPiGL/LcIIm7zryCEIbl1SPzBkr75E2VMtxegyZ1lYRD+7TZGAPkvIsBcaMs6Nsy0L78n2qh+lIZMpLH8wIDAQABAkEAk82Mhz0tlv6IVCyIcw/s3f0E+WLmtPFyR9/WtV3Y5aaejUkU60JpX4m5xNR2VaqOLTZAYjW8Wy0aXr3zYIhhQQIhAMfqR9oFdYw1J9SsNc+CrhugAvKTi0+BF6VoL6psWhvbAiEAxPPNTmrkmrXwdm/pQQu3UOQmc2vCZ5tiKpW10CgJi8kCIFGkL6utxw93Ncj4exE/gPLvKcT+1Emnoox+O9kRXss5AiAMtYLJDaLEzPrAWcZeeSgSIzbL+ecokmFKSDDcRske6QIgSMkHedwND1olF8vlKsJUGK3BcdtM8w4Xq7BpSBwsloE='
|
||||
VITE_APP_RSA_PRIVATE_KEY='MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAmc3CuPiGL/LcIIm7zryCEIbl1SPzBkr75E2VMtxegyZ1lYRD+7TZGAPkvIsBcaMs6Nsy0L78n2qh+lIZMpLH8wIDAQABAkEAk82Mhz0tlv6IVCyIcw/s3f0E+WLmtPFyR9/WtV3Y5aaejUkU60JpX4m5xNR2VaqOLTZAYjW8Wy0aXr3zYIhhQQIhAMfqR9oFdYw1J9SsNc+CrhugAvKTi0+BF6VoL6psWhvbAiEAxPPNTmrkmrXwdm/pQQu3UOQmc2vCZ5tiKpW10CgJi8kCIFGkL6utxw93Ncj4exE/gPLvKcT+1Emnoox+O9kRXss5AiAMtYLJDaLEzPrAWcZeeSgSIzbL+ecokmFKSDDcRske6QIgSMkHedwND1olF8vlKsJUGK3BcdtM8w4Xq7BpSBwsloE='
|
||||
|
||||
# 客户端id
|
||||
VITE_APP_CLIENT_ID = 'e5cd7e4891bf95d1d19206ce24a7b32e'
|
||||
VITE_APP_CLIENT_ID='e5cd7e4891bf95d1d19206ce24a7b32e'
|
||||
|
||||
# websocket 开关 默认使用sse推送
|
||||
VITE_APP_WEBSOCKET = false
|
||||
VITE_APP_WEBSOCKET=false
|
||||
|
||||
# sse 开关
|
||||
VITE_APP_SSE = true
|
||||
VITE_APP_SSE=true
|
||||
|
||||
2
.gitignore
vendored
@@ -29,8 +29,6 @@ tests/e2e/reports
|
||||
selenium-debug.log
|
||||
|
||||
# Editor directories and files
|
||||
.idea
|
||||
.vscode
|
||||
*.suo
|
||||
*.ntvs*
|
||||
*.njsproj
|
||||
|
||||
11
package.json
@@ -30,7 +30,8 @@
|
||||
"@vueuse/core": "14.2.1",
|
||||
"animate.css": "4.1.1",
|
||||
"await-to-js": "3.0.0",
|
||||
"axios": "1.13.6",
|
||||
"axios": "1.15.2",
|
||||
"big.js": "^7.0.1",
|
||||
"crypto-js": "4.2.0",
|
||||
"echarts": "6.0.0",
|
||||
"element-china-area-data": "^6.1.0",
|
||||
@@ -51,16 +52,20 @@
|
||||
"vue-json-pretty": "2.6.0",
|
||||
"vue-router": "5.0.3",
|
||||
"vue-types": "6.0.0",
|
||||
"vue3-print-nb": "^0.1.4",
|
||||
"vuedraggable": "^4.1.0",
|
||||
"vxe-table": "4.18.1"
|
||||
"vxe-table": "4.18.1",
|
||||
"xlsx-js-style": "^1.2.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@iconify/json": "^2.2.448",
|
||||
"@types/big.js": "^7.0.0",
|
||||
"@types/crypto-js": "4.2.2",
|
||||
"@types/file-saver": "^2.0.7",
|
||||
"@types/js-cookie": "3.0.6",
|
||||
"@types/node": "^25.4.0",
|
||||
"@types/nprogress": "0.2.3",
|
||||
"@types/xlsx": "^0.0.35",
|
||||
"@unocss/preset-attributify": "66.6.6",
|
||||
"@unocss/preset-icons": "66.6.6",
|
||||
"@unocss/preset-uno": "66.6.6",
|
||||
@@ -83,7 +88,7 @@
|
||||
"unplugin-icons": "23.0.1",
|
||||
"unplugin-vue-components": "31.0.0",
|
||||
"unplugin-vue-setup-extend-plus": "1.0.1",
|
||||
"vite": "7.3.1",
|
||||
"vite": "8.0.5",
|
||||
"vite-plugin-svg-icons-ng": "^1.5.2",
|
||||
"vite-plugin-vue-devtools": "8.0.7",
|
||||
"vite-plugin-zip-pack": "^1.2.4",
|
||||
|
||||
|
Before Width: | Height: | Size: 7.9 KiB After Width: | Height: | Size: 2.4 KiB |
@@ -8,7 +8,6 @@
|
||||
import { useSettingsStore } from '@/store/modules/settings';
|
||||
import { handleThemeStyle } from '@/utils/theme';
|
||||
import { useAppStore } from '@/store/modules/app';
|
||||
import { useDictStore } from './store/modules/dict';
|
||||
|
||||
const appStore = useAppStore();
|
||||
onMounted(() => {
|
||||
|
||||
@@ -80,7 +80,7 @@ export function getCodeImg(): AxiosPromise<VerifyCodeResult> {
|
||||
/**
|
||||
* 第三方登录
|
||||
*/
|
||||
export function callback(data: LoginData): AxiosPromise<any> {
|
||||
export function callback(data: LoginData) {
|
||||
const LoginData = {
|
||||
...data,
|
||||
clientId: clientId,
|
||||
|
||||
@@ -1,38 +1,26 @@
|
||||
export interface ActivityVO {
|
||||
/**
|
||||
* 活动管理表id
|
||||
*/
|
||||
id: string | number;
|
||||
|
||||
/**
|
||||
* 标题
|
||||
*/
|
||||
title: string;
|
||||
|
||||
/**
|
||||
* 作者
|
||||
*/
|
||||
author: string;
|
||||
|
||||
/**
|
||||
* 内容
|
||||
*/
|
||||
content: string;
|
||||
|
||||
/**
|
||||
* 发布状态 0未发布 1已发布
|
||||
*/
|
||||
status: string;
|
||||
|
||||
/**
|
||||
* 浏览量
|
||||
*/
|
||||
pageViews: number;
|
||||
|
||||
/**
|
||||
* 创建者姓名
|
||||
*/
|
||||
createName: string;
|
||||
'id': string;
|
||||
'villageId': string;
|
||||
'title': string;
|
||||
'author': string;
|
||||
'content': string;
|
||||
'status': string;
|
||||
'pageViews': number;
|
||||
'createName': string;
|
||||
'coverImage': string;
|
||||
'startTime': string;
|
||||
'endTime': string;
|
||||
'applyDeadline': string;
|
||||
'signinStartTime': string;
|
||||
'signinEndTime': string;
|
||||
'address': string;
|
||||
'quota': number;
|
||||
'appliedCount': number;
|
||||
'organizer': string;
|
||||
'contactName': string;
|
||||
'contactPhone': string;
|
||||
'pointsReward': number;
|
||||
'requirements': string;
|
||||
}
|
||||
|
||||
export interface ActivityForm extends BaseEntity {
|
||||
|
||||
@@ -65,6 +65,7 @@ export const delBanner = (id: string | number | Array<string | number>) => {
|
||||
/**
|
||||
* 改变Banner图管理 状态
|
||||
* @param id
|
||||
* @param status
|
||||
*/
|
||||
export const switchBanner = (id: string, status: string) => {
|
||||
return request({
|
||||
|
||||
@@ -47,11 +47,6 @@ export interface BannerForm extends BaseEntity {
|
||||
*/
|
||||
byOrder?: number;
|
||||
link: string;
|
||||
|
||||
/**
|
||||
* 小区id
|
||||
*/
|
||||
villageId?: string;
|
||||
}
|
||||
|
||||
export interface BannerQuery extends PageQuery {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
import { ChargeTypeVO, ChargeTypeForm, ChargeTypeQuery } from './type';
|
||||
import { ChargeTypeVO, ChargeTypeForm, ChargeTypeQuery, ChargeTypeRelationQuery } from './type';
|
||||
|
||||
/**
|
||||
* 查询收费类型列表
|
||||
@@ -61,3 +61,37 @@ export const delChargeType = (id: string | number | Array<string | number>) => {
|
||||
method: 'delete'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询收费类型关联列表
|
||||
* @param query
|
||||
*/
|
||||
export const getChargeTypeRelation = (query?: ChargeTypeRelationQuery) => {
|
||||
return request({
|
||||
url: '/chargeType/relation/list',
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 新增收费类型关联
|
||||
* @param data
|
||||
*/
|
||||
export const addChargeTypeRelation = (data: ChargeTypeRelationQuery) => {
|
||||
return request({
|
||||
url: '/chargeType/relation',
|
||||
method: 'POST',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
/**
|
||||
* 新增收费类型关联
|
||||
* @param data
|
||||
*/
|
||||
export const editChargeTypeRelation = (data: ChargeTypeRelationQuery) => {
|
||||
return request({
|
||||
url: '/chargeType/relation',
|
||||
method: 'PUT',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
@@ -2,7 +2,7 @@ export interface ChargeTypeVO {
|
||||
/**
|
||||
* 收费类型表id
|
||||
*/
|
||||
id: string | number;
|
||||
id: string;
|
||||
|
||||
/**
|
||||
* 收费类型名称
|
||||
@@ -64,3 +64,20 @@ export interface ChargeType2Query extends PageQuery {
|
||||
*/
|
||||
params?: any;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
export interface ChargeTypeRelationQuery {
|
||||
/**
|
||||
* 主收费类型表id
|
||||
*/
|
||||
masterTypeId?: string;
|
||||
/**
|
||||
* 子收费类型表id
|
||||
*/
|
||||
slaveTypeIds?: string;
|
||||
id?: string;
|
||||
// 状态 0启用 1停用
|
||||
status?: string;
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ export interface ComplaintTypeVO {
|
||||
/**
|
||||
* 投诉类型管理表id
|
||||
*/
|
||||
id: string | number;
|
||||
id: string;
|
||||
|
||||
/**
|
||||
* 投诉类型名称
|
||||
@@ -13,43 +13,21 @@ export interface ComplaintTypeVO {
|
||||
* 状态 0 启用 1停用
|
||||
*/
|
||||
status: string;
|
||||
|
||||
/**
|
||||
* 创建人名称
|
||||
*/
|
||||
createNam: string;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
creaateTime: string;
|
||||
}
|
||||
|
||||
export interface ComplaintTypeForm extends BaseEntity {
|
||||
/**
|
||||
* 投诉类型管理表id
|
||||
*/
|
||||
id?: string | number;
|
||||
|
||||
/**
|
||||
* 投诉类型名称
|
||||
*/
|
||||
name?: string;
|
||||
|
||||
id?: string;
|
||||
/**
|
||||
* 状态 0 启用 1停用
|
||||
*/
|
||||
status?: string;
|
||||
|
||||
/**
|
||||
* 创建人名称
|
||||
* 投诉类型名称
|
||||
*/
|
||||
createNam?: string;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
creaateTime?: string;
|
||||
name?: string;
|
||||
}
|
||||
|
||||
export interface ComplaintTypeQuery extends PageQuery {
|
||||
@@ -62,19 +40,4 @@ export interface ComplaintTypeQuery extends PageQuery {
|
||||
* 状态 0 启用 1停用
|
||||
*/
|
||||
status?: string;
|
||||
|
||||
/**
|
||||
* 创建人名称
|
||||
*/
|
||||
createNam?: string;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
creaateTime?: string;
|
||||
|
||||
/**
|
||||
* 日期范围参数
|
||||
*/
|
||||
params?: any;
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@ export const listComplaint = (query?: ComplaintQuery): AxiosPromise<ComplaintVO[
|
||||
* 查询投诉管理详细
|
||||
* @param id
|
||||
*/
|
||||
export const getComplaint = (id: string | number): AxiosPromise<ComplaintVO> => {
|
||||
export const getComplaint = (id: string): AxiosPromise<ComplaintVO> => {
|
||||
return request({
|
||||
url: '/complaint/' + id,
|
||||
method: 'get'
|
||||
|
||||
@@ -30,7 +30,7 @@ export interface ComplaintVO {
|
||||
problemIamgeUrl: string;
|
||||
|
||||
/**
|
||||
* 投诉状态 0待处理 1处理中 2已处理
|
||||
* 投诉状态 0 待处理 1 已处理
|
||||
*/
|
||||
status: string;
|
||||
|
||||
@@ -48,6 +48,8 @@ export interface ComplaintVO {
|
||||
* 处理描述
|
||||
*/
|
||||
handleContent: string;
|
||||
|
||||
problemImageUrl: string;
|
||||
}
|
||||
|
||||
export interface ComplaintForm extends BaseEntity {
|
||||
@@ -79,7 +81,7 @@ export interface ComplaintForm extends BaseEntity {
|
||||
/**
|
||||
* 问题照片url
|
||||
*/
|
||||
problemIamgeUrl?: string;
|
||||
problemImageUrl?: string;
|
||||
|
||||
/**
|
||||
* 投诉状态 0待处理 1处理中 2已处理
|
||||
@@ -126,7 +128,7 @@ export interface ComplaintQuery extends PageQuery {
|
||||
/**
|
||||
* 问题照片url
|
||||
*/
|
||||
problemIamgeUrl?: string;
|
||||
problemImageUrl?: string;
|
||||
|
||||
/**
|
||||
* 投诉状态 0待处理 1处理中 2已处理
|
||||
|
||||
@@ -13,7 +13,8 @@ export interface DecorationVO {
|
||||
* 所属房屋id
|
||||
*/
|
||||
houseId: string | number;
|
||||
|
||||
buildingId: string;
|
||||
unitNoId: string;
|
||||
/**
|
||||
* 申请人姓名
|
||||
*/
|
||||
|
||||
@@ -61,3 +61,10 @@ export const delHandleLog = (id: string | number | Array<string | number>) => {
|
||||
method: 'delete'
|
||||
});
|
||||
};
|
||||
export const uploadAttachments = (files: FormData) => {
|
||||
return request({
|
||||
url: '/handleLog/uploadAttachments',
|
||||
method: 'post',
|
||||
data: files
|
||||
});
|
||||
};
|
||||
|
||||
@@ -28,6 +28,28 @@ export interface HandleLogVO {
|
||||
* 办事地点
|
||||
*/
|
||||
handlePosition: string;
|
||||
|
||||
handleLogFileList: FileVO[];
|
||||
}
|
||||
|
||||
export interface FileVO {
|
||||
/**
|
||||
* 文件id
|
||||
*/
|
||||
id: string | number;
|
||||
|
||||
/**
|
||||
* 文件名
|
||||
*/
|
||||
fileName: string;
|
||||
|
||||
/**
|
||||
* 文件路径
|
||||
*/
|
||||
filePath: string;
|
||||
|
||||
'handleLogId': string;
|
||||
'ossId': string;
|
||||
}
|
||||
|
||||
export interface HandleLogForm extends BaseEntity {
|
||||
|
||||
@@ -80,3 +80,49 @@ export const list_statapi = (query?: { taskTimeBegin: string; taskTimeEnd: strin
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
export type exportPageApiQuery = {
|
||||
/**
|
||||
* 数据类型:1-日报 / 2-周报 / 3-月报
|
||||
*/
|
||||
dataType?: string;
|
||||
/**
|
||||
* 页码
|
||||
*/
|
||||
pageNum: number;
|
||||
/**
|
||||
* 每页条数
|
||||
*/
|
||||
pageSize: number;
|
||||
/**
|
||||
* 查询开始日期
|
||||
*/
|
||||
queryDateBegin?: string;
|
||||
/**
|
||||
* 查询结束日期
|
||||
*/
|
||||
queryDateEnd?: string;
|
||||
/**
|
||||
* 日期
|
||||
*/
|
||||
statDate?: string;
|
||||
};
|
||||
|
||||
type exportAllApiQuery = Omit<exportPageApiQuery, 'pageSize' | 'pageNum'>;
|
||||
/** 导出当前页 数据api */
|
||||
export const exportPageApi = (data: exportPageApiQuery): AxiosPromise<any[]> => {
|
||||
return request({
|
||||
url: '/inspection/data/export/page',
|
||||
method: 'POST',
|
||||
data
|
||||
});
|
||||
};
|
||||
|
||||
/** 导出 所有 数据api */
|
||||
export const exportAllApi = (data: exportAllApiQuery): AxiosPromise<any[]> => {
|
||||
return request({
|
||||
url: '/inspection/data/export',
|
||||
method: 'POST',
|
||||
data
|
||||
});
|
||||
};
|
||||
|
||||
@@ -8,7 +8,7 @@ import { PlanVO, PlanForm, PlanQuery } from '@/api/system/InspectionPlan/type';
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
export const listPlan = (query?: PlanQuery): AxiosPromise<PlanVO[]> => {
|
||||
export const listPlan = (query: PlanQuery | {} = {}): AxiosPromise<PlanVO[]> => {
|
||||
return request({
|
||||
url: '/inspection/plan/list',
|
||||
method: 'get',
|
||||
@@ -70,6 +70,6 @@ export const changePlanStatus = (id: string, status: string) => {
|
||||
return request({
|
||||
url: '/inspection/plan/changeStatus',
|
||||
method: 'put',
|
||||
data: { id, status }
|
||||
params: { id, status }
|
||||
});
|
||||
};
|
||||
|
||||
@@ -3,17 +3,12 @@ export interface PlanVO {
|
||||
* 主键ID
|
||||
*/
|
||||
id: string | number;
|
||||
|
||||
inspectorIds: string;
|
||||
/**
|
||||
* 巡检计划名称
|
||||
*/
|
||||
planName: string;
|
||||
|
||||
/**
|
||||
* 巡检人员ID,多个用逗号分隔
|
||||
*/
|
||||
inspectorIds: string;
|
||||
|
||||
/**
|
||||
* 执行周期,如:开始日期-结束日期
|
||||
*/
|
||||
@@ -32,7 +27,12 @@ export interface PlanVO {
|
||||
/**
|
||||
* 巡检设置:0-必须拍照,1-可以跳检
|
||||
*/
|
||||
inspectSetting: string;
|
||||
inspectSetting: number;
|
||||
inspectSettingDict: {
|
||||
dictLabel: string;
|
||||
dictValue: string;
|
||||
listClass: string;
|
||||
};
|
||||
|
||||
/**
|
||||
* 计划路线,多个用逗号分隔
|
||||
@@ -53,7 +53,11 @@ export interface PlanVO {
|
||||
* 执行周期具体日期
|
||||
*/
|
||||
executeDay: string;
|
||||
|
||||
executeDayList: {
|
||||
dictLabel: string;
|
||||
dictValue: string;
|
||||
listClass: string;
|
||||
}[];
|
||||
/** 巡检人员信息 */
|
||||
inspectorList: {
|
||||
'userId': string;
|
||||
@@ -106,7 +110,7 @@ export interface PlanForm extends BaseEntity {
|
||||
/**
|
||||
* 巡检设置:0-必须拍照,1-可以跳检
|
||||
*/
|
||||
inspectSetting?: string;
|
||||
inspectSetting?: number;
|
||||
|
||||
/**
|
||||
* 计划路线,多个用逗号分隔
|
||||
|
||||
@@ -64,6 +64,7 @@ export const delPoint = (id: string | number | Array<string | number>) => {
|
||||
/**
|
||||
* 修改巡检点状态
|
||||
* @param id
|
||||
* @param status
|
||||
*/
|
||||
export const changePointStatus = (id: string, status: string) => {
|
||||
return request({
|
||||
|
||||
@@ -2,7 +2,7 @@ export interface PointVO {
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
id: string | number;
|
||||
id: string;
|
||||
|
||||
/**
|
||||
* 巡检点名称
|
||||
@@ -17,7 +17,7 @@ export interface PointVO {
|
||||
/**
|
||||
* 所属路线ID
|
||||
*/
|
||||
routeId: string | number;
|
||||
routeId: string;
|
||||
|
||||
/**
|
||||
* 巡检点位置(经纬度),格式:经度,纬度
|
||||
|
||||
@@ -19,11 +19,15 @@ export const listRecord = (query?: RecordQuery): AxiosPromise<RecordVO[]> => {
|
||||
/**
|
||||
* 查询巡检记录主详细
|
||||
* @param id
|
||||
* @param date
|
||||
*/
|
||||
export const getRecord = (id: string | number): AxiosPromise<RecordVO> => {
|
||||
export const getRecord = (id: string, date?: string): AxiosPromise<RecordVO> => {
|
||||
return request({
|
||||
url: '/inspection/record/' + id,
|
||||
method: 'get'
|
||||
method: 'get',
|
||||
params: {
|
||||
date
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ export interface RecordVO {
|
||||
actualStartTime?: string;
|
||||
createByName?: string;
|
||||
createTime?: string;
|
||||
details?: [];
|
||||
details?: DetailsVo[];
|
||||
id?: string;
|
||||
inspectorId?: number;
|
||||
inspectorName?: string;
|
||||
@@ -12,7 +12,7 @@ export interface RecordVO {
|
||||
remark?: string;
|
||||
routeId?: string;
|
||||
routeName?: string;
|
||||
status?: number;
|
||||
status?: string;
|
||||
statusLabel?: null;
|
||||
taskName?: string;
|
||||
taskTime?: string;
|
||||
@@ -82,3 +82,19 @@ export interface RecordQuery extends PageQuery {
|
||||
*/
|
||||
taskName?: string;
|
||||
}
|
||||
|
||||
export interface DetailsVo {
|
||||
'id': string;
|
||||
'taskId': string;
|
||||
'pointId': string;
|
||||
'pointName': string;
|
||||
'location': string;
|
||||
'checkTime': string;
|
||||
'checkResult': string;
|
||||
'photos': string;
|
||||
'sortNo': string;
|
||||
'remark': string;
|
||||
'imgUrl': string;
|
||||
'status': string;
|
||||
photoslist?: string[];
|
||||
}
|
||||
|
||||
@@ -8,7 +8,7 @@ import { RouteVO, RouteForm, RouteQuery } from './type';
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
export const listRoute = (query?: RouteQuery): AxiosPromise<RouteVO[]> => {
|
||||
export const listRoute = (query: RouteQuery | {} = {}): AxiosPromise<RouteVO[]> => {
|
||||
return request({
|
||||
url: '/inspection/route/list',
|
||||
method: 'get',
|
||||
@@ -20,7 +20,7 @@ export const listRoute = (query?: RouteQuery): AxiosPromise<RouteVO[]> => {
|
||||
* 查询巡检路线详细
|
||||
* @param id
|
||||
*/
|
||||
export const getRoute = (id: string | number): AxiosPromise<RouteVO> => {
|
||||
export const getRoute = (id: string): AxiosPromise<RouteVO> => {
|
||||
return request({
|
||||
url: '/inspection/route/' + id,
|
||||
method: 'get'
|
||||
|
||||
@@ -4,7 +4,7 @@ export interface RouteVO {
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
id: string | number;
|
||||
id: string;
|
||||
|
||||
/**
|
||||
* 巡检路线名称
|
||||
@@ -70,7 +70,7 @@ export interface RouteForm extends BaseEntity {
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
id?: string | number;
|
||||
id?: string;
|
||||
|
||||
/**
|
||||
* 巡检路线名称
|
||||
|
||||
@@ -15,7 +15,7 @@ export interface NotificationVo {
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
export const getNotificationList = (query): AxiosPromise<NoticeVO[]> => {
|
||||
export const getNotificationList = (query): AxiosPromise<NotificationVo[]> => {
|
||||
return request({
|
||||
url: '/notification/list',
|
||||
method: 'get',
|
||||
@@ -25,16 +25,16 @@ export const getNotificationList = (query): AxiosPromise<NoticeVO[]> => {
|
||||
|
||||
/**
|
||||
* 消息通知 已读
|
||||
* @param query
|
||||
* @returns {*}
|
||||
* @param ids
|
||||
*/
|
||||
|
||||
export const ReadNotificationByID = (id: string) => {
|
||||
export const ReadNotificationByID = (ids: string[]) => {
|
||||
return request({
|
||||
url: '/notification/read',
|
||||
method: 'POST',
|
||||
data: {
|
||||
id
|
||||
id: ids
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
@@ -61,3 +61,61 @@ export const delParkingCost = (id: string | number | Array<string | number>) =>
|
||||
method: 'delete'
|
||||
});
|
||||
};
|
||||
|
||||
export type Request = {
|
||||
/**
|
||||
* 区域id
|
||||
*/
|
||||
areaId?: string;
|
||||
/**
|
||||
* 0 审核中 1 审核通过 2 审核不通过
|
||||
*/
|
||||
checkStatus?: string;
|
||||
/**
|
||||
* 添加者姓名,sys_user nickname
|
||||
*/
|
||||
createName?: string;
|
||||
/**
|
||||
* id车位管理表
|
||||
*/
|
||||
id?: string;
|
||||
/**
|
||||
* 车位面积(单位㎡)
|
||||
*/
|
||||
parkingArea?: number;
|
||||
/**
|
||||
* 车位编号
|
||||
*/
|
||||
parkingCode?: string;
|
||||
/**
|
||||
* 车位楼层
|
||||
*/
|
||||
parkingFloor?: string;
|
||||
/**
|
||||
* 车位状态 0 闲置 1自用 2出租
|
||||
*/
|
||||
parkingStatus?: string;
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
remark?: string;
|
||||
/**
|
||||
* 住户id
|
||||
*/
|
||||
residentId?: string;
|
||||
/**
|
||||
* 所属小区id
|
||||
*/
|
||||
villageId?: string;
|
||||
};
|
||||
/**
|
||||
* 查询停车缴费 车位列表
|
||||
* @param {Request} queryParams
|
||||
*/
|
||||
export const getParkingCostCarAreaApi = (queryParams: Request) => {
|
||||
return request({
|
||||
url: '/parkingCost/parkingList',
|
||||
method: 'get',
|
||||
params: queryParams
|
||||
});
|
||||
};
|
||||
|
||||
@@ -6,22 +6,154 @@ import { AxiosPromise } from 'axios';
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
export const income_statsApi = (
|
||||
datetime?: string
|
||||
): Promise<{
|
||||
'totalResident': number;
|
||||
'totalHouse': number;
|
||||
'totalParking': number;
|
||||
'totalDevice': number;
|
||||
'totalMaterial': number;
|
||||
'totalComplaint': number;
|
||||
}> => {
|
||||
export type IncomeStatsResponse = {
|
||||
'totalDue': string;
|
||||
'totalPaid': string;
|
||||
'totalUnpaid': string;
|
||||
'paidPercentage': string;
|
||||
'payWx': number;
|
||||
'payZfb': number;
|
||||
'payOffline': number;
|
||||
'totalPay': number;
|
||||
'feeTypeStats': feeTypeStats[];
|
||||
'dailyStats': {
|
||||
'statDate': string;
|
||||
'totalDue': string;
|
||||
'totalPaid': string;
|
||||
'totalUnpaid': string;
|
||||
}[];
|
||||
};
|
||||
export type feeTypeStats = {
|
||||
'feeType': number;
|
||||
'feeName': string;
|
||||
'totalDue': string;
|
||||
'totalPaid': string;
|
||||
'totalUnpaid': string;
|
||||
'paidPercentage': string;
|
||||
};
|
||||
export const income_statsApi = (datetime?: string): AxiosPromise<IncomeStatsResponse> => {
|
||||
return request({
|
||||
url: '/api/analysis/income/stats',
|
||||
method: 'get',
|
||||
params: {
|
||||
datetime: datetime
|
||||
startDate: datetime
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
export interface sourceType {
|
||||
'totalPayable': string;
|
||||
'totalReceived': string;
|
||||
'totalPending': string;
|
||||
'parkingFee': string;
|
||||
'parkingFeePercent': string;
|
||||
'propertyFee': string;
|
||||
'propertyFeePercent': string;
|
||||
'utilityFee': string;
|
||||
'utilityFeePercent': string;
|
||||
'shopRent': string;
|
||||
'shopRentPercent': string;
|
||||
'repairFee': string;
|
||||
'repairFeePercent': string;
|
||||
'garbageFee': string;
|
||||
'garbageFeePercent': string;
|
||||
}
|
||||
// 收入来源
|
||||
export const income_scourcApi = (datetime?: string): AxiosPromise<sourceType> => {
|
||||
return request({
|
||||
url: '/api/analysis/income/source',
|
||||
method: 'get',
|
||||
params: {
|
||||
date: datetime
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
export interface PayMentMethod {
|
||||
'wechatAmount': string;
|
||||
'wechatPercent': string;
|
||||
'alipayAmount': string;
|
||||
'alipayPercent': string;
|
||||
'yidangAmount': string;
|
||||
'yidangPercent': string;
|
||||
'cashAmount': string;
|
||||
'cashPercent': string;
|
||||
'unionPayAmount': string;
|
||||
'unionPayPercent': string;
|
||||
'transferAmount': string;
|
||||
'transferPercent': string;
|
||||
'depositOffsetAmount': string;
|
||||
'depositOffsetAmountPercent': string;
|
||||
'propertyOffsetAmount': string;
|
||||
'propertyOffsetAmountPercent': string;
|
||||
}
|
||||
// 缴费方式
|
||||
export const payment_methodApi = (datetime?: string): AxiosPromise<PayMentMethod> => {
|
||||
return request({
|
||||
url: '/api/analysis/income/payment_method',
|
||||
method: 'get',
|
||||
params: {
|
||||
date: datetime
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
export interface Arrears_distrubution {
|
||||
month: number;
|
||||
amount: string;
|
||||
}
|
||||
// 欠费分布
|
||||
export const arrears_distributionApi = (
|
||||
datetime?: string
|
||||
): AxiosPromise<{
|
||||
items: Arrears_distrubution[];
|
||||
}> => {
|
||||
return request({
|
||||
url: '/api/analysis/income/arrears_distribution',
|
||||
method: 'get',
|
||||
params: {
|
||||
date: datetime
|
||||
}
|
||||
});
|
||||
};
|
||||
export interface payment_sourceType {
|
||||
'miniProgramAmount': string;
|
||||
'miniProgramPercent': string;
|
||||
'mobileAppAmount': string;
|
||||
'mobileAppPercent': string;
|
||||
'offlineAmount': string;
|
||||
'offlinePercent': string;
|
||||
}
|
||||
// 缴费来源分析
|
||||
export const payment_sourceApi = (datetime?: string): AxiosPromise<payment_sourceType> => {
|
||||
return request({
|
||||
url: '/api/analysis/income/payment_source',
|
||||
method: 'get',
|
||||
params: {
|
||||
date: datetime
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
export interface payment_trendType {
|
||||
'date': string;
|
||||
'paidAmount': string;
|
||||
'unpaidAmount': string;
|
||||
}
|
||||
|
||||
// 缴费走势分析
|
||||
export const payment_trendApi = (
|
||||
startDate?: string,
|
||||
endDate?: string
|
||||
): AxiosPromise<{
|
||||
items: payment_trendType[];
|
||||
}> => {
|
||||
return request({
|
||||
url: '/api/analysis/income/payment_trend',
|
||||
method: 'get',
|
||||
params: {
|
||||
startDate,
|
||||
endDate
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
@@ -8,17 +8,17 @@ import { AxiosPromise } from 'axios';
|
||||
*/
|
||||
|
||||
export const user_movein_list = (query?: {
|
||||
datetime: string;
|
||||
}): Promise<{
|
||||
'totalResident': number;
|
||||
dateTime: string;
|
||||
}): AxiosPromise<{
|
||||
'villageId': string;
|
||||
'villageName': string;
|
||||
'totalHouse': number;
|
||||
'totalParking': number;
|
||||
'totalDevice': number;
|
||||
'totalMaterial': number;
|
||||
'totalComplaint': number;
|
||||
'occupiedHouse': number;
|
||||
'occupancyRate': string;
|
||||
'occupancyCount': number;
|
||||
}> => {
|
||||
return request({
|
||||
url: '/workSpace/totalList',
|
||||
url: '/api/analysis/occupancy/stats',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
@@ -31,7 +31,7 @@ export const user_movein_list = (query?: {
|
||||
*/
|
||||
|
||||
export const get_movein_user_type = (query?: {
|
||||
datetime: string;
|
||||
dateTime: string;
|
||||
}): Promise<{
|
||||
'owner': string;
|
||||
'ownerRate': string;
|
||||
@@ -39,7 +39,7 @@ export const get_movein_user_type = (query?: {
|
||||
'tenantRate': string;
|
||||
'relatives': string;
|
||||
'relativeRate': string;
|
||||
'other': string;
|
||||
'otherType': string;
|
||||
'otherRate': string;
|
||||
'totalResident': string;
|
||||
}> => {
|
||||
@@ -56,7 +56,7 @@ export const get_movein_user_type = (query?: {
|
||||
*/
|
||||
|
||||
export const get_movein_user_sex = (query?: {
|
||||
datetime: string;
|
||||
dateTime: string;
|
||||
}): Promise<{
|
||||
'man': number;
|
||||
'woman': number;
|
||||
@@ -77,16 +77,34 @@ export const get_movein_user_sex = (query?: {
|
||||
*/
|
||||
|
||||
export const get_movein_moveout_list = (query?: {
|
||||
datetime: string;
|
||||
}): Promise<
|
||||
date: string;
|
||||
}): AxiosPromise<
|
||||
{
|
||||
'date': string;
|
||||
'inCount': number;
|
||||
'outCount': number;
|
||||
'moveInCount': number;
|
||||
'moveOutCount': number;
|
||||
'totalCount': number;
|
||||
}[]
|
||||
> => {
|
||||
return request({
|
||||
url: '/residentDailyStat/selectTotal',
|
||||
url: '/api/analysis/resident/moveInOutStats',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
export const get_person_age = (query?: {
|
||||
dateTime: string;
|
||||
}): AxiosPromise<
|
||||
{
|
||||
'date': string;
|
||||
'moveInCount': number;
|
||||
'moveOutCount': number;
|
||||
'totalCount': number;
|
||||
}[]
|
||||
> => {
|
||||
return request({
|
||||
url: '/gender/personAge',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
|
||||
@@ -53,11 +53,47 @@ export const updateQuestionnaire = (data: QuestionnaireForm) => {
|
||||
|
||||
/**
|
||||
* 删除问卷调查
|
||||
* @param id
|
||||
* @param ids
|
||||
* @param vailid
|
||||
* @param ids
|
||||
* @param vailid
|
||||
*/
|
||||
export const delQuestionnaire = (id: string | number | Array<string | number>) => {
|
||||
export const delQuestionnaire = (ids: string | string[], vailid: boolean = true) => {
|
||||
return request({
|
||||
url: '/questionnaire/' + id,
|
||||
method: 'delete'
|
||||
url: '/questionnaire/' + ids + '?isValid=' + vailid,
|
||||
method: 'delete',
|
||||
headers: {
|
||||
silentError: 'true'
|
||||
}
|
||||
});
|
||||
};
|
||||
/**
|
||||
* 查询问卷调查回答列表
|
||||
*/
|
||||
export const getQuestionnaireAnswer = (
|
||||
{
|
||||
pageSize,
|
||||
pageNum,
|
||||
questionnaireId
|
||||
}
|
||||
) => {
|
||||
return request({
|
||||
url: '/questionnaireAnswer/list',
|
||||
method: 'GET',
|
||||
params: {
|
||||
pageSize,
|
||||
pageNum,
|
||||
questionnaireId,
|
||||
answerStatus: '1'
|
||||
}
|
||||
});
|
||||
};
|
||||
/**
|
||||
* 查询问卷调查回答详情
|
||||
*/
|
||||
export const getQuestionnaireAnswerMain = (id: string) => {
|
||||
return request({
|
||||
url: '/questionnaireAnswer/' + id,
|
||||
method: 'GET'
|
||||
});
|
||||
};
|
||||
@@ -51,7 +51,7 @@ export interface QuestionnaireForm extends BaseEntity {
|
||||
/**
|
||||
* 问卷ID
|
||||
*/
|
||||
id?: string | number;
|
||||
id?: string;
|
||||
|
||||
/**
|
||||
* 所属小区id
|
||||
@@ -154,11 +154,12 @@ export interface QuestionComponentItem {
|
||||
type: string;
|
||||
title: string;
|
||||
required: boolean;
|
||||
|
||||
options: QuestionComponentOption[];
|
||||
}
|
||||
|
||||
export interface QuestionComponentnaireForm {
|
||||
id?: string | number | null;
|
||||
id?: string;
|
||||
title: string;
|
||||
description?: string;
|
||||
content: QuestionComponentItem[];
|
||||
@@ -1,65 +1,32 @@
|
||||
export interface RepairVO {
|
||||
/**
|
||||
* 报修管理表id
|
||||
*/
|
||||
id: string | number;
|
||||
|
||||
/**
|
||||
* 关联房屋id
|
||||
*/
|
||||
houseId: string | number;
|
||||
|
||||
/**
|
||||
* 维修项目id
|
||||
*/
|
||||
maintenanceItemId: string | number;
|
||||
|
||||
/**
|
||||
* 问题描述
|
||||
*/
|
||||
problem: string;
|
||||
|
||||
/**
|
||||
* 报修人id(住户表id)
|
||||
*/
|
||||
residentId: string;
|
||||
|
||||
/**
|
||||
* 手机号码
|
||||
*/
|
||||
phone: number;
|
||||
|
||||
/**
|
||||
* 预约日期
|
||||
*/
|
||||
orderDate: string;
|
||||
|
||||
/**
|
||||
* 问题图片地址
|
||||
*/
|
||||
problemImageUrl: string;
|
||||
|
||||
/**
|
||||
* 0 已提交 1已分配 2维修中 3维修完成
|
||||
*/
|
||||
problemStatus: string;
|
||||
|
||||
/**
|
||||
* 维修描述
|
||||
*/
|
||||
repairDes: string;
|
||||
|
||||
/**
|
||||
* 维修图片url
|
||||
*/
|
||||
repairImageUrl: string;
|
||||
|
||||
/**
|
||||
* 维修人员id
|
||||
*/
|
||||
repairId: string;
|
||||
/** 名称(小区名-楼栋名-单元号-房间号) */
|
||||
name?: string;
|
||||
'id': string;
|
||||
'houseId': string;
|
||||
'maintenanceItemId': number;
|
||||
'maintenanceItemName': number;
|
||||
'problem': string;
|
||||
'residentId': string;
|
||||
'residentName': string;
|
||||
'phone': string;
|
||||
'orderDate': string;
|
||||
'problemImageUrl': string;
|
||||
'problemStatus': string;
|
||||
'repairDes': string;
|
||||
'repairImageUrl': string;
|
||||
'repairId': string;
|
||||
'repairName': string;
|
||||
'houseName': string;
|
||||
'item': string;
|
||||
'projectType': number;
|
||||
'updateTime': string;
|
||||
'projectTypeStr': string;
|
||||
'repairIsCheck': string;
|
||||
'manageIsCheck': string;
|
||||
'isCheckStr': number;
|
||||
'repairPhone': number;
|
||||
'repairRoleName': number;
|
||||
'repairStatus': string;
|
||||
repairUserId: string;
|
||||
'createTime': string;
|
||||
}
|
||||
|
||||
export interface RepairForm extends BaseEntity {
|
||||
@@ -91,7 +58,7 @@ export interface RepairForm extends BaseEntity {
|
||||
/**
|
||||
* 手机号码
|
||||
*/
|
||||
phone?: number;
|
||||
phone?: string;
|
||||
|
||||
/**
|
||||
* 预约日期
|
||||
@@ -168,7 +135,7 @@ export interface RepairQuery extends PageQuery {
|
||||
/**
|
||||
* 手机号码
|
||||
*/
|
||||
phone?: number;
|
||||
phone?: string;
|
||||
|
||||
/**
|
||||
* 预约日期
|
||||
|
||||
@@ -23,7 +23,7 @@ export interface RepairProjectVO {
|
||||
* 项目层级 0,1
|
||||
*/
|
||||
projectLevel: number;
|
||||
children?: [];
|
||||
children?: RepairProjectVO[];
|
||||
/**
|
||||
* 排序 (数越小越靠前)
|
||||
*/
|
||||
@@ -33,6 +33,9 @@ export interface RepairProjectVO {
|
||||
* 状态 0启用 1停用
|
||||
*/
|
||||
status: string;
|
||||
|
||||
disabled?: boolean;
|
||||
// children?: RepairProjectVO[];
|
||||
}
|
||||
|
||||
export interface RepairProjectForm extends BaseEntity {
|
||||
@@ -70,26 +73,6 @@ export interface RepairProjectForm extends BaseEntity {
|
||||
* 状态 0启用 1停用
|
||||
*/
|
||||
status?: string;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
cretaeTime?: string;
|
||||
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
createBy?: number;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
updateTime?: string;
|
||||
|
||||
/**
|
||||
* 更新者
|
||||
*/
|
||||
updateBy?: number;
|
||||
}
|
||||
|
||||
export interface RepairProjectQuery extends PageQuery {
|
||||
@@ -122,9 +105,4 @@ export interface RepairProjectQuery extends PageQuery {
|
||||
* 状态 0启用 1停用
|
||||
*/
|
||||
status?: string;
|
||||
|
||||
/**
|
||||
* 日期范围参数
|
||||
*/
|
||||
params?: any;
|
||||
}
|
||||
|
||||
@@ -93,11 +93,12 @@ export type BillUserlist = {
|
||||
'houseNo': string;
|
||||
'residentId': string;
|
||||
'buildingId': string;
|
||||
'parkingId': string;
|
||||
};
|
||||
/**
|
||||
* 查询业主列表
|
||||
* @param data
|
||||
* @returns {*}
|
||||
* @param query
|
||||
* @param query
|
||||
*/
|
||||
export const queryResidentList_holder = (query: { pageNum: number; pageSize: number }): AxiosPromise<BillUserlist[]> => {
|
||||
return request({
|
||||
@@ -109,8 +110,8 @@ export const queryResidentList_holder = (query: { pageNum: number; pageSize: num
|
||||
|
||||
/**
|
||||
* 查询车位业主列表
|
||||
* @param data
|
||||
* @returns {*}
|
||||
* @param query
|
||||
* @param query
|
||||
*/
|
||||
export const queryResidentList_Cars = (query: { pageNum: number; pageSize: number }): AxiosPromise<BillUserlist[]> => {
|
||||
return request({
|
||||
@@ -119,3 +120,13 @@ export const queryResidentList_Cars = (query: { pageNum: number; pageSize: numbe
|
||||
params: query
|
||||
});
|
||||
};
|
||||
/**
|
||||
* 生成账单
|
||||
*/
|
||||
export const manualGenerateApi = (data: { billId: string; chargePeriod: string; yearMonths?: string[]; year?: string[] }) => {
|
||||
return request({
|
||||
url: '/bill/manualGenerate',
|
||||
method: 'POST',
|
||||
data
|
||||
});
|
||||
};
|
||||
|
||||
@@ -3,6 +3,7 @@ export interface BillVO {
|
||||
* 账单管理表id
|
||||
*/
|
||||
id: string;
|
||||
billName: string;
|
||||
|
||||
/**
|
||||
* 账单编号
|
||||
@@ -19,9 +20,13 @@ export interface BillVO {
|
||||
* 收费范围 0全体业主 1部分业主
|
||||
*/
|
||||
chargeScope: string;
|
||||
/**
|
||||
* 按季度收费时,指定季度起始年月列表,格式 "yyyy-MM",如 ["2026-01", "2026-04", "2026-07"]
|
||||
*/
|
||||
periodCalcType: string;
|
||||
|
||||
/**
|
||||
* 收费周期 0年 1月 2日
|
||||
* 收费周期 0年 1月 2日 3 季度 4永久;为空时取账单配置
|
||||
*/
|
||||
chargePeriod: string;
|
||||
|
||||
@@ -49,6 +54,8 @@ export interface BillVO {
|
||||
* 创建时间
|
||||
*/
|
||||
cerateTime: string;
|
||||
|
||||
parkingIds: string[];
|
||||
}
|
||||
|
||||
export interface BillForm extends BaseEntity {
|
||||
@@ -104,7 +111,7 @@ export interface BillForm extends BaseEntity {
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
cerateTime?: string;
|
||||
createTime?: string;
|
||||
}
|
||||
|
||||
export interface BillQuery extends PageQuery {
|
||||
|
||||
@@ -10,8 +10,8 @@ export type cashlist = {
|
||||
|
||||
/**
|
||||
* 查询住户列表
|
||||
* @param post
|
||||
* @returns {*}
|
||||
* @param data
|
||||
*/
|
||||
export const cashQuery = (data: { residentName?: string; queryType: number }): AxiosPromise<cashlist[]> => {
|
||||
return request({
|
||||
@@ -22,9 +22,13 @@ export const cashQuery = (data: { residentName?: string; queryType: number }): A
|
||||
};
|
||||
|
||||
export type billlistType = {
|
||||
needPayAmount: string; // 需要支付金额
|
||||
actualAccount: string; // 实际支付金额
|
||||
singleDiscountAmount: string; // 单笔优惠金额
|
||||
'villageId': string;
|
||||
'residentId': string;
|
||||
'houseId': string;
|
||||
'detailsId': string;
|
||||
'houseName': string;
|
||||
'parkingId': string;
|
||||
'parkingName': string;
|
||||
@@ -38,12 +42,15 @@ export type billlistType = {
|
||||
'endDate': string;
|
||||
'money': string;
|
||||
'payStatus': string;
|
||||
'remark': string;
|
||||
amount: string;
|
||||
residentName: string;
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询账单列表
|
||||
* @param post
|
||||
* @returns {*}
|
||||
* @param data
|
||||
*/
|
||||
export const billQuery = (data: { residentId?: string; payStatus: '0' | '1' }): AxiosPromise<billlistType[]> => {
|
||||
return request({
|
||||
@@ -59,3 +66,65 @@ export const billEdit = (data: { 'detailsId': string[]; 'payType': string; 'payS
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
// 打印票据
|
||||
export const billPrint = (data: { 'detailsIds': string[]; 'residentId': string }): AxiosPromise<BillPrintType> => {
|
||||
return request({
|
||||
url: '/cash/print',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
// 查询所有账单总金额
|
||||
export const getAllAccount = (
|
||||
data = {}
|
||||
): AxiosPromise<{
|
||||
/** 总金额 */
|
||||
'receivableAmount': string;
|
||||
/** 总实收金额 */
|
||||
'receivedAmount': string;
|
||||
/** 总优惠金额 */
|
||||
'discountAmount': string;
|
||||
/** 未收金额 */
|
||||
'unpaidAmount': string;
|
||||
}> => {
|
||||
return request({
|
||||
url: '/cash/billAmountSummary',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
// 删除账单
|
||||
export const billDelete = (ids: string | string[]) => {
|
||||
return request({
|
||||
url: `/cash/bill/${ids}`,
|
||||
method: 'DELETE'
|
||||
});
|
||||
};
|
||||
|
||||
export type BillPrintType = {
|
||||
'totalAccount': string;
|
||||
'residentName': string;
|
||||
'payTypeSummary': {
|
||||
'payType': string;
|
||||
'payAmount': string;
|
||||
}[];
|
||||
'detailsList': {
|
||||
'detailsId': string;
|
||||
'chargeItemName': string;
|
||||
'billName': string;
|
||||
'detailsTime': string;
|
||||
'useCount': string;
|
||||
'account': string;
|
||||
'payType': string;
|
||||
'singleDiscountAmount': string;
|
||||
'actualAccount': string;
|
||||
'remark': string;
|
||||
}[];
|
||||
'printDate': string;
|
||||
totalDiscountAmount: string;
|
||||
totalActualAccount: string;
|
||||
'HouseName': string;
|
||||
'title': string;
|
||||
};
|
||||
|
||||
@@ -64,7 +64,7 @@ export const delChargeItem = (id: string | number | Array<string | number>) => {
|
||||
|
||||
/**
|
||||
* 启停 收费项目
|
||||
* @param id
|
||||
* @param data
|
||||
*/
|
||||
export const changChargeItem = (data: { id: string; status: string }) => {
|
||||
return request({
|
||||
|
||||
@@ -12,9 +12,10 @@ export interface ChargeItemVO {
|
||||
* 收费类型
|
||||
*/
|
||||
typeId: string;
|
||||
itemName: string;
|
||||
|
||||
/**
|
||||
* 计费方式 0单次收费 1周期收费 2仪表收费
|
||||
* 计费方式 0单次收费 1 周期收费 2 仪表收费
|
||||
*/
|
||||
billingMethod: string;
|
||||
|
||||
@@ -52,6 +53,10 @@ export interface ChargeItemVO {
|
||||
* 小区id
|
||||
*/
|
||||
villageId: string;
|
||||
/**
|
||||
* 状态 0正常 1停用
|
||||
*/
|
||||
status: string;
|
||||
}
|
||||
|
||||
export interface ChargeItemForm extends BaseEntity {
|
||||
|
||||
@@ -64,7 +64,7 @@ export const delElectricityDevice = (id: string | number | Array<string | number
|
||||
|
||||
/**
|
||||
* 生成条形码
|
||||
* @param id
|
||||
* @param data
|
||||
*/
|
||||
export const ElectricityDeviceMakerQrcode = (data: { deviceCode: string; id: string }[]) => {
|
||||
return request({
|
||||
@@ -76,7 +76,7 @@ export const ElectricityDeviceMakerQrcode = (data: { deviceCode: string; id: str
|
||||
|
||||
/**
|
||||
* 获取设备指定时间段的用电量
|
||||
* @param id
|
||||
* @param data
|
||||
*/
|
||||
export const getElectricityDeviceTimeRangeUsedWater = (data: { deviceCode: string; 'startTime': string; 'endTime': string }) => {
|
||||
return request({
|
||||
@@ -85,3 +85,14 @@ export const getElectricityDeviceTimeRangeUsedWater = (data: { deviceCode: strin
|
||||
data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 电表解绑房屋
|
||||
* @param { string } deviceCode
|
||||
*/
|
||||
export const ElectricityDeviceUnbind = (deviceCode: string) => {
|
||||
return request({
|
||||
url: `/electricityDevice/unbind/${deviceCode}`,
|
||||
method: 'PUT'
|
||||
});
|
||||
};
|
||||
|
||||
@@ -89,10 +89,16 @@ export const getTopupRecordByDate = (query: {
|
||||
params: query
|
||||
});
|
||||
};
|
||||
/** 导出 所有设备的 充值记录 */
|
||||
export const exportTopupRecordByDate = (query: { startTime?: string; endTime?: string }): AxiosPromise<TopupRecordList[]> => {
|
||||
|
||||
/** 查询所有电表充值记录 */
|
||||
export const getElectricityTopupRecordByDate = (query: {
|
||||
startTime?: string;
|
||||
endTime?: string;
|
||||
pageSize: number;
|
||||
pageNum: number;
|
||||
}): AxiosPromise<TopupRecordList[]> => {
|
||||
return request({
|
||||
url: '/topupRecord/water/export',
|
||||
url: '/topupRecord/electricity/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
|
||||
@@ -64,7 +64,7 @@ export const delWaterDevice = (id: string | number | Array<string | number>) =>
|
||||
|
||||
/**
|
||||
* 获取设备指定时间段的用水量
|
||||
* @param id
|
||||
* @param data
|
||||
*/
|
||||
export const getWaterDeviceTimeRangeUsedWater = (data: { deviceCode: string; 'startTime': string; 'endTime': string }) => {
|
||||
return request({
|
||||
@@ -76,7 +76,7 @@ export const getWaterDeviceTimeRangeUsedWater = (data: { deviceCode: string; 'st
|
||||
|
||||
/**
|
||||
* 生成条形码
|
||||
* @param id
|
||||
* @param data
|
||||
*/
|
||||
export const WaterDeviceMakerQrcode = (data: { deviceCode: string; id: string }[]) => {
|
||||
return request({
|
||||
@@ -87,7 +87,7 @@ export const WaterDeviceMakerQrcode = (data: { deviceCode: string; id: string }[
|
||||
};
|
||||
/**
|
||||
* 更新固件
|
||||
* @param id
|
||||
* @param data
|
||||
*/
|
||||
export const WaterDeviceUpdateBin = (data: { deviceCodes: string[]; urlA: string; urlB: string }) => {
|
||||
return request({
|
||||
@@ -107,3 +107,14 @@ export const latestRecord = (deviceCodes: string) => {
|
||||
method: 'GET'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 解绑设备绑定的房屋
|
||||
* @param deviceCode
|
||||
*/
|
||||
export const waterDeviceUnbind = (deviceCode: string) => {
|
||||
return request({
|
||||
url: `/waterDevice/unbind/${deviceCode}`,
|
||||
method: 'PUT'
|
||||
});
|
||||
};
|
||||
|
||||
@@ -17,8 +17,8 @@ export const listStock = (query?: any): AxiosPromise<any[]> => {
|
||||
|
||||
/**
|
||||
* 查询 库存查询 详情
|
||||
* @param query
|
||||
* @returns {*}
|
||||
* @param id
|
||||
*/
|
||||
|
||||
export const listStockMain = (id?: string): AxiosPromise<any[]> => {
|
||||
|
||||
@@ -8,7 +8,7 @@ import { SupplierVO, SupplierForm, SupplierQuery } from './type';
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
export const listSupplier = (query?: SupplierQuery): AxiosPromise<SupplierVO[]> => {
|
||||
export const listSupplier = (query: SupplierQuery | {} = {}): AxiosPromise<SupplierVO[]> => {
|
||||
return request({
|
||||
url: '/warehouse/supplier/list',
|
||||
method: 'get',
|
||||
|
||||
@@ -88,11 +88,6 @@ export interface WarehouseQuery extends PageQuery {
|
||||
*/
|
||||
warehouseName?: string;
|
||||
|
||||
/**
|
||||
* 仓库归属id*(关联com_village)
|
||||
*/
|
||||
villageId?: string;
|
||||
|
||||
/**
|
||||
* 联系人*
|
||||
*/
|
||||
|
||||
@@ -64,12 +64,28 @@ export const delCar = (id: string | number | Array<string | number>) => {
|
||||
|
||||
/**
|
||||
* 删除车辆图片
|
||||
* @param id
|
||||
* @param format
|
||||
*/
|
||||
export const uploadCar = (formdata: FormData) => {
|
||||
export const uploadCar = (format: FormData) => {
|
||||
return request({
|
||||
url: '/car/uploadImage',
|
||||
method: 'POST',
|
||||
data: formdata
|
||||
data: format
|
||||
});
|
||||
};
|
||||
|
||||
export interface AppUserList {
|
||||
'user_id': string;
|
||||
'user_name': string;
|
||||
'user_phone': string;
|
||||
}
|
||||
/**
|
||||
* 获取用户端app-用户
|
||||
* */
|
||||
export const getAppUser = (data): AxiosPromise<AppUserList[]> => {
|
||||
return request({
|
||||
url: '/car/getAppUserList',
|
||||
method: 'GET',
|
||||
params: data
|
||||
});
|
||||
};
|
||||
|
||||
@@ -4,9 +4,9 @@ export interface communitylist_rows_type {
|
||||
villageCode: string;
|
||||
address: string;
|
||||
houseUse: number | null;
|
||||
villageArea: number;
|
||||
villageArea: string;
|
||||
remark: string;
|
||||
parkingSpaceCount: number;
|
||||
parkingSpaceCount: string;
|
||||
villageImageUrl: string;
|
||||
city: string;
|
||||
status: '0' | '1';
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
import { DeptForm, DeptQuery, DeptTreeVO, DeptVO } from './types';
|
||||
import { DeptForm, DeptQuery, DeptVO } from './types';
|
||||
|
||||
// 查询部门列表
|
||||
export const listDept = (query?: DeptQuery) => {
|
||||
|
||||
@@ -19,6 +19,7 @@ export interface DeviceVO {
|
||||
* 设备编号
|
||||
*/
|
||||
deviceCode: string;
|
||||
shelfLife: string;
|
||||
|
||||
/**
|
||||
* 设备型号
|
||||
|
||||
@@ -5,11 +5,11 @@ import { addBuildingType, addHouseType, BuildingUnit, BuildingVo } from './type'
|
||||
// 楼栋---------------------------------------------------------------------------------------
|
||||
|
||||
/** 根据 小区id 和 类型 查询楼栋信息 */
|
||||
export function getBuildinglistAPI(): AxiosPromise<BuildingVo[]> {
|
||||
export function getBuildinglistAPI(query = {}): AxiosPromise<BuildingVo[]> {
|
||||
return request({
|
||||
url: '/building/byVillage',
|
||||
method: 'get',
|
||||
params: {}
|
||||
params: query
|
||||
});
|
||||
}
|
||||
/** 获取所有楼栋 */
|
||||
@@ -118,7 +118,7 @@ export interface Data {
|
||||
billResidentList: BillResidentList[];
|
||||
chargeItemList: string[];
|
||||
house: House;
|
||||
parking: Parking;
|
||||
parkingList: Parking[];
|
||||
residentList: ResidentList[];
|
||||
storeroom: Storeroom;
|
||||
}
|
||||
@@ -166,6 +166,8 @@ export interface Storeroom {
|
||||
remark: string;
|
||||
unitNoId: string;
|
||||
unitNo: number;
|
||||
|
||||
unitNoName: string;
|
||||
}
|
||||
|
||||
export interface Parking {
|
||||
|
||||
@@ -90,5 +90,6 @@ export interface addHouseType {
|
||||
'shareArea': string;
|
||||
'houseType': string;
|
||||
'storeroomId': string;
|
||||
'parkingId': string;
|
||||
'parkingId'?: string;
|
||||
'parkingIds': string[];
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
import { HouseRentalVO, HouseRentalForm, HouseRentalQuery } from '@/api/system/houseRental/type';
|
||||
import { HouseRentalVO, HouseRentalForm, HouseRentalQuery, HouseRentalSigningVO } from '@/api/system/houseRental/type';
|
||||
|
||||
/**
|
||||
* 查询房屋租赁管理列表
|
||||
@@ -74,11 +74,11 @@ interface uploadHouseImagetype {
|
||||
}[];
|
||||
'error': string[];
|
||||
}
|
||||
export const uploadHouseImage = (formdata: FormData): AxiosPromise<uploadHouseImagetype> => {
|
||||
export const uploadHouseImage = (formData: FormData): AxiosPromise<uploadHouseImagetype> => {
|
||||
return request({
|
||||
url: '/houseRental/uploadImages',
|
||||
method: 'POST',
|
||||
data: formdata
|
||||
data: formData
|
||||
});
|
||||
};
|
||||
export const getHouseOwnUser = (houseId: string): AxiosPromise<uploadHouseImagetype> => {
|
||||
@@ -87,3 +87,39 @@ export const getHouseOwnUser = (houseId: string): AxiosPromise<uploadHouseImaget
|
||||
method: 'GET'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 房屋租赁管理 改变状态 0:下架 1:上架
|
||||
* @param houseId
|
||||
* */
|
||||
export const changeHouseRedientStatus = (houseId: string): AxiosPromise<uploadHouseImagetype> => {
|
||||
return request({
|
||||
url: `/houseRental/changeStatus/${houseId}`,
|
||||
method: 'PUT'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 房屋租赁管理 签约
|
||||
* @param data
|
||||
*/
|
||||
export const HouseRedientSign = (data: HouseRentalSigningVO): AxiosPromise<uploadHouseImagetype> => {
|
||||
return request({
|
||||
url: `/houseRental/sign`,
|
||||
method: 'POST',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 房屋租赁管理 签约上传
|
||||
* @param url
|
||||
* @param data
|
||||
*/
|
||||
export const HouseRedientSignUpload = (url: string, data: FormData) => {
|
||||
return request({
|
||||
url: url,
|
||||
method: 'POST',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
@@ -2,7 +2,7 @@ export interface HouseRentalVO {
|
||||
/**
|
||||
* id 房屋租赁表id
|
||||
*/
|
||||
id: string | number;
|
||||
id: string;
|
||||
|
||||
/**
|
||||
* 租户姓名
|
||||
@@ -57,7 +57,7 @@ export interface HouseRentalVO {
|
||||
/**
|
||||
* 手机号
|
||||
*/
|
||||
phone: number;
|
||||
phone: string;
|
||||
|
||||
/**
|
||||
* 微信
|
||||
@@ -72,7 +72,7 @@ export interface HouseRentalVO {
|
||||
/**
|
||||
* 房屋id
|
||||
*/
|
||||
houseId: number;
|
||||
houseId: string;
|
||||
/**
|
||||
* 房屋用途
|
||||
*/
|
||||
@@ -88,83 +88,53 @@ export interface HouseRentalVO {
|
||||
pubTime: string;
|
||||
houseImageUrls: string[];
|
||||
facilitieslist: string[];
|
||||
signingList?: HouseRentalSigningVO[];
|
||||
}
|
||||
|
||||
export interface HouseRentalForm extends BaseEntity {
|
||||
id: string;
|
||||
houseId: string;
|
||||
rentalName: string; // 租户姓名
|
||||
rent: string; // 租金
|
||||
houseFace: string; // 房屋朝向
|
||||
rentalType: string; // 整租合租
|
||||
phone: string; //手机号
|
||||
houseArea: number; // 房屋面积
|
||||
floorNo: number; //楼层号
|
||||
inTime: string; //入住时间
|
||||
facilities: string; //房屋设施
|
||||
houseImageUrl: string; //房屋图片
|
||||
supInfo: string; //补充租房信息
|
||||
vx: string; //微信
|
||||
houseUse?: string; //房屋用途
|
||||
rentalStatus: number; //租赁状态
|
||||
buildingId: string; //楼栋id
|
||||
unitNoId: string; //单元id
|
||||
email: string; //邮箱
|
||||
/**
|
||||
* id 房屋租赁表id
|
||||
* 小区id
|
||||
*/
|
||||
id?: string | number;
|
||||
|
||||
/**
|
||||
* 租户姓名
|
||||
*/
|
||||
rentalName?: string;
|
||||
|
||||
/**
|
||||
* 租金 单位元
|
||||
*/
|
||||
rent?: number;
|
||||
|
||||
/**
|
||||
* 0 整租 1 合租
|
||||
*/
|
||||
rentalType?: string;
|
||||
|
||||
/**
|
||||
* 房屋朝向
|
||||
*/
|
||||
houseFace?: string;
|
||||
|
||||
/**
|
||||
* 房屋面积
|
||||
*/
|
||||
houseArea?: number;
|
||||
|
||||
/**
|
||||
* 楼层号
|
||||
*/
|
||||
floorNo?: number;
|
||||
|
||||
/**
|
||||
* 入住时间
|
||||
*/
|
||||
inTime?: string;
|
||||
|
||||
/**
|
||||
* 房屋设施(“,”隔开)
|
||||
*/
|
||||
facilities?: string;
|
||||
|
||||
/**
|
||||
* 房屋照片url( "," 隔开)
|
||||
*/
|
||||
houseImageUrl?: string;
|
||||
|
||||
/**
|
||||
* 补充租房信息
|
||||
*/
|
||||
supInfo?: string;
|
||||
|
||||
/**
|
||||
* 手机号
|
||||
*/
|
||||
phone?: number;
|
||||
|
||||
/**
|
||||
* 微信
|
||||
*/
|
||||
vx?: string;
|
||||
|
||||
/**
|
||||
* 邮箱
|
||||
*/
|
||||
email?: string;
|
||||
|
||||
/**
|
||||
* 房屋id
|
||||
*/
|
||||
houseId?: string | number;
|
||||
villageId?: string;
|
||||
}
|
||||
export interface HouseRentalSigningVO {
|
||||
rentAmount: string | number;
|
||||
depositAmount: string | number;
|
||||
'id': string;
|
||||
'rentalId': string;
|
||||
'contractNo': string;
|
||||
'tenantName': string;
|
||||
'tenantPhone': string;
|
||||
'chargeMode': string;
|
||||
'chargeStandard': string;
|
||||
'contractName': string;
|
||||
'contractStatus': string;
|
||||
'leaseStartDate': string;
|
||||
'leaseEndDate': string;
|
||||
'houseId': string;
|
||||
contractUrl: string;
|
||||
'villageId': string;
|
||||
'remark': string;
|
||||
'createTime': string;
|
||||
}
|
||||
|
||||
export interface HouseRentalQuery extends PageQuery {
|
||||
|
||||
@@ -15,7 +15,7 @@ export const listHouseUseType = (query?: HouseUseTypeQuery): AxiosPromise<HouseU
|
||||
params: query
|
||||
});
|
||||
};
|
||||
export const listHouseUseType_add_house = (query?: HouseUseTypeQuery): AxiosPromise<HouseUseTypeVO[]> => {
|
||||
export const listHouseUseType_add_house = (query?: HouseUseTypeQuery | {}): AxiosPromise<HouseUseTypeVO[]> => {
|
||||
return request({
|
||||
url: '/houseUseType/getList',
|
||||
method: 'get',
|
||||
|
||||
@@ -12,7 +12,7 @@ export function listOss(query: OssQuery): AxiosPromise<OssVO[]> {
|
||||
}
|
||||
|
||||
// 查询OSS对象基于id串
|
||||
export function listByIds(ossId: string | number): AxiosPromise<OssVO[]> {
|
||||
export function listByIds(ossId: string): AxiosPromise<OssVO[]> {
|
||||
return request({
|
||||
url: '/resource/oss/listByIds/' + ossId,
|
||||
method: 'get'
|
||||
|
||||
@@ -63,7 +63,7 @@ export const delParking = (id: string | number | Array<string | number>) => {
|
||||
};
|
||||
/**
|
||||
* 改变车位审核装填
|
||||
* @param id
|
||||
* @param data
|
||||
*/
|
||||
export const getParkingReview = (data: { id: string; propertyReviewFeedback: string; propertyStatus: number }) => {
|
||||
return request({
|
||||
@@ -88,6 +88,7 @@ export const getParkingReviewInfo = (id: string) => {
|
||||
/**
|
||||
* 查询小区内车位列表
|
||||
* @param { string } villageid
|
||||
* @param houseId
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
@@ -101,3 +102,25 @@ export const GetVillageListParking = (villageid: string, houseId: string = undef
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询 车位持有人信息
|
||||
* @returns {*}
|
||||
* @param residentId
|
||||
*/
|
||||
export const getParkingResidentInfo = (
|
||||
residentId: string
|
||||
): AxiosPromise<{
|
||||
id: '';
|
||||
name: '';
|
||||
type: '';
|
||||
status: '';
|
||||
idCard: '';
|
||||
phone: '';
|
||||
houseName: '';
|
||||
}> => {
|
||||
return request({
|
||||
url: `/car/holder/${residentId}`,
|
||||
method: 'GET'
|
||||
});
|
||||
};
|
||||
|
||||
20
src/api/system/report/LeaseManagementDetails/index.ts
Normal file
@@ -0,0 +1,20 @@
|
||||
import request from '@/utils/request';
|
||||
import {
|
||||
leaseManagementDetailChargeTypesResponse,
|
||||
leaseManagementDetailRequest,
|
||||
leaseManagementDetailResponse
|
||||
} from '@/api/system/report/LeaseManagementDetails/type';
|
||||
|
||||
export const getLeaseManagementDetailList = (data?: leaseManagementDetailRequest): Promise<leaseManagementDetailResponse> => {
|
||||
return request({
|
||||
url: '/leaseManagementDetail/list',
|
||||
method: 'POST',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
export const getLeaseManagementDetailChargeTypesList = (): Promise<leaseManagementDetailChargeTypesResponse> => {
|
||||
return request({
|
||||
url: '/leaseManagementDetail/chargeTypes',
|
||||
method: 'POST'
|
||||
});
|
||||
};
|
||||
203
src/api/system/report/LeaseManagementDetails/type.ts
Normal file
@@ -0,0 +1,203 @@
|
||||
export type leaseManagementDetailRequest = {
|
||||
/**
|
||||
* 面积
|
||||
*/
|
||||
areaSize?: string;
|
||||
/**
|
||||
* 收费模式多选
|
||||
*/
|
||||
chargeModes?: string[];
|
||||
/**
|
||||
* 收费标准多选
|
||||
*/
|
||||
chargeStandards?: string[];
|
||||
/**
|
||||
* 按收费类型筛选应收/已收/未收金额区间
|
||||
*/
|
||||
chargeTypeFilters?: ChargeTypeFilter[];
|
||||
/**
|
||||
* 租赁起始日-开始
|
||||
*/
|
||||
leaseStartDateBegin?: string;
|
||||
/**
|
||||
* 租赁起始日-结束
|
||||
*/
|
||||
leaseStartDateEnd?: string;
|
||||
/**
|
||||
* 承租方
|
||||
*/
|
||||
lessee?: string;
|
||||
/**
|
||||
* 当前页码
|
||||
*/
|
||||
pageNum: number;
|
||||
/**
|
||||
* 每页条数
|
||||
*/
|
||||
pageSize: number;
|
||||
/**
|
||||
* 手机号
|
||||
*/
|
||||
phone?: string;
|
||||
/**
|
||||
* 房号
|
||||
*/
|
||||
roomNumber?: string;
|
||||
/**
|
||||
* 小区多选
|
||||
*/
|
||||
villageIds?: number[];
|
||||
|
||||
leaseEndDateBegin?: string;
|
||||
leaseEndDateEnd?: string;
|
||||
};
|
||||
|
||||
export type ChargeTypeFilter = {
|
||||
/**
|
||||
* 收费类型名称
|
||||
*/
|
||||
chargeTypeName?: string;
|
||||
/**
|
||||
* 收费类型ID
|
||||
*/
|
||||
chargeTypeId?: string;
|
||||
/**
|
||||
* 应收上限
|
||||
*/
|
||||
receivableMax?: string;
|
||||
/**
|
||||
* 应收下限
|
||||
*/
|
||||
receivableMin?: string;
|
||||
/**
|
||||
* 已收上限
|
||||
*/
|
||||
receivedMax: string;
|
||||
/**
|
||||
* 已收下限
|
||||
*/
|
||||
receivedMin: string;
|
||||
/**
|
||||
* 未收上限
|
||||
*/
|
||||
uncollectedMax: string;
|
||||
/**
|
||||
* 未收下限
|
||||
*/
|
||||
uncollectedMin: string;
|
||||
};
|
||||
|
||||
export type leaseManagementDetailResponse = {
|
||||
/**
|
||||
* 收费类型
|
||||
*/
|
||||
chargeItems: ChargeItem[];
|
||||
code: number;
|
||||
msg: string;
|
||||
/**
|
||||
* 当前页明细行数据
|
||||
*/
|
||||
rows: Row[];
|
||||
/**
|
||||
* 总记录数
|
||||
*/
|
||||
total: number;
|
||||
};
|
||||
|
||||
export type ChargeItem = {
|
||||
/**
|
||||
* 收费类型ID
|
||||
*/
|
||||
chargeTypeId: string;
|
||||
/**
|
||||
* 收费类型名称
|
||||
*/
|
||||
chargeTypeName: string;
|
||||
};
|
||||
|
||||
export type Row = {
|
||||
/**
|
||||
* 小区名称
|
||||
*/
|
||||
area: string;
|
||||
/**
|
||||
* 面积(㎡)
|
||||
*/
|
||||
areaSize: string;
|
||||
/**
|
||||
* 小区ID
|
||||
*/
|
||||
buildingId: string;
|
||||
/**
|
||||
* 收费模式
|
||||
*/
|
||||
chargeMode: string;
|
||||
/**
|
||||
* 收费标准
|
||||
*/
|
||||
chargeStandard: string;
|
||||
/**
|
||||
* 房屋ID
|
||||
*/
|
||||
houseId: string;
|
||||
/**
|
||||
* 签约记录ID
|
||||
*/
|
||||
id: string;
|
||||
/**
|
||||
* 租赁终止日
|
||||
*/
|
||||
leaseEndDate: string;
|
||||
/**
|
||||
* 租赁起始日
|
||||
*/
|
||||
leaseStartDate: string;
|
||||
/**
|
||||
* 承租方
|
||||
*/
|
||||
lessee: string;
|
||||
/**
|
||||
* 电话
|
||||
*/
|
||||
phone: string;
|
||||
/**
|
||||
* 各收费类型应收
|
||||
*/
|
||||
receivableAmounts: { [key: string]: any };
|
||||
/**
|
||||
* 各收费类型已收
|
||||
*/
|
||||
receivedAmounts: { [key: string]: any };
|
||||
/**
|
||||
* 房号
|
||||
*/
|
||||
roomNumber: string;
|
||||
/**
|
||||
* 各收费类型未收
|
||||
*/
|
||||
uncollectedAmounts: { [key: string]: any };
|
||||
[property: string]: any;
|
||||
};
|
||||
|
||||
export type leaseManagementDetailChargeTypesResponse = {
|
||||
code: number;
|
||||
data: Datum[];
|
||||
msg: string;
|
||||
};
|
||||
|
||||
export type Datum = {
|
||||
chargeTypeId: string;
|
||||
chargeTypeName: string;
|
||||
};
|
||||
|
||||
// 0000000000000000
|
||||
export interface queryParamsType extends leaseManagementDetailRequest {
|
||||
chargeTypeFilters: chargeTypeFiltersType[];
|
||||
}
|
||||
|
||||
export interface chargeTypeFiltersType extends ChargeTypeFilter {
|
||||
receivable?: string;
|
||||
uncollected?: string;
|
||||
received?: string;
|
||||
chargeTypeName?: string;
|
||||
}
|
||||
20
src/api/system/report/aging/index.ts
Normal file
@@ -0,0 +1,20 @@
|
||||
import request from '@/utils/request';
|
||||
import { AgingListResponse, OwnerArrearsDetailVo } from '@/api/system/report/aging/type';
|
||||
import { AxiosPromise } from 'axios';
|
||||
|
||||
export const getAgingList = (query): Promise<AgingListResponse> => {
|
||||
return request({
|
||||
url: '/agingAnalysis/summary',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
export const getDetailList = (query): Promise<AgingListResponse> => {
|
||||
return request({
|
||||
url: '/agingAnalysis/detail',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
74
src/api/system/report/aging/type.ts
Normal file
@@ -0,0 +1,74 @@
|
||||
export interface AgingListResponse {
|
||||
total: number;
|
||||
rows: AgingSummary[];
|
||||
summary: AgingSummary;
|
||||
code: number;
|
||||
msg: string;
|
||||
}
|
||||
|
||||
export interface AgingSummary {
|
||||
amountLe6: string;
|
||||
amountM6To12: string;
|
||||
amountOver5: string;
|
||||
amountY1To2: string;
|
||||
amountY2To3: string;
|
||||
amountY3To4: string;
|
||||
amountY4To5: string;
|
||||
cutoffPeriod: string;
|
||||
houseTypeName: string;
|
||||
totalAmount: string;
|
||||
villageName: string;
|
||||
}
|
||||
// 明细 ---------------------------------
|
||||
/**
|
||||
* 业主欠费明细视图对象
|
||||
*
|
||||
* OwnerArrearsDetailVo
|
||||
*/
|
||||
export type OwnerArrearsDetailVo = {
|
||||
/**
|
||||
* 区域(小区名称)
|
||||
*/
|
||||
area?: string;
|
||||
/**
|
||||
* 欠费月数
|
||||
*/
|
||||
arrearsMonths?: number;
|
||||
/**
|
||||
* 应账账期(如:20170101-20171231)
|
||||
*/
|
||||
billPeriod?: string;
|
||||
/**
|
||||
* 客户(业主姓名)
|
||||
*/
|
||||
customerName?: string;
|
||||
/**
|
||||
* 垃圾清运费
|
||||
*/
|
||||
garbageFee?: number;
|
||||
/**
|
||||
* 房号
|
||||
*/
|
||||
houseNo?: string;
|
||||
/**
|
||||
* 其他费用合计
|
||||
*/
|
||||
otherFee?: number;
|
||||
/**
|
||||
* 联系电话
|
||||
*/
|
||||
phone?: string;
|
||||
/**
|
||||
* 物业费
|
||||
*/
|
||||
propertyFee?: number;
|
||||
/**
|
||||
* 序号
|
||||
*/
|
||||
serialNumber?: number;
|
||||
/**
|
||||
* 金额合计
|
||||
*/
|
||||
totalAmount?: number;
|
||||
[property: string]: any;
|
||||
};
|
||||
18
src/api/system/report/arrears/arrears.ts
Normal file
@@ -0,0 +1,18 @@
|
||||
import request from '@/utils/request';
|
||||
import { ArrearsDetailQuery, ArrearsListResponse, ArrearsQuery, OwnerArrearsDetailVo } from '@/api/system/report/arrears/type';
|
||||
import { AxiosPromise } from 'axios';
|
||||
|
||||
export const getArrearsList = (query?: ArrearsQuery): Promise<ArrearsListResponse> => {
|
||||
return request({
|
||||
url: '/outstandingFeeSummary/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
export const getArrearsDetails = (query?: ArrearsDetailQuery): AxiosPromise<OwnerArrearsDetailVo[]> => {
|
||||
return request({
|
||||
url: '/outstandingFeeSummary/ownerArrearsDetail',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
113
src/api/system/report/arrears/type.ts
Normal file
@@ -0,0 +1,113 @@
|
||||
|
||||
export interface ArrearsQuery extends PageQuery {
|
||||
/**
|
||||
* 视图类型:
|
||||
* 1 - 维度一(收费类型为行)
|
||||
* 2 - 维度二(房屋类型为行)
|
||||
* */
|
||||
viewType: number;
|
||||
chargeItemId?: string;
|
||||
houseUseId?: string;
|
||||
villageId?: string;
|
||||
}
|
||||
|
||||
export interface ArrearsListResponse {
|
||||
code: number;
|
||||
msg: string;
|
||||
data: ArrearsVO[];
|
||||
}
|
||||
|
||||
export interface ArrearsVO extends ArrearsType1, ArrearsType2 {
|
||||
'villageName': string;
|
||||
'totalAmount': string;
|
||||
}
|
||||
|
||||
|
||||
export interface ArrearsType1 {
|
||||
'chargeItemName'?: string;
|
||||
'houseTypeAmounts'?: {
|
||||
[key: string]: string;
|
||||
};
|
||||
}
|
||||
|
||||
export interface ArrearsType2 {
|
||||
'houseTypeName'?: string;
|
||||
'chargeItemAmounts'?: {
|
||||
[key: string]: string;
|
||||
};
|
||||
}
|
||||
|
||||
export interface ArrearsDetailQuery extends PageQuery {
|
||||
/**
|
||||
* 客户姓名(模糊查询)
|
||||
*/
|
||||
customerName?: string;
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
endTime?: string;
|
||||
/**
|
||||
* 房号(模糊查询)
|
||||
*/
|
||||
houseNo?: string;
|
||||
/**
|
||||
* 联系电话(模糊查询)
|
||||
*/
|
||||
phone?: string;
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
startTime?: string;
|
||||
}
|
||||
/**
|
||||
* 业主欠费明细视图对象
|
||||
*
|
||||
* OwnerArrearsDetailVo
|
||||
*/
|
||||
export type OwnerArrearsDetailVo = {
|
||||
/**
|
||||
* 区域(小区名称)
|
||||
*/
|
||||
area?: string;
|
||||
/**
|
||||
* 欠费月数
|
||||
*/
|
||||
arrearsMonths?: number;
|
||||
/**
|
||||
* 应账账期(如:20170101-20171231)
|
||||
*/
|
||||
billPeriod?: string;
|
||||
/**
|
||||
* 各收费类型金额(key: 收费类型名称, value: 金额)
|
||||
*/
|
||||
chargeItemAmounts?: MapBigDecimal;
|
||||
/**
|
||||
* 客户(业主姓名)
|
||||
*/
|
||||
customerName?: string;
|
||||
/**
|
||||
* 房号
|
||||
*/
|
||||
houseNo?: string;
|
||||
/**
|
||||
* 联系电话
|
||||
*/
|
||||
phone?: string;
|
||||
/**
|
||||
* 序号
|
||||
*/
|
||||
serialNumber?: number | string;
|
||||
/**
|
||||
* 金额合计
|
||||
*/
|
||||
totalAmount?: number;
|
||||
};
|
||||
|
||||
/**
|
||||
* 各收费类型金额(key: 收费类型名称, value: 金额)
|
||||
*
|
||||
* MapBigDecimal
|
||||
*/
|
||||
export type MapBigDecimal = {
|
||||
[property: string]: number;
|
||||
};
|
||||
9
src/api/system/report/arrearsTrend/index.ts
Normal file
@@ -0,0 +1,9 @@
|
||||
import request from '@/utils/request';
|
||||
|
||||
export const getArrearsTend = (query) => {
|
||||
return request({
|
||||
url: '/propertyFeeTrend/arrearsTrend',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
0
src/api/system/report/arrearsTrend/type.ts
Normal file
54
src/api/system/report/businessDailyReport/index.ts
Normal file
@@ -0,0 +1,54 @@
|
||||
import request from '@/utils/request';
|
||||
import { Response } from '@/api/system/report/businessDailyReport/type';
|
||||
|
||||
/**
|
||||
* 按小区统计
|
||||
* @param query
|
||||
* @returns
|
||||
* */
|
||||
export const getBusinessDailyReport = (query): Promise<Response> => {
|
||||
return request({
|
||||
url: '/businessDailyReport/village',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
/**
|
||||
* 按小区统计导出
|
||||
* @param query
|
||||
* @returns
|
||||
* */
|
||||
export const getBusinessDailyReportExport = (query): Promise<Response> => {
|
||||
return request({
|
||||
url: '/businessDailyReport/village/export',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 按收费项目统计
|
||||
* @param query
|
||||
* @returns
|
||||
* */
|
||||
export const getBusinessDailyReportChargeItem = (query): Promise<Response> => {
|
||||
return request({
|
||||
url: '/businessDailyReport/chargeItem',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
/**
|
||||
* 按收费项目统计导出
|
||||
* @param query
|
||||
* @returns
|
||||
* */
|
||||
export const getBusinessDailyReportChargeItemExport = (query): Promise<Response> => {
|
||||
return request({
|
||||
url: '/businessDailyReport/chargeItem/export',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
77
src/api/system/report/businessDailyReport/type.ts
Normal file
@@ -0,0 +1,77 @@
|
||||
export type Response = {
|
||||
code: number;
|
||||
msg: string;
|
||||
/**
|
||||
* 支付方式
|
||||
*/
|
||||
payTypes: PayType[];
|
||||
/**
|
||||
* 数据列表
|
||||
*/
|
||||
rows: RowsType[];
|
||||
/**
|
||||
* 合计行
|
||||
*/
|
||||
summary: Summary;
|
||||
total: number;
|
||||
};
|
||||
|
||||
export type RowsType = Row | RowVillage;
|
||||
|
||||
export type Row = {
|
||||
/**
|
||||
* 收费项目ID
|
||||
*/
|
||||
chargeItemId: string;
|
||||
/**
|
||||
* 收费项目名称
|
||||
*/
|
||||
chargeItemName: string;
|
||||
/**
|
||||
* 各支付方式金额
|
||||
*/
|
||||
payAmounts: { [key: string]: string };
|
||||
/**
|
||||
* 合计金额
|
||||
*/
|
||||
totalAmount: string;
|
||||
};
|
||||
|
||||
export type RowVillage = {
|
||||
/**
|
||||
* 各支付方式金额
|
||||
*/
|
||||
payAmounts?: { [key: string]: string };
|
||||
/**
|
||||
* 合计金额
|
||||
*/
|
||||
totalAmount?: number;
|
||||
/**
|
||||
* 小区ID
|
||||
*/
|
||||
villageId?: number;
|
||||
/**
|
||||
* 小区名称
|
||||
*/
|
||||
villageName?: string;
|
||||
};
|
||||
|
||||
export type PayType = {
|
||||
/**
|
||||
* 支付方式编码
|
||||
*/
|
||||
payType: string;
|
||||
/**
|
||||
* 支付方式名称
|
||||
*/
|
||||
payTypeName: string;
|
||||
};
|
||||
/**
|
||||
* 合计行
|
||||
*/
|
||||
export type Summary = {
|
||||
chargeItemId: null;
|
||||
chargeItemName: string;
|
||||
payAmounts: { [key: string]: string };
|
||||
totalAmount: string;
|
||||
};
|
||||
9
src/api/system/report/chargeTrend/index.ts
Normal file
@@ -0,0 +1,9 @@
|
||||
import request from '@/utils/request';
|
||||
|
||||
export const getChargeTend = (query)=> {
|
||||
return request({
|
||||
url: '/propertyFeeTrend/chargeTrend',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
0
src/api/system/report/chargeTrend/type.ts
Normal file
18
src/api/system/report/dailyFeeReport/index.ts
Normal file
@@ -0,0 +1,18 @@
|
||||
import request from '@/utils/request';
|
||||
import { FilterResponse, Response } from '@/api/system/report/dailyFeeReport/type';
|
||||
|
||||
export const getDailyFeeReportList = (data = {}): Promise<Response> => {
|
||||
return request({
|
||||
url: '/dailyFeeReport/list',
|
||||
method: 'POST',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
// 获取动态查询数据
|
||||
export const getDailyFeeReportDynamicList = (data = {}): Promise<FilterResponse> => {
|
||||
return request({
|
||||
url: '/dailyFeeReport/filters',
|
||||
method: 'GET',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
44
src/api/system/report/dailyFeeReport/type.ts
Normal file
@@ -0,0 +1,44 @@
|
||||
export type Response = {
|
||||
code: number;
|
||||
rows: Datum[];
|
||||
total: number;
|
||||
msg: string;
|
||||
};
|
||||
|
||||
export type Datum = {
|
||||
alipayAmount: string;
|
||||
cashAmount: string;
|
||||
chargeTypeAmounts: ChargeTypeAmounts;
|
||||
deposit: string;
|
||||
depositAmount: string;
|
||||
discountAmount: string;
|
||||
electricFee: string;
|
||||
handler: null | string;
|
||||
houseName: string;
|
||||
payTime: string;
|
||||
propertyOffsetAmount: string;
|
||||
remark: null;
|
||||
residentName: string;
|
||||
transferAmount: string;
|
||||
unionPayAmount: string;
|
||||
waterFee: string;
|
||||
wechatAmount: string;
|
||||
yiDangFuAmount: string;
|
||||
};
|
||||
|
||||
export type ChargeTypeAmounts = {
|
||||
[property: string]: {
|
||||
amount?: string;
|
||||
endDate?: string;
|
||||
startDate?: string;
|
||||
};
|
||||
};
|
||||
|
||||
export type FilterResponse = {
|
||||
code: number;
|
||||
data: {
|
||||
'chargeTypeId': string;
|
||||
'chargeTypeName': string;
|
||||
}[];
|
||||
msg: string;
|
||||
};
|
||||
10
src/api/system/report/monthFeeReport/index.ts
Normal file
@@ -0,0 +1,10 @@
|
||||
import request from '@/utils/request';
|
||||
import { MonthFeeReportQueryForm, Response } from '@/api/system/report/monthFeeReport/type';
|
||||
|
||||
export const getMonthFeeReportList = (data: MonthFeeReportQueryForm = {}): Promise<Response> => {
|
||||
return request({
|
||||
url: '/chargeMonthlyReport/list',
|
||||
method: 'GET',
|
||||
params: data
|
||||
});
|
||||
};
|
||||
75
src/api/system/report/monthFeeReport/type.ts
Normal file
@@ -0,0 +1,75 @@
|
||||
|
||||
export type MonthFeeReportQueryForm = {
|
||||
/**
|
||||
* 房屋用途类型
|
||||
*/
|
||||
buildingIds?: string;
|
||||
/**
|
||||
* 月收费率区间
|
||||
*/
|
||||
monthRate?: string;
|
||||
/**
|
||||
* 本月应收区间
|
||||
*/
|
||||
monthReceivable?: string;
|
||||
/**
|
||||
* 本月未收区间
|
||||
*/
|
||||
monthUnpaid?: string;
|
||||
/**
|
||||
* 当前页码
|
||||
*/
|
||||
pageNum?: number;
|
||||
/**
|
||||
* 每页条数
|
||||
*/
|
||||
pageSize?: number;
|
||||
/**
|
||||
* 综合欠收区间
|
||||
*/
|
||||
totalArrears?: string;
|
||||
/**
|
||||
* 综合预收区间
|
||||
*/
|
||||
totalPrepaid?: string;
|
||||
/**
|
||||
* 小区ID
|
||||
*/
|
||||
villageId?: string;
|
||||
/**
|
||||
* 年收费率区间
|
||||
*/
|
||||
yearRate?: string;
|
||||
/**
|
||||
* 本年应收区间
|
||||
*/
|
||||
yearReceivable?: string;
|
||||
/**
|
||||
* 本年未收区间
|
||||
*/
|
||||
yearUnpaid?: string;
|
||||
};
|
||||
export type Response = {
|
||||
code: number;
|
||||
msg: string;
|
||||
rows: Row[];
|
||||
total: number;
|
||||
};
|
||||
|
||||
export type Row = {
|
||||
buildingId: BuildingId;
|
||||
buildingName: string;
|
||||
monthRate: string;
|
||||
monthReceivable: string;
|
||||
monthReceived: string;
|
||||
monthUnpaid: string;
|
||||
totalArrears: string;
|
||||
totalPrepaid: string;
|
||||
yearRate: string;
|
||||
yearReceivable: string;
|
||||
yearReceived: string;
|
||||
yearUnpaid: string;
|
||||
[property: string]: any;
|
||||
};
|
||||
|
||||
export type BuildingId = number | string;
|
||||
10
src/api/system/report/paidInExpenses/index.ts
Normal file
@@ -0,0 +1,10 @@
|
||||
import request from '@/utils/request';
|
||||
import { Response } from '@/api/system/report/paidInExpensesReceivable/type';
|
||||
|
||||
export const getPaidInExpensesList = (data): Promise<Response> => {
|
||||
return request({
|
||||
url: '/paidInExpenses/list',
|
||||
method: 'POST',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
29
src/api/system/report/paidInExpenses/type.ts
Normal file
@@ -0,0 +1,29 @@
|
||||
export type Response = {
|
||||
code: number;
|
||||
data: Data;
|
||||
msg: string;
|
||||
};
|
||||
|
||||
export type Data = {
|
||||
chargeTypes: string[];
|
||||
details: Detail[];
|
||||
total: Total;
|
||||
};
|
||||
|
||||
export type Detail = {
|
||||
amounts: DetailAmounts;
|
||||
name: string;
|
||||
sequence: string;
|
||||
total: string;
|
||||
};
|
||||
|
||||
export type DetailAmounts = {
|
||||
[property: string]: string;
|
||||
};
|
||||
|
||||
export type Total = {
|
||||
amounts: DetailAmounts;
|
||||
name: string;
|
||||
sequence: string;
|
||||
total: string;
|
||||
};
|
||||
10
src/api/system/report/paidInExpensesReceivable/index.ts
Normal file
@@ -0,0 +1,10 @@
|
||||
import request from '@/utils/request';
|
||||
import { Response } from '@/api/system/report/paidInExpensesReceivable/type';
|
||||
|
||||
export const getPaidInExpensesReceivableList = (data): Promise<Response> => {
|
||||
return request({
|
||||
url: '/paidInExpenses/receivable/list',
|
||||
method: 'POST',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
29
src/api/system/report/paidInExpensesReceivable/type.ts
Normal file
@@ -0,0 +1,29 @@
|
||||
export type Response = {
|
||||
code: number;
|
||||
data: Data;
|
||||
msg: string;
|
||||
};
|
||||
|
||||
export type Data = {
|
||||
chargeTypes: string[];
|
||||
details: Detail[];
|
||||
total: Total;
|
||||
};
|
||||
|
||||
export type Detail = {
|
||||
amounts: DetailAmounts;
|
||||
name: string;
|
||||
sequence: string;
|
||||
total: string;
|
||||
};
|
||||
|
||||
export type DetailAmounts = {
|
||||
[property: string]: string;
|
||||
};
|
||||
|
||||
export type Total = {
|
||||
amounts: DetailAmounts;
|
||||
name: string;
|
||||
sequence: string;
|
||||
total: string;
|
||||
};
|
||||
10
src/api/system/report/prepaidBalance/index.ts
Normal file
@@ -0,0 +1,10 @@
|
||||
import request from '@/utils/request';
|
||||
import { Request, Response } from '@/api/system/report/prepaidBalance/type';
|
||||
|
||||
export const getPrepaidBalanceList = (query: Request): Promise<Response> => {
|
||||
return request({
|
||||
url: '/prepaidBalance/summary',
|
||||
method: 'GET',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
83
src/api/system/report/prepaidBalance/type.ts
Normal file
@@ -0,0 +1,83 @@
|
||||
export type Request = {
|
||||
/**
|
||||
* 收费类型ID
|
||||
*/
|
||||
chargeTypeId?: string;
|
||||
/**
|
||||
* 房屋类型ID
|
||||
*/
|
||||
houseUseTypeId?: string;
|
||||
/**
|
||||
* 当前页数
|
||||
*/
|
||||
pageNum?: number;
|
||||
/**
|
||||
* 分页大小
|
||||
*/
|
||||
pageSize?: number;
|
||||
/**
|
||||
* 小区ID
|
||||
*/
|
||||
villageId?: string;
|
||||
};
|
||||
|
||||
export type Response = {
|
||||
/**
|
||||
* 动态收费项目列头
|
||||
*/
|
||||
chargeItems: ChargeItem[];
|
||||
code: number;
|
||||
msg: string;
|
||||
/**
|
||||
* 汇总数据行列表
|
||||
*/
|
||||
rows: Row[];
|
||||
/**
|
||||
* 全部合计行
|
||||
*/
|
||||
summary: Summary;
|
||||
/**
|
||||
* 总记录数
|
||||
*/
|
||||
total: number;
|
||||
};
|
||||
|
||||
export type ChargeItem = {
|
||||
/**
|
||||
* 收费项目名称
|
||||
*/
|
||||
chargeItemName: string;
|
||||
/**
|
||||
* 收费类型ID
|
||||
*/
|
||||
chargeTypeId: number;
|
||||
};
|
||||
|
||||
export type Row = {
|
||||
/**
|
||||
* 各收费项目预收余额
|
||||
*/
|
||||
chargeItemAmounts?: { [key: string]: any };
|
||||
/**
|
||||
* 房屋类型名称
|
||||
*/
|
||||
houseTypeName?: string;
|
||||
/**
|
||||
* 合计金额
|
||||
*/
|
||||
totalAmount?: number;
|
||||
/**
|
||||
* 小区名称
|
||||
*/
|
||||
villageName?: string;
|
||||
};
|
||||
|
||||
/**
|
||||
* 全部合计行
|
||||
*/
|
||||
export type Summary = {
|
||||
chargeItemAmounts: { [key: string]: string };
|
||||
houseTypeName: string;
|
||||
totalAmount: number;
|
||||
villageName: string;
|
||||
};
|
||||
10
src/api/system/report/prepaidBalanceDetail/index.ts
Normal file
@@ -0,0 +1,10 @@
|
||||
import request from '@/utils/request';
|
||||
import { Request, Response } from '@/api/system/report/prepaidBalance/type';
|
||||
|
||||
export const getPrepaidBalanceDetailList = (query: Request): Promise<Response> => {
|
||||
return request({
|
||||
url: '/prepaidBalance/detail',
|
||||
method: 'GET',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
83
src/api/system/report/prepaidBalanceDetail/type.ts
Normal file
@@ -0,0 +1,83 @@
|
||||
export type Request = {
|
||||
/**
|
||||
* 收费类型ID
|
||||
*/
|
||||
chargeTypeId?: string;
|
||||
/**
|
||||
* 房屋类型ID
|
||||
*/
|
||||
houseUseTypeId?: string;
|
||||
/**
|
||||
* 当前页数
|
||||
*/
|
||||
pageNum?: number;
|
||||
/**
|
||||
* 分页大小
|
||||
*/
|
||||
pageSize?: number;
|
||||
/**
|
||||
* 小区ID
|
||||
*/
|
||||
villageId?: string;
|
||||
};
|
||||
|
||||
export type Response = {
|
||||
/**
|
||||
* 动态收费项目列头
|
||||
*/
|
||||
chargeItems: ChargeItem[];
|
||||
code: number;
|
||||
msg: string;
|
||||
/**
|
||||
* 汇总数据行列表
|
||||
*/
|
||||
rows: Row[];
|
||||
/**
|
||||
* 全部合计行
|
||||
*/
|
||||
summary: Summary;
|
||||
/**
|
||||
* 总记录数
|
||||
*/
|
||||
total: number;
|
||||
};
|
||||
|
||||
export type ChargeItem = {
|
||||
/**
|
||||
* 收费项目名称
|
||||
*/
|
||||
chargeItemName: string;
|
||||
/**
|
||||
* 收费类型ID
|
||||
*/
|
||||
chargeTypeId: number;
|
||||
};
|
||||
|
||||
export type Row = {
|
||||
/**
|
||||
* 各收费项目预收余额
|
||||
*/
|
||||
chargeItemAmounts?: { [key: string]: any };
|
||||
/**
|
||||
* 房屋类型名称
|
||||
*/
|
||||
houseTypeName?: string;
|
||||
/**
|
||||
* 合计金额
|
||||
*/
|
||||
totalAmount?: number;
|
||||
/**
|
||||
* 小区名称
|
||||
*/
|
||||
villageName?: string;
|
||||
};
|
||||
|
||||
/**
|
||||
* 全部合计行
|
||||
*/
|
||||
export type Summary = {
|
||||
chargeItemAmounts: { [key: string]: string };
|
||||
houseTypeName: string;
|
||||
totalAmount: number;
|
||||
villageName: string;
|
||||
};
|
||||
@@ -1,14 +1,13 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
import { ResidentVO, ResidentForm, ResidentQuery } from '@/api/system/resident/type';
|
||||
import { ResidentVO, ResidentForm, ResidentQuery } from '@/api/system/residentReviewProcess/resident/type';
|
||||
|
||||
/**
|
||||
* 查询住户管理列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
export const listResident = (query?: ResidentQuery): AxiosPromise<ResidentVO[]> => {
|
||||
export const listResident = (query?: ResidentQuery | {}): AxiosPromise<ResidentVO[]> => {
|
||||
return request({
|
||||
url: '/resident/list',
|
||||
method: 'get',
|
||||
@@ -64,7 +63,6 @@ export const delResident = (id: string | number | Array<string | number>) => {
|
||||
|
||||
/**
|
||||
* 添加住户管理-上传身份证
|
||||
* @param id
|
||||
*/
|
||||
export const UploadidCardApi = () => {
|
||||
return request({
|
||||
@@ -2,8 +2,10 @@ export interface ResidentVO {
|
||||
/**
|
||||
* 主键 住户管理id
|
||||
*/
|
||||
userId: string | number;
|
||||
userId: string;
|
||||
id: string;
|
||||
unitNoId: string;
|
||||
idCardType: string;
|
||||
/**
|
||||
* 住户编号
|
||||
*/
|
||||
@@ -13,21 +15,22 @@ export interface ResidentVO {
|
||||
* 姓名
|
||||
*/
|
||||
name: string;
|
||||
nickName: string;
|
||||
|
||||
/**
|
||||
* 0业主 1租户
|
||||
* 0 业主 1 租户
|
||||
*/
|
||||
type: string;
|
||||
|
||||
/**
|
||||
* 0 男性 1女性
|
||||
* 0 男性 1 女性
|
||||
*/
|
||||
gender: string;
|
||||
|
||||
/**
|
||||
* 身份证号
|
||||
*/
|
||||
idCard: string | number;
|
||||
idCard: string;
|
||||
|
||||
/**
|
||||
* 手机号码
|
||||
@@ -42,7 +45,7 @@ export interface ResidentVO {
|
||||
/**
|
||||
* 楼栋id
|
||||
*/
|
||||
buildingId: string | number;
|
||||
buildingId: string;
|
||||
|
||||
/**
|
||||
* 房屋表id
|
||||
@@ -74,11 +77,22 @@ export interface ResidentVO {
|
||||
}
|
||||
|
||||
export interface ResidentForm extends BaseEntity {
|
||||
/**
|
||||
* 年龄
|
||||
*/
|
||||
age?: number;
|
||||
/**
|
||||
* 主键 住户管理id
|
||||
*/
|
||||
userId?: string | number;
|
||||
|
||||
userId?: string;
|
||||
unitNoId?: string;
|
||||
/**
|
||||
* 证件类型
|
||||
* 0 身份证
|
||||
* 1 护照
|
||||
* 2 港澳通行证
|
||||
*/
|
||||
idCardType?: string;
|
||||
/**
|
||||
* 住户编号
|
||||
*/
|
||||
@@ -90,22 +104,22 @@ export interface ResidentForm extends BaseEntity {
|
||||
name?: string;
|
||||
|
||||
/**
|
||||
* 0业主
|
||||
* 1亲属
|
||||
* 2租户
|
||||
* 3朋友
|
||||
* 0 业主
|
||||
* 1 亲属
|
||||
* 2 租户
|
||||
* 3 朋友
|
||||
*/
|
||||
ownerRelationship?: string;
|
||||
|
||||
/**
|
||||
* 0 男性 1女性
|
||||
* 0 男性 1 女性
|
||||
*/
|
||||
gender?: string;
|
||||
|
||||
/**
|
||||
* 身份证号
|
||||
*/
|
||||
idCard?: string | number;
|
||||
idCard?: string;
|
||||
|
||||
/**
|
||||
* 手机号码
|
||||
@@ -120,7 +134,7 @@ export interface ResidentForm extends BaseEntity {
|
||||
/**
|
||||
* 楼栋id
|
||||
*/
|
||||
buildingId?: string | number;
|
||||
buildingId?: string;
|
||||
|
||||
/**
|
||||
* 房屋表id
|
||||
@@ -153,17 +167,24 @@ export interface ResidentQuery extends PageQuery {
|
||||
* 日期范围参数
|
||||
*/
|
||||
date?: any;
|
||||
|
||||
/**
|
||||
* 0业主
|
||||
* 1亲属
|
||||
* 2租户
|
||||
* 3朋友
|
||||
* 房屋名称
|
||||
*/
|
||||
houseName?: string;
|
||||
/**
|
||||
* 姓名
|
||||
*/
|
||||
name?: string;
|
||||
/**
|
||||
* 0 业主
|
||||
* 1 亲属
|
||||
* 2 租户
|
||||
* 3 朋友
|
||||
*/
|
||||
ownerRelationship?: string;
|
||||
/**
|
||||
* 住户状态
|
||||
* 0审核中 1 已认证
|
||||
* 0 审核中 1 已认证
|
||||
*/
|
||||
status?: string;
|
||||
|
||||
@@ -1,140 +0,0 @@
|
||||
export interface ResidentReviewProcessVO {
|
||||
/**
|
||||
* 住户审核表
|
||||
*/
|
||||
id: string | number;
|
||||
|
||||
/**
|
||||
* 住户表id
|
||||
*/
|
||||
residentId: string | number;
|
||||
|
||||
/**
|
||||
* 提交时间
|
||||
*/
|
||||
submitTime: string;
|
||||
|
||||
/**
|
||||
* 提交状态 0未提交 1已提交
|
||||
*/
|
||||
submitStatus: number;
|
||||
|
||||
/**
|
||||
* 物业审核时间
|
||||
*/
|
||||
propertyTime: string;
|
||||
|
||||
/**
|
||||
* 物业审核状态 0 待审核 1审核通过 2审核未通过
|
||||
*/
|
||||
propertyStatus: number;
|
||||
|
||||
/**
|
||||
* 物业审核意见
|
||||
*/
|
||||
propertyReviewFeedback: string;
|
||||
|
||||
/**
|
||||
* 认证时间
|
||||
*/
|
||||
certificationTime: string;
|
||||
|
||||
/**
|
||||
* 认证状态 0未认证 1已认证
|
||||
*/
|
||||
certificationStatus: number;
|
||||
}
|
||||
|
||||
export interface ResidentReviewProcessForm extends BaseEntity {
|
||||
/**
|
||||
* 住户审核表
|
||||
*/
|
||||
id?: string | number;
|
||||
|
||||
/**
|
||||
* 住户表id
|
||||
*/
|
||||
residentId?: string | number;
|
||||
|
||||
/**
|
||||
* 提交时间
|
||||
*/
|
||||
submitTime?: string;
|
||||
|
||||
/**
|
||||
* 提交状态 0未提交 1已提交
|
||||
*/
|
||||
submitStatus?: number;
|
||||
|
||||
/**
|
||||
* 物业审核时间
|
||||
*/
|
||||
propertyTime?: string;
|
||||
|
||||
/**
|
||||
* 物业审核状态 0 待审核 1审核通过 2审核未通过
|
||||
*/
|
||||
propertyStatus?: number;
|
||||
|
||||
/**
|
||||
* 物业审核意见
|
||||
*/
|
||||
propertyReviewFeedback?: string;
|
||||
|
||||
/**
|
||||
* 认证时间
|
||||
*/
|
||||
certificationTime?: string;
|
||||
|
||||
/**
|
||||
* 认证状态 0未认证 1已认证
|
||||
*/
|
||||
certificationStatus?: number;
|
||||
}
|
||||
|
||||
export interface ResidentReviewProcessQuery extends PageQuery {
|
||||
/**
|
||||
* 住户表id
|
||||
*/
|
||||
residentId?: string | number;
|
||||
|
||||
/**
|
||||
* 提交时间
|
||||
*/
|
||||
submitTime?: string;
|
||||
|
||||
/**
|
||||
* 提交状态 0未提交 1已提交
|
||||
*/
|
||||
submitStatus?: number;
|
||||
|
||||
/**
|
||||
* 物业审核时间
|
||||
*/
|
||||
propertyTime?: string;
|
||||
|
||||
/**
|
||||
* 物业审核状态 0 待审核 1审核通过 2审核未通过
|
||||
*/
|
||||
propertyStatus?: number;
|
||||
|
||||
/**
|
||||
* 物业审核意见
|
||||
*/
|
||||
propertyReviewFeedback?: string;
|
||||
|
||||
/**
|
||||
* 认证时间
|
||||
*/
|
||||
certificationTime?: string;
|
||||
|
||||
/**
|
||||
* 认证状态 0未认证 1已认证
|
||||
*/
|
||||
certificationStatus?: number;
|
||||
|
||||
/**
|
||||
* 日期范围参数
|
||||
*/
|
||||
params?: any;
|
||||
}
|
||||
|
||||
63
src/api/system/revenueNotice/index.ts
Normal file
@@ -0,0 +1,63 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
import { RevenueNoticeVO, RevenueNoticeForm, RevenueNoticeQuery } from './type';
|
||||
|
||||
/**
|
||||
* 查询公区收益通知列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
export const listRevenueNotice = (query?: RevenueNoticeQuery): AxiosPromise<RevenueNoticeVO[]> => {
|
||||
return request({
|
||||
url: '/revenueNotice/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询公区收益通知详细
|
||||
* @param noticeId
|
||||
*/
|
||||
export const getRevenueNotice = (noticeId: string | number): AxiosPromise<RevenueNoticeVO> => {
|
||||
return request({
|
||||
url: '/revenueNotice/' + noticeId,
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 新增公区收益通知
|
||||
* @param data
|
||||
*/
|
||||
export const addRevenueNotice = (data: RevenueNoticeForm) => {
|
||||
return request({
|
||||
url: '/revenueNotice',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 修改公区收益通知
|
||||
* @param data
|
||||
*/
|
||||
export const updateRevenueNotice = (data: RevenueNoticeForm) => {
|
||||
return request({
|
||||
url: '/revenueNotice',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 删除公区收益通知
|
||||
* @param noticeId
|
||||
*/
|
||||
export const delRevenueNotice = (noticeId: string | number | Array<string | number>) => {
|
||||
return request({
|
||||
url: '/revenueNotice/' + noticeId,
|
||||
method: 'delete'
|
||||
});
|
||||
};
|
||||
140
src/api/system/revenueNotice/type.ts
Normal file
@@ -0,0 +1,140 @@
|
||||
export interface RevenueNoticeVO {
|
||||
/**
|
||||
* 公告ID
|
||||
*/
|
||||
noticeId: string | number;
|
||||
|
||||
/**
|
||||
* 公告标题
|
||||
*/
|
||||
noticeTitle: string;
|
||||
|
||||
/**
|
||||
* 公告内容
|
||||
*/
|
||||
noticeContent: string;
|
||||
|
||||
/**
|
||||
* 作者
|
||||
*/
|
||||
author: string;
|
||||
|
||||
/**
|
||||
* 紧急程度 0=普通 1=紧急 2=非常紧急
|
||||
*/
|
||||
urgencyLevel: number;
|
||||
|
||||
/**
|
||||
* 发布状态 0=草稿 1=已发布
|
||||
*/
|
||||
publishStatus: number;
|
||||
|
||||
/**
|
||||
* 发布人
|
||||
*/
|
||||
publishBy: string;
|
||||
|
||||
/**
|
||||
* 发布日期
|
||||
*/
|
||||
publishTime: string;
|
||||
|
||||
/**
|
||||
* 所属小区id
|
||||
*/
|
||||
villageId: string | number;
|
||||
}
|
||||
|
||||
export interface RevenueNoticeForm extends BaseEntity {
|
||||
/**
|
||||
* 公告ID
|
||||
*/
|
||||
noticeId?: string | number;
|
||||
|
||||
/**
|
||||
* 公告标题
|
||||
*/
|
||||
noticeTitle?: string;
|
||||
|
||||
/**
|
||||
* 公告内容
|
||||
*/
|
||||
noticeContent?: string;
|
||||
|
||||
/**
|
||||
* 作者
|
||||
*/
|
||||
author?: string;
|
||||
|
||||
/**
|
||||
* 紧急程度 0=普通 1=紧急 2=非常紧急
|
||||
*/
|
||||
urgencyLevel?: number;
|
||||
|
||||
/**
|
||||
* 发布状态 0=草稿 1=已发布
|
||||
*/
|
||||
publishStatus?: number;
|
||||
|
||||
/**
|
||||
* 发布人
|
||||
*/
|
||||
publishBy?: string;
|
||||
|
||||
/**
|
||||
* 发布日期
|
||||
*/
|
||||
publishTime?: string;
|
||||
|
||||
/**
|
||||
* 所属小区id
|
||||
*/
|
||||
villageId?: string | number;
|
||||
}
|
||||
|
||||
export interface RevenueNoticeQuery extends PageQuery {
|
||||
/**
|
||||
* 公告标题
|
||||
*/
|
||||
noticeTitle?: string;
|
||||
|
||||
/**
|
||||
* 公告内容
|
||||
*/
|
||||
noticeContent?: string;
|
||||
|
||||
/**
|
||||
* 作者
|
||||
*/
|
||||
author?: string;
|
||||
|
||||
/**
|
||||
* 紧急程度 0=普通 1=紧急 2=非常紧急
|
||||
*/
|
||||
urgencyLevel?: number;
|
||||
|
||||
/**
|
||||
* 发布状态 0=草稿 1=已发布
|
||||
*/
|
||||
publishStatus?: number;
|
||||
|
||||
/**
|
||||
* 发布人
|
||||
*/
|
||||
publishBy?: string;
|
||||
|
||||
/**
|
||||
* 发布日期
|
||||
*/
|
||||
publishTime?: string;
|
||||
|
||||
/**
|
||||
* 所属小区id
|
||||
*/
|
||||
villageId?: string | number;
|
||||
|
||||
/**
|
||||
* 日期范围参数
|
||||
*/
|
||||
params?: any;
|
||||
}
|
||||
@@ -63,8 +63,8 @@ export const delStoreroom = (id: string | number | Array<string | number>) => {
|
||||
};
|
||||
/**
|
||||
* 查询小区内储藏室管理列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
* @param data
|
||||
*/
|
||||
|
||||
export const GetVillagelistStoreroom = (
|
||||
|
||||
@@ -212,10 +212,11 @@ export const deptTreeSelect = (): AxiosPromise<DeptTreeVO[]> => {
|
||||
/**
|
||||
* 查询用户 根据不同的角色key
|
||||
*/
|
||||
export const getUserByRoleKey = (roleKey: string = 'repair'): AxiosPromise<any> => {
|
||||
export const getUserByRoleKey = (data: { roleKey: string; pageSize?: number; pageNum?: number; phonenumber?: string; nickName?: string }) => {
|
||||
return request({
|
||||
url: '/system/user/list/byRoleKey?roleKey=' + roleKey,
|
||||
method: 'get'
|
||||
url: '/system/user/list/byRoleKey',
|
||||
method: 'get',
|
||||
params: data
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
78
src/api/system/version/index.ts
Normal file
@@ -0,0 +1,78 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
import { VersionVO, VersionForm, VersionQuery } from './type';
|
||||
|
||||
/**
|
||||
* 查询版本列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
export const listVersion = (query?: VersionQuery): AxiosPromise<VersionVO[]> => {
|
||||
return request({
|
||||
url: '/api/app/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询版本详细
|
||||
* @param id
|
||||
*/
|
||||
export const getVersion = (id: string | number): AxiosPromise<VersionVO> => {
|
||||
return request({
|
||||
url: '/system/version/' + id,
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 新增版本
|
||||
* @param data
|
||||
*/
|
||||
export const addVersion = (data: VersionForm) => {
|
||||
return request({
|
||||
url: '/api/app/release',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 修改版本
|
||||
* @param data
|
||||
*/
|
||||
export const updateVersion = (data: VersionForm) => {
|
||||
return request({
|
||||
url: '/system/version',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 删除版本
|
||||
* @param id
|
||||
*/
|
||||
export const delVersion = (id: string | number | Array<string | number>) => {
|
||||
return request({
|
||||
url: '/system/version/' + id,
|
||||
method: 'delete'
|
||||
});
|
||||
};
|
||||
|
||||
/** 获取过往版本 */
|
||||
export const getPastVersion = (platform: string, appChannel: string) => {
|
||||
return request({
|
||||
url: `/api/app/getPastVersion?platform=${platform}&appChannel=${appChannel}`,
|
||||
method: 'get',
|
||||
});
|
||||
};
|
||||
/** 切换版本启停 */
|
||||
export const switchVersion = (id: string, status: string) => {
|
||||
return request({
|
||||
url: `/api/app/switchStatus/${id}/${status}`,
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
169
src/api/system/version/type.ts
Normal file
@@ -0,0 +1,169 @@
|
||||
export interface VersionVO {
|
||||
/**
|
||||
*
|
||||
*/
|
||||
id: string | number;
|
||||
|
||||
/**
|
||||
* ios/android
|
||||
*/
|
||||
platform: string;
|
||||
|
||||
/**
|
||||
* 版本号(递增)
|
||||
*/
|
||||
versionCode: number;
|
||||
|
||||
/**
|
||||
* 版本名称(1.2.0)
|
||||
*/
|
||||
versionName: string;
|
||||
|
||||
/**
|
||||
* 最低支持版本
|
||||
*/
|
||||
minVersionCode: number;
|
||||
|
||||
/**
|
||||
* optional/force
|
||||
* optional-可选更新,
|
||||
* force-强制更新
|
||||
*/
|
||||
updateType: string;
|
||||
|
||||
/**
|
||||
* 升级方式
|
||||
* apk-安装包更新,wgt-热更新
|
||||
*/
|
||||
method: string;
|
||||
|
||||
/**
|
||||
* 下载地址
|
||||
*/
|
||||
downloadUrl: string;
|
||||
|
||||
/**
|
||||
* 更新日志
|
||||
*/
|
||||
releaseNotes: string;
|
||||
|
||||
/**
|
||||
* 文件大小(MB)
|
||||
*/
|
||||
fileSize: string;
|
||||
|
||||
/**
|
||||
* 0-禁用 1-启用
|
||||
*/
|
||||
status: string;
|
||||
|
||||
/**
|
||||
* 更新app端
|
||||
*/
|
||||
channel: string;
|
||||
}
|
||||
|
||||
export interface VersionForm extends BaseEntity {
|
||||
/**
|
||||
* 更新app端
|
||||
* butler 管家端
|
||||
* resident 业主端
|
||||
*/
|
||||
appChannel: string;
|
||||
/**
|
||||
*
|
||||
*/
|
||||
id?: string | number;
|
||||
|
||||
/**
|
||||
* ios/android
|
||||
*/
|
||||
platform?: string;
|
||||
|
||||
/**
|
||||
* 版本号(递增)
|
||||
*/
|
||||
versionCode?: number;
|
||||
|
||||
/**
|
||||
* 版本名称(1.2.0)
|
||||
*/
|
||||
versionName?: string;
|
||||
|
||||
/**
|
||||
* 最低支持版本
|
||||
*/
|
||||
minVersionCode?: string;
|
||||
|
||||
/**
|
||||
* optional/force
|
||||
* optional-可选更新,force-强制更新
|
||||
*/
|
||||
updateType?: string;
|
||||
method?: string;
|
||||
|
||||
/**
|
||||
* 下载地址
|
||||
*/
|
||||
downloadUrl?: string;
|
||||
|
||||
/**
|
||||
* 更新日志
|
||||
*/
|
||||
releaseNotes?: string;
|
||||
|
||||
/**
|
||||
* 文件大小(MB)
|
||||
*/
|
||||
fileSize?: string;
|
||||
|
||||
/**
|
||||
* 0-禁用 1-启用
|
||||
*/
|
||||
status?: number;
|
||||
channel?: string;
|
||||
}
|
||||
|
||||
export interface VersionQuery extends PageQuery {
|
||||
/**
|
||||
* ios/android
|
||||
*/
|
||||
platform?: string;
|
||||
|
||||
/**
|
||||
* 版本号(递增)
|
||||
*/
|
||||
versionCode?: number;
|
||||
|
||||
/**
|
||||
* 版本名称(1.2.0)
|
||||
*/
|
||||
versionName?: string;
|
||||
|
||||
/**
|
||||
* optional/force
|
||||
*/
|
||||
updateType?: string;
|
||||
|
||||
/**
|
||||
* 下载地址
|
||||
*/
|
||||
downloadUrl?: string;
|
||||
|
||||
/**
|
||||
* 0-禁用 1-启用
|
||||
*/
|
||||
status?: number;
|
||||
|
||||
/**
|
||||
* 更
|
||||
*/
|
||||
channel?: string;
|
||||
|
||||
/**
|
||||
* 更新app端
|
||||
* butler 管家端
|
||||
* resident 业主端
|
||||
*/
|
||||
appChannel: string;
|
||||
}
|
||||
@@ -1,10 +1,9 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
|
||||
/**
|
||||
* 查询小区概况
|
||||
* @param query
|
||||
* @returns {*}
|
||||
* @param villageId
|
||||
*/
|
||||
export const workSpaceTotalListApi = (
|
||||
villageId: string
|
||||
@@ -26,8 +25,8 @@ export const workSpaceTotalListApi = (
|
||||
};
|
||||
/**
|
||||
* 查询近一周报修趋势
|
||||
* @param query
|
||||
* @returns {*}
|
||||
* @param villageId
|
||||
*/
|
||||
export const workSpaceRepairTrendListApi = (
|
||||
villageId: string
|
||||
@@ -47,12 +46,11 @@ export const workSpaceRepairTrendListApi = (
|
||||
};
|
||||
/**
|
||||
* 查询近一周收入趋势
|
||||
* @param query
|
||||
* @returns {*}
|
||||
* @param villageId
|
||||
*/
|
||||
export const workSpaceIncomeTrendListApi = (
|
||||
villageId: string,
|
||||
type: number
|
||||
villageId: string
|
||||
): Promise<
|
||||
{
|
||||
date: string;
|
||||
@@ -63,16 +61,64 @@ export const workSpaceIncomeTrendListApi = (
|
||||
url: '/workSpace/last7DaysIncomeTrend',
|
||||
method: 'GET',
|
||||
params: {
|
||||
villageId: villageId,
|
||||
type: type
|
||||
villageId: villageId
|
||||
}
|
||||
});
|
||||
};
|
||||
/**
|
||||
* 查询当日天气
|
||||
* @param query
|
||||
* 收费率统计
|
||||
* @returns {*}
|
||||
*/
|
||||
export const paymentRateApi = (
|
||||
startDate: string,
|
||||
endDate: string
|
||||
): Promise<{
|
||||
data: {
|
||||
'receivableAmount': string;
|
||||
'receivablePercent': string;
|
||||
'receivedAmount': string;
|
||||
'receivedPercent': string;
|
||||
'unpaidAmount': string;
|
||||
'unpaidPercent': string;
|
||||
};
|
||||
}> => {
|
||||
return request({
|
||||
url: '/workSpace/paymentRate',
|
||||
method: 'GET',
|
||||
params: {
|
||||
startDate: startDate,
|
||||
endDate: endDate
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询近一周支出趋势
|
||||
* @returns {*}
|
||||
* @param villageId
|
||||
*/
|
||||
export const workSpaceOutcomeTrendListApi = (
|
||||
villageId: string
|
||||
): Promise<
|
||||
{
|
||||
date: string;
|
||||
expenditure: string;
|
||||
}[]
|
||||
> => {
|
||||
return request({
|
||||
url: '/workSpace/last7DaysExpenditureTrend',
|
||||
method: 'GET',
|
||||
params: {
|
||||
villageId: villageId
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询当日天气
|
||||
* @returns {*}
|
||||
* @param city
|
||||
*/
|
||||
export const workSpaceWeatherApi = (city: string): Promise<reponseType> => {
|
||||
const url = 'https://uapis.cn/api/v1/misc/weather?city=' + city + '&lang=zh';
|
||||
return new Promise((resolve, reject) => {
|
||||
@@ -287,20 +333,20 @@ type LifeIndices = {
|
||||
|
||||
/**
|
||||
* 查询 快捷入口
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
export const getQuicklyshortcut = () => {
|
||||
export const getQuicklyshortcut = (query?: {}) => {
|
||||
return request({
|
||||
url: '/workSpace/shortcut/list',
|
||||
method: 'GET'
|
||||
method: 'GET',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 添加 快捷入口
|
||||
* @param query
|
||||
* @returns {*}
|
||||
* @param data
|
||||
*/
|
||||
export const addQuicklyshortcut = (data) => {
|
||||
return request({
|
||||
@@ -312,8 +358,8 @@ export const addQuicklyshortcut = (data) => {
|
||||
|
||||
/**
|
||||
* 删除 快捷入口
|
||||
* @param query
|
||||
* @returns {*}
|
||||
* @param id
|
||||
*/
|
||||
export const delQuicklyshortcut = (id) => {
|
||||
return request({
|
||||
|
||||
@@ -33,7 +33,6 @@ export interface SpelVO {
|
||||
* 备注
|
||||
*/
|
||||
remark?: string;
|
||||
|
||||
}
|
||||
|
||||
export interface SpelForm extends BaseEntity {
|
||||
@@ -71,11 +70,9 @@ export interface SpelForm extends BaseEntity {
|
||||
* 备注
|
||||
*/
|
||||
remark?: string;
|
||||
|
||||
}
|
||||
|
||||
export interface SpelQuery extends PageQuery {
|
||||
|
||||
/**
|
||||
* 组件名称
|
||||
*/
|
||||
@@ -101,11 +98,8 @@ export interface SpelQuery extends PageQuery {
|
||||
*/
|
||||
status?: string;
|
||||
|
||||
/**
|
||||
* 日期范围参数
|
||||
*/
|
||||
params?: any;
|
||||
/**
|
||||
* 日期范围参数
|
||||
*/
|
||||
params?: any;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -181,8 +181,8 @@ export const currentTaskAllUser = (taskId: string | number) => {
|
||||
|
||||
/**
|
||||
* 获取下一节点写
|
||||
* @param data参数
|
||||
* @returns
|
||||
* @param data
|
||||
* @param data
|
||||
*/
|
||||
export const getNextNodeList = (data: any): any => {
|
||||
return request({
|
||||
@@ -194,8 +194,8 @@ export const getNextNodeList = (data: any): any => {
|
||||
|
||||
/**
|
||||
* 催办任务
|
||||
* @param data参数
|
||||
* @returns
|
||||
* @param data
|
||||
* @param data
|
||||
*/
|
||||
export const urgeTask = (data: any): any => {
|
||||
return request({
|
||||
|
||||
1
src/assets/icons/svg/app.svg
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1780369458112" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="9273" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M271.958852 64.00158c-115.276539 0-208.874831 93.670541-208.874831 208.950693C63.084021 388.337184 156.628127 481.899353 272.016651 481.899353h144.894925c35.347715 0 63.918494-28.762239 63.918495-64.106342V272.894474c-0.01445-115.36685-93.500757-208.892893-208.871219-208.892894zM416.875452 417.793011v0.025288a0.932009 0.932009 0 0 1 0.043349 0.144497H272.016651a145.241719 145.241719 0 1 1 144.858801-145.06471v144.894925zM416.897127 542.227083H272.016651c-115.370462 0-208.896506 93.515206-208.896506 208.885668 0 115.276539 93.562168 208.892893 208.856769 208.892893 115.370462 0 208.856769-93.529656 208.856769-208.900118v-144.894925c-0.018062-35.351327-28.592454-63.983518-63.936556-63.983518z m-0.021675 208.874831a144.721528 144.721528 0 0 1-88.483079 133.504905C310.564987 892.145979 291.59607 895.884854 272.016651 895.884854c-19.564969 0-38.519436-3.738874-56.354047-11.28526A144.880476 144.880476 0 0 1 272.016651 606.167252h144.920212a0.093923 0.093923 0 0 0-0.043349 0v144.920212zM751.101914 542.227083h-144.894925A63.965456 63.965456 0 0 0 542.227083 606.206989v144.894925c0 115.370462 93.515206 208.896506 208.885668 208.896506 115.276539 0 208.892893-93.60913 208.892893-208.885669-0.003612-115.370462-93.533269-208.885668-208.90373-208.885668zM884.686293 807.448736a144.927437 144.927437 0 0 1-278.519041-56.354047V606.167252h144.920212A144.996074 144.996074 0 0 1 884.686293 807.448736zM606.206989 481.899353h144.894925c115.370462 0 208.896506-93.562168 208.896506-208.950693 0-115.276539-93.60913-208.921793-208.885669-208.921792-115.370462 0-208.885668 93.497144-208.885668 208.867606v144.894925c0 35.347715 28.632191 64.109954 63.979906 64.109954z m-0.039737-209.004879A144.949112 144.949112 0 1 1 751.101914 417.959184H606.167252a0.520191 0.520191 0 0 1 0-0.144498V272.894474z" fill="" p-id="9274"></path></svg>
|
||||
|
After Width: | Height: | Size: 2.1 KiB |
1
src/assets/icons/svg/gongqushouyi.svg
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1784617479089" class="icon" viewBox="0 0 1057 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1942" xmlns:xlink="http://www.w3.org/1999/xlink" width="206.4453125" height="200"><path d="M811.80137 607.92511a170.673929 170.673929 0 1 0 170.761074 170.695715 170.870006 170.870006 0 0 0-170.673929-170.673929m0-74.661674A245.357389 245.357389 0 1 1 566.443981 778.620825a245.357389 245.357389 0 0 1 245.357389-245.357389z" p-id="1943" fill="#2c2c2c"></path><path d="M873.718055 889.447768a251.413982 251.413982 0 0 1-3.442237-7.973788c-1.568614-3.616527-2.984724-6.971618-4.466193-10.348496a1687.218757 1687.218757 0 0 1-132.787541 13.529297l-4.771201 0.326794-5.816944-31.067273 4.553338-1.394324c10.32671-3.355091 30.195821-24.24816 66.666099-104.835709l2.047913-4.553338 32.309094 11.132802-2.592571 5.555509a669.209991 669.209991 0 0 1-51.08889 90.60925c26.535722-2.178631 52.505-4.945492 77.297817-8.540232a388.340922 388.340922 0 0 0-20.413769-34.967023l-3.921536-5.882302 30.50083-10.413855 2.178631 3.42045a501.455427 501.455427 0 0 1 44.378707 81.611506l2.178631 4.945492-30.740479 13.856091z m26.513935-91.502489a233.919578 233.919578 0 0 1-72.766265-114.792051l-1.263606-4.139399 28.627207-16.274371 2.047913 6.535892a209.802136 209.802136 0 0 0 66.361091 102.047062l4.204758 3.59474-23.137058 26.535722z m-204.050551-19.607676l4.357261-4.139399a236.686439 236.686439 0 0 0 61.655249-103.049232l1.786477-5.555508 30.91477 12.265691-1.633973 4.858346a277.470406 277.470406 0 0 1-67.537552 114.639548l-3.59474 3.442236z" p-id="1944" fill="#2c2c2c"></path><path d="M515.267946 643.240713l142.090294 13.311434-13.33322-140.151313 13.33322-140.020595-145.968257 13.071784-157.013914-12.810348 13.485724 135.075103-13.071784 144.138207z m-81.872942-188.887281l78.299988 6.383388 66.949321-6.034807-5.882303 61.698821 5.860517 61.524531-62.83171-5.882303-82.787966 6.535892 6.100166-67.145398z" p-id="1945" fill="#2c2c2c"></path><path d="M589.297817 900.863793a408.798264 408.798264 0 1 1 312.764223-317.317561 45.903749 45.903749 0 1 0 89.933875 18.365857 500.583975 500.583975 0 1 0-383.025063 388.602357 45.903749 45.903749 0 1 0-19.607676-89.650653z" p-id="1946" fill="#2c2c2c"></path></svg>
|
||||
|
After Width: | Height: | Size: 2.3 KiB |
1
src/assets/icons/svg/jifen.svg
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1785922870272" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5271" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M672 364.8 576 364.8l38.4-38.4c12.8-12.8 12.8-25.6 0-38.4-12.8-12.8-25.6-12.8-38.4 0L512 358.4 441.6 288c-12.8-12.8-25.6-12.8-38.4 0-12.8 12.8-12.8 25.6 0 38.4L448 364.8 358.4 364.8c-38.4 0-64 32-64 64 0 32 19.2 57.6 51.2 64l0 211.2c0 12.8 12.8 25.6 25.6 25.6l300.8 0c12.8 0 25.6-12.8 25.6-25.6L697.6 499.2c25.6-6.4 51.2-32 51.2-64C742.4 396.8 710.4 364.8 672 364.8L672 364.8zM358.4 448C345.6 448 339.2 441.6 339.2 435.2c0-6.4 6.4-19.2 19.2-19.2l134.4 0L492.8 448 358.4 448 358.4 448zM640 684.8 390.4 684.8 390.4 499.2l102.4 0 0 108.8c0 12.8 12.8 25.6 25.6 25.6 12.8 0 25.6-12.8 25.6-25.6L544 499.2 640 499.2 640 684.8 640 684.8zM672 448 544 448 544 416l134.4 0c6.4 0 19.2 6.4 19.2 19.2C691.2 441.6 684.8 448 672 448L672 448zM512 0C230.4 0 0 230.4 0 512s230.4 512 512 512c281.6 0 512-230.4 512-512S793.6 0 512 0L512 0zM505.6 985.6c-262.4 0-473.6-211.2-473.6-473.6 0-262.4 211.2-473.6 473.6-473.6 262.4 0 473.6 211.2 473.6 473.6C979.2 774.4 768 985.6 505.6 985.6L505.6 985.6zM505.6 985.6" fill="#272636" p-id="5272"></path></svg>
|
||||
|
After Width: | Height: | Size: 1.3 KiB |
1
src/assets/icons/svg/jifenfenlei.svg
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1785923003615" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="7309" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M112.127 284.09a390.766 200.815 0 1 0 799.746 0 390.766 200.815 0 1 0-799.746 0z" p-id="7310"></path><path d="M512 551.409c-163.335 0-303.792-50.328-365.87-122.452-21.857 25.394-34.003 53.489-34.003 83.043 0 113.492 179.03 205.495 399.873 205.495S911.873 625.492 911.873 512c0-29.554-12.145-57.649-34.003-83.043C815.792 501.08 675.335 551.409 512 551.409z" p-id="7311"></path><path d="M512 784.985c-165.467 0-307.456-51.648-368.263-125.285-20.35 24.644-31.61 51.752-31.61 80.21 0 113.492 179.03 205.495 399.873 205.495s399.873-92.003 399.873-205.495c0-28.46-11.26-55.566-31.61-80.21C819.456 733.337 677.467 784.985 512 784.985z" p-id="7312"></path></svg>
|
||||
|
After Width: | Height: | Size: 987 B |
1
src/assets/icons/svg/jifenshangpin.svg
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1785922964475" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="6299" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M862.208 5.12H161.8944C81.6128 5.3248 16.5888 71.9872 16.5888 154.2144v715.6736c0 82.1248 64.9216 148.8896 145.3056 148.992h700.2112c80.2816-0.2048 145.3056-66.8672 145.3056-148.992V154.2144C1007.4112 72.0896 942.3872 5.4272 862.208 5.12z m83.2512 864.768c0.1024 47.2064-37.1712 85.504-83.2512 85.7088H161.8944c-46.08-0.1024-83.456-38.5024-83.3536-85.7088V298.1888h866.9184v571.6992z m0-634.9824H78.5408v-80.6912c0-47.3088 37.376-85.7088 83.3536-85.7088h700.2112c45.9776 0 83.3536 38.5024 83.3536 85.7088v80.6912z m-724.992 242.7904h32.8704C268.8 609.8944 378.6752 712.3968 512 712.6016c133.3248-0.2048 243.2-102.7072 258.6624-234.9056h32.8704c17.1008 0 30.9248-14.2336 30.9248-31.6416 0-17.5104-13.824-31.6416-30.9248-31.6416H679.7312c-17.1008 0-30.9248 14.2336-30.9248 31.6416 0 17.5104 13.824 31.6416 30.9248 31.6416h28.5696C693.3504 574.7712 611.0208 649.216 512 649.216c-99.0208 0-181.3504-74.4448-196.1984-171.52h28.5696c17.1008 0 30.9248-14.2336 30.9248-31.6416 0-17.5104-13.824-31.6416-30.9248-31.6416h-123.904c-17.1008 0-30.9248 14.2336-30.9248 31.6416 0 17.5104 13.824 31.6416 30.9248 31.6416z" fill="#5D5D5D" p-id="6300"></path></svg>
|
||||
|
After Width: | Height: | Size: 1.4 KiB |
@@ -1 +1,5 @@
|
||||
<svg width="130" height="130" xmlns="http://www.w3.org/2000/svg"><path d="M63.444 64.996c20.633 0 37.359-14.308 37.359-31.953 0-17.649-16.726-31.952-37.359-31.952-20.631 0-37.36 14.303-37.358 31.952 0 17.645 16.727 31.953 37.359 31.953zM80.57 75.65H49.434c-26.652 0-48.26 18.477-48.26 41.27v2.664c0 9.316 21.608 9.325 48.26 9.325H80.57c26.649 0 48.256-.344 48.256-9.325v-2.663c0-22.794-21.605-41.271-48.256-41.271z" stroke="#979797"/></svg>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="72" height="72">
|
||||
<path d="M0 0 C2.20570851 -0.00968797 4.41047736 -0.04072695 6.6159668 -0.07226562 C8.03327902 -0.07879854 9.45059785 -0.08404788 10.86791992 -0.08789062 C12.14642822 -0.09723633 13.42493652 -0.10658203 14.7421875 -0.11621094 C19.47309186 0.34343639 23.47367381 1.57231844 27.15307617 4.74023438 C30.37034726 9.00034505 31.56636885 11.94712449 31.66088867 17.24023438 C31.68666992 18.10648438 31.71245117 18.97273438 31.73901367 19.86523438 C31.33471302 22.79160097 30.73125242 23.46286318 28.41088867 25.24023438 C26.09619141 25.6211853 26.09619141 25.6211853 23.34448242 25.62841797 C21.79772827 25.64260269 21.79772827 25.64260269 20.21972656 25.65707397 C19.10718506 25.65100128 17.99464355 25.64492859 16.84838867 25.63867188 C15.7055542 25.64154205 14.56271973 25.64441223 13.38525391 25.64736938 C10.96768702 25.64941195 8.55010368 25.64386876 6.13256836 25.63134766 C2.42548783 25.61529758 -1.28050233 25.63119078 -4.98754883 25.65039062 C-7.33390541 25.64840823 -9.68026131 25.64456463 -12.02661133 25.63867188 C-13.69542358 25.64778091 -13.69542358 25.64778091 -15.39794922 25.65707397 C-16.42911865 25.64761749 -17.46028809 25.63816101 -18.52270508 25.62841797 C-19.88480103 25.6248378 -19.88480103 25.6248378 -21.27441406 25.6211853 C-24.04037872 25.16596517 -24.92923084 24.46245011 -26.58911133 22.24023438 C-27.60354862 16.46192001 -26.97476687 11.09300732 -23.58911133 6.24023438 C-16.66108134 -0.90126433 -9.35102094 0.02485596 0 0 Z M-18.58911133 11.24023438 C-18.91911133 13.55023438 -19.24911133 15.86023438 -19.58911133 18.24023438 C-5.06911133 18.24023438 9.45088867 18.24023438 24.41088867 18.24023438 C24.11197307 11.59954901 24.11197307 11.59954901 21.30541992 8.8359375 C17.68528986 6.84022478 15.2236764 6.72349544 11.09838867 6.70898438 C10.40704834 6.70515747 9.71570801 6.70133057 9.00341797 6.6973877 C7.54775529 6.69467651 6.09204324 6.70198226 4.63647461 6.71875 C2.41693822 6.74017598 0.20063771 6.71892665 -2.01879883 6.69335938 C-3.43807676 6.6960028 -4.85735268 6.70112809 -6.27661133 6.70898438 C-7.55922852 6.71349609 -8.8418457 6.71800781 -10.16333008 6.72265625 C-14.24225476 7.3389134 -15.87427125 8.1400784 -18.58911133 11.24023438 Z " transform="translate(33.589111328125,39.759765625)"/>
|
||||
<path d="M0 0 C4.3525815 2.2134923 7.02675779 4.79167963 9.078125 9.3046875 C9.84088671 14.58111131 9.73444722 18.86077861 7.515625 23.7421875 C3.60118069 27.85737255 -0.12616384 30.46772755 -5.921875 30.8046875 C-11.71758616 30.46772755 -15.44493069 27.85737255 -19.359375 23.7421875 C-21.57819722 18.86077861 -21.68463671 14.58111131 -20.921875 9.3046875 C-18.87050779 4.79167963 -16.1963315 2.2134923 -11.84375 0 C-7.76639941 -1.47513904 -4.07735059 -1.47513904 0 0 Z M-13.921875 10.3046875 C-15.07584314 13.30500466 -15.04771333 14.82421387 -14.234375 17.9296875 C-12.72322882 20.66414249 -11.68578936 21.84595492 -8.921875 23.3046875 C-5.10725414 23.87282252 -3.43491208 23.61250975 -0.109375 21.6171875 C2.35349982 19.01357698 2.99140319 17.86028174 3.078125 14.3046875 C2.30174948 11.34034461 1.45595939 9.69601598 -0.671875 7.4921875 C-6.02599766 4.66640054 -9.91623177 6.07015037 -13.921875 10.3046875 Z " transform="translate(41.921875,7.6953125)"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 440 B After Width: | Height: | Size: 3.2 KiB |
5
src/assets/icons/svg/user_login.svg
Normal file
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="72" height="72">
|
||||
<path d="M0 0 C2.20570851 -0.00968797 4.41047736 -0.04072695 6.6159668 -0.07226562 C8.03327902 -0.07879854 9.45059785 -0.08404788 10.86791992 -0.08789062 C12.14642822 -0.09723633 13.42493652 -0.10658203 14.7421875 -0.11621094 C19.47309186 0.34343639 23.47367381 1.57231844 27.15307617 4.74023438 C30.37034726 9.00034505 31.56636885 11.94712449 31.66088867 17.24023438 C31.68666992 18.10648438 31.71245117 18.97273438 31.73901367 19.86523438 C31.33471302 22.79160097 30.73125242 23.46286318 28.41088867 25.24023438 C26.09619141 25.6211853 26.09619141 25.6211853 23.34448242 25.62841797 C21.79772827 25.64260269 21.79772827 25.64260269 20.21972656 25.65707397 C19.10718506 25.65100128 17.99464355 25.64492859 16.84838867 25.63867188 C15.7055542 25.64154205 14.56271973 25.64441223 13.38525391 25.64736938 C10.96768702 25.64941195 8.55010368 25.64386876 6.13256836 25.63134766 C2.42548783 25.61529758 -1.28050233 25.63119078 -4.98754883 25.65039062 C-7.33390541 25.64840823 -9.68026131 25.64456463 -12.02661133 25.63867188 C-13.69542358 25.64778091 -13.69542358 25.64778091 -15.39794922 25.65707397 C-16.42911865 25.64761749 -17.46028809 25.63816101 -18.52270508 25.62841797 C-19.88480103 25.6248378 -19.88480103 25.6248378 -21.27441406 25.6211853 C-24.04037872 25.16596517 -24.92923084 24.46245011 -26.58911133 22.24023438 C-27.60354862 16.46192001 -26.97476687 11.09300732 -23.58911133 6.24023438 C-16.66108134 -0.90126433 -9.35102094 0.02485596 0 0 Z M-18.58911133 11.24023438 C-18.91911133 13.55023438 -19.24911133 15.86023438 -19.58911133 18.24023438 C-5.06911133 18.24023438 9.45088867 18.24023438 24.41088867 18.24023438 C24.11197307 11.59954901 24.11197307 11.59954901 21.30541992 8.8359375 C17.68528986 6.84022478 15.2236764 6.72349544 11.09838867 6.70898438 C10.40704834 6.70515747 9.71570801 6.70133057 9.00341797 6.6973877 C7.54775529 6.69467651 6.09204324 6.70198226 4.63647461 6.71875 C2.41693822 6.74017598 0.20063771 6.71892665 -2.01879883 6.69335938 C-3.43807676 6.6960028 -4.85735268 6.70112809 -6.27661133 6.70898438 C-7.55922852 6.71349609 -8.8418457 6.71800781 -10.16333008 6.72265625 C-14.24225476 7.3389134 -15.87427125 8.1400784 -18.58911133 11.24023438 Z " fill="#1974FF" transform="translate(33.589111328125,39.759765625)"/>
|
||||
<path d="M0 0 C4.3525815 2.2134923 7.02675779 4.79167963 9.078125 9.3046875 C9.84088671 14.58111131 9.73444722 18.86077861 7.515625 23.7421875 C3.60118069 27.85737255 -0.12616384 30.46772755 -5.921875 30.8046875 C-11.71758616 30.46772755 -15.44493069 27.85737255 -19.359375 23.7421875 C-21.57819722 18.86077861 -21.68463671 14.58111131 -20.921875 9.3046875 C-18.87050779 4.79167963 -16.1963315 2.2134923 -11.84375 0 C-7.76639941 -1.47513904 -4.07735059 -1.47513904 0 0 Z M-13.921875 10.3046875 C-15.07584314 13.30500466 -15.04771333 14.82421387 -14.234375 17.9296875 C-12.72322882 20.66414249 -11.68578936 21.84595492 -8.921875 23.3046875 C-5.10725414 23.87282252 -3.43491208 23.61250975 -0.109375 21.6171875 C2.35349982 19.01357698 2.99140319 17.86028174 3.078125 14.3046875 C2.30174948 11.34034461 1.45595939 9.69601598 -0.671875 7.4921875 C-6.02599766 4.66640054 -9.91623177 6.07015037 -13.921875 10.3046875 Z " fill="#1974FF" transform="translate(41.921875,7.6953125)"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.3 KiB |