Browse Source

新增,编辑,详情使用一个组件/智能搜索房屋接口联调/

V1.0
mk 2 years ago
parent
commit
95a16814d1
  1. 105
      src/views/modules/base/residentManagement/resiDisability/addForm.vue
  2. 22
      src/views/modules/base/residentManagement/resiDisability/resiDisability.vue
  3. 1
      src/views/modules/cpts/base/index.vue
  4. 7
      src/views/modules/shequ/chaxun.vue
  5. 44
      src/views/modules/shequ/cpts/smatr-rules.vue

105
src/views/modules/base/residentManagement/resiDisability/addForm.vue

@ -24,10 +24,13 @@
clearable
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label-width="100px" label="联系电话">
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">联系电话: </span>
<span>{{ formData.mobile || "--" }}</span>
</div>
<el-form-item label-width="100px" label="联系电话" v-else>
<el-input
v-model="formData.mobile"
placeholder="请输入"
@ -39,7 +42,11 @@
<el-row>
<el-col :span="12">
<el-form-item label-width="100px" label="证件类型" prop="idType">
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">证件类型: </span>
<span>{{ formData.idTypeName || "--" }}</span>
</div>
<el-form-item label-width="100px" label="证件类型" prop="idType" v-else>
<el-select v-model="formData.idType" clearable>
<el-option
v-for="item in dicts.idCard_type"
@ -52,7 +59,11 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label-width="100px" label="证件号" prop="idNum">
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">证件号: </span>
<span>{{ formData.idNum || "--" }}</span>
</div>
<el-form-item label-width="100px" label="证件号" prop="idNum" v-else>
<el-input
v-model="formData.idNum"
placeholder="请输入"
@ -64,7 +75,13 @@
<el-row>
<el-col :span="12">
<el-form-item label-width="100px" label="性别">
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">性别: </span>
<span>{{ formData.gender?formData.gender=='1'?'男':formData.gender=='2'?'女':'--':'--' }}</span
>
</div>
<el-form-item label-width="100px" label="性别" v-else>
<el-select v-model="formData.gender" clearable>
<el-option
v-for="item in genderList"
@ -77,7 +94,12 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label-width="100px" label="本地户籍">
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">本地户籍: </span>
<span>{{ formData.localResidenceFlag?formData.localResidenceFlag=='1'?'是':formData.localResidenceFlag=='0'?'否':'--':'--' }}</span
>
</div>
<el-form-item label-width="100px" label="本地户籍" v-else>
<el-select v-model="formData.localResidenceFlag" clearable>
<el-option
v-for="item in binaryOptionList"
@ -93,7 +115,11 @@
<el-row>
<el-col :span="24">
<el-form-item label-width="100px" label="户籍地址" class="wd-wr">
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">户籍地址: </span>
<span>{{ formData.placeOfDomicile || "--" }}</span>
</div>
<el-form-item label-width="100px" label="户籍地址" class="wd-wr" v-else>
<el-input
v-model="formData.placeOfDomicile"
placeholder="请输入"
@ -105,7 +131,11 @@
<el-row>
<el-col :span="24">
<el-form-item label-width="100px" label="现居地址" class="wd-wr">
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">现居地址: </span>
<span>{{ formData.currentResidence || "--" }}</span>
</div>
<el-form-item label-width="100px" label="现居地址" class="wd-wr" v-else>
<el-input
v-model="formData.currentResidence"
placeholder="请输入"
@ -117,7 +147,11 @@
<el-row>
<el-col :span="12">
<el-form-item label-width="100px" label="残疾类别">
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">残疾类别: </span>
<span>{{ formData.disabilityCategoryName || "--" }}</span>
</div>
<el-form-item label-width="100px" label="残疾类别" v-else>
<el-select v-model="formData.disabilityCategoryCode" clearable>
<el-option
v-for="item in dicts.disability_category_code"
@ -130,7 +164,11 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label-width="100px" label="残疾级别">
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">残疾级别: </span>
<span>{{ formData.disabilityLevelName || "--" }}</span>
</div>
<el-form-item label-width="100px" label="残疾级别" v-else>
<el-select v-model="formData.disabilityLevel" clearable>
<el-option
v-for="item in dicts.disability_level"
@ -146,7 +184,11 @@
<el-row>
<el-col :span="12">
<el-form-item label-width="100px" label="残疾证号" >
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">残疾证号: </span>
<span>{{ formData.disabilityNum || "--" }}</span>
</div>
<el-form-item label-width="100px" label="残疾证号" v-else>
<el-input
v-model="formData.disabilityNum"
placeholder="请输入"
@ -155,7 +197,12 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label-width="100px" label="低保">
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">低保: </span>
<span>{{ formData.subsistenceAllowanceFlag?formData.subsistenceAllowanceFlag=='1'?'是':formData.subsistenceAllowanceFlag=='0'?'否':'--':'--' }}</span
>
</div>
<el-form-item label-width="100px" label="低保" v-else>
<el-select v-model="formData.subsistenceAllowanceFlag" clearable>
<el-option
v-for="item in binaryOptionList"
@ -171,7 +218,11 @@
<el-row>
<el-col :span="12">
<el-form-item label-width="100px" label="退休金额" >
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">退休金额: </span>
<span>{{ formData.retirementAmount || "--" }}</span>
</div>
<el-form-item label-width="100px" label="退休金额" v-else>
<el-input
v-model="formData.retirementAmount"
placeholder="请输入"
@ -180,7 +231,11 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label-width="100px" label="月收入">
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">月收入: </span>
<span>{{ formData.monthIncome || "--" }}</span>
</div>
<el-form-item label-width="100px" label="月收入" v-else>
<el-input
v-model="formData.monthIncome"
placeholder="请输入"
@ -192,7 +247,11 @@
<el-row>
<el-col :span="12">
<el-form-item label-width="100px" label="联系人" >
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">联系人: </span>
<span>{{ formData.contactName || "--" }}</span>
</div>
<el-form-item label-width="100px" label="联系人" v-else>
<el-input
v-model="formData.contactName"
placeholder="请输入"
@ -201,7 +260,11 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label-width="100px" label="联系电话">
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">联系电话: </span>
<span>{{ formData.contactMobile || "--" }}</span>
</div>
<el-form-item label-width="100px" label="联系电话" v-else>
<el-input
v-model="formData.contactMobile"
placeholder="请输入"
@ -213,7 +276,11 @@
<el-row>
<el-col :span="24">
<el-form-item label-width="100px" label="备注" class="wd-wr">
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">备注: </span>
<span>{{ formData.remark || "--" }}</span>
</div>
<el-form-item label-width="100px" label="备注" class="wd-wr" v-else>
<el-input
v-model="formData.remark"
placeholder="请输入"
@ -247,6 +314,10 @@ let loading; // 加载动画
export default {
props: {
formType:{
type:String,
default:'add'
},
source: {
//manage visiual
type: String,

22
src/views/modules/base/residentManagement/resiDisability/resiDisability.vue

@ -445,7 +445,7 @@
@handleClose="handleClose"
></add-form>
</el-dialog>
<el-dialog
<!-- <el-dialog
v-if="showDetail"
:visible.sync="showDetail"
:close-on-click-modal="false"
@ -462,7 +462,7 @@
@diaDetailClose="diaDetailClose"
>
</detail-form>
</el-dialog>
</el-dialog> -->
</div>
</template>
@ -473,12 +473,11 @@ import nextTick from "dai-js/tools/nextTick";
import { mapGetters } from "vuex";
import axios from "axios";
import addForm from "./addForm";
import detailForm from "./detailForm";
// import editForm from "./editForm";
// import detailForm from "./detailForm";
export default {
// editForm
components: { addForm, detailForm },
// detailForm
components: { addForm },
data() {
let endDisabledDate = (time) => {
@ -536,7 +535,7 @@ export default {
showAdd: false,
showEdit: false,
showDetail: false,
// showDetail: false,
formType: "add",
addDiaTitle: "新增",
detailDiaTitle: "详情",
@ -604,12 +603,16 @@ export default {
this.addDiaTitle = "新增";
this.formType = "add";
this.showAdd = true;
},
//
async handleDetail(row) {
this.detailDiaTitle = "详情";
this.addDiaTitle = "详情";
this.showDetail = true;
this.formType = "add";
this.showAdd = true;
this.$nextTick(() => {
this.$refs.ref_add_form.initForm("detail", row);
});
},
//
diaDetailClose() {
@ -628,7 +631,6 @@ export default {
this.showAdd = false;
this.showDetail = false;
this.showEdit = false;
},
//
handleOk() {

1
src/views/modules/cpts/base/index.vue

@ -33,6 +33,7 @@
</el-option>
</el-select>
</template>
<template v-else-if="item.type == 'cascader'">
<el-cascader v-model="item.value"
:placeholder="item.placeholder || '请选择'"

7
src/views/modules/shequ/chaxun.vue

@ -547,7 +547,10 @@ export default {
this.searchStatus = "ing";
},
async getRulesList() {
let url = "/actual/base/residentBaseInfo/residentSearchRules";
let url =
this.searchData.type == "jumin"
? "/actual/base/residentBaseInfo/residentSearchRules"
: "/actual/base/communityHouse/houseSearchRules";
let formData = new FormData();
formData.append("searchKey", this.searchData.searchKey);
formData.append("type", this.searchData.type);
@ -641,7 +644,7 @@ export default {
},
async getSearchFangwu() {
const url = "/actual/base/communityHouse/communitySearch";
const url = "/actual/base/communityHouse/houseSearch";
const {
searchData: { searchKey },
searchFangwu: { pageSize, pageNo },

44
src/views/modules/shequ/cpts/smatr-rules.vue

@ -20,7 +20,7 @@
</template>
</el-table-column>
<el-table-column label="字段类别" align="center" width="120">
<template slot-scope="scope" v-if="scope.row.dataSource == 'resi'">
<template slot-scope="scope">
<el-select
v-model="scope.row.itemGroupId"
placeholder="请选择"
@ -49,10 +49,8 @@
<el-option
v-for="item in scope.row.itemIdOpction"
:label="item.label"
:value="
scope.row.dataSource == 'resi' ? item.itemId : item.colKey
"
:key="scope.row.dataSource == 'resi' ? item.itemId : item.colKey"
:value="item.itemId"
:key="item.itemId"
>
</el-option>
</el-select>
@ -247,8 +245,10 @@ export default {
policyFlag: "1",
};
} else if (row.dataSource === "house") {
url = "/governance/policy/item-list/house";
params = {};
url = "/oper/customize/icformitemgroup/list";
params = {
formCode: "community_info",
};
}
if (url && params) {
@ -279,12 +279,19 @@ export default {
//
async handleChangeFieldsType(row, index, type) {
console.log(row, index, "字段类别row");
if (row.dataSource != "resi") return;
//
const url = "/oper/customize/icformitem/getItemListV2";
let params = {
let params;
if (row.dataSource != "resi") {
params = {
groupId: row.itemGroupId,
};
} else {
params = {
groupId: row.itemGroupId,
policyFlag: "1",
};
}
console.log(this.tableData[index], index);
this.hadeleClearForm(this.tableData[index], index);
if (!type) {
@ -307,29 +314,20 @@ export default {
async handleChangeFieldsName(row, index) {
console.log(row, "字段名称row");
var arr = [];
// colKeycolumnName
if (row.dataSource == "house" || row.dataSource == "stat") {
arr = row.itemIdOpction.filter((item) => item.colKey == row.itemId);
this.tableData[index].tableName = arr[0].tableName;
this.tableData[index].colKey = arr[0].colKey;
} else if (row.dataSource == "resi" && row.itemId != "") {
arr = row.itemIdOpction.filter((item) => item.itemId == row.itemId);
this.tableData[index].tableName = arr[0].tableName;
this.tableData[index].colKey = arr[0].columnName;
}
if (row.itemId == "") return;
// optionoptionSourceType
console.log(arr[0].optionSourceType);
if (arr[0].optionSourceType == "remote") {
let strFlag = arr[0].optionSourceValue.includes("/");
let url = "";
let params = {};
if (row.dataSource == "house") {
url = arr[0].optionSourceUrl;
params = JSON.parse(arr[0].optionSourceParam);
} else {
if (strFlag) {
url = arr[0].optionSourceValue;
} else {
url = "/sys/dict/data/dictlist";
params = { dictType: arr[0].optionSourceValue };
}
const { data, code, msg } = await requestPost(url, params);
if (code == 0) {
arr[0].options = data;

Loading…
Cancel
Save