From eca403e764d507646c7a3bac530b6b5fb6c75308 Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Thu, 28 Dec 2023 08:40:46 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
src/views/system/dept.vue | 2
src/api/userHouse/list/houseHold.js | 4
src/views/userHouse/houseList.vue | 6
src/styles/avue-ui.scss | 34 +
src/views/system/user.vue | 7
src/views/property/propertyCompanyDistrict.vue | 47 +
src/views/place/components/baseAllInfo.vue | 516 +++++++++++++++++
src/api/place/place.js | 2
src/views/place/components/boxTitle.vue | 474 ++++++++++++++++
src/views/cGovernance/taskECall.vue | 24
src/main.js | 1
src/views/community/index.vue | 21
src/views/property/propertyCapitalApply.vue | 30
src/views/article/rotation.vue | 52 +
src/views/grid/gridman.vue | 63 +
src/views/grid/index.vue | 23
src/views/place/index.vue | 387 +++---------
src/views/base/region.vue | 4
src/views/district/index.vue | 11
19 files changed, 1,351 insertions(+), 357 deletions(-)
diff --git a/src/api/place/place.js b/src/api/place/place.js
index ae919d7..1372b57 100644
--- a/src/api/place/place.js
+++ b/src/api/place/place.js
@@ -62,7 +62,7 @@
export const update = (row) => {
return request({
- url: "/api/blade-place/place/add",
+ url: "/api/blade-place/place/addOrUpdate",
method: "post",
data: row,
});
diff --git a/src/api/userHouse/list/houseHold.js b/src/api/userHouse/list/houseHold.js
index 4f6e6be..8689ab8 100644
--- a/src/api/userHouse/list/houseHold.js
+++ b/src/api/userHouse/list/houseHold.js
@@ -36,7 +36,7 @@
export const add = (row) => {
return request({
- url: '/api/blade-household/household/submit',
+ url: '/api/blade-household/household/saveOrUpdateHousehold',
method: 'post',
data: row
})
@@ -44,7 +44,7 @@
export const update = (row) => {
return request({
- url: '/api/blade-household/household/update',
+ url: '/api/blade-household/household/saveOrUpdateHousehold',
method: 'post',
data: row
})
diff --git a/src/main.js b/src/main.js
index 625f2b0..88899a7 100644
--- a/src/main.js
+++ b/src/main.js
@@ -52,6 +52,7 @@
Vue.use(window.WfDesignBase);
// 加载website
Vue.prototype.website = website;
+Vue.prototype.$axios = axios;
iconData.forEach((item) => {
loadStyle(item.url.replace("$key", item.icon));
diff --git a/src/styles/avue-ui.scss b/src/styles/avue-ui.scss
index 43afc32..85f0911 100644
--- a/src/styles/avue-ui.scss
+++ b/src/styles/avue-ui.scss
@@ -3,4 +3,38 @@
color: #777 !important;
cursor: not-allowed;
}
+}
+
+.place-info-box {
+ .el-dialog {
+ display: flex;
+ flex-direction: column;
+ height: 72% !important;
+
+ .el-dialog__header {
+ padding-top: 10px !important;
+ padding-bottom: 10px !important;
+
+ .el-dialog__headerbtn {
+ top: 10px !important;
+ }
+ }
+
+ .el-dialog__body {
+ padding: 0px !important;
+ padding-bottom: 10px !important;
+ height: 0 !important;
+ flex: 1;
+
+ .el-tabs {
+ display: flex;
+ flex-direction: column;
+ height: 100% !important;
+
+ .el-tabs__content {
+ flex: 1;
+ }
+ }
+ }
+ }
}
\ No newline at end of file
diff --git a/src/views/article/rotation.vue b/src/views/article/rotation.vue
index 8af2bfd..8dd4824 100644
--- a/src/views/article/rotation.vue
+++ b/src/views/article/rotation.vue
@@ -57,11 +57,49 @@
search: true,
},
{
- label: "跳转地址",
- prop: "junpUrl",
+ label: "类型",
+ prop: "type",
span: 12,
searchSpan: 4,
search: true,
+ type:"select",
+ dicData:[
+ {
+ label:"系统",
+ value:"1"
+ },
+ {
+ label:"社区",
+ value:"2"
+ }
+ ]
+ },
+ {
+ parent: false,
+ label: "所属社区",
+ prop: "communityCode",
+ search: true,
+ searchSpan: 4,
+ searchType: 'input',
+ width: 150,
+ type: "tree",
+ dicUrl: "/api/blade-system/region/tree",
+ props: {
+ label: "name",
+ value: "id"
+ },
+ rules: [
+ {
+ required: true,
+ message: "请选择所属社区",
+ trigger: "blur",
+ },
+ ],
+ },
+ {
+ label: "跳转地址",
+ prop: "junpUrl",
+ span: 12,
},
{
label: "图片",
@@ -246,7 +284,7 @@
this.onLoad(this.page, this.query)
},
onLoad (page, params = {}) {
- const { dateTime } = this.query
+ const { dateTime, communityCode } = this.query
let values = {
...params,
}
@@ -259,6 +297,14 @@
}
values.dateTime = null
}
+ if (communityCode) {
+ values = {
+ ...values,
+ communityName: communityCode
+ }
+
+ delete values.communityCode
+ }
this.loading = true
getList(page.currentPage, page.pageSize, values).then((res) => {
const data = res.data.data
diff --git a/src/views/base/region.vue b/src/views/base/region.vue
index a5126e7..62e43bb 100644
--- a/src/views/base/region.vue
+++ b/src/views/base/region.vue
@@ -64,7 +64,7 @@
export default {
data() {
return {
- topCode: '36',
+ topCode: '361102',
treeCode: '',
treeParentCode: '',
treeData: [],
@@ -72,7 +72,7 @@
nodeKey: 'id',
lazy: true,
treeLoad: function (node, resolve) {
- const parentCode = (node.level === 0) ? "36" : node.data.id;
+ const parentCode = (node.level === 0) ? "361102" : node.data.id;
getLazyTree(parentCode).then(res => {
resolve(res.data.data.map(item => {
return {
diff --git a/src/views/cGovernance/taskECall.vue b/src/views/cGovernance/taskECall.vue
index 9eb8858..f9b9b0d 100644
--- a/src/views/cGovernance/taskECall.vue
+++ b/src/views/cGovernance/taskECall.vue
@@ -93,18 +93,35 @@
},],
// search: true,
},
+
{
+ addDisplay: false,
+ editDisplay: false,
+ viewDisplay: false,
+ width: 160,
+ label: "所属社区",
+ prop: "communityName",
+ search: true,
+ searchSpan: 4,
+ rules: [{
+ required: true,
+ message: "请选择所属社区",
+ trigger: "blur",
+ }],
+ },
+
+ {
+ hide: true,
parent: false,
label: "所属社区",
prop: "communityCode",
- search: true,
- searchSpan: 4,
+ search: false,
width: 150,
type: "tree",
dicUrl: "/api/blade-system/region/tree",
props: {
label: "name",
- value: "id"
+ value: "id",
},
rules: [
{
@@ -114,6 +131,7 @@
},
],
},
+
{
label: "数据来源",
prop: "source",
diff --git a/src/views/community/index.vue b/src/views/community/index.vue
index 3b043e0..40705e7 100644
--- a/src/views/community/index.vue
+++ b/src/views/community/index.vue
@@ -80,13 +80,25 @@
},
],
},
+
{
+ parent: false,
+ addDisplay: false,
+ editDisplay: false,
+ viewDisplay: false,
+ width: 96,
+ label: "所属街道",
+ prop: "townName",
+ search: true,
+ searchSpan: 4
+ },
+
+ {
+ hide: true,
+ parent: false,
label: "所属街道",
prop: "streetCode",
- search: true,
- searchSpan: 4,
width: 150,
- labelWidth: 120,
type: "tree",
dicUrl: "/api/blade-system/region/getTownTree",
props: {
@@ -101,6 +113,7 @@
},
],
},
+
{
label: "社区民警",
prop: "resPoliceUserId",
@@ -163,7 +176,7 @@
minRows: 6,
span: 24,
},
-
+
],
},
data: [],
diff --git a/src/views/district/index.vue b/src/views/district/index.vue
index c4f0139..dd07e86 100644
--- a/src/views/district/index.vue
+++ b/src/views/district/index.vue
@@ -47,26 +47,17 @@
dialogClickModal: false,
column: [
{
- parent: false,
label: "小区名称",
prop: "name",
searchSpan: 4,
search: true,
- type: 'tree',
- dicUrl: `/api/blade-district/district/getDistrictTree`,
- props: {
- label: "name",
- value: "id"
- },
- defaultExpandedKeys: ["361102003"],
span: 12,
labelWidth: 120,
width: 220,
- overHidden: true,
rules: [
{
required: true,
- message: "请选择小区",
+ message: "请输入小区名称",
trigger: "blur",
},
],
diff --git a/src/views/grid/gridman.vue b/src/views/grid/gridman.vue
index 30f3aa9..3373865 100644
--- a/src/views/grid/gridman.vue
+++ b/src/views/grid/gridman.vue
@@ -47,12 +47,41 @@
dialogClickModal: false,
column: [
{
+ label: "网格员",
+ prop: "gridmanName",
+ searchSpan: 4,
+ search: true,
+ rules: [
+ {
+ required: true,
+ message: "请输入网格员",
+ trigger: "blur",
+ },
+ ],
+ },
+
+ {
+ addDisplay: false,
+ editDisplay: false,
+ viewDisplay: false,
+ label: "所属社区",
+ prop: "communityName",
+ search: true,
+ searchSpan: 4,
+ rules: [{
+ required: true,
+ message: "请选择所属社区",
+ trigger: "blur",
+ }],
+ },
+
+
+ {
+ hide: true,
parent: false,
label: "所属社区",
prop: "communityCode",
- search: true,
- searchSpan: 4,
- width: 150,
+ search: false,
type: "tree",
dicUrl: "/api/blade-system/region/tree",
props: {
@@ -70,7 +99,20 @@
},
{
- label: "网格名称",
+ addDisplay: false,
+ editDisplay: false,
+ viewDisplay: false,
+ label: "所属网格",
+ prop: "gridName",
+ rules: [{
+ required: true,
+ message: "请选择所属网格",
+ trigger: "blur",
+ }],
+ },
+
+ {
+ label: "所属网格",
prop: "gridId",
hide: true,
type: "tree",
@@ -90,19 +132,6 @@
],
},
- {
- label: "网格员",
- prop: "gridmanName",
- searchSpan: 4,
- search: true,
- rules: [
- {
- required: true,
- message: "请输入网格员",
- trigger: "blur",
- },
- ],
- },
{
label: "联系电话",
prop: "mobile",
diff --git a/src/views/grid/index.vue b/src/views/grid/index.vue
index 4aa24d3..847b9c1 100644
--- a/src/views/grid/index.vue
+++ b/src/views/grid/index.vue
@@ -46,17 +46,33 @@
dialogClickModal: false,
column: [
{
+ addDisplay: false,
+ editDisplay: false,
+ viewDisplay: false,
+ width: 160,
+ label: "所属社区",
+ prop: "communityName",
+ search: true,
+ searchSpan: 4,
+ rules: [{
+ required: true,
+ message: "请选择所属社区",
+ trigger: "blur",
+ }],
+ },
+
+ {
+ hide: true,
parent: false,
label: "所属社区",
prop: "communityCode",
- search: true,
- searchSpan: 4,
+ search: false,
width: 150,
type: "tree",
dicUrl: "/api/blade-system/region/tree",
props: {
label: "name",
- value: "id"
+ value: "id",
},
rules: [
{
@@ -66,6 +82,7 @@
},
],
},
+
{
label: "网格名称",
prop: "gridName",
diff --git a/src/views/place/components/baseAllInfo.vue b/src/views/place/components/baseAllInfo.vue
new file mode 100644
index 0000000..1e4a6a7
--- /dev/null
+++ b/src/views/place/components/baseAllInfo.vue
@@ -0,0 +1,516 @@
+<template>
+ <div class="cur-container-box">
+ <div class="content-box">
+ <box-title class="m10" :classVal="9" :title="'基本信息'"></box-title>
+ <avue-form ref="baseForm" :option="option" v-model="form"></avue-form>
+
+ <box-title class="m10" :classVal="9" :title="'其他信息'"></box-title>
+ <avue-form ref="restForm" :option="optionDetail" v-model="placeForm"></avue-form>
+
+ <box-title class="m10" :classVal="9" :title="'从业人员'"></box-title>
+ <avue-crud :option="placeOption" :table-loading="loading" :data="placeExt" ref="crud" v-model="houseHoldForm"
+ :permission="permissionList" @row-del="houseHoldRowDel" @row-update="houseHoldRowUpdate"
+ @row-save="houseHoldRowSave" :page.sync="holdPage" @current-change="holdCurrentChange"
+ @size-change="holdSizeChange" @refresh-change="refreshHoldChange" @on-load="holdOnLoad">
+ </avue-crud>
+ </div>
+
+ <div class="footer-btn-box">
+ <el-button size="small" type="primary" @click="dataUpdate">保 存</el-button>
+
+ <el-button size="small" @click="closeRowDetails">关 闭</el-button>
+ </div>
+ </div>
+</template>
+
+<script>
+import {
+ getPlace,
+ getPlaceExt,
+
+ holdRemove,
+ holdAdd,
+ holdUpdate,
+ getHoldList,
+
+ update,
+ updatePlaceExt,
+} from "@/api/place/place"
+
+import website from '@/config/website'
+
+import boxTitle from './boxTitle'
+
+export default {
+ data () {
+ return {
+ placeExt: [],
+
+ form: {},
+ option: {
+ submitBtn: false,
+ emptyBtn: false,
+
+ column: [
+ {
+ span: 8,
+ label: "场所名称",
+ prop: "placeName",
+ rules: [{
+ required: true,
+ message: "请输入场所名称",
+ trigger: "blur",
+ }],
+ },
+
+ {
+ span: 9,
+ label: "场所标签",
+ prop: "label",
+ type: "cascader",
+ dicUrl: "/api/blade-category/category/getCategory?level=2",
+ cascader: ["smallLabel"],
+ props: {
+ label: "categoryName",
+ value: "categoryNo"
+ },
+ dataType: "string",
+ hide: true,
+ rules: [{
+ required: true,
+ message: "请输入场所标签",
+ trigger: "blur",
+ },],
+ },
+ {
+ span: 7,
+ label: "",
+ labelWidth: 0,
+ prop: "smallLabel",
+ type: "cascader",
+ dicUrl: "/api/blade-category/category/getCategory?parentNo={{label}}",
+ props: {
+ label: "categoryName",
+ value: "categoryNo"
+ },
+ dataType: "string",
+ hide: true,
+ },
+
+ {
+ label: "负责人",
+ prop: "principal",
+ rules: [{
+ required: false,
+ message: "请输入负责人",
+ trigger: "blur",
+ }],
+ },
+
+ {
+ width: 110,
+ label: "电话",
+ prop: "principalPhone",
+ search: true,
+ searchSpan: 4,
+ slot: true,
+ },
+
+ {
+ hide: true,
+ parent: false,
+ label: "所属社区",
+ prop: "neiCode",
+ search: false,
+ width: 150,
+ type: "tree",
+ dicUrl: "/api/blade-system/region/tree",
+ props: {
+ label: "name",
+ value: "id",
+ },
+ cascader: ["gridId"],
+ rules: [
+ {
+ required: true,
+ message: "请选择所属社区",
+ trigger: "blur",
+ },
+ ],
+ },
+ {
+ hide: true,
+ label: "所属网格",
+ prop: "gridId",
+ type: "tree",
+ cell: true,
+ props: {
+ label: "gridName",
+ value: "id",
+ },
+ dicUrl:
+ "/api/blade-grid/grid/getGridList?communityCode={{neiCode}}",
+ rules: [
+ {
+ required: true,
+ message: "请选择所属网格",
+ trigger: "blur",
+ },
+ ],
+ },
+
+ {
+ label: "场所照片",
+ prop: "imageUrls",
+ width: 80,
+ type: "upload",
+ listType: "picture-card",
+ dataType: "string",
+ multiple: true,
+ action: "/api/blade-resource/oss/endpoint/put-file",
+ propsHttp: {
+ res: "data",
+ name: 'name',
+ url: "link",
+ },
+ span: 24,
+ },
+ {
+ label: "场所位置",
+ prop: "localtion",
+ span: 24,
+ minWidth: 220,
+ overHidden: true,
+ // rules: [{
+ // required: true,
+ // message: "请输入区域",
+ // trigger: "blur",
+ // },],
+ }
+ ]
+ },
+
+ placeForm: {},
+ optionDetail: {
+ submitBtn: false,
+ emptyBtn: false,
+ column: [
+ {
+ label: '法人信息',
+ prop: 'legalPerson'
+ },
+ {
+ label: '法人电话',
+ prop: 'legalTel'
+ },
+
+ {
+ label: "营业执照",
+ prop: "imageUrls",
+ width: 80,
+ type: "upload",
+ listType: "picture-card",
+ dataType: "string",
+ multiple: true,
+ action: "/api/blade-resource/oss/endpoint/put-file",
+ propsHttp: {
+ res: "data",
+ name: 'name',
+ url: "link",
+ },
+ span: 24,
+ },
+
+ {
+ label: "场所平面图",
+ prop: "planImageUrls",
+ width: 80,
+ type: "upload",
+ listType: "picture-card",
+ dataType: "string",
+ multiple: true,
+ action: "/api/blade-resource/oss/endpoint/put-file",
+ propsHttp: {
+ res: "data",
+ name: 'name',
+ url: "link",
+ },
+ span: 24,
+ },
+
+ ]
+ },
+
+ loading: true,
+ placeOption: {
+ menu: true,
+ height: 300,
+ calcHeight: 54,
+ dialogWidth: 950,
+ tip: false,
+ searchShow: false,
+ addBtn: true,
+ delBtn: true,
+ editBtn: true,
+ border: true,
+ index: true,
+ dialogClickModal: false,
+ column: [{
+ label: "名称",
+ prop: "name",
+ searchSpan: 4,
+ search: true,
+ }, {
+ label: "电话",
+ prop: "telephone",
+ searchSpan: 4,
+ search: true,
+ }, {
+ label: "暂住地",
+ prop: "tempAddress",
+ searchSpan: 4,
+ search: true,
+ },]
+ },
+ holdPage: {
+ pageSize: 20,
+ currentPage: 1,
+ total: 0,
+ },
+ houseHoldForm: {},
+ }
+ },
+
+ components: { boxTitle },
+
+ inject: ["placeElement"],
+
+ watch: {
+ 'placeElement.curRow': {
+ handler (newData) {
+ const that = this
+ if (newData && 'id' in newData && newData['id'] != null && newData['id'] != '') {
+
+ that.$axios.all([
+ getPlace(newData['id']),
+ getPlaceExt({ placeId: newData['id'] }),
+ ]).then(that.$axios.spread(function (baseInfo, restInfo) {
+ that.form = baseInfo.data.data
+
+ if (that.form.imageUrls && that.form.imageUrls.length) {
+ that.form.imageUrls = that.form.imageUrls.split(",").filter(item => item != '').map(item => website.minioUrl + item).join(',')
+ }
+
+ if (that.form.placePoiLabelVOList && that.form.placePoiLabelVOList.length) {
+ let lebelTwo = that.form.placePoiLabelVOList.find(item => {
+ return item.type == 2
+ })
+
+ if (lebelTwo) that.form.label = String(lebelTwo.poiCode)
+
+ let lebelThree = that.form.placePoiLabelVOList.find(item => {
+ return item.type == 3
+ })
+
+ if (lebelThree) that.form.smallLabel = String(lebelThree.poiCode)
+ }
+
+ const data = restInfo.data.data
+
+ if (data) {
+ let imageUrls = data.imageUrls
+ let planImageUrls = data.planImageUrls
+
+ if (imageUrls && imageUrls.length) {
+ imageUrls = imageUrls.split(',').filter(item => item != '').map(item => website.minioUrl + item).join(",")
+ }
+
+ if (planImageUrls && planImageUrls.length) {
+ planImageUrls = planImageUrls.split(',').filter(item => item != '').map(item => website.minioUrl + item).join(",")
+ }
+
+ that.placeForm = {
+ ...data,
+ imageUrls,
+ planImageUrls
+ }
+ }
+
+ }))
+
+ that.holdOnLoad(this.holdPage)
+ }
+ },
+ immediate: true
+ }
+ },
+
+ methods: {
+ selectionClear () {
+ this.$nextTick(() => {
+ this.$refs.crud && this.$refs.crud.toggleSelection()
+ })
+ },
+
+ houseHoldRowUpdate (row, index, done, loading) {
+ holdUpdate(row).then(
+ () => {
+ this.holdOnLoad(this.holdPage)
+ this.$message({
+ type: "success",
+ message: "操作成功!",
+ })
+ done()
+ },
+ (error) => {
+ window.console.log(error)
+ loading()
+ }
+ )
+ },
+
+ houseHoldRowDel (row) {
+ this.$confirm("确定将选择数据删除?", {
+ confirmButtonText: "确定",
+ cancelButtonText: "取消",
+ type: "warning",
+ })
+ .then(() => {
+ return holdRemove(row.id)
+ })
+ .then(() => {
+ this.holdOnLoad(this.holdPage)
+
+ this.$message({
+ type: "success",
+ message: "操作成功!",
+ })
+ })
+ },
+
+ houseHoldRowSave (row, done, loading) {
+ holdAdd({
+ ...row,
+ placeId: this.placeElement.curRow.id
+ }).then(
+ () => {
+ this.holdOnLoad(this.holdPage)
+
+ this.$message({
+ type: "success",
+ message: "操作成功!",
+ })
+ done()
+ },
+ (error) => {
+ window.console.log(error)
+ loading()
+ }
+ )
+ },
+
+ refreshHoldChange () {
+ this.holdOnLoad(this.holdPage)
+ },
+
+ holdOnLoad (holdPage, params = {}) {
+ if (!this.placeElement.curRow.id) return
+
+ let values = {
+ ...params,
+ placeId: this.placeElement.curRow.id
+ }
+
+ getHoldList(holdPage.currentPage, holdPage.pageSize, values).then((res) => {
+ const data = res.data.data
+
+ this.holdPage.total = data.total
+ this.placeExt = data.records
+
+ this.loading = false
+ this.selectionClear()
+ })
+ },
+
+ holdCurrentChange (currentPage) {
+ this.holdPage.currentPage = currentPage
+ },
+
+ holdSizeChange (pageSize) {
+ this.holdPage.pageSize = pageSize
+ },
+
+ dataUpdate () {
+ const that = this
+
+ let imageUrls = this.form.imageUrls
+
+ if (imageUrls.length > 0) {
+ var urls = []
+ var split = imageUrls.split(",").filter(item => item != '')
+ split.forEach(url => {
+ var names = url.split("jczz/")
+ urls.push(names[1])
+ })
+ imageUrls = urls.join(",")
+ }
+
+ this.$refs.baseForm.validate((valid, done, msg) => {
+ if (valid) {
+ that.$axios.all([
+ update({
+ // ...this.placeElement.curRow,
+ ...this.form,
+ imageUrls
+ }),
+ updatePlaceExt(this.placeForm)
+ ]).then(that.$axios.spread(function () {
+ that.$message({
+ type: "success",
+ message: "操作成功!",
+ })
+
+ that.closeRowDetails()
+
+ that.placeElement.onLoad(that.placeElement.page, that.placeElement.query)
+
+ done()
+ }))
+ } else {
+ console.log('error submit!!')
+ return false
+ }
+ })
+ },
+
+ closeRowDetails () {
+ this.placeElement.roleBox = false
+ }
+ },
+}
+</script>
+
+<style lang="scss" scoped>
+.cur-container-box {
+ display: flex;
+ flex-direction: column;
+ width: 100%;
+ height: 100%;
+ overflow: hidden;
+
+ .content-box {
+ margin: 0 4px;
+ padding: 0 10px;
+ height: 0;
+ flex: 1;
+ overflow: hidden;
+ overflow-y: auto;
+ }
+
+ .footer-btn-box {
+ margin-top: 10px;
+ display: flex;
+ justify-content: center;
+ }
+}
+</style>
\ No newline at end of file
diff --git a/src/views/place/components/boxTitle.vue b/src/views/place/components/boxTitle.vue
new file mode 100644
index 0000000..952e5ba
--- /dev/null
+++ b/src/views/place/components/boxTitle.vue
@@ -0,0 +1,474 @@
+<!--
+ * @name: name
+ * @description: Description
+ * @lastEditors: Francis
+ * @date: Do not edit
+ * @lastEditTime: Do not edit
+ * @filePath: Do not edit
+-->
+<template>
+ <div class="titleContent">
+ <!-- <div class="title1" data-color="red"></div> -->
+
+ <div :class="'title title' + classVal">
+ {{ title }}</div>
+ </div>
+</template>
+
+<script>
+export default {
+ name: 'boxTitle',
+ props: {
+ title: {
+ type: String,
+ default: ''
+ },
+
+ classVal: {
+ type: Number,
+ }
+ }
+}
+</script>
+
+<style lang="scss" scoped>
+.titleContent {
+ >div {
+ margin: 10px 0;
+ }
+}
+
+.title {
+ height: 32px;
+ font-size: 20px;
+ font-weight: 600;
+ line-height: 32px;
+ margin-left: 5px;
+ padding-left: 5px;
+ position: relative;
+ color: #000;
+ z-index: 0;
+}
+
+.title1 {
+ padding-left: 15px;
+
+ &:after {
+ content: " ";
+ width: 4px;
+ height: 20px;
+ background: #12a3f5;
+ position: absolute;
+ left: 0;
+ top: 6px;
+ border-radius: 2px;
+ }
+}
+
+.title2 {
+ padding-left: 15px;
+
+ &:after {
+ content: " ";
+ width: 8px;
+ height: 8px;
+ border-radius: 50%;
+ background: #12a3f5;
+ position: absolute;
+ left: 0;
+ top: 12px;
+ }
+}
+
+
+.title3 {
+ &:after {
+ content: " ";
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ position: absolute;
+ height: 2px;
+ width: 100%;
+ background: linear-gradient(to right, #01DFE3, rgba(255, 255, 255, 0));
+
+ }
+}
+
+
+.title4 {
+ &:after {
+ content: attr(data-text);
+ position: absolute;
+ display: inline-block;
+ bottom: -8px;
+ left: 5px;
+ opacity: 0.2;
+ z-index: 0;
+ text-align: right;
+ transform: rotateY(30deg);
+ transform: scaleY(30deg);
+
+ }
+}
+
+
+.title5 {
+ color: #10faf8;
+ padding-left: 80px;
+ line-height: 22px;
+ position: relative;
+ border-bottom: 2px solid linear-gradient(to right, #01DFE3, rgba(255, 255, 255, 0));
+
+ &:after {
+ content: "";
+ position: absolute;
+ bottom: 0;
+ top: 0;
+ left: 18px;
+ width: 50px;
+ height: 18px;
+ transform: skewX(35deg);
+ background: linear-gradient(to right,
+ #2d83fa,
+ #10faf8);
+ }
+
+ &:before {
+ content: "|||";
+ display: inline-block;
+ font-weight: 900;
+ color: #FFF;
+ line-height: 30px;
+ font-size: 18px;
+ position: absolute;
+ position: absolute;
+ top: -8px;
+ left: 0;
+ color: #2d83fa;
+ transform: skewX(35deg);
+ }
+}
+
+.title6 {
+ color: #C6D039;
+ padding-left: 80px;
+ line-height: 22px;
+ position: relative;
+ border-bottom: 2px solid linear-gradient(to right, #01DFE3, rgba(255, 255, 255, 0));
+
+ &:after {
+ content: "";
+ position: absolute;
+ bottom: 0;
+ top: 0;
+ left: 18px;
+ width: 50px;
+ height: 18px;
+ transform: skewX(35deg);
+ background: linear-gradient(to right,
+ #4BF15A,
+ #C6D039);
+ }
+
+ &:before {
+ content: "|||";
+ display: inline-block;
+ font-weight: 900;
+ color: #FFF;
+ line-height: 30px;
+ font-size: 18px;
+ position: absolute;
+ position: absolute;
+ top: -8px;
+ left: 0;
+ color: #4BF15A;
+ transform: skewX(35deg);
+ }
+}
+
+.title7 {
+
+ &:after {
+ content: "";
+ position: absolute;
+ bottom: 0;
+ top: 0;
+ left: 0;
+ width: 180px;
+ height: 100%;
+ opacity: 0.3;
+ background: linear-gradient(to right,
+ #4BF15A,
+ #4bf15900);
+ }
+
+ &:before {
+ content: " ";
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ position: absolute;
+ height: 2px;
+ width: 100%;
+ background: linear-gradient(to right, #4BF15A, rgba(255, 255, 255, 0));
+ }
+}
+
+.title8 {
+ border-radius: 16px;
+ border: 1px solid #e8e9fb;
+ box-shadow: 0 0 10px #e8e9fb;
+ text-align: center;
+ width: 160px;
+ color: #12a3f5;
+
+ &:before {
+ content: "";
+ width: 300%;
+ height: 2px;
+ background: #e8e9fb;
+ position: absolute;
+ top: 15px;
+ left: 100%;
+ background: linear-gradient(to right, #e8e9fb, rgba(255, 255, 255, 0));
+ }
+}
+
+.title9 {
+ background: #ECF8FF;
+ border-top-left-radius: 5px;
+ padding-left: 20px;
+
+ &:before {
+ content: "";
+ border-top-left-radius: 5px;
+ border-bottom-left-radius: 5px;
+ width: 4px;
+ height: 100%;
+ background: #50BFFF;
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+}
+
+.title10 {
+ background: #FFF6F7;
+ border-top-left-radius: 5px;
+ padding-left: 20px;
+
+ &:before {
+ content: "";
+ border-top-left-radius: 5px;
+ border-bottom-left-radius: 5px;
+ width: 4px;
+ height: 100%;
+ background: #FE6C6F;
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+}
+
+
+
+.title11 {
+ display: inline-block;
+ position: relative;
+ width: 150px;
+ height: 32px;
+ line-height: 32px;
+ padding-left: 15px;
+ background: #50BFFF;
+ left: -8px;
+ color: #FFF;
+
+ &:before {
+ content: "";
+ position: absolute;
+ height: 0;
+ width: 0;
+ border-bottom: 8px solid #4396c5;
+ border-left: 8px solid transparent;
+ top: -8px;
+ left: 0;
+ }
+
+ &:after {
+ content: "";
+ position: absolute;
+ height: 0;
+ width: 0;
+ border-top: 15px solid transparent;
+ border-bottom: 15px solid transparent;
+ border-left: 8px solid #50BFFF;
+ right: -8px;
+ }
+}
+
+.title12 {
+ position: relative;
+ width: 160px;
+ padding-left: 10px;
+ // top: 15px;
+ // padding: 8px 10px;
+ background: #00B3ED;
+ box-shadow: -1px 2px 4px rgba(0, 0, 0, 0.5);
+ color: #FFF;
+ // height: 40px;
+
+ &:before {
+ position: absolute;
+ content: "";
+ display: block;
+ width: 7px;
+ height: 100%;
+ padding: 0 0 7px;
+ top: 0;
+ left: -7px;
+ background: inherit;
+ border-radius: 5px 0 0 5px;
+ }
+
+ &:before {
+ position: absolute;
+ content: "";
+ display: block;
+ width: 5px;
+ height: 5px;
+ background: rgba(0, 0, 0, 0.35);
+ bottom: -5px;
+ left: -5px;
+ border-radius: 5px 0 0 5px;
+ }
+
+}
+
+.title13 {
+ border-left: 2px solid #FE6C6F;
+
+ &:after {
+ content: " ";
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ position: absolute;
+ height: 2px;
+ width: 60%;
+ background: linear-gradient(to right, #FE6C6F, rgba(255, 255, 255, 0));
+ }
+
+ &::before {
+ content: " ";
+ position: absolute;
+ top: 0;
+ left: 0;
+ position: absolute;
+ height: 2px;
+ width: 30%;
+ background: linear-gradient(to right, #FE6C6F, rgba(255, 255, 255, 0));
+ }
+}
+
+.title14 {
+ border-left: 2px solid #01DFE3;
+
+ &:after {
+ content: " ";
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ position: absolute;
+ height: 2px;
+ width: 60%;
+ background: linear-gradient(to right, #01DFE3, rgba(255, 255, 255, 0));
+ }
+
+ &::before {
+ content: " ";
+ position: absolute;
+ top: 0;
+ left: 0;
+ position: absolute;
+ height: 2px;
+ width: 30%;
+ background: linear-gradient(to right, #01DFE3, rgba(255, 255, 255, 0));
+ }
+}
+
+.title15 {
+ color: #FFF;
+ padding-left: 50px;
+ background: linear-gradient(-210deg, transparent 1.5em, #01DFE3 0);
+
+ &::before {
+ content: '';
+ display: block;
+ width: 1.73em;
+ height: 3em;
+ position: absolute;
+ background: linear-gradient(-60deg, #577b98 50%, transparent 0);
+ left: -3px;
+ top: 0;
+ border-bottom-left-radius: inherit;
+ transform: translateY(-0.5em) rotate(30deg);
+ transform-origin: bottom right;
+ box-shadow: .2em .2em .3em -.1em rgba(0, 0, 0, .15);
+ }
+}
+
+.title16 {
+ color: #FFF;
+ padding-left: 50px;
+ background: linear-gradient(-210deg, transparent 1.5em, #FE6C6F 0);
+
+ &::before {
+ content: '';
+ display: block;
+ width: 1.73em;
+ height: 3em;
+ position: absolute;
+ background: linear-gradient(-60deg, #f18384 50%, transparent 0);
+ left: -3px;
+ top: 0;
+ border-bottom-left-radius: inherit;
+ transform: translateY(-0.5em) rotate(30deg);
+ transform-origin: bottom right;
+ box-shadow: .2em .2em .3em -.1em rgba(0, 0, 0, .15);
+ }
+}
+
+.title17 {
+ &:after {
+ content: " ";
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ position: absolute;
+ height: 100%;
+ width: 100%;
+ animation: animation3 1s linear infinite;
+ background: linear-gradient(135deg, #01DFE3 0.25em, transparent 0.25em) -0.5em 0, linear-gradient(225deg, #01DFE3 0.25em, transparent 0.25em) -0.5em 0, linear-gradient(315deg, rgba(238, 161, 99, 0.25) 0.25em, transparent 0.25em) 0 0, linear-gradient(45deg, rgba(238, 161, 99, 0.25) 0.25em, transparent 0.25em) 0 0;
+ background-size: 0.75em 0.75em;
+ opacity: 0.3;
+
+ }
+}
+
+.title18 {
+ &:after {
+ content: " ";
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ position: absolute;
+ height: 100%;
+ width: 100%;
+ opacity: 0.3;
+ animation: animation2 1s linear infinite;
+ background: repeating-linear-gradient(45deg, #01DFE3 0, #01DFE3 0.25em, transparent 0.25em, transparent 0.5em);
+ background-size: 0.75em 0.75em;
+ }
+}
+</style>
\ No newline at end of file
diff --git a/src/views/place/index.vue b/src/views/place/index.vue
index 95963e2..9764e50 100644
--- a/src/views/place/index.vue
+++ b/src/views/place/index.vue
@@ -11,30 +11,15 @@
</template>
<template slot-scope="scope" slot="menu">
- <el-button type="text" icon="el-icon-circle-plus-outline" size="small" v-if="permission.househould_manager"
+ <el-button type="text" icon="el-icon-edit" size="small" v-if="permission.househould_manager"
@click="ManageTenants(scope.row)">场所维护
</el-button>
</template>
</avue-crud>
- <el-dialog title="场所维护" append-to-body :visible.sync="roleBox" center>
- <h3>基本信息:</h3>
- <avue-form :option="optionDetail" v-model="placeForm"></avue-form>
-
- <div style="display: flex; justify-content: center;">
- <el-button size="small" @click="roleBox = false">取 消</el-button>
- <el-button size="small" type="primary" @click="submitRole">提 交</el-button>
- </div>
-
- <h3>从业人员:</h3>
- <avue-crud :option="placeOption" :search.sync="search" :table-loading="loading" :data="placeExt" ref="crud"
- v-model="houseHoldForm" :permission="permissionList" @row-del="houseHoldRowDel"
- @row-update="houseHoldRowUpdate" @row-save="houseHoldRowSave" :page.sync="holdPage"
- @current-change="holdCurrentChange" @size-change="holdSizeChange" @refresh-change="refreshHoldChange"
- @on-load="holdOnLoad">
- </avue-crud>
+ <el-dialog class="place-info-box" title="场所维护" append-to-body :visible.sync="roleBox" center @close="roleBoxClose">
+ <baseAllInfo></baseAllInfo>
</el-dialog>
-
</basic-container>
</template>
@@ -46,121 +31,25 @@
add,
getPlace,
getPlaceExt,
- updatePlaceExt,
- holdRemove,
- holdAdd,
- holdUpdate,
- getHoldList
} from "@/api/place/place"
+
import {
mapGetters
} from "vuex"
+
import website from '@/config/website'
+
+import baseAllInfo from './components/baseAllInfo'
+
export default {
data () {
return {
+ curRow: {},
+ roleBox: false,
+
form: {},
query: {},
loading: true,
- roleBox: false,
- placeForm: {},
- optionDetail: {
- submitBtn: false,
- emptyBtn: false,
- column: [
- {
- label: '场所名称',
- prop: 'placeName',
- },
- {
- label: '法人信息',
- prop: 'legalPerson'
- },
- {
- label: '法人电话',
- prop: 'legalTel'
- },
- {
- label: '场所位置',
- prop: 'localtion'
- },
-
- {
- label: "营业执照",
- prop: "imageUrls",
- width: 80,
- type: "upload",
- listType: "picture-card",
- dataType: "string",
- multiple: true,
- action: "/api/blade-resource/oss/endpoint/put-file",
- propsHttp: {
- res: "data",
- name: 'name',
- url: "link",
- },
- span: 24,
- },
-
- {
- label: "场所平面图",
- prop: "planImageUrls",
- width: 80,
- type: "upload",
- listType: "picture-card",
- dataType: "string",
- multiple: true,
- action: "/api/blade-resource/oss/endpoint/put-file",
- propsHttp: {
- res: "data",
- name: 'name',
- url: "link",
- },
- span: 24,
- },
-
- ]
- },
- rowPlace: {},
- placeExt: [],
-
- houseHoldForm: {},
- placeOption: {
- menu: true,
- height: 300,
- calcHeight: 54,
- dialogWidth: 950,
- tip: false,
- searchShow: false,
- addBtn: true,
- delBtn: true,
- editBtn: true,
- border: true,
- index: true,
- dialogClickModal: false,
- column: [{
- label: "名称",
- prop: "name",
- searchSpan: 4,
- search: true,
- }, {
- label: "电话",
- prop: "telephone",
- searchSpan: 4,
- search: true,
- }, {
- label: "暂住地",
- prop: "tempAddress",
- searchSpan: 4,
- search: true,
- },]
- },
- holdPage: {
- pageSize: 20,
- currentPage: 1,
- total: 0,
- },
-
page: {
pageSize: 10,
@@ -176,15 +65,17 @@
tip: false,
searchShow: true,
searchMenuSpan: 3,
- menuWidth: 280,
+ menuWidth: 240,
border: true,
//stripe:true,
index: true,
viewBtn: true,
+ editBtn: false,
selection: true,
dialogClickModal: false,
column: [
{
+ span: 8,
label: "场所名称",
prop: "placeName",
searchSpan: 4,
@@ -195,6 +86,42 @@
trigger: "blur",
},],
},
+
+ {
+ span: 9,
+ label: "场所标签",
+ prop: "label",
+ type: "cascader",
+ dicUrl: "/api/blade-category/category/getCategory?level=2",
+ cascader: ["smallLabel"],
+ props: {
+ label: "categoryName",
+ value: "categoryNo"
+ },
+ dataType: "string",
+ hide: true,
+ rules: [{
+ required: true,
+ message: "请输入场所标签",
+ trigger: "blur",
+ },],
+ },
+
+ {
+ span: 7,
+ label: "",
+ labelWidth: 0,
+ prop: "smallLabel",
+ type: "cascader",
+ dicUrl: "/api/blade-category/category/getCategory?parentNo={{label}}",
+ props: {
+ label: "categoryName",
+ value: "categoryNo"
+ },
+ dataType: "string",
+ hide: true,
+ },
+
{
label: "负责人",
prop: "principal",
@@ -206,6 +133,16 @@
trigger: "blur",
},],
},
+
+ {
+ width: 110,
+ label: "电话",
+ prop: "principalPhone",
+ search: true,
+ searchSpan: 4,
+ slot: true,
+ },
+
{
addDisplay: false,
editDisplay: false,
@@ -293,46 +230,9 @@
],
},
- {
- label: "场所标签",
- prop: "label",
- type: "cascader",
- dicUrl: "/api/blade-category/category/getCategory?level=2",
- cascader: ["smallLabel"],
- props: {
- label: "categoryName",
- value: "categoryNo"
- },
- dataType: "string",
- hide: true,
- rules: [{
- required: true,
- message: "请输入场所标签",
- trigger: "blur",
- },],
- },
- {
- label: "",
- prop: "smallLabel",
- type: "cascader",
- dicUrl: "/api/blade-category/category/getCategory?parentNo={{label}}",
- props: {
- label: "categoryName",
- value: "categoryNo"
- },
- dataType: "string",
- hide: true,
- },
- {
- width: 110,
- label: "电话",
- prop: "principalPhone",
- search: true,
- searchSpan: 4,
- slot: true,
- },
+
{
label: "场所照片",
@@ -386,7 +286,17 @@
data: [],
}
},
+
+ provide () {
+ return {
+ placeElement: this,
+ }
+ },
+
+ components: { baseAllInfo },
+
watch: {},
+
computed: {
...mapGetters(["permission", "userInfo"]),
permissionList () {
@@ -406,130 +316,24 @@
},
},
methods: {
- houseHoldRowUpdate (row, index, done, loading) {
- holdUpdate(row).then(
- () => {
- this.holdOnLoad(this.holdPage)
- this.$message({
- type: "success",
- message: "操作成功!",
- })
- done()
- },
- (error) => {
- window.console.log(error)
- loading()
- }
- )
+ roleBoxClose () {
+ this.curRow = {}
},
- houseHoldRowDel (row) {
- this.$confirm("确定将选择数据删除?", {
- confirmButtonText: "确定",
- cancelButtonText: "取消",
- type: "warning",
- })
- .then(() => {
- return holdRemove(row.id)
- })
- .then(() => {
- this.holdOnLoad(this.holdPage)
+ handleClick () {
- this.$message({
- type: "success",
- message: "操作成功!",
- })
- })
- },
-
- houseHoldRowSave (row, done, loading) {
- holdAdd({
- ...row,
- placeId: this.placeForm.placeId
- }).then(
- () => {
- this.holdOnLoad(this.holdPage)
-
- this.$message({
- type: "success",
- message: "操作成功!",
- })
- done()
- },
- (error) => {
- window.console.log(error)
- loading()
- }
- )
- },
-
- refreshChange () {
- this.holdOnLoad(this.holdPage)
- },
-
- holdOnLoad (holdPage, params = {}) {
- if (!this.placeForm.placeId) return
-
- let values = {
- ...params,
- placeId: this.placeForm.placeId
- }
-
- getHoldList(holdPage.currentPage, holdPage.pageSize, values).then((res) => {
- const data = res.data.data
-
- this.page.total = data.total
- this.placeExt = data.records
-
- this.loading = false
- })
- },
-
- holdCurrentChange (currentPage) {
- this.page.currentPage = currentPage
- },
- holdSizeChange (pageSize) {
- this.page.pageSize = pageSize
},
ManageTenants (item) {
+ this.curRow = item
this.roleBox = true
- this.rowPlace = item
- this.placeForm = {
- placeName: '',
- legalPerson: '',
- legalTel: '',
- localtion: '',
- confirmFlag: '',
- imageUrls: '',
- planImageUrls: ''
- }
- this.placeExt = []
- this.onLoadPlaceExt()
+ // this.onLoadPlaceExt(item.id)
},
- submitRole () {
- updatePlaceExt(this.placeForm).then(
- () => {
- this.$message({
- type: "success",
- message: "操作成功!",
- })
- this.roleBox = false
- },
- (error) => {
- window.console.log(error)
- loading()
- }
- )
- },
-
- onLoadPlaceExt () {
- let params = {
- placeId: this.rowPlace.id,
- }
- getPlaceExt(Object.assign(params)).then(res => {
+ onLoadPlaceExt (placeId) {
+ getPlaceExt({ placeId }).then(res => {
const data = res.data.data
+
if (data) {
let imageUrls = data.imageUrls
let planImageUrls = data.planImageUrls
@@ -629,6 +433,7 @@
})
.then(() => {
this.onLoad(this.page)
+
this.$message({
type: "success",
message: "操作成功!",
@@ -650,7 +455,9 @@
},
selectionClear () {
this.selectionList = []
- this.$refs.crud.toggleSelection()
+ this.$nextTick(() => {
+ this.$refs.crud && this.$refs.crud.toggleSelection()
+ })
},
handleDelete () {
if (this.selectionList.length === 0) {
@@ -703,8 +510,8 @@
} else {
done()
}
-
},
+
currentChange (currentPage) {
this.page.currentPage = currentPage
},
@@ -715,9 +522,7 @@
this.onLoad(this.page, this.query)
},
onLoad (page, params = {}) {
- const {
- dateTime
- } = this.query
+ const { dateTime } = this.query
let values = {
...params,
}
@@ -730,23 +535,27 @@
}
values.dateTime = null
}
+
this.loading = true
+
getList(page.currentPage, page.pageSize, values).then((res) => {
const data = res.data.data
+
this.page.total = data.total
+
this.data = data.records
+
this.data.forEach(item => {
- if (item.imageUrls) {
- if (item.imageUrls.length > 0) {
- var urls = []
- var names = item.imageUrls.split(",").filter(item => item != '')
- names.forEach(name => {
- urls.push(website.minioUrl + name)
- })
- item.imageUrls = urls.join(",")
- }
+ if (item.imageUrls && item.imageUrls != '' && item.imageUrls != null && item.imageUrls.length) {
+ var urls = []
+ var names = item.imageUrls.split(",").filter(item => item != '')
+ names.forEach(name => {
+ urls.push(website.minioUrl + name)
+ })
+ item.imageUrls = urls.join(",")
}
})
+
this.loading = false
this.selectionClear()
})
diff --git a/src/views/property/propertyCapitalApply.vue b/src/views/property/propertyCapitalApply.vue
index c89b281..b42caaa 100644
--- a/src/views/property/propertyCapitalApply.vue
+++ b/src/views/property/propertyCapitalApply.vue
@@ -73,11 +73,27 @@
dialogClickModal: false,
column: [
{
- parent: false,
- label: "小区",
- prop: "districtId",
- searchSpan: 5,
+ addDisplay: false,
+ editDisplay: false,
+ viewDisplay: false,
+ width: 160,
+ label: "小区名称",
+ prop: "districtName",
search: true,
+ searchSpan: 4,
+ rules: [{
+ required: true,
+ message: "请输入小区名称",
+ trigger: "blur",
+ }],
+ },
+
+ {
+ hide: true,
+ parent: false,
+ label: "小区名称",
+ prop: "districtId",
+ search: false,
type: 'tree',
dicUrl: `/api/blade-district/district/getDistrictTree`,
props: {
@@ -87,14 +103,14 @@
defaultExpandedKeys: ["361102003"],
span: 12,
labelWidth: 120,
- width: 220,
- overHidden: true,
+ width: 260,
rules: [{
required: true,
- message: "请选择小区",
+ message: "请选择小区名称",
trigger: "blur",
},],
},
+
{
label: '维修项目名称',
prop: 'name',
diff --git a/src/views/property/propertyCompanyDistrict.vue b/src/views/property/propertyCompanyDistrict.vue
index 64660fe..ff2a828 100644
--- a/src/views/property/propertyCompanyDistrict.vue
+++ b/src/views/property/propertyCompanyDistrict.vue
@@ -57,11 +57,27 @@
dialogClickModal: false,
column: [
{
- parent: false,
- label: "小区",
- prop: "districtId",
- searchSpan: 5,
+ addDisplay: false,
+ editDisplay: false,
+ viewDisplay: false,
+ width: 160,
+ label: "小区名称",
+ prop: "districtName",
search: true,
+ searchSpan: 4,
+ rules: [{
+ required: true,
+ message: "请输入小区名称",
+ trigger: "blur",
+ }],
+ },
+
+ {
+ hide: true,
+ parent: false,
+ label: "小区名称",
+ prop: "districtId",
+ search: false,
type: 'tree',
dicUrl: `/api/blade-district/district/getDistrictTree`,
props: {
@@ -74,17 +90,32 @@
width: 260,
rules: [{
required: true,
- message: "请选择小区",
+ message: "请选择小区名称",
trigger: "blur",
},],
},
+
{
+ addDisplay: false,
+ editDisplay: false,
+ viewDisplay: false,
+ width: 160,
+ label: "物业公司",
+ prop: "propertyCompanyName",
+ search: true,
+ searchSpan: 4,
+ rules: [{
+ required: true,
+ message: "请输入物业公司",
+ trigger: "blur",
+ }],
+ },
+
+ {
+ hide: true,
label: '物业公司',
prop: 'propertyCompanyId',
type: 'tree',
- hide: true,
- searchSpan: 5,
- search: true,
span: 12,
labelWidth: 120,
dicUrl: `/api/blade-propertyCompany/propertyCompany/getPropertyCompanyList`,
diff --git a/src/views/system/dept.vue b/src/views/system/dept.vue
index b08ef85..c9967d7 100644
--- a/src/views/system/dept.vue
+++ b/src/views/system/dept.vue
@@ -147,7 +147,7 @@
},
defaultExpandedKeys: ["361102003"],
rules: [{
- required: true,
+ required: false,
message: "请选择管辖区域",
trigger: "blur"
}]
diff --git a/src/views/system/user.vue b/src/views/system/user.vue
index 8eae7ae..5f32427 100644
--- a/src/views/system/user.vue
+++ b/src/views/system/user.vue
@@ -456,10 +456,11 @@
type: "tree",
// multiple: true,
dicData: [],
+ dataType:"string",
props: {
label: "title"
},
- checkStrictly: true,
+ // checkStrictly: true,
slot: true,
span: 12,
rules: [{
@@ -698,7 +699,7 @@
row['userType'] = 1
row.deptId = func.join(row.deptId)
row.roleId = func.join(row.roleId)
- // row.postId = func.join(row.postId);
+ row.postId = func.join(row.postId);
add(row).then(() => {
this.initFlag = false
this.onLoad(this.page)
@@ -717,7 +718,7 @@
row['userType'] = 1
row.deptId = func.join(row.deptId)
row.roleId = func.join(row.roleId)
- // row.postId = func.join(row.postId);
+ row.postId = func.join(row.postId);
update(row).then(() => {
this.initFlag = false
this.onLoad(this.page)
diff --git a/src/views/userHouse/houseList.vue b/src/views/userHouse/houseList.vue
index d8cdac4..9c26b7c 100644
--- a/src/views/userHouse/houseList.vue
+++ b/src/views/userHouse/houseList.vue
@@ -226,11 +226,10 @@
},
{
+ hide: true,
parent: false,
label: "小区名称",
prop: "districtCode",
- searchSpan: 4,
- search: true,
type: 'tree',
dicUrl: `/api/blade-district/district/getDistrictTree`,
props: {
@@ -240,7 +239,6 @@
defaultExpandedKeys: ["361102003"],
span: 12,
width: 220,
- hide:true,
overHidden: true,
},
@@ -249,7 +247,7 @@
label: "小区名称",
prop: "districtName",
searchSpan: 4,
- display:false,
+ display: false,
search: true,
overHidden: true,
},
--
Gitblit v1.9.3