From 4829f8e73d0c17bb87baec9637e3455daca78311 Mon Sep 17 00:00:00 2001
From: renkang <8417338+k94314517@user.noreply.gitee.com>
Date: 星期二, 03 十二月 2024 19:26:56 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
admin/.env | 2
admin/src/views/contract/components/contractEdit.vue | 94 +++++++++++++++++++++++--------
admin/src/views/login.vue | 1
admin/src/views/contract/components/terminateLease.vue | 2
admin/src/api/customer.js | 6 ++
admin/vue.config.js | 5 -
/dev/null | 5 -
admin/src/views/client/components/OperaYwCustomerWindow.vue | 6 +
admin/.gitignore | 3
admin/src/views/contract/components/config.js | 2
admin/src/router/index.js | 2
admin/.env.development | 10 +++
admin/src/views/client/components/staffEdit.vue | 6 +
13 files changed, 103 insertions(+), 41 deletions(-)
diff --git a/admin/.env b/admin/.env
index af248a9..18495ab 100644
--- a/admin/.env
+++ b/admin/.env
@@ -4,7 +4,7 @@
VUE_APP_ROUTER_MODE = 'hash'
# 椤圭洰涓婁笅鏂囪矾寰�
-VUE_APP_CONTEXT_PATH = '/'
+VUE_APP_CONTEXT_PATH = '/fn_admin/#/'
# 鎺ュ彛鍓嶇紑
VUE_APP_API_PREFIX = '/gateway_interface'
diff --git a/admin/.env.development b/admin/.env.development
new file mode 100644
index 0000000..a124a35
--- /dev/null
+++ b/admin/.env.development
@@ -0,0 +1,10 @@
+# 寮�鍙戠幆澧冮厤缃�
+NODE_ENV = 'development'
+# 椤圭洰涓婁笅鏂囪矾寰�
+VUE_APP_CONTEXT_PATH = './'
+
+#VUE_APP_API_URL = 'http://localhost:10010'
+VUE_APP_API_URL = 'http://192.168.0.163:10010'
+# VUE_APP_API_URL = 'https://dmtest.ahapp.net/fn_admin'
+# VUE_APP_API_URL = 'http://10.50.250.253:8088/gateway_interface'
+
diff --git a/admin/.gitignore b/admin/.gitignore
index 25910be..c2dd892 100644
--- a/admin/.gitignore
+++ b/admin/.gitignore
@@ -1,7 +1,7 @@
.DS_Store
coderd.json
node_modules
-.env.development
+# .env.development
/dist
@@ -10,6 +10,7 @@
.env.*.local
unpackage
admin
+fn_admin
# Log files
npm-debug.log*
yarn-debug.log*
diff --git a/admin/babel.config.js b/admin/babel.config.js
deleted file mode 100644
index e955840..0000000
--- a/admin/babel.config.js
+++ /dev/null
@@ -1,5 +0,0 @@
-module.exports = {
- presets: [
- '@vue/cli-plugin-babel/preset'
- ]
-}
diff --git a/admin/src/api/customer.js b/admin/src/api/customer.js
index e57764c..48bb68e 100644
--- a/admin/src/api/customer.js
+++ b/admin/src/api/customer.js
@@ -11,3 +11,9 @@
export function list (data) {
return request.post('/visitsAdmin/cloudService/business/ywCustomer/list', data)
}
+
+// 闃滃畞杩愮淮 - 鏌ヨ鑱旂郴浜哄垪琛�
+export function ywList (data) {
+ return request.post('/visitsAdmin/cloudService/business/member/ywList', data)
+}
+
diff --git a/admin/src/router/index.js b/admin/src/router/index.js
index f69ea19..6002274 100644
--- a/admin/src/router/index.js
+++ b/admin/src/router/index.js
@@ -10,7 +10,7 @@
const router = new VueRouter({
// + (process.env.VUE_APP_ROUTER_MODE === 'hash' ? '#' : '')
- // base: process.env.VUE_APP_CONTEXT_PATH,
+ base: '/',
mode: 'hash',
routes: [
// 鐧诲綍
diff --git a/admin/src/views/client/components/OperaYwCustomerWindow.vue b/admin/src/views/client/components/OperaYwCustomerWindow.vue
index d3c0941..c966c3f 100644
--- a/admin/src/views/client/components/OperaYwCustomerWindow.vue
+++ b/admin/src/views/client/components/OperaYwCustomerWindow.vue
@@ -45,7 +45,9 @@
<el-form-item label="璇佷欢鍙风爜" prop="member.idcardNo">
<el-input v-model="form.member.idcardNo" placeholder="璇疯緭鍏�" v-trim />
</el-form-item>
- <el-form-item label="閭" prop="email">
+ <el-form-item label="閭" prop="member.email" :rules="[
+ { required: false, type: 'email', message: '璇疯緭鍏ユ纭殑閭鏍煎紡'}
+ ]">
<el-input v-model="form.member.email" placeholder="璇疯緭鍏ラ偖绠�" v-trim />
</el-form-item>
</template>
@@ -264,4 +266,4 @@
}
}
}
-</style>
\ No newline at end of file
+</style>
diff --git a/admin/src/views/client/components/staffEdit.vue b/admin/src/views/client/components/staffEdit.vue
index e1ce3d3..ffe8cd5 100644
--- a/admin/src/views/client/components/staffEdit.vue
+++ b/admin/src/views/client/components/staffEdit.vue
@@ -32,7 +32,9 @@
<el-form-item label="璇佷欢鍙风爜" prop="member.idcardNo">
<el-input v-model="form.idcardNo" placeholder="璇疯緭鍏�" v-trim />
</el-form-item>
- <el-form-item label="閭" prop="email">
+ <el-form-item label="閭" prop="email" :rules="[
+ { required: false, type: 'email', message: '璇疯緭鍏ユ纭殑閭鏍煎紡'}
+ ]">
<el-input v-model="form.email" placeholder="璇疯緭鍏ラ偖绠�" v-trim />
</el-form-item>
<el-form-item label="鎬у埆">
@@ -213,4 +215,4 @@
}
}
}
-</style>
\ No newline at end of file
+</style>
diff --git a/admin/src/views/contract/components/config.js b/admin/src/views/contract/components/config.js
index c094419..0611aea 100644
--- a/admin/src/views/contract/components/config.js
+++ b/admin/src/views/contract/components/config.js
@@ -9,7 +9,7 @@
roundedUp: [{ required: true, message: '璇烽�夋嫨' }],
companyId: [{ required: true, message: '璇烽�夋嫨' }],
renterName: [{ required: true, message: '璇烽�夋嫨' }],
- memberName: [{ required: true, message: '璇烽�夋嫨' }],
+ memberId: [{ required: true, message: '璇烽�夋嫨' }],
zlDeposit: [{ required: true, message: '璇疯緭鍏�' }],
zlPayType: [{ required: true, message: '璇烽�夋嫨' }],
wyDeposit: [{ required: true, message: '璇疯緭鍏�' }],
diff --git a/admin/src/views/contract/components/contractEdit.vue b/admin/src/views/contract/components/contractEdit.vue
index 213d597..6dd8331 100644
--- a/admin/src/views/contract/components/contractEdit.vue
+++ b/admin/src/views/contract/components/contractEdit.vue
@@ -1,6 +1,4 @@
<template>
-<!-- :text="activeTabs === 0 ? '涓嬩竴姝�' : '鎻愪氦'"-->
-<!-- :backText="activeTabs === 0 ? '杩斿洖' : '涓婁竴姝�'"-->
<GlobalWindow
width="100%"
:title="title"
@@ -42,7 +40,7 @@
<el-date-picker type="date" v-model="form.endDate" @change="getHouseData" :clearable="false" value-format="yyyy-MM-dd" placeholder="璇烽�夋嫨" />
</el-form-item>
<el-form-item label="褰掑睘椤圭洰" prop="projectId">
- <el-select v-model="form.projectId" placeholder="璇烽�夋嫨">
+ <el-select v-model="form.projectId" @change="getHouseTree" placeholder="璇烽�夋嫨">
<el-option v-for="(item, index) in projectList" :key="index" :value="item.id" :label="item.name"></el-option>
</el-select>
</el-form-item>
@@ -65,8 +63,11 @@
<el-input v-model="form.renterName" readonly placeholder="璇风偣鍑婚�夋嫨绉熷" />
</div>
</el-form-item>
- <el-form-item label="鑱旂郴浜�" prop="memberName">
- <el-input v-model="form.memberName" readonly placeholder="璇风偣鍑婚�夋嫨绉熷" />
+ <el-form-item label="鑱旂郴浜�" prop="memberId">
+ <el-select v-model="form.memberId" placeholder="璇烽�夋嫨">
+ <el-option v-for="(item, index) in contactsList" :key="index" :value="item.id" :label="item.name"></el-option>
+ </el-select>
+<!-- <el-input v-model="form.memberName" readonly placeholder="璇风偣鍑婚�夋嫨绉熷" />-->
</el-form-item>
</div>
</el-form>
@@ -134,7 +135,7 @@
<el-button type="text" size="medium" @click="addZl">澧炲姞</el-button>
</div>
<div class="list">
- <div v-for="(item, index) in form.zlDetailList" :key="index">
+ <div style="width: 100%; display: flex; flex-wrap: wrap;" v-for="(item, index) in form.zlDetailList" :key="index">
<el-form-item label="璧峰鏃ユ湡" prop="time">
<el-date-picker type="daterange" v-model="item.time" @change="getDate1($event, index)" value-format="yyyy-MM-dd" placeholder="璇烽�夋嫨" />
</el-form-item>
@@ -217,7 +218,7 @@
<el-button type="text" size="medium" @click="addWy">澧炲姞</el-button>
</div>
<div class="list">
- <div v-for="(item, index) in form.wyDetailList" :key="index">
+ <div style="width: 100%; display: flex; flex-wrap: wrap;" v-for="(item, index) in form.wyDetailList" :key="index">
<el-form-item label="璧峰鏃ユ湡" prop="time">
<el-date-picker type="daterange" v-model="item.time" @change="getDate2($event, index)" value-format="yyyy-MM-dd" placeholder="璇烽�夋嫨" />
</el-form-item>
@@ -294,6 +295,7 @@
import MemberSearch from '@/components/common/MemberSearch'
import { rules } from './config'
import { create, getBillList } from '@/api/contract'
+import { ywList } from '@/api/customer'
import { getUserList } from '@/api/system/user'
import { getProjectList, tree } from '@/api/project/ywProject'
import { companyList } from '@/api/company'
@@ -335,6 +337,7 @@
zlDate: [],
zlDetailList: [
{
+ circleType: 0,
startDate: '',
endDate: '',
time: [],
@@ -350,6 +353,7 @@
wyDate: [],
wyDetailList: [
{
+ circleType: 0,
startDate: '',
endDate: '',
time: [],
@@ -367,6 +371,8 @@
wyList: [],
rules,
+
+ contactsList: [],
loadingInstance: null,
uploadImgUrl: process.env.VUE_APP_API_PREFIX + '/visitsAdmin/cloudService/public/uploadBatch',
@@ -388,7 +394,7 @@
{ name: '涓�娆℃�т粯娆�', value: 0 },
{ name: '3涓湀涓�浠�', value: 1 },
{ name: '6涓湀涓�浠�', value: 2 },
- { name: '1骞翠竴浠�', value: 2 },
+ { name: '1骞翠竴浠�', value: 3 },
],
unitOps: [
{ name: '鍏�/m虏路澶�', value: 0 },
@@ -407,6 +413,7 @@
open (title, target) {
this.title = title
this.ids = []
+ this.houseList = []
this.getUser()
this.getProject()
this.getCompany()
@@ -422,18 +429,20 @@
}
this.form.zlDetailList = [
{
- startDate: '',
- endDate: '',
- time: [],
+ circleType: 0,
+ startDate: this.form.startDate,
+ endDate: this.form.endDate,
+ time: [this.form.startDate, this.form.endDate],
price: '',
advanceDays: ''
}
]
this.form.wyDetailList = [
{
- startDate: '',
- endDate: '',
- time: [],
+ circleType: 0,
+ startDate: this.form.startDate,
+ endDate: this.form.endDate,
+ time: [this.form.startDate, this.form.endDate],
price: '',
advanceDays: ''
}
@@ -444,7 +453,15 @@
this.form.signDate = this.getDayTime()
this.form.startDate = this.getDayTime()
this.form.endDate = this.getDayTime(1)
- this.getHouseTree()
+ // this.getHouseTree()
+ })
+ },
+ // 鑾峰彇鑱旂郴浜�
+ getYwList () {
+ ywList({
+ customerId: this.form.renterId
+ }).then(res => {
+ this.contactsList = res
})
},
getHouseData () {
@@ -470,10 +487,34 @@
return `${year + 1}-${month < 10 ? '0' + month : month}-${day < 10 ? '0' + day : day}`;
}
},
+ clearData () {
+ this.form.zlDetailList = [
+ {
+ circleType: 0,
+ startDate: this.form.startDate,
+ endDate: this.form.endDate,
+ time: [this.form.startDate, this.form.endDate],
+ price: '',
+ advanceDays: ''
+ }
+ ]
+ this.form.wyDetailList = [
+ {
+ circleType: 0,
+ startDate: this.form.startDate,
+ endDate: this.form.endDate,
+ time: [this.form.startDate, this.form.endDate],
+ price: '',
+ advanceDays: ''
+ }
+ ]
+ },
confirm () {
if (this.activeTabs === 0) {
this.$refs.form.validate((valid) => {
if (!valid) return
+ if (this.form.roomIds.length === 0) return this.$message.warning('璇烽�夋嫨鎴挎簮锛�')
+ this.clearData()
this.activeTabs = 1
})
} else if (this.activeTabs === 1) {
@@ -539,7 +580,8 @@
getHouseTree () {
tree({
startDate: this.form.startDate,
- endDate: this.form.endDate
+ endDate: this.form.endDate,
+ projectId: this.form.projectId
})
.then(res => {
res.forEach(item => {
@@ -590,18 +632,20 @@
},
addZl () {
this.form.zlDetailList.push({
- startDate: '',
- endDate: '',
- time: [],
+ circleType: 0,
+ startDate: this.form.startDate,
+ endDate: this.form.endDate,
+ time: [this.form.startDate, this.form.endDate],
price: '',
advanceDays: ''
})
},
addWy () {
this.form.wyDetailList.push({
- startDate: '',
- endDate: '',
- time: [],
+ circleType: 0,
+ startDate: this.form.startDate,
+ endDate: this.form.endDate,
+ time: [this.form.startDate, this.form.endDate],
price: '',
advanceDays: ''
})
@@ -625,8 +669,9 @@
getTenant (row) {
this.form.renterId = row.id
this.form.renterName = row.name
- this.form.memberId = row.memberId
- this.form.memberName = row.memberName
+ this.form.memberId = ''
+ this.form.memberName = ''
+ this.getYwList()
},
dele (imgaddr) {
this.form.fileList.forEach((item, index) => {
@@ -718,6 +763,7 @@
position: sticky;
top: 0;
left: 0;
+ z-index: 999;
}
.tabs {
border-bottom: 1px solid #DFE2E8;
diff --git a/admin/src/views/contract/components/terminateLease.vue b/admin/src/views/contract/components/terminateLease.vue
index 6bb8929..23f9b2f 100644
--- a/admin/src/views/contract/components/terminateLease.vue
+++ b/admin/src/views/contract/components/terminateLease.vue
@@ -179,7 +179,7 @@
</el-table-column>
</el-table>
<div class="footer">
- 鍚堣搴旀敹锛�<span>{{receivable}}</span>鍏冿紝 鍚堣搴斾粯锛�<span>{{meet}}</span>鍏�
+ 鍚堣搴旀敹锛�<span>{{receivable.toFixed(2)}}</span>鍏冿紝 鍚堣搴斾粯锛�<span>{{meet.toFixed(2)}}</span>鍏�
</div>
</div>
<!-- 鍒涘缓鏀舵璐﹀崟 -->
diff --git a/admin/src/views/login.vue b/admin/src/views/login.vue
index a728dbc..c51189a 100644
--- a/admin/src/views/login.vue
+++ b/admin/src/views/login.vue
@@ -138,6 +138,7 @@
}
Cookies.set('dm_user_token', res)
window.location.href = process.env.VUE_APP_CONTEXT_PATH
+ // this.$router.push('')
})
.catch(e => {
this.refreshCaptcha()
diff --git a/admin/vue.config.js b/admin/vue.config.js
index c429385..9d855e9 100644
--- a/admin/vue.config.js
+++ b/admin/vue.config.js
@@ -1,13 +1,12 @@
// 璇︾粏閰嶇疆璇峰弬鑰僪ttps://cli.vuejs.org/zh/config/#vue-config-js
-// const outputDir = process.env.VUE_APP_CONTEXT_PATH.substring(1, process.env.VUE_APP_CONTEXT_PATH.length - 1)
const path = require('path')
function resolve (dir) {
return path.join(__dirname, dir)
}
module.exports = {
- publicPath: process.env.VUE_APP_CONTEXT_PATH,
- outputDir: 'admin',
+ publicPath: './',
+ outputDir: 'fn_admin',
assetsDir: 'static',
lintOnSave: false,
devServer: {
--
Gitblit v1.9.3