Browse Source

新增弹框,详情弹框

feature
马魁 3 years ago
parent
commit
35efbfa01f
  1. 6
      src/assets/scss/modules/management/list-main.css
  2. 2
      src/assets/scss/modules/management/list-main.min.css
  3. 5
      src/assets/scss/modules/management/list-main.scss
  4. 24
      src/assets/scss/people-info.scss
  5. 36
      src/views/components/resiForm.vue
  6. 4
      src/views/components/resiSearch.vue
  7. 3
      src/views/modules/base/community/community.vue
  8. 19
      src/views/modules/base/resi.vue
  9. 2
      src/views/modules/plugins/rent/resi.vue
  10. 74
      src/views/modules/shequ/cpts/peopleDetail.vue

6
src/assets/scss/modules/management/list-main.css

@ -144,6 +144,10 @@
padding: 10px;
}
.div_main .p16 {
padding: 16px;
}
.div_main .p50 {
padding: 50px;
}
@ -229,7 +233,7 @@
height: 12px;
line-height: 16px;
margin-left: 70px;
padding-left: 3px;
padding-left: 6px;
font-size: 16px;
font-weight: bold;
}

2
src/assets/scss/modules/management/list-main.min.css

@ -1 +1 @@
.div_main{width:100%}.div_main .marginl-20{margin-left:16px}.div_main .div_search{padding:10px;background:#FFFFFF;box-shadow:0px 6px 16px 0px rgba(0,0,0,0.08),0px 3px 6px -4px rgba(0,0,0,0.12);margin:7px 7px}.div_main .div_search /deep/ .el-form-item{margin-bottom:14px}.div_main .div_search .div_search_btn{margin-right:10px;margin-top:5px;float:right}.div_main .div_search .div_search_label{line-height:36px;margin-left:24px;margin-right:6px;font-size:14px;color:#606266;vertical-align:middle}.div_main .data-tag{margin-left:10px}.div_main .item_width_normal{width:168px}.div_main .item_width_daterange{width:206px}.div_main .item_width_daterange2{width:445px}.div_main .item_width_communitycascader{width:141px}.div_main .item_width_buildcascader{width:96px}.div_main .div_table{margin:16px 7px 7px;background:#FFFFFF;box-shadow:0px 6px 16px 0px rgba(0,0,0,0.08),0px 3px 6px -4px rgba(0,0,0,0.12);position:relative;padding:24px 16px 10px}.div_main .div_table .div_btn{display:flex;justify-content:space-between}.div_main .div_table .div_btn .div_btn_left{display:flex}.div_main .div_table .div_btn .div_btn_left .btn_upload{margin-left:10px;display:flex;text-align:center}.div_main .div_table .div_table_item{margin-top:16px;position:relative}.div_main .setFormBoxHeight{max-height:153px;overflow:hidden}.div_main .setFormBoxHeightAuto{height:auto}.div_main .flex{display:flex;flex-wrap:nowrap}.div_main .hflex{display:flex;flex-flow:column;overflow:hidden}.div_main .flex1{flex:1}.div_main .mean{justify-content:space-around}.div_main .endpoint{justify-content:space-between}.div_main .align_item{align-items:center}.div_main .font12{font-size:12px}.div_main .font14{font-size:14px !important}.div_main .font16{font-size:16px !important}.div_main .font18{font-size:18px !important}.div_main .p0{padding:0 !important}.div_main .p10{padding:10px}.div_main .p50{padding:50px}.div_main .p30{padding:30px}.div_main .right5{margin-right:5px}.div_main .right24{margin-right:24px}.div_main .bottom8{margin-bottom:8px}.div_main .bottom16{margin-bottom:16px}.div_main .top2{margin-top:2px}.div_main .top12{margin-top:12px}.div_main .top24{margin-top:24px !important}.div_main .top32{margin-top:32px !important}.div_main .top40{margin-top:40px !important}.div_main .top48{margin-top:48px !important}.div_main .top8{margin-top:8px !important}.div_main .bot8{margin-bottom:8px}.div_main .bot24{margin-bottom:24px !important}.div_main .top16{margin-top:16px !important}.div_main .bot16{margin-bottom:16px !important}.div_main .right8{margin-right:8px !important}.div_main .margin30{margin:30px}.div_main .m0{margin:0 !important}.div_main .title-small{border-left:solid 4px #0056d6;height:12px;line-height:16px;margin-left:70px;padding-left:3px;font-size:16px;font-weight:bold}@media only screen and (min-width: 2013px){.div_main .showUnfold{display:none}}@media only screen and (min-width: 1481px){.div_main .communityUnfold{display:none}}.div_main .item_width_2{width:138px}.div_main .item_width_1{width:260px}.div_main .item_width_3{width:200px}.div_main .list_item_width_1{width:165px}.div_main .list_item_width_2{width:135px}.div-mult-form{margin-top:20px}.div-mult-form .div_person{display:flex;font-size:14px;padding-bottom:20px}.div-mult-form .div_person .person_title{text-align:right;flex:0 0 100px;line-height:36px;padding:0 12px 0 0}.div-mult-form .div_person .tag_item{margin-right:10px;margin-top:10px}.div-mult-form .div_person .tag_tip{margin-top:10px;color:#9c9c9c}.div-mult-table{position:relative;padding:0 20px}.div-mult-table .div_selcount{position:absolute;bottom:10px;left:30px}.div_dialog_table{padding:10px}.div_dialog_table .table{margin-top:20px}.twoline{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.div_main{width:100%}.div_main .marginl-20{margin-left:16px}.div_main .div_search{padding:10px;background:#FFFFFF;box-shadow:0px 6px 16px 0px rgba(0,0,0,0.08),0px 3px 6px -4px rgba(0,0,0,0.12);margin:7px 7px}.div_main .div_search /deep/ .el-form-item{margin-bottom:14px}.div_main .div_search .div_search_btn{margin-right:10px;margin-top:5px;float:right}.div_main .div_search .div_search_label{line-height:36px;margin-left:24px;margin-right:6px;font-size:14px;color:#606266;vertical-align:middle}.div_main .data-tag{margin-left:10px}.div_main .item_width_normal{width:168px}.div_main .item_width_daterange{width:206px}.div_main .item_width_daterange2{width:445px}.div_main .item_width_communitycascader{width:141px}.div_main .item_width_buildcascader{width:96px}.div_main .div_table{margin:16px 7px 7px;background:#FFFFFF;box-shadow:0px 6px 16px 0px rgba(0,0,0,0.08),0px 3px 6px -4px rgba(0,0,0,0.12);position:relative;padding:24px 16px 10px}.div_main .div_table .div_btn{display:flex;justify-content:space-between}.div_main .div_table .div_btn .div_btn_left{display:flex}.div_main .div_table .div_btn .div_btn_left .btn_upload{margin-left:10px;display:flex;text-align:center}.div_main .div_table .div_table_item{margin-top:16px;position:relative}.div_main .setFormBoxHeight{max-height:153px;overflow:hidden}.div_main .setFormBoxHeightAuto{height:auto}.div_main .flex{display:flex;flex-wrap:nowrap}.div_main .hflex{display:flex;flex-flow:column;overflow:hidden}.div_main .flex1{flex:1}.div_main .mean{justify-content:space-around}.div_main .endpoint{justify-content:space-between}.div_main .align_item{align-items:center}.div_main .font12{font-size:12px}.div_main .font14{font-size:14px !important}.div_main .font16{font-size:16px !important}.div_main .font18{font-size:18px !important}.div_main .p0{padding:0 !important}.div_main .p10{padding:10px}.div_main .p16{padding:16px}.div_main .p50{padding:50px}.div_main .p30{padding:30px}.div_main .right5{margin-right:5px}.div_main .right24{margin-right:24px}.div_main .bottom8{margin-bottom:8px}.div_main .bottom16{margin-bottom:16px}.div_main .top2{margin-top:2px}.div_main .top12{margin-top:12px}.div_main .top24{margin-top:24px !important}.div_main .top32{margin-top:32px !important}.div_main .top40{margin-top:40px !important}.div_main .top48{margin-top:48px !important}.div_main .top8{margin-top:8px !important}.div_main .bot8{margin-bottom:8px}.div_main .bot24{margin-bottom:24px !important}.div_main .top16{margin-top:16px !important}.div_main .bot16{margin-bottom:16px !important}.div_main .right8{margin-right:8px !important}.div_main .margin30{margin:30px}.div_main .m0{margin:0 !important}.div_main .title-small{border-left:solid 4px #0056d6;height:12px;line-height:16px;margin-left:70px;padding-left:6px;font-size:16px;font-weight:bold}@media only screen and (min-width: 2013px){.div_main .showUnfold{display:none}}@media only screen and (min-width: 1481px){.div_main .communityUnfold{display:none}}.div_main .item_width_2{width:138px}.div_main .item_width_1{width:260px}.div_main .item_width_3{width:200px}.div_main .list_item_width_1{width:165px}.div_main .list_item_width_2{width:135px}.div-mult-form{margin-top:20px}.div-mult-form .div_person{display:flex;font-size:14px;padding-bottom:20px}.div-mult-form .div_person .person_title{text-align:right;flex:0 0 100px;line-height:36px;padding:0 12px 0 0}.div-mult-form .div_person .tag_item{margin-right:10px;margin-top:10px}.div-mult-form .div_person .tag_tip{margin-top:10px;color:#9c9c9c}.div-mult-table{position:relative;padding:0 20px}.div-mult-table .div_selcount{position:absolute;bottom:10px;left:30px}.div_dialog_table{padding:10px}.div_dialog_table .table{margin-top:20px}.twoline{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}

5
src/assets/scss/modules/management/list-main.scss

@ -154,6 +154,9 @@
.p10 {
padding: 10px;
}
.p16 {
padding: 16px;
}
.p50 {
padding: 50px;
@ -237,7 +240,7 @@
height: 12px;
line-height: 16px;
margin-left: 70px;
padding-left: 3px;
padding-left: 6px;
font-size: 16px;
font-weight: bold;
}

24
src/assets/scss/people-info.scss

@ -51,7 +51,7 @@
.list {
display: flex;
flex-wrap: wrap;
padding: 10px 30px;
padding: 10px 97px;
.item {
position: relative;
@ -70,17 +70,17 @@
width: 100%;
}
&::before {
position: absolute;
left: 0;
top: 9px;
content: "";
display: block;
width: 7px;
height: 7px;
background: #ddd;
border-radius: 3px;
}
// &::before {
// position: absolute;
// left: 0;
// top: 9px;
// content: "";
// display: block;
// width: 7px;
// height: 7px;
// background: #ddd;
// border-radius: 3px;
// }
}
}

36
src/views/components/resiForm.vue

@ -134,8 +134,10 @@
:key="n.itemId"
:span="item.length === 1 ? 24 : (24/columns)"
:style="n.itemType === 'divider' && 'display: none;'">
<el-form-item :prop="n.columnName"
:label="n.label">
<el-form-item :prop="n.columnName">
<template slot="label" style="padding-right:14px">
<span >{{n.label}}</span>
</template>
<!-- <div class="resi-cell"> -->
<!-- <div class="resi-cell-label">{{n.label}}</div> -->
<div class="resi-cell-value">
@ -200,6 +202,16 @@
end-placeholder="结束时间"
placeholder="选择时间范围">
</el-time-picker>
<!-- 本地户籍更改为单选按钮 -->
<template v-else-if="n.itemType === 'select' && n.label === '本地户籍' || n.label === '性别'" >
<el-radio v-for="ns in n.options"
:key="ns.value"
v-model.trim="form[n.columnName]"
:label="ns.value"
@change="hanldeChangeRadio(n)">
{{ ns.label }}
</el-radio>
</template>
<el-select v-else-if="n.itemType === 'select'"
v-model.trim="form[n.columnName]"
:multiple="n.multiSelect"
@ -213,6 +225,7 @@
:value="item.value">
</el-option>
</el-select>
<!-- <el-cascader
:options="options"
:props="{ checkStrictly: true }"
@ -226,13 +239,20 @@
class="resi-cell-select">
</el-cascader>
<template v-else-if="n.itemType === 'radio'">
<el-radio v-for="ns in n.options"
<!-- 以前的单选现在暂时改为复选框 -->
<!-- <el-radio v-for="ns in n.options"
:key="ns.value"
v-model.trim="form[n.columnName]"
:label="ns.value"
@change="hanldeChangeRadio(n)">
{{ ns.label }}
</el-radio>
</el-radio> -->
<el-checkbox
:key=" n.options[0].label"
v-model.trim="form[n.columnName]"
>
<!-- {{ n.options[0].label }} -->
</el-checkbox>
<!-- <el-radio v-model.trim="form[n.columnName]" label="1">备选项</el-radio> -->
</template>
<template v-else-if="n.itemType === 'checkbox'">
@ -252,6 +272,7 @@
</el-form-item>
</el-col>
</el-row>
</template>
</el-form>
</div>
@ -851,12 +872,7 @@ export default {
</script>
<style lang="scss" scoped>
.resi-form {
:deep .el-date-editor.el-input,
.el-date-editor.el-input__inner {
width: 100% !important;
}
}
.resi-cell-value .resi-cell-input {
width: 190px;
}

4
src/views/components/resiSearch.vue

@ -91,9 +91,8 @@
</el-form>
</div>
<el-row v-if="showSmartSearchForm" class="resi-row-more">
<el-row v-if="showSmartSearchForm" class="resi-row-more m0">
<el-col :span="24">
<el-button v-for="btnItem in btnList" :key="btnItem.index" size="small"
:class="selBtnIndex === btnItem.index ? 'diy-button--blue' : 'diy-button--gray'"
@click="handelSelSmartBtn(btnItem.index)">{{ btnItem.name }}</el-button>
@ -798,6 +797,7 @@ export default {
@import "@/assets/scss/modules/visual/communityManage.scss";
.header_form_box {
display: flex;
flex-wrap: wrap;

3
src/views/modules/base/community/community.vue

@ -785,6 +785,9 @@ export default {
</style>
<style lang="scss" scoped >
.div_search ::v-deep .el-row {
margin-right: 0;
}
.div_main {
display: flex;
}

19
src/views/modules/base/resi.vue

@ -210,7 +210,7 @@
</div>
</div>
<el-dialog :title="formName"
<el-dialog :title="formName === '社区居民基本信息录入表'?'新增居民':formName"
:visible.sync="dialogVisible"
width="80%"
top="5vh"
@ -226,7 +226,6 @@
@changegroup="handleChangeGroup" />
<div v-if="dialogVisible"
class="resi-other">
<div class="resi-other-title">其他</div>
<div class="tabs-other-info">
<el-tabs v-model="activeName"
@tab-click="handleClick">
@ -247,12 +246,14 @@
</div>
<div class="resi-btns">
<el-button size="small"
@click="handlerCancle">重置</el-button>
<el-button size="small"
@click="handlerCancle">取消</el-button>
<el-button type="primary"
size="small"
:loading="btnLoading"
@click="handleSUbmit">提交</el-button>
@click="handleSUbmit">保存</el-button>
</div>
</el-dialog>
@ -337,6 +338,7 @@
@close="handleDiyClose"></diy-info>
</el-dialog>
<people-detail v-if="showedPeopleMoreInfo && lookInfo.userId"
:view_real_data="btnAuths.ic_resi_view_real_data"
:userId="lookInfo.userId"
:gridName="lookInfo.gridName"
@ -1472,6 +1474,9 @@ export default {
<style lang="scss" scoped>
@import "@/assets/scss/modules/management/list-main.scss";
.resi-container ::v-deep .el-row {
margin-right: 0;
}
.tabs-other-info {
::v-deep .el-tabs__item {
// width: 50px;
@ -1499,7 +1504,7 @@ export default {
// border-radius: 50%;
}
::v-deep .el-tabs__item.is-active {
color: #17b3a3;
color: #3e8ef7;
}
}
.resi-container .resi-card {
@ -1606,12 +1611,12 @@ export default {
width: calc(100% - 100px);
}
}
::v-deep .el-form-item--medium .el-form-item__label {
padding: 0px;
}
.resi-btns {
margin-top: 20px;
text-align: center;
text-align: right;
margin-right: 16px;
}
.div-flex {
display: flex;

2
src/views/modules/plugins/rent/resi.vue

@ -867,7 +867,7 @@ export default {
})
}
})
console.log('finalArr', finalArr)
console.log('finalArr111', finalArr)
return finalArr
},
async handleEditSUbmit () {

74
src/views/modules/shequ/cpts/peopleDetail.vue

@ -1,21 +1,19 @@
<template>
<div class="m-pop">
<div class="wrap">
<div class="btn-close"
@click="handleClose">
<img src="@/assets/img/shuju/people/close.png" />
</div>
<div class="wrap2">
<div class="title">
<div class="title flex endpoint font16 p10" style="border-bottom: 1px #DCDEE0 solid;">
<span>居民详情</span>
<el-button type="text"> <i class="el-icon-close" @click="handleClose"></i></el-button>
</div>
<div v-if="view_real_data"
<!-- <div v-if="view_real_data"
class="div_tuomin">
<el-button size="mini"
class="diy-button--search"
@click="handleTuomin">显示脱敏信息</el-button>
</div>
</div> -->
<div class="title-small top40">基本信息</div>
<div :key="'fieldSubList' + index"
v-for="(fieldSubList, index) in fieldList">
<div class="list">
@ -42,13 +40,13 @@
<div class="item"
:key="field.itemId"
v-for="field in fieldSubList">
<span class="item-field">{{ field.label }}</span>
<span class="item-field">{{field.label}} </span>
<span v-if="field.columnName==='MOBILE'||field.columnName==='ID_CARD'">{{ info[field.columnName]||'--'}}</span>
<span v-else-if="
field.itemType == 'select' ||
field.itemType == 'radio' ||
field.itemType == 'checkbox' ||
field.itemType == 'cascader'
field.itemType == 'cascader'
">{{
info[field.columnName] == null
? "--"
@ -65,29 +63,34 @@
</div>
</div>
<div class="line"></div>
<div class="title-small top40"> {{index==0? '分类信息':'其他信息'}}</div>
</div>
<div class="tabs">
<div class="tab-btn"
<!-- 详情下方tab -->
<el-tabs class="top32" @tab-click="handlTabs">
<!-- <div class="tab-btn"
@click="subStartGroupIndex"
v-if="groupList.length > 9">
<img src="@/assets/img/shuju/people/arrow-double-left.png" />
</div>
<div v-show="index >= startGroupIndex && index < startGroupIndex + 9"
class="tab"
</div> -->
<el-button
type="text"
size="small"
@click="addTab(editableTabsValue)"
>
<i class="el-icon-more"></i>
</el-button>
<el-tab-pane
v-for="(item, index) in groupList"
:class="groupIndex % groupList.length == index ? 'z-on' : ''"
:key="'tab' + index"
@click="groupIndex = index"
v-for="(item, index) in groupList">
{{ item.label }}
</div>
<div class="tab-btn"
:label="item.label">
</el-tab-pane>
<!-- <div class="tab-btn"
@click="addStartGroupIndex"
v-if="groupList.length > 9">
<img src="@/assets/img/shuju/people/arrow-double-right.png" />
</div>
</div>
</div> -->
</el-tabs >
<div :key="'group' + index"
v-show="groupIndex % groupList.length == index"
@ -409,6 +412,9 @@ export default {
},
methods: {
handlTabs(i){
this.groupIndex = i.index
},
async handleTuomin () {
const url = "/data/aggregator/epmetuser/detailByType";
@ -705,4 +711,22 @@ export default {
};
</script>
<style lang="scss" src="@/assets/scss/people-info.scss" scoped></style>
<style lang="scss" scoped>
@import "@/assets/scss/people-info.scss";
.el-tabs ::v-deep .el-tabs__header {
width: 88%;
margin: 0 auto;
}
.wrap2{
padding: 0 !important;
}
.wrap2 ::v-deep .el-tabs{
position: relative;
}
.el-tabs ::v-deep .el-tabs__content {
position: absolute;
right: 35px;
top: 5px;
}
</style>

Loading…
Cancel
Save