diff --git a/app.json b/app.json index 2a494dd..15431ac 100644 --- a/app.json +++ b/app.json @@ -24,7 +24,8 @@ "pages": [ "pages/searchResult/searchResult", "pages/searchRecords/searchRecords", - "pages/punchCard/punchCard" + "pages/punchCard/punchCard", + "pages/checkLog/checkLog" ] }, { @@ -60,6 +61,7 @@ "pages/dissatisfied/detial/detail", "pages/crowdPortrait/crowdPortrait", "pages/residentPortrait/residentPortrait", + "pages/residentPortrait2/residentPortrait", "pages/qzbmy/qzbmy", "pages/sjwjj/sjwjj", "pages/xqwmz/xqwmz", @@ -78,7 +80,6 @@ "pages": [ "pages/dissatisfied/demandCheck/demandCheck", "pages/dissatisfied/searchResi/searchResi" - ] }, { @@ -103,7 +104,6 @@ "navigationBarTitleText": "WeChat", "navigationBarTextStyle": "black" }, - "tabBar": { "color": "#333333", "selectedColor": "#3A80E7", @@ -154,8 +154,8 @@ }, "plugins": { "ocr-plugin": { - "version": "3.1.3", - "provider": "wx4418e3e031e551be" + "version": "3.1.3", + "provider": "wx4418e3e031e551be" } }, "sitemapLocation": "sitemap.json" diff --git a/images/work/sqmp.png b/images/work/sqmp.png index 79a28f5..2e0d6cd 100644 Binary files a/images/work/sqmp.png and b/images/work/sqmp.png differ diff --git a/subpages/addResi/pages/addResi/addResi.js b/subpages/addResi/pages/addResi/addResi.js index e033749..9e25893 100644 --- a/subpages/addResi/pages/addResi/addResi.js +++ b/subpages/addResi/pages/addResi/addResi.js @@ -1,1368 +1,1426 @@ // subpages/addResi/pages/addResi/addResi.js import api from "../../../../utils/api" -import {$wuxSelect} from '../../../../components/dist/index' +import { cardHide } from "../../../../utils/util" + + +import { $wuxSelect } from '../../../../components/dist/index' import { - dictlist, - getHouseType, getOldPeopleDetailById, - getVeteranDetailById, getVolunteerDetailById, publicWelfarePost, - residentEnsureHouse, residentSpecial, residentTenant, - residentUnemployed, residentUnitedFront, specialSupport + dictlist, + getHouseType, getOldPeopleDetailById, + getVeteranDetailById, getVolunteerDetailById, publicWelfarePost, + residentEnsureHouse, residentSpecial, residentTenant, + residentUnemployed, residentUnitedFront, specialSupport } from "../../../../utils/statisticsApi"; const app = getApp() Page({ - data: { - formController: [], - ensureHouseFlagOpen: false, - unemployedFlagOpen: false, - veteranFlagOpen: false, - unitedFrontFlagOpen: false, - volunteerFlagOpen: false, - specialSupportFlagOpen: false, - tenantFlagOpen: false, - specialCrowdFlagOpen: false, - oldPeopleFlagOpen: false, - publicWelfareFlagOpen: false, - residentTypeForm: { - ensureHouseFlag: [ - { - type: 'select', - value: "", - valueIndex: -1, - label: '住房性质', - optionsKey: 'label', - valueKey: 'value', - options: [], // 字典获取 - key: 'housingNature' - }, { - type: 'input', - value: '', - label: '保障类型', - key: 'securityType' - }, { - type: 'date', - value: "", - label: '发证日期', - key: 'certificateDate' - }, { - type: 'input', - value: '', - label: '补贴编号', - key: 'subsidyNum' - }, { - type: 'input', - value: '', - label: '补贴金额', - afterText: "元", - key: 'subsidyAmount' - }, { - type: 'input', - value: '', - label: '房东姓名', - key: 'landlordName' - }, { - type: 'input', - value: '', - label: '房东证件号', - key: 'landlordIdNum' - }, { - type: 'date', - value: "", - label: '通知书领取日期', - key: 'notificationRcvDate' - }, - ], - unemployedFlag: [ - { - type: 'input', - value: '', - label: '原工作单位', - key: 'originWorkUnit' - }, { - type: 'date', - value: '', - label: '失业时间', - key: 'unemploymentTime' - }, { - type: 'input', - value: '', - label: '失业证号', - key: 'unemploymentNum' - }, { - type: 'input', - value: '', - label: '再就业优惠证号', - key: 'employmentNum' - }, { - type: 'input', - value: '', - label: '技术特长', - key: 'specialSkill' - }, { - type: 'select', - value: "", - valueIndex: -1, - label: '失业原因', - optionsKey: 'label', - valueKey: 'value', - options: [], // 字典获取 - key: 'unemploymentReason' - }, { - type: 'select', - value: "", - valueIndex: -1, - label: '是否就业困难对象', - optionsKey: 'label', - valueKey: 'value', - options: [{ - value: 1, - label: '是' - }, { - value: 0, - label: '否' - }], - key: 'employmentHardFlag' - }, { - type: 'select', - value: "", - valueIndex: -1, - label: '劳动能力就业愿望', - optionsKey: 'label', - valueKey: 'value', - options: [], // 字典获取 - key: 'employmentWish' - }, - ], - veteranFlag: [ - { - type: 'date', - value: '', - label: '入伍时间', - key: 'joinArmyTime' - }, { - type: 'date', - value: '', - label: '退伍时间', - key: 'leaveArmyTime' - }, { - type: 'input', - value: '', - label: '服役单位', - key: 'serviceUnit' - }, { - type: 'input', - value: '', - label: '接收单位', - key: 'receiveUnit' - }, { - type: 'input', - value: '', - label: '待安置补助金', - afterText: '元', - key: 'settlementAmount' - }, { - type: 'input', - value: '', - label: '培训状况', - key: 'trainDesc' - }, { - type: 'input', - value: '', - label: '现就业情况', - key: 'employmentSituation' - }, { - type: 'select', - value: "", - valueIndex: -1, - label: '是否办理公益性岗位', - optionsKey: 'label', - valueKey: 'value', - options: [{ - value: 1, - label: '是' - }, { - value: 0, - label: '否' - }], - key: 'pubWelfareJobFlag' - }, - ], - unitedFrontFlag: [ - { - type: 'input', - value: '', - label: '职务', - key: 'duty' - }, { - type: 'input', - value: '', - label: '探亲情况', - key: 'visitation' - } - ], - volunteerFlag: [ - { - type: 'checkbox', - value: '', - label: '志愿者类别', - key: 'volunteerCategory' - }, { - type: 'textarea', - value: '', - maxlength: 120, - label: '备注', - key: 'volunteerRemark' - }, - ], - specialSupportFlag: [ - { - type: 'select', - value: "", - valueIndex: -1, - label: '特扶类别', - optionsKey: 'label', - valueKey: 'value', - options: [ - { - value: '1', - label: '失独' - }, - { - value: '2', - label: '伤残' - } - ], // 字典 - key: 'specialSupportType', - masterControl: true - }, { - type: 'input', - value: "", - label: '子女姓名', - key: 'childName', - showFlag: '2', - hide: true - }, { - type: 'select', - value: "", - valueIndex: -1, - label: '子女性别', - optionsKey: 'label', - valueKey: 'value', - options: [ - { - value: '1', - label: '男' - }, - { - value: '2', - label: '女' - } - ], // 字典 - key: 'childGender' - }, { - type: 'date', - value: "", - label: '子女死亡日期', - key: 'childDeathDate', - showFlag: '1', - hide: true - }, { - type: 'select', - value: "", - valueIndex: -1, - label: '伤残类别', - optionsKey: 'label', - valueKey: 'value', - options: [], // 字典 - key: 'childDisabilityCategoryCode', - showFlag: '2', - hide: true - }, { - type: 'select', - value: "", - valueIndex: -1, - label: '伤残等级', - optionsKey: 'label', - valueKey: 'value', - options: [], // 字典 - key: 'childDisabilityLevel', - showFlag: '2', - hide: true - }, { - type: 'textarea', - value: '', - maxlength: 120, - label: '备注', - key: 'remark' - }, - ], - tenantFlag: [ - { - type: 'date', - value: "", - label: '合同开始时间', - key: 'contractStartDate' - }, { - type: 'date', - value: "", - label: '合同结束时间', - key: 'contractEndDate' - },], - specialCrowdFlag: [ - { - type: 'select', - value: "", - valueIndex: -1, - label: '人群类别', - optionsKey: 'label', - valueKey: 'value', - options: [], // 字典 - key: 'specialCategoryCode' - }], - oldPeopleFlag: [ - { - type: 'input', - value: '', - label: '高龄补助', - afterText: '元', - key: 'oldSubsidy' - }], - publicWelfareFlag: [ - { - type: 'date', - value: "", - label: '入职时间', - key: 'hireData' - }, { - type: 'checkbox', - value: "", - valueIndex: -1, - label: '岗位类型', - optionsKey: 'label', - valueKey: 'value', - options: [], // 字典 - key: 'postTypes' - }, { - type: '', - value: "", - key: 'userId' - }], + data: { + hideData: {}, + isShowIdNum: true, + isShowIdTel: true, + formController: [], + ensureHouseFlagOpen: false, + unemployedFlagOpen: false, + veteranFlagOpen: false, + unitedFrontFlagOpen: false, + volunteerFlagOpen: false, + specialSupportFlagOpen: false, + tenantFlagOpen: false, + specialCrowdFlagOpen: false, + oldPeopleFlagOpen: false, + publicWelfareFlagOpen: false, + + residentTypeForm: { + ensureHouseFlag: [ + { + type: 'select', + value: "", + valueIndex: -1, + label: '住房性质', + optionsKey: 'label', + valueKey: 'value', + options: [], // 字典获取 + key: 'housingNature' + }, { + type: 'input', + value: '', + label: '保障类型', + key: 'securityType' + }, { + type: 'date', + value: "", + label: '发证日期', + key: 'certificateDate' + }, { + type: 'input', + value: '', + label: '补贴编号', + key: 'subsidyNum' + }, { + type: 'input', + value: '', + label: '补贴金额', + afterText: "元", + key: 'subsidyAmount' + }, { + type: 'input', + value: '', + label: '房东姓名', + key: 'landlordName' + }, { + type: 'input', + value: '', + label: '房东证件号', + key: 'landlordIdNum' + }, { + type: 'date', + value: "", + label: '通知书领取日期', + key: 'notificationRcvDate' }, - residentTypeFormCell: [], - nation: [], - education: [], - marriageList: [], - marriageName: '', - form: { - agencyName: "", - agencyId: "", - resiId: "", - houseMergeId: "", - categoryId: "", - gridName: "", - gridId: "", - villageId: "", - buildId: "", - unitId: "", - homeId: "", - name: "", - nation: "", - remark: "", - localResidenceFlag: "", - birthday: "", - idNum: "", - gender: "", - mobile: "", - partyFlag: 0, - subsistenceAllowanceFlag: 0, - ensureHouseFlag: 0, - unemployedFlag: 0, - fertileWomanFlag: 0, - veteranFlag: 0, - unitedFrontFlag: 0, - petitionOfficerFlag: "", - volunteerFlag: 0, - specialSupportFlag: 0, - tenantFlag: 0, - floatingFlag: 0, - specialCrowdFlag: 0, - oldPeopleFlag: 0, - emptyNesterFlag: 0, - liveAloneFlag: 0, - disabledFlag: 0, - dementedFlag: 0, - disabilityFlag: 0, - seriousIllnessFlag: 0, - chronicDiseaseFlag: 0, - publicWelfareFlag: 0, - resideInfoDto: { - placeOfDomicile: "", - currentResidence: "", - nativePlace: "" - }, - eduInfoDto: { - cultureLevel: "" + ], + unemployedFlag: [ + { + type: 'input', + value: '', + label: '原工作单位', + key: 'originWorkUnit' + }, { + type: 'date', + value: '', + label: '失业时间', + key: 'unemploymentTime' + }, { + type: 'input', + value: '', + label: '失业证号', + key: 'unemploymentNum' + }, { + type: 'input', + value: '', + label: '再就业优惠证号', + key: 'employmentNum' + }, { + type: 'input', + value: '', + label: '技术特长', + key: 'specialSkill' + }, { + type: 'select', + value: "", + valueIndex: -1, + label: '失业原因', + optionsKey: 'label', + valueKey: 'value', + options: [], // 字典获取 + key: 'unemploymentReason' + }, { + type: 'select', + value: "", + valueIndex: -1, + label: '是否就业困难对象', + optionsKey: 'label', + valueKey: 'value', + options: [{ + value: 1, + label: '是' + }, { + value: 0, + label: '否' + }], + key: 'employmentHardFlag' + }, { + type: 'select', + value: "", + valueIndex: -1, + label: '劳动能力就业愿望', + optionsKey: 'label', + valueKey: 'value', + options: [], // 字典获取 + key: 'employmentWish' + }, + ], + veteranFlag: [ + { + type: 'date', + value: '', + label: '入伍时间', + key: 'joinArmyTime' + }, { + type: 'date', + value: '', + label: '退伍时间', + key: 'leaveArmyTime' + }, { + type: 'input', + value: '', + label: '服役单位', + key: 'serviceUnit' + }, { + type: 'input', + value: '', + label: '接收单位', + key: 'receiveUnit' + }, { + type: 'input', + value: '', + label: '待安置补助金', + afterText: '元', + key: 'settlementAmount' + }, { + type: 'input', + value: '', + label: '培训状况', + key: 'trainDesc' + }, { + type: 'input', + value: '', + label: '现就业情况', + key: 'employmentSituation' + }, { + type: 'select', + value: "", + valueIndex: -1, + label: '是否办理公益性岗位', + optionsKey: 'label', + valueKey: 'value', + options: [{ + value: 1, + label: '是' + }, { + value: 0, + label: '否' + }], + key: 'pubWelfareJobFlag' + }, + ], + unitedFrontFlag: [ + { + type: 'input', + value: '', + label: '职务', + key: 'duty' + }, { + type: 'input', + value: '', + label: '探亲情况', + key: 'visitation' + } + ], + volunteerFlag: [ + { + type: 'checkbox', + value: '', + label: '志愿者类别', + key: 'volunteerCategory' + }, { + type: 'textarea', + value: '', + maxlength: 120, + label: '备注', + key: 'volunteerRemark' + }, + ], + specialSupportFlag: [ + { + type: 'select', + value: "", + valueIndex: -1, + label: '特扶类别', + optionsKey: 'label', + valueKey: 'value', + options: [ + { + value: '1', + label: '失独' }, - familyInfoDto: { - marriage: "" + { + value: '2', + label: '伤残' + } + ], // 字典 + key: 'specialSupportType', + masterControl: true + }, { + type: 'input', + value: "", + label: '子女姓名', + key: 'childName', + showFlag: '2', + hide: true + }, { + type: 'select', + value: "", + valueIndex: -1, + label: '子女性别', + optionsKey: 'label', + valueKey: 'value', + options: [ + { + value: '1', + label: '男' }, - religionDto: { - religion: "" + { + value: '2', + label: '女' } + ], // 字典 + key: 'childGender' + }, { + type: 'date', + value: "", + label: '子女死亡日期', + key: 'childDeathDate', + showFlag: '1', + hide: true + }, { + type: 'select', + value: "", + valueIndex: -1, + label: '伤残类别', + optionsKey: 'label', + valueKey: 'value', + options: [], // 字典 + key: 'childDisabilityCategoryCode', + showFlag: '2', + hide: true + }, { + type: 'select', + value: "", + valueIndex: -1, + label: '伤残等级', + optionsKey: 'label', + valueKey: 'value', + options: [], // 字典 + key: 'childDisabilityLevel', + showFlag: '2', + hide: true + }, { + type: 'textarea', + value: '', + maxlength: 120, + label: '备注', + key: 'remark' }, - isFirstLoadGrid: true, - isFirstLoadVillage: true, - isFirstLoadBuilding: true, - isFirstLoadUnit: true, - isFirstLoadHouse: true, - agencyId: '', - gridList: [], - villageList: [], - villageName: '', - buildingList: [], - buildingName: '', - unitList: [], - unitName: '', - houseList: [], - houseName: '', - genderList: [{label: '男', value: '1'}, {label: '女', value: '2'}], - genderName: '', - day: '', - value3: [], - residentCategory: [ - {title: '党员', value: 'partyFlag'}, - {title: '低保人员', value: 'subsistenceAllowanceFlag'}, - {title: '保障房人员', value: 'ensureHouseFlag', isForm: true}, - {title: '失业人员', value: 'unemployedFlag', isForm: true}, - {title: '育龄妇女', value: 'fertileWomanFlag'}, - {title: '退役军人', value: 'veteranFlag', isForm: true}, - {title: '统战人员', value: 'unitedFrontFlag', isForm: true}, - {title: '信访人员', value: 'petitionOfficerFlag'}, - {title: '志愿者', value: 'volunteerFlag', isForm: true}, - {title: '特扶人员', value: 'specialSupportFlag', isForm: true}, - {title: '租户', value: 'tenantFlag', isForm: true}, - {title: '流动人口', value: 'floatingFlag'}, - {title: '特殊人群', value: 'specialCrowdFlag', isForm: true}, - {title: '老年人', value: 'oldPeopleFlag', isForm: true}, - {title: '空巢老人', value: 'emptyNesterFlag'}, - {title: '独居老人', value: 'liveAloneFlag'}, - {title: '失能老人', value: 'disabledFlag'}, - {title: '失智老人', value: 'dementedFlag'}, - {title: '残疾', value: 'disabilityFlag'}, - {title: '大病', value: 'seriousIllnessFlag'}, - {title: '慢病', value: 'chronicDiseaseFlag'}, - {title: '公益岗人员', value: 'publicWelfareFlag', isForm: true} - ], - residentCategorySty: '', - categoryInfo: '', - isShowDynamicForms: false, - dynamicTitle: " ", + ], + tenantFlag: [ + { + type: 'date', + value: "", + label: '合同开始时间', + key: 'contractStartDate' + }, { + type: 'date', + value: "", + label: '合同结束时间', + key: 'contractEndDate' + },], + specialCrowdFlag: [ + { + type: 'select', + value: "", + valueIndex: -1, + label: '人群类别', + optionsKey: 'label', + valueKey: 'value', + options: [], // 字典 + key: 'specialCategoryCode' + }], + oldPeopleFlag: [ + { + type: 'input', + value: '', + label: '高龄补助', + afterText: '元', + key: 'oldSubsidy' + }], + publicWelfareFlag: [ + { + type: 'date', + value: "", + label: '入职时间', + key: 'hireData' + }, { + type: 'checkbox', + value: "", + valueIndex: -1, + label: '岗位类型', + optionsKey: 'label', + valueKey: 'value', + options: [], // 字典 + key: 'postTypes' + }, { + type: '', + value: "", + key: 'userId' + }], + }, + residentTypeFormCell: [], + nation: [], + education: [], + marriageList: [], + marriageName: '', + form: { + agencyName: "", + agencyId: "", + resiId: "", + houseMergeId: "", + categoryId: "", + gridName: "", + gridId: "", + villageId: "", + buildId: "", + unitId: "", + homeId: "", + name: "", + nation: "", + remark: "", + localResidenceFlag: "", + birthday: "", + idNum: "", + gender: "", + mobile: "", + partyFlag: 0, + subsistenceAllowanceFlag: 0, + ensureHouseFlag: 0, + unemployedFlag: 0, + fertileWomanFlag: 0, + veteranFlag: 0, + unitedFrontFlag: 0, + petitionOfficerFlag: "", + volunteerFlag: 0, + specialSupportFlag: 0, + tenantFlag: 0, + floatingFlag: 0, + specialCrowdFlag: 0, + oldPeopleFlag: 0, + emptyNesterFlag: 0, + liveAloneFlag: 0, + disabledFlag: 0, + dementedFlag: 0, + disabilityFlag: 0, + seriousIllnessFlag: 0, + chronicDiseaseFlag: 0, + publicWelfareFlag: 0, + resideInfoDto: { + placeOfDomicile: "", + currentResidence: "", + nativePlace: "" + }, + eduInfoDto: { + cultureLevel: "" + }, + familyInfoDto: { + marriage: "" + }, + religionDto: { + religion: "" + } }, + isFirstLoadGrid: true, + isFirstLoadVillage: true, + isFirstLoadBuilding: true, + isFirstLoadUnit: true, + isFirstLoadHouse: true, + agencyId: '', + gridList: [], + villageList: [], + villageName: '', + buildingList: [], + buildingName: '', + unitList: [], + unitName: '', + houseList: [], + houseName: '', + genderList: [{ label: '男', value: '1' }, { label: '女', value: '2' }], + genderName: '', + day: '', + value3: [], + residentCategory: [ + { title: '党员', value: 'partyFlag' }, + { title: '低保人员', value: 'subsistenceAllowanceFlag' }, + { title: '保障房人员', value: 'ensureHouseFlag', isForm: true }, + { title: '失业人员', value: 'unemployedFlag', isForm: true }, + { title: '育龄妇女', value: 'fertileWomanFlag' }, + { title: '退役军人', value: 'veteranFlag', isForm: true }, + { title: '统战人员', value: 'unitedFrontFlag', isForm: true }, + { title: '信访人员', value: 'petitionOfficerFlag' }, + { title: '志愿者', value: 'volunteerFlag', isForm: true }, + { title: '特扶人员', value: 'specialSupportFlag', isForm: true }, + { title: '租户', value: 'tenantFlag', isForm: true }, + { title: '流动人口', value: 'floatingFlag' }, + { title: '特殊人群', value: 'specialCrowdFlag', isForm: true }, + { title: '老年人', value: 'oldPeopleFlag', isForm: true }, + { title: '空巢老人', value: 'emptyNesterFlag' }, + { title: '独居老人', value: 'liveAloneFlag' }, + { title: '失能老人', value: 'disabledFlag' }, + { title: '失智老人', value: 'dementedFlag' }, + { title: '残疾', value: 'disabilityFlag' }, + { title: '大病', value: 'seriousIllnessFlag' }, + { title: '慢病', value: 'chronicDiseaseFlag' }, + { title: '公益岗人员', value: 'publicWelfareFlag', isForm: true } + ], + residentCategorySty: '', + categoryInfo: '', + isShowDynamicForms: false, + dynamicTitle: " ", + }, - /** - * 生命周期函数--监听页面加载 - */ - onLoad: async function (options) { - var nowDate = new Date(); - var year = nowDate.getFullYear(); - var month = nowDate.getMonth() + 1; - var day = nowDate.getDate(); + /** + * 生命周期函数--监听页面加载 + */ + onLoad: async function (options) { + var nowDate = new Date(); + var year = nowDate.getFullYear(); + var month = nowDate.getMonth() + 1; + var day = nowDate.getDate(); + this.setData({ + statusHeight: app.globalData.deviceInfo.statusHeight, + navigationHeight: app.globalData.deviceInfo.navigationHeight, + agencyId: app.globalData.user.agencyId, + 'form.agencyId': app.globalData.user.agencyId, + 'form.agencyName': app.globalData.user.agencyName, + day: `${year}-${month}-${day}`, + formType: options.type, + resiId: options.resiId + }) + await this.getNationDictList() + await this.getGridoptionDict() + await this.getEducationDictList() + await this.getmarriageDict() + if (options.resiId) { + wx.setNavigationBarTitle({ + title: '修改人口信息', + }) + await this.getResiDetail() + await this.getResidentResideInfo() + await this.getResidentReligion() + await this.getResidentEduInfo() + setTimeout(() => { + this.getFamilyInfoDetailById() + }, 500) + } else { + if (options.idCard) { this.setData({ - statusHeight: app.globalData.deviceInfo.statusHeight, - navigationHeight: app.globalData.deviceInfo.navigationHeight, - agencyId: app.globalData.user.agencyId, - 'form.agencyId': app.globalData.user.agencyId, - 'form.agencyName': app.globalData.user.agencyName, - day: `${year}-${month}-${day}`, - formType: options.type, - resiId: options.resiId + 'form.name': options.name, + 'form.idNum': options.idCard, + 'form.gender': options.gender == '男' ? '1' : "2", + genderName: options.gender, + 'form.birthday': options.birth, }) - await this.getNationDictList() - await this.getGridoptionDict() - await this.getEducationDictList() - await this.getmarriageDict() - if (options.resiId) { - wx.setNavigationBarTitle({ - title: '修改人口信息', - }) - await this.getResiDetail() - await this.getResidentResideInfo() - await this.getResidentReligion() - await this.getResidentEduInfo() - setTimeout(() => { - this.getFamilyInfoDetailById() - }, 500) - } else { - if (options.idCard) { - this.setData({ - 'form.name': options.name, - 'form.idNum': options.idCard, - 'form.gender': options.gender == '男' ? '1' : "2", - genderName: options.gender, - 'form.birthday': options.birth, - }) - } - this.setData({ - isFirstLoadGrid: false, - isFirstLoadVillage: false, - isFirstLoadBuilding: false, - isFirstLoadUnit: false, - isFirstLoadHouse: false, - }) - } - }, - getResiDetail: async function () { - try { - let res = await api.getResiDetail(this.data.resiId); - const { - birthday, - gender, - idNum, - mobile, - name, - nation, - houseInfo = {}, // 为houseInfo提供一个默认值 - categoryInfo, - genderName - } = res.data; + } + this.setData({ + isFirstLoadGrid: false, + isFirstLoadVillage: false, + isFirstLoadBuilding: false, + isFirstLoadUnit: false, + isFirstLoadHouse: false, + }) + } + }, + getResiDetail: async function () { + try { + let res = await api.getResiDetail(this.data.resiId); + const { + birthday, + gender, + idNum, + mobile, + name, + nation, + houseInfo = {}, // 为houseInfo提供一个默认值 + categoryInfo, + genderName + } = res.data; - let result = this.data.residentCategory.filter(item => categoryInfo[item.value] === 1); - let residentCategorySty = result.map(item => item.title); - let categoryInfoArr = result.map(item => item.value); - this.setDynamicForm(result) + let result = this.data.residentCategory.filter(item => categoryInfo[item.value] === 1); + let residentCategorySty = result.map(item => item.title); + let categoryInfoArr = result.map(item => item.value); + this.setDynamicForm(result) - wx.showLoading({ - title: '加载中...', - }); - let form = this.data.form - for (let i in categoryInfoArr) { - form[categoryInfoArr[i]] = 1 - } - this.setData({ - form - }) - this.setDataAsync({ - 'form.name': name, - 'form.birthday': birthday, - 'form.gender': gender, - 'form.idNum': idNum, - 'form.mobile': mobile, - 'form.nation': nation, - 'form.gridId': houseInfo?.gridId || '', // 使用了可选链 - 'form.gridName': houseInfo?.gridName || '', // 使用了可选链 - 'form.villageId': houseInfo?.villageId || '', // 使用了可选链 - 'form.buildId': houseInfo?.buildId || '', // 使用了可选链 - 'form.unitId': houseInfo?.unitId || '', // 使用了可选链 - 'form.homeId': houseInfo?.homeId || '', // 使用了可选链 - 'form.houseMergeId': houseInfo?.mergeId || '', // 使用了可选链 - genderName, - categoryInfo: categoryInfoArr, - residentCategorySty, - }); - await this.delay(1000) - await this.bindPickerChangeGrid(); - await this.delay(400) - await this.bindPickerChangevillageId(); - await this.delay(400) - await this.bindPickerChangebuilding(); - await this.delay(400) - await this.bindPickerChangeUnit(); - await this.delay(400) - await this.bindPickerChangeHouse(); - wx.hideLoading(); - } catch (err) { - console.log(err); - } - }, - setDataAsync: function (data) { - return new Promise((resolve) => { - this.setData(data, resolve); - }); - }, - delay(ms) { - return new Promise(resolve => setTimeout(resolve, ms)); - }, - // 居住信息详情 - getResidentResideInfo() { - api.getResidentResideInfo(this.data.resiId).then(res => { - this.setData({ - 'form.resideInfoDto': res.data, - }) - }).catch(err => { - console.log(err); - }) - }, - // 宗教信仰详情 - getResidentReligion() { - api.getResidentReligion(this.data.resiId).then(res => { - this.setData({ - 'form.religionDto': res.data - }) - }).catch(err => { - console.log(err); - }) - }, - // 获取教育信息详情 - getResidentEduInfo() { - api.getResidentEduInfo(this.data.resiId).then(res => { - this.setData({ - 'form.eduInfoDto': res.data - }) - }).catch(err => { - console.log(err); - }) - }, - // 获取婚姻信息 - getFamilyInfoDetailById() { - api.getFamilyInfoDetailById(this.data.resiId).then(res => { - this.setData({ - 'form.familyInfoDto': res.data, - marriageName: this.data.marriageList.filter(item => item.value == res.data.marriage)[0].label - }) - }).catch(err => { - console.log(err); - }) - }, - - getNationDictList() { - api.getNationDictList().then(res => { - this.setData({ - nation: res.data - }) - }).catch(err => { - console.log(err); - }) - }, - getEducationDictList() { - api.getEducationDictList().then(res => { - this.setData({ - education: res.data - }) - }).catch(err => { - console.log(err); - }) - }, - getGridoptionDict() { - let parm = { - agencyId: this.data.agencyId, - purpose: 'addorupdate' - } - api.getGridoptionDict(parm).then(res => { - this.setData({ - gridList: res.data, - }) - }).catch(err => { - console.log(err); - }) - }, - getmarriageDict() { - api.getDictList('marriage').then(res => { - this.setData({ - marriageList: res.data - }) - }).catch(err => { - console.log(err); - }) - }, - // 获取小区列表 - getQuartersOptions(gridId) { - let parm = { - gridId, - agencyId: this.data.agecyId - } - api.getQuartersOptions(parm).then(res => { - this.setData({ - villageList: res.data - }) - }).catch(err => { - console.log(err); - }) - }, - // 获取楼栋列表 - getBuildingoption(villageId) { - api.getBuildingoption(villageId).then(res => { - this.setData({ - buildingList: res.data - }) - }).catch(err => { - console.log(err); - }) - }, - // 获取单元列表 - getUnitoption(buildingId) { - api.getUnitoption(buildingId).then(res => { - this.setData({ - unitList: res.data - }) - }).catch(err => { - console.log(err); - }) - }, - // 获取房屋列表 - getHouseoption(unitId) { - api.getHouseoption(unitId).then(res => { - this.setData({ - houseList: res.data - }) - }).catch(err => { - console.log(err); - }) - }, - /** - * 生命周期函数--监听页面初次渲染完成 - */ - onReady() { + wx.showLoading({ + title: '加载中...', + }); + let form = this.data.form + for (let i in categoryInfoArr) { + form[categoryInfoArr[i]] = 1 + } + this.setData({ + form + }) + this.setDataAsync({ + 'form.name': name, + 'form.birthday': birthday, + 'form.gender': gender, + 'form.idNum': cardHide(idNum), + 'form.mobile': mobile, + 'form.nation': nation, + 'form.gridId': houseInfo?.gridId || '', // 使用了可选链 + 'form.gridName': houseInfo?.gridName || '', // 使用了可选链 + 'form.villageId': houseInfo?.villageId || '', // 使用了可选链 + 'form.buildId': houseInfo?.buildId || '', // 使用了可选链 + 'form.unitId': houseInfo?.unitId || '', // 使用了可选链 + 'form.homeId': houseInfo?.homeId || '', // 使用了可选链 + 'form.houseMergeId': houseInfo?.mergeId || '', // 使用了可选链 + genderName, + categoryInfo: categoryInfoArr, + residentCategorySty, + }); + await this.delay(1000) + await this.bindPickerChangeGrid(); + await this.delay(400) + await this.bindPickerChangevillageId(); + await this.delay(400) + await this.bindPickerChangebuilding(); + await this.delay(400) + await this.bindPickerChangeUnit(); + await this.delay(400) + await this.bindPickerChangeHouse(); + wx.hideLoading(); + } catch (err) { + console.log(err); + } + }, + setDataAsync: function (data) { + return new Promise((resolve) => { + this.setData(data, resolve); + }); + }, + delay(ms) { + return new Promise(resolve => setTimeout(resolve, ms)); + }, + // 居住信息详情 + getResidentResideInfo() { + api.getResidentResideInfo(this.data.resiId).then(res => { + this.setData({ + 'form.resideInfoDto': res.data, + }) + }).catch(err => { + console.log(err); + }) + }, + // 宗教信仰详情 + getResidentReligion() { + api.getResidentReligion(this.data.resiId).then(res => { + this.setData({ + 'form.religionDto': res.data + }) + }).catch(err => { + console.log(err); + }) + }, + // 获取教育信息详情 + getResidentEduInfo() { + api.getResidentEduInfo(this.data.resiId).then(res => { + this.setData({ + 'form.eduInfoDto': res.data + }) + }).catch(err => { + console.log(err); + }) + }, + // 获取婚姻信息 + getFamilyInfoDetailById() { + api.getFamilyInfoDetailById(this.data.resiId).then(res => { + this.setData({ + 'form.familyInfoDto': res.data, + marriageName: this.data.marriageList.filter(item => item.value == res.data.marriage)[0].label + }) + }).catch(err => { + console.log(err); + }) + }, - }, + getNationDictList() { + api.getNationDictList().then(res => { + this.setData({ + nation: res.data + }) + }).catch(err => { + console.log(err); + }) + }, + getEducationDictList() { + api.getEducationDictList().then(res => { + this.setData({ + education: res.data + }) + }).catch(err => { + console.log(err); + }) + }, + getGridoptionDict() { + let parm = { + agencyId: this.data.agencyId, + purpose: 'addorupdate' + } + api.getGridoptionDict(parm).then(res => { + this.setData({ + gridList: res.data, + }) + }).catch(err => { + console.log(err); + }) + }, + getmarriageDict() { + api.getDictList('marriage').then(res => { + this.setData({ + marriageList: res.data + }) + }).catch(err => { + console.log(err); + }) + }, + // 获取小区列表 + getQuartersOptions(gridId) { + let parm = { + gridId, + agencyId: this.data.agecyId + } + api.getQuartersOptions(parm).then(res => { + this.setData({ + villageList: res.data + }) + }).catch(err => { + console.log(err); + }) + }, + // 获取楼栋列表 + getBuildingoption(villageId) { + api.getBuildingoption(villageId).then(res => { + this.setData({ + buildingList: res.data + }) + }).catch(err => { + console.log(err); + }) + }, + // 获取单元列表 + getUnitoption(buildingId) { + api.getUnitoption(buildingId).then(res => { + this.setData({ + unitList: res.data + }) + }).catch(err => { + console.log(err); + }) + }, + // 获取房屋列表 + getHouseoption(unitId) { + api.getHouseoption(unitId).then(res => { + this.setData({ + houseList: res.data + }) + }).catch(err => { + console.log(err); + }) + }, + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady() { - /** - * 生命周期函数--监听页面显示 - */ - onShow() { + }, - }, + /** + * 生命周期函数--监听页面显示 + */ + onShow() { - /** - * 生命周期函数--监听页面隐藏 - */ - onHide() { + }, - }, + /** + * 生命周期函数--监听页面隐藏 + */ + onHide() { - /** - * 生命周期函数--监听页面卸载 - */ - onUnload() { + }, - }, + /** + * 生命周期函数--监听页面卸载 + */ + onUnload() { - /** - * 页面相关事件处理函数--监听用户下拉动作 - */ - onPullDownRefresh() { + }, - }, + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh() { - /** - * 页面上拉触底事件的处理函数 - */ - onReachBottom() { + }, - }, + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom() { - /** - * 用户点击右上角分享 - */ - onShareAppMessage() { - }, - // 获取网格列表 - async bindPickerChangeGrid() { - return new Promise(async (resolve, reject) => { - if (this.data.isFirstLoadGrid) { - // 编辑回填逻辑 - const id = this.data.form.gridId; - const temp = this.data.gridList.filter(item => item.value == id); - let gridName = '' - if (temp.length != 0) { - gridName = temp[0].label - } else { - this.showToast('网格信息有误') - return - } - this.setData({ - 'form.gridName': gridName, - "form.gridId": id - }); - this.getQuartersOptions(id); - this.setData({ - isFirstLoadGrid: false - }); - } else { - // 正常修改逻辑 - const selectedIndex = e.detail.value; - const selectedVillage = this.data.gridList[selectedIndex]; - this.setData({ - 'form.gridName': selectedVillage.label, - "form.gridId": selectedVillage.value, - 'form.villageId': '', - 'form.buildId': '', - 'form.unitId': '', - 'form.homeId': '', - villageName: '', - villageList: [], - buildingName: '', - buildingList: [], - unitName: '', - unitList: [], - houseName: '', - houseList: [], - }); + }, - this.getQuartersOptions(selectedVillage.value); - } - resolve(); + /** + * 用户点击右上角分享 + */ + onShareAppMessage() { + }, + // 获取网格列表 + async bindPickerChangeGrid() { + return new Promise(async (resolve, reject) => { + if (this.data.isFirstLoadGrid) { + // 编辑回填逻辑 + const id = this.data.form.gridId; + const temp = this.data.gridList.filter(item => item.value == id); + let gridName = '' + if (temp.length != 0) { + gridName = temp[0].label + } else { + this.showToast('网格信息有误') + return + } + this.setData({ + 'form.gridName': gridName, + "form.gridId": id }); - }, - bindPickerChangevillageId(e) { - return new Promise((resolve, reject) => { - if (this.data.isFirstLoadVillage) { - // 编辑回填逻辑 - const id = this.data.form.villageId; - const temp = this.data.villageList.filter(item => item.value == id); - let villageName = '' - if (temp.length != 0) { - villageName = temp[0].label - } else { - this.showToast('小区信息有误') - return - } - this.setData({ - villageName: villageName, - "form.villageId": id - }); - this.getBuildingoption(id); - this.setData({ - isFirstLoadVillage: false - }); - console.log(this.data.villageList, '小区'); - } else { - // 正常修改逻辑 - const selectedIndex = e.detail.value; - const selectedVillage = this.data.villageList[selectedIndex]; - - this.setData({ - villageName: selectedVillage.label, - "form.villageId": selectedVillage.value, - 'form.buildId': '', - 'form.unitId': '', - 'form.homeId': '', - buildingName: '', - buildingList: [], - unitName: '', - unitList: [], - houseName: '', - houseList: [], - }); - - this.getBuildingoption(selectedVillage.value); - } - resolve(); + this.getQuartersOptions(id); + this.setData({ + isFirstLoadGrid: false + }); + } else { + // 正常修改逻辑 + const selectedIndex = e.detail.value; + const selectedVillage = this.data.gridList[selectedIndex]; + this.setData({ + 'form.gridName': selectedVillage.label, + "form.gridId": selectedVillage.value, + 'form.villageId': '', + 'form.buildId': '', + 'form.unitId': '', + 'form.homeId': '', + villageName: '', + villageList: [], + buildingName: '', + buildingList: [], + unitName: '', + unitList: [], + houseName: '', + houseList: [], }); - }, - bindPickerChangebuilding(e) { - return new Promise((resolve, reject) => { - if (this.data.isFirstLoadBuilding) { - const id = this.data.form.buildId; - const temp = this.data.buildingList.filter(item => item.value == id); - let buildingName = '' - if (temp.length != 0) { - buildingName = temp[0].label - } else { - this.showToast('小区信息有误') - return - } - this.setData({ - buildingName: buildingName, - "form.buildId": id - }); - this.getUnitoption(id); - this.setData({ - isFirstLoadBuilding: false - }); - } else { - const selectedIndex = e.detail.value; - const selectedVillage = this.data.buildingList[selectedIndex]; - this.setData({ - buildingName: selectedVillage.label, - "form.buildId": selectedVillage.value, - 'form.unitId': '', - 'form.homeId': '', - unitName: '', - unitList: [], - houseName: '', - houseList: [], - }); - this.getUnitoption(selectedVillage.value); - } - resolve(); + this.getQuartersOptions(selectedVillage.value); + } + resolve(); + }); + }, + bindPickerChangevillageId(e) { + return new Promise((resolve, reject) => { + if (this.data.isFirstLoadVillage) { + // 编辑回填逻辑 + const id = this.data.form.villageId; + const temp = this.data.villageList.filter(item => item.value == id); + let villageName = '' + if (temp.length != 0) { + villageName = temp[0].label + } else { + this.showToast('小区信息有误') + return + } + this.setData({ + villageName: villageName, + "form.villageId": id }); - }, - bindPickerChangeUnit(e) { - return new Promise((resolve, reject) => { - if (this.data.isFirstLoadUnit) { - const id = this.data.form.unitId; - const temp = this.data.unitList.filter(item => item.value == id); - let unitName = '' - if (temp.length != 0) { - unitName = temp[0].label - } else { - this.showToast('楼栋信息有误') - return - } - this.setData({ - unitName: unitName, - "form.unitId": id, - }); - this.getHouseoption(id); - this.setData({ - isFirstLoadunit: false - }); - } else { - const selectedIndex = e.detail.value; - const selectedVillage = this.data.unitList[selectedIndex]; - this.setData({ - unitName: selectedVillage.label, - "form.unitId": selectedVillage.value, - 'form.homeId': '', - houseName: '', - houseList: [], - }); - this.getHouseoption(selectedVillage.value); - } - resolve(); + this.getBuildingoption(id); + this.setData({ + isFirstLoadVillage: false }); - }, - bindPickerChangeHouse(e) { - return new Promise((resolve, reject) => { - if (this.data.isFirstLoadHouse) { - const id = this.data.form.homeId; - const temp = this.data.houseList.filter(item => item.value == id); - let houseName = '' - if (temp.length != 0) { - houseName = temp[0].label - } else { - this.showToast('房屋信息有误') - return - } - this.setData({ - houseName: houseName, - "form.homeId": id - }); - this.setData({ - isFirstLoadHouse: false - }); - } else { - const selectedIndex = e.detail.value; - const selectedVillage = this.data.houseList[selectedIndex]; - this.setData({ - houseName: selectedVillage.label, - "form.homeId": selectedVillage.value - }); - } - resolve(); + console.log(this.data.villageList, '小区'); + } else { + // 正常修改逻辑 + const selectedIndex = e.detail.value; + const selectedVillage = this.data.villageList[selectedIndex]; + + this.setData({ + villageName: selectedVillage.label, + "form.villageId": selectedVillage.value, + 'form.buildId': '', + 'form.unitId': '', + 'form.homeId': '', + buildingName: '', + buildingList: [], + unitName: '', + unitList: [], + houseName: '', + houseList: [], }); - }, - bindNameInput(e) { + + this.getBuildingoption(selectedVillage.value); + } + resolve(); + }); + }, + + bindPickerChangebuilding(e) { + return new Promise((resolve, reject) => { + if (this.data.isFirstLoadBuilding) { + const id = this.data.form.buildId; + const temp = this.data.buildingList.filter(item => item.value == id); + let buildingName = '' + if (temp.length != 0) { + buildingName = temp[0].label + } else { + this.showToast('小区信息有误') + return + } this.setData({ - 'form.name': e.detail.value - }) - console.log(this.data.form) - }, - bindPickerChangeGender(e) { + buildingName: buildingName, + "form.buildId": id + }); + this.getUnitoption(id); this.setData({ - genderName: this.data.genderList[e.detail.value].label, - "form.gender": this.data.genderList[e.detail.value].value - }) - }, - bindDateChange(e) { + isFirstLoadBuilding: false + }); + } else { + const selectedIndex = e.detail.value; + const selectedVillage = this.data.buildingList[selectedIndex]; this.setData({ - 'form.birthday': e.detail.value - }) - }, - bindidNumInput(e) { + buildingName: selectedVillage.label, + "form.buildId": selectedVillage.value, + 'form.unitId': '', + 'form.homeId': '', + unitName: '', + unitList: [], + houseName: '', + houseList: [], + }); + this.getUnitoption(selectedVillage.value); + } + resolve(); + }); + }, + bindPickerChangeUnit(e) { + return new Promise((resolve, reject) => { + if (this.data.isFirstLoadUnit) { + const id = this.data.form.unitId; + const temp = this.data.unitList.filter(item => item.value == id); + let unitName = '' + if (temp.length != 0) { + unitName = temp[0].label + } else { + this.showToast('楼栋信息有误') + return + } this.setData({ - 'form.idNum': e.detail.value - }) - console.log(this.data.form) - }, - bindMobileInput(e) { + unitName: unitName, + "form.unitId": id, + }); + this.getHouseoption(id); this.setData({ - 'form.mobile': e.detail.value - }) - console.log(this.data.form) - }, - bindPlaceOfDomicileInput(e) { + isFirstLoadunit: false + }); + } else { + const selectedIndex = e.detail.value; + const selectedVillage = this.data.unitList[selectedIndex]; this.setData({ - 'form.resideInfoDto.placeOfDomicile': e.detail.value - }) - console.log(this.data.form) - }, - bindCurrentResidenceInput(e) { + unitName: selectedVillage.label, + "form.unitId": selectedVillage.value, + 'form.homeId': '', + houseName: '', + houseList: [], + }); + this.getHouseoption(selectedVillage.value); + } + resolve(); + }); + }, + bindPickerChangeHouse(e) { + return new Promise((resolve, reject) => { + if (this.data.isFirstLoadHouse) { + const id = this.data.form.homeId; + const temp = this.data.houseList.filter(item => item.value == id); + let houseName = '' + if (temp.length != 0) { + houseName = temp[0].label + } else { + this.showToast('房屋信息有误') + return + } this.setData({ - 'form.resideInfoDto.currentResidence': e.detail.value - }) - console.log(this.data.form) - }, - bindPickerChangeNation(e) { + houseName: houseName, + "form.homeId": id + }); this.setData({ - "form.nation": this.data.nation[e.detail.value].value - }) - }, - bindNativePlaceInput(e) { + isFirstLoadHouse: false + }); + } else { + const selectedIndex = e.detail.value; + const selectedVillage = this.data.houseList[selectedIndex]; this.setData({ - 'form.resideInfoDto.nativePlace': e.detail.value - }) - }, - bindPickerChangeEducation(e) { + houseName: selectedVillage.label, + "form.homeId": selectedVillage.value + }); + } + resolve(); + }); + }, + bindNameInput(e) { + this.setData({ + 'form.name': e.detail.value + }) + console.log(this.data.form) + }, + bindPickerChangeGender(e) { + this.setData({ + genderName: this.data.genderList[e.detail.value].label, + "form.gender": this.data.genderList[e.detail.value].value + }) + }, + bindDateChange(e) { + this.setData({ + 'form.birthday': e.detail.value + }) + }, + bindidNumInput(e) { + this.setData({ + isShowIdNum: false, + 'form.idNum': e.detail.value + }) + console.log(this.data.form) + }, + bindMobileInput(e) { + this.setData({ + isShowIdTel: false, + 'form.mobile': e.detail.value + }) + console.log(this.data.form) + }, + bindPlaceOfDomicileInput(e) { + this.setData({ + 'form.resideInfoDto.placeOfDomicile': e.detail.value + }) + console.log(this.data.form) + }, + bindCurrentResidenceInput(e) { + this.setData({ + 'form.resideInfoDto.currentResidence': e.detail.value + }) + console.log(this.data.form) + }, + bindPickerChangeNation(e) { + this.setData({ + "form.nation": this.data.nation[e.detail.value].value + }) + }, + bindNativePlaceInput(e) { + this.setData({ + 'form.resideInfoDto.nativePlace': e.detail.value + }) + }, + bindPickerChangeEducation(e) { + this.setData({ + "form.eduInfoDto.cultureLevel": this.data.education[e.detail.value].value + }) + }, + bindPickerChangemarriage(e) { + this.setData({ + "form.familyInfoDto.marriage": this.data.marriageList[e.detail.value].value, + marriageName: this.data.marriageList[e.detail.value].label, + }) + }, + bindReligionInput(e) { + this.setData({ + "form.religionDto.religion": e.detail.value + }) + }, + onClick3() { + const than = this + $wuxSelect('#wux-select3').open({ + value: this.data.categoryInfo, + multiple: true, + toolbar: { + title: '居民类别', + confirmText: '确定', + }, + options: than.data.residentCategory, + onChange: (value, index, options) => { + console.log('onChange', value, index, options) + + const matchingLabels = value.map(valueToFind => { + const matchedItem = than.data.residentCategory.find(item => item.value === valueToFind); + return matchedItem ? matchedItem.title : null; + }).filter(Boolean); this.setData({ - "form.eduInfoDto.cultureLevel": this.data.education[e.detail.value].value + value3: value, + residentCategorySty: matchingLabels.join(','), }) - }, - bindPickerChangemarriage(e) { + }, + onConfirm: (value, index, options) => { + console.log('onConfirm', value, index, options) + let updatedForm = { ...this.data.form }; + than.data.residentCategory.forEach(option => { + if (value.includes(option.value)) { + updatedForm[option.value] = 1; + } else if (updatedForm[option.value] === 1) { + updatedForm[option.value] = 0; + } + }); this.setData({ - "form.familyInfoDto.marriage": this.data.marriageList[e.detail.value].value, - marriageName: this.data.marriageList[e.detail.value].label, + value3: value, + title3: index.map((n) => options[n].title), + form: updatedForm }) - }, - bindReligionInput(e) { - this.setData({ - "form.religionDto.religion": e.detail.value + let residentTypeFormCell = [] + index.forEach(item => { + residentTypeFormCell.push(this.data.residentCategory[item]) }) - }, - onClick3() { - const than = this - $wuxSelect('#wux-select3').open({ - value: this.data.categoryInfo, - multiple: true, - toolbar: { - title: '居民类别', - confirmText: '确定', - }, - options: than.data.residentCategory, - onChange: (value, index, options) => { - console.log('onChange', value, index, options) - - const matchingLabels = value.map(valueToFind => { - const matchedItem = than.data.residentCategory.find(item => item.value === valueToFind); - return matchedItem ? matchedItem.title : null; - }).filter(Boolean); - this.setData({ - value3: value, - residentCategorySty: matchingLabels.join(','), - }) - }, - onConfirm: (value, index, options) => { - console.log('onConfirm', value, index, options) - let updatedForm = {...this.data.form}; - than.data.residentCategory.forEach(option => { - if (value.includes(option.value)) { - updatedForm[option.value] = 1; - } else if (updatedForm[option.value] === 1) { - updatedForm[option.value] = 0; - } - }); - this.setData({ - value3: value, - title3: index.map((n) => options[n].title), - form: updatedForm + this.setDynamicForm(residentTypeFormCell) + console.log(this.data.form); + }, + }) + }, + showToast(title) { + wx.showToast({ + title: title, + duration: 2000, + icon: 'none' + }) + }, + submit: async function () { + if (!this.data.form.gridId) { + this.showToast('请选择所在网格') + return + } + if (!this.data.form.villageId) { + this.showToast('请选择所在小区') + return + } + if (!this.data.form.buildId) { + this.showToast('请选择所在楼栋') + return + } + if (!this.data.form.unitId) { + this.showToast('请选择所在单元') + return + } + if (!this.data.form.homeId) { + this.showToast('请选择所在房屋') + return + } + if (!this.data.form.name) { + this.showToast('请填写姓名') + return + } + if (!this.data.form.gender) { + this.showToast('请选择性别') + return + } + if (!this.data.form.birthday) { + this.showToast('请选择出生日期') + return + } + if (!this.data.form.idNum) { + this.showToast('请填写证件号') + return + } + if (!this.data.form.mobile) { + this.showToast('请填写联系电话') + return + } + console.log(this.data.isShowIdNum,this.data.formType != 'edit') + const parm = { + ...this.data.form, + // idNum: this.data.isShowIdNum&&this.data.formType === 'edit'?undefined:this.data.form.idNum, + // mobile: this.data.isShowIdTel&&this.data.formType === 'edit'?undefined:this.data.form.mobile, + ensureHouseDto: this.data.ensureHouseFlagOpen ? this.getValue(this.data.residentTypeForm.ensureHouseFlag) : undefined, + unemployedDto: this.data.unemployedFlagOpen ? this.getValue(this.data.residentTypeForm.unemployedFlag) : undefined, + veteranDto: this.data.veteranFlagOpen ? this.getValue(this.data.residentTypeForm.veteranFlag) : undefined, + unitedFrontDto: this.data.unitedFrontFlagOpen ? this.getValue(this.data.residentTypeForm.unitedFrontFlag) : undefined, + volunteerDto: this.data.volunteerFlagOpen ? this.getValue(this.data.residentTypeForm.volunteerFlag) : undefined, + specialSupportDto: this.data.specialSupportFlagOpen ? this.getValue(this.data.residentTypeForm.specialSupportFlag) : undefined, + tenantDto: this.data.tenantFlagOpen ? this.getValue(this.data.residentTypeForm.tenantFlag) : undefined, + specialDto: this.data.specialCrowdFlagOpen ? this.getValue(this.data.residentTypeForm.specialCrowdFlag) : undefined, + oldPeopleDto: this.data.oldPeopleFlagOpen ? this.getValue(this.data.residentTypeForm.oldPeopleFlag) : undefined, + postDto: this.data.publicWelfareFlagOpen ? this.getValue(this.data.residentTypeForm.publicWelfareFlag) : undefined, + } + console.log(this.data.formType); + if (this.data.formType == 'edit') { + parm.resiId = this.data.resiId + try { + const res = await api.resiEdit(parm) + if (res.code === 0) { + wx.showToast({ + title: '编辑成功', + duration: 3000, + success: function () { + setTimeout(() => { + wx.navigateBack({ + delta: 1 }) - let residentTypeFormCell = [] - index.forEach(item => { - residentTypeFormCell.push(this.data.residentCategory[item]) - }) - this.setDynamicForm(residentTypeFormCell) - console.log(this.data.form); - }, - }) - }, - showToast(title) { - wx.showToast({ - title: title, - duration: 2000, - icon: 'none' - }) - }, - submit: async function () { - if (!this.data.form.gridId) { - this.showToast('请选择所在网格') - return - } - if (!this.data.form.villageId) { - this.showToast('请选择所在小区') - return - } - if (!this.data.form.buildId) { - this.showToast('请选择所在楼栋') - return - } - if (!this.data.form.unitId) { - this.showToast('请选择所在单元') - return - } - if (!this.data.form.homeId) { - this.showToast('请选择所在房屋') - return - } - if (!this.data.form.name) { - this.showToast('请填写姓名') - return - } - if (!this.data.form.gender) { - this.showToast('请选择性别') - return - } - if (!this.data.form.birthday) { - this.showToast('请选择出生日期') - return - } - if (!this.data.form.idNum) { - this.showToast('请填写证件号') - return - } - if (!this.data.form.mobile) { - this.showToast('请填写联系电话') - return - } - const parm = { - ...this.data.form, - ensureHouseDto: this.data.ensureHouseFlagOpen ? this.getValue(this.data.residentTypeForm.ensureHouseFlag) : undefined, - unemployedDto: this.data.unemployedFlagOpen ? this.getValue(this.data.residentTypeForm.unemployedFlag) : undefined, - veteranDto: this.data.veteranFlagOpen ? this.getValue(this.data.residentTypeForm.veteranFlag) : undefined, - unitedFrontDto: this.data.unitedFrontFlagOpen ? this.getValue(this.data.residentTypeForm.unitedFrontFlag) : undefined, - volunteerDto: this.data.volunteerFlagOpen ? this.getValue(this.data.residentTypeForm.volunteerFlag) : undefined, - specialSupportDto: this.data.specialSupportFlagOpen ? this.getValue(this.data.residentTypeForm.specialSupportFlag) : undefined, - tenantDto: this.data.tenantFlagOpen ? this.getValue(this.data.residentTypeForm.tenantFlag) : undefined, - specialDto: this.data.specialCrowdFlagOpen ? this.getValue(this.data.residentTypeForm.specialCrowdFlag) : undefined, - oldPeopleDto: this.data.oldPeopleFlagOpen ? this.getValue(this.data.residentTypeForm.oldPeopleFlag) : undefined, - postDto: this.data.publicWelfareFlagOpen ? this.getValue(this.data.residentTypeForm.publicWelfareFlag) : undefined, - } - console.log(this.data.formType); - if (this.data.formType == 'edit') { - parm.resiId = this.data.resiId - try { - const res = await api.resiEdit(parm) - if (res.code === 0) { - wx.showToast({ - title: '编辑成功', - duration: 3000, - success: function () { - setTimeout(() => { - wx.navigateBack({ - delta: 1 - }) - }, 3000) - } - }) - } - } catch (err) { - console.log(err); - } - } else { - try { - const res = await api.resiAdd(parm) - if (res.code === 0) { - wx.showToast({ - title: '新增成功', - duration: 3000, - success: function () { - setTimeout(() => { - wx.navigateBack({ - delta: 1 - }) - }, 3000) - } - }) - } - } catch (err) { - console.log(err); + }, 3000) } + }) } - }, - back() { - //返回上一级,关闭当前页面 - wx.navigateBack({ - delta: 1 - }) - }, - handelJump() { - wx.navigateTo({ - url: '/subpages/addhouse/pages/addhouse/addhouse', - }) - }, - closeDynamicForms() { - this.setData({ - isShowDynamicForms: false - }) - }, - okDynamicForms(e) { - console.log(e) - let residentTypeForm = this.data.residentTypeForm - residentTypeForm[this.data.currentFormController] = e.detail - this.setData({ - residentTypeForm - }) - }, - setDynamicForm(data) { - let residentTypeFormCell = data.filter(item => item.isForm) - let values = residentTypeFormCell.map(item => item.value) - // 保障房人员 - if (values.includes('ensureHouseFlag')) { - this.getHouseTypes() - } - // 失业人员 - if (values.includes('unemployedFlag')) { - // 失业原因 - this.getDictData('unemployment_reason', 'unemploymentReason') - // 愿望 - this.getDictData('career_goals', 'employmentWish') - } - // 志愿者 - if (values.includes('volunteerFlag')) { - // 志愿者类别 - this.getDictData('VOLUNTEER_CATEGORY', 'volunteerCategory') - } - // 特扶 - if (values.includes('specialSupportFlag')) { - //获取伤残类别字典 - this.getDictData('disability_category_code', 'childDisabilityCategoryCode') - // 获取伤残等级字典 - this.getDictData('disability_level', 'childDisabilityLevel') + } catch (err) { + console.log(err); + } + } else { + try { + const res = await api.resiAdd(parm) + if (res.code === 0) { + wx.showToast({ + title: '新增成功', + duration: 3000, + success: function () { + setTimeout(() => { + wx.navigateBack({ + delta: 1 + }) + }, 3000) + } + }) } + } catch (err) { + console.log(err); + } + } + }, + back() { + //返回上一级,关闭当前页面 + wx.navigateBack({ + delta: 1 + }) + }, + handelJump() { + wx.navigateTo({ + url: '/subpages/addhouse/pages/addhouse/addhouse', + }) + }, + closeDynamicForms() { + this.setData({ + isShowDynamicForms: false + }) + }, + okDynamicForms(e) { + console.log(e) + let residentTypeForm = this.data.residentTypeForm + residentTypeForm[this.data.currentFormController] = e.detail + this.setData({ + residentTypeForm + }) + }, + setDynamicForm(data) { + let residentTypeFormCell = data.filter(item => item.isForm) + let values = residentTypeFormCell.map(item => item.value) + // 保障房人员 + if (values.includes('ensureHouseFlag')) { + this.getHouseTypes() + } + // 失业人员 + if (values.includes('unemployedFlag')) { + // 失业原因 + this.getDictData('unemployment_reason', 'unemploymentReason') + // 愿望 + this.getDictData('career_goals', 'employmentWish') + } + // 志愿者 + if (values.includes('volunteerFlag')) { + // 志愿者类别 + this.getDictData('VOLUNTEER_CATEGORY', 'volunteerCategory') + } + // 特扶 + if (values.includes('specialSupportFlag')) { + //获取伤残类别字典 + this.getDictData('disability_category_code', 'childDisabilityCategoryCode') + // 获取伤残等级字典 + this.getDictData('disability_level', 'childDisabilityLevel') + } - // 特殊人群 - if (values.includes('specialCrowdFlag')) { - //人群类别 - this.getDictData('special_resident_category', 'specialCategoryCode') - } - // 公益岗人员 - if (values.includes('specialCrowdFlag')) { - //岗位类型 - this.getDictData('public_welfare_post_type', 'postTypes') - } + // 特殊人群 + if (values.includes('specialCrowdFlag')) { + //人群类别 + this.getDictData('special_resident_category', 'specialCategoryCode') + } + // 公益岗人员 + if (values.includes('specialCrowdFlag')) { + //岗位类型 + this.getDictData('public_welfare_post_type', 'postTypes') + } - this.setData({residentTypeFormCell}) - // residentTypeForm - }, - async openDynamicForms(e) { - var data = {} - let formtype = e.currentTarget.dataset.formtype - let id = this.data.resiId - if (formtype === 'ensureHouseFlag') { - let res = await residentEnsureHouse(id) - data = res.data - } - if (formtype === 'unemployedFlag') { - let res = await residentUnemployed(id) - data = res.data - } - if (formtype === 'veteranFlag') { - let res = await getVeteranDetailById(id) - data = res.data - } - if (formtype === 'unitedFrontFlag') { - let res = await residentUnitedFront(id) - data = res.data - } - if (formtype === 'volunteerFlag') { - let res = await getVolunteerDetailById(id) - data = res.data - } - if (formtype === 'specialSupportFlag') { - let res = await specialSupport(id) - data = res.data - } - if (formtype === 'tenantFlag') { - let res = await residentTenant(id) - data = res.data - } - if (formtype === 'specialCrowdFlag') { - let res = await residentSpecial(id) - data = res.data - } - if (formtype === 'oldPeopleFlag') { - let res = await getOldPeopleDetailById(id) - data = res.data - } - if (formtype === 'publicWelfareFlag') { - let res = await publicWelfarePost(id) - data = res.data - } - let residentTypeForm = this.data.residentTypeForm - residentTypeForm[formtype].forEach(item => { - if(item.key === 'userId') { - item.value = id + this.setData({ residentTypeFormCell }) + // residentTypeForm + }, + async openDynamicForms(e) { + var data = {} + let formtype = e.currentTarget.dataset.formtype + let id = this.data.resiId + if (formtype === 'ensureHouseFlag') { + let res = await residentEnsureHouse(id) + data = res.data + } + if (formtype === 'unemployedFlag') { + let res = await residentUnemployed(id) + data = res.data + } + if (formtype === 'veteranFlag') { + let res = await getVeteranDetailById(id) + data = res.data + } + if (formtype === 'unitedFrontFlag') { + let res = await residentUnitedFront(id) + data = res.data + } + if (formtype === 'volunteerFlag') { + let res = await getVolunteerDetailById(id) + data = res.data + } + if (formtype === 'specialSupportFlag') { + let res = await specialSupport(id) + data = res.data + } + if (formtype === 'tenantFlag') { + let res = await residentTenant(id) + data = res.data + } + if (formtype === 'specialCrowdFlag') { + let res = await residentSpecial(id) + data = res.data + } + if (formtype === 'oldPeopleFlag') { + let res = await getOldPeopleDetailById(id) + data = res.data + } + if (formtype === 'publicWelfareFlag') { + let res = await publicWelfarePost(id) + data = res.data + } + let residentTypeForm = this.data.residentTypeForm + residentTypeForm[formtype].forEach(item => { + if (item.key === 'userId') { + item.value = id + } + for (let i in data) { + if (item.key === i) { + item.value = data[item.key] + if (data[item.key]) { + console.log(data[item.key], 'data[item.key]') + if (item.type === 'date') { + item.value = data[item.key].split(' ')[0] + } + if (item.type === 'checkbox') { + let arr = [] + let value = data[item.key].split(',') + value.forEach(item2 => { + arr.push(...item.options.filter(item3 => item3.value === item2)) + }) + item.selected = arr.map(item => item.label).join(',') } - for (let i in data) { - if (item.key === i) { - item.value = data[item.key] - if (data[item.key]) { - console.log(data[item.key], 'data[item.key]') - if (item.type === 'date') { - item.value = data[item.key].split(' ')[0] - } - if (item.type === 'checkbox') { - let arr = [] - let value = data[item.key].split(',') - value.forEach(item2 => { - arr.push(...item.options.filter(item3 => item3.value === item2)) - }) - item.selected = arr.map(item => item.label).join(',') - } - if (item.type === 'select') { - let options = item.options.map(item2 => item2[item.valueKey]) - item.valueIndex = options.indexOf(item.value) - if (item.masterControl) { - residentTypeForm[formtype].forEach(item3 => { - if (item3.showFlag) { - if (item3.showFlag === item.value) { - item3.hide = false - } else { - item3.hide = true - } - } - }) - } - } else { - item.valueIndex = -1 - } + if (item.type === 'select') { + let options = item.options.map(item2 => item2[item.valueKey]) + item.valueIndex = options.indexOf(item.value) + if (item.masterControl) { + residentTypeForm[formtype].forEach(item3 => { + if (item3.showFlag) { + if (item3.showFlag === item.value) { + item3.hide = false + } else { + item3.hide = true } - } + } + }) + } + } else { + item.valueIndex = -1 } - }) - this.setData({ - residentTypeForm, - [formtype + 'Open']: true, - dynamicFormsTitle: '填写' + e.currentTarget.dataset.title, - currentFormController: formtype, - formController: this.data.residentTypeForm[e.currentTarget.dataset.formtype], - isShowDynamicForms: true - }) - console.log(this.data) - }, - // 获取住房性质 - getHouseTypes() { - getHouseType({formCode: "resi_base_info"}).then(res => { - console.log(res.data) - this.setPickerOptions('housingNature', res.data) - }) - }, + } + } + } + }) + this.setData({ + residentTypeForm, + [formtype + 'Open']: true, + dynamicFormsTitle: '填写' + e.currentTarget.dataset.title, + currentFormController: formtype, + formController: this.data.residentTypeForm[e.currentTarget.dataset.formtype], + isShowDynamicForms: true + }) + console.log(this.data) + }, + // 获取住房性质 + getHouseTypes() { + getHouseType({ formCode: "resi_base_info" }).then(res => { + console.log(res.data) + this.setPickerOptions('housingNature', res.data) + }) + }, - getDictData(dictType, formName) { - dictlist({'dictType': dictType}).then(res => { - this.setPickerOptions(formName, res.data) - }); - }, - setPickerOptions(key, options) { - let residentTypeForm = this.data.residentTypeForm - for (let item in residentTypeForm) { - residentTypeForm[item].forEach(item2 => { - if (item2.key === key) { - item2.options = options - } - }) + getDictData(dictType, formName) { + dictlist({ 'dictType': dictType }).then(res => { + this.setPickerOptions(formName, res.data) + }); + }, + setPickerOptions(key, options) { + let residentTypeForm = this.data.residentTypeForm + for (let item in residentTypeForm) { + residentTypeForm[item].forEach(item2 => { + if (item2.key === key) { + item2.options = options } - this.setData({residentTypeForm}) - }, - getValue(arry) { - let obj = {} - arry.forEach(item => { - if (item.type === 'date' && item.value != '') { - item.value = item.value + ' 00:00:00' - } - obj[item.key] = item.value + }) + } + this.setData({ residentTypeForm }) + }, + getValue(arry) { + let obj = {} + arry.forEach(item => { + if (item.type === 'date' && item.value != '') { + item.value = item.value + ' 00:00:00' + } + obj[item.key] = item.value + }) + return obj + }, + hideData(e) { + let key = e.currentTarget.dataset.key + let form = this.data.form + form[key] = this.data.hideData[key] + if(key === 'idNum') { + this.setData({ + isShowIdNum: !this.data.isShowIdNum + }) + } + if(key === 'mobile') { + this.setData({ + isShowIdTel: !this.data.isShowIdTel + }) + } + this.setData({ + form + }) + }, + showData(e) { + let key = e.currentTarget.dataset.key + let form = this.data.form; + let hideData = this.data.hideData + hideData[key] = form[key] + this.setData({ + hideData + }) + + + api.getResiUserInfo(this.data.resiId).then(res => { + if(key === 'idNum') { + this.setData({ + isShowIdNum: !this.data.isShowIdNum }) - return obj - }, + } + if(key === 'mobile') { + this.setData({ + isShowIdTel: !this.data.isShowIdTel + }) + } + form[key] = res.data[key] + this.setData({ + form + }) + console.log(res.data[key], this.data.form[key]) + }) + } }) \ No newline at end of file diff --git a/subpages/addResi/pages/addResi/addResi.json b/subpages/addResi/pages/addResi/addResi.json index 387fc74..ca1a298 100644 --- a/subpages/addResi/pages/addResi/addResi.json +++ b/subpages/addResi/pages/addResi/addResi.json @@ -1,7 +1,8 @@ { "usingComponents": { "wux-select": "../../../../components/dist/select", - "DynamicForms": "../../../../components/DynamicForms/DynamicForms" + "DynamicForms": "../../../../components/DynamicForms/DynamicForms", + "van-icon": "@vant/weapp/icon/index" }, "navigationStyle": "custom" } \ No newline at end of file diff --git a/subpages/addResi/pages/addResi/addResi.wxml b/subpages/addResi/pages/addResi/addResi.wxml index 83a07cb..2e20d0b 100644 --- a/subpages/addResi/pages/addResi/addResi.wxml +++ b/subpages/addResi/pages/addResi/addResi.wxml @@ -1,279 +1,271 @@ - - - - {{formType == 'edit' ? '修改人口信息' : '新增人口信息'}} - - - 填写居民信息 - * 号为必填项 - + + + + {{formType == 'edit' ? '修改人口信息' : '新增人口信息'}} + + + 填写居民信息 + * 号为必填项 + - - - 基本信息 - - - - * - 所在网格 - - - - - {{form.gridName ? form.gridName : '请选择'}} - - - - - - - - * - 所在小区 - - - - - {{villageName ? villageName : '请选择'}} - - - - - - - - * - 所在楼栋 - - - - - {{buildingName ? buildingName : '请选择'}} - - - - - - - - * - 所在单元 - - - - - {{unitName ? unitName : '请选择'}} - - - - - - - - - * - 所在房屋 - - - - - {{houseName ? houseName : '请选择'}} - - - - - - 选项中如无该房屋,请先 - 新增房屋 - - - - - * - 姓名 - - - - - - - - * - 性别 - - - - - {{genderName ? genderName : '请选择'}} - - - - - - - - * - 出生日期 - - - - - {{form.birthday ? form.birthday : '请选择'}} - - - - - - - - * - 证件号 - - - - - - - - * - 联系电话 - - - - - + + + 基本信息 - - - 详细信息 - - - - 户籍地 - - - - - - - - 现居地 - - - - - - - - 民族 - - - - - {{form.nation ? nation[form.nation].label : '请选择'}} - - - - - - - - 籍贯 - - - - - - - - 文化程度 - - - - - {{form.eduInfoDto.cultureLevel ? education[form.eduInfoDto.cultureLevel].label : '请选择'}} - - - - - - - - 婚姻状况 - - - - - {{marriageName ? marriageName : '请选择'}} - - - - - - - - 宗教信仰 - - - - - + + + * + 所在网格 + + + + + {{form.gridName ? form.gridName : '请选择'}} + + + + + + + + * + 所在小区 + + + + + {{villageName ? villageName : '请选择'}} + + + + + + + + * + 所在楼栋 + + + + + {{buildingName ? buildingName : '请选择'}} + + + + - - - 居民类别 + + + * + 所在单元 + + + + + {{unitName ? unitName : '请选择'}} + + + + + + + + + * + 所在房屋 - - - 居民类别 - - - - {{residentCategorySty ? residentCategorySty : '请选择'}} - - + + + + {{houseName ? houseName : '请选择'}} + + - - - {{item.title}} - - - - + + 选项中如无该房屋,请先 + 新增房屋 + + + + + * + 姓名 + + + + + + + + * + 性别 + + + + + {{genderName ? genderName : '请选择'}} + + + + + + + + * + 出生日期 + + + + + {{form.birthday ? form.birthday : '请选择'}} + + + + + + + + * + 证件号 + + + + + + + + + + + + + + + + + * + 联系电话 + + + + + + + + + + + + + + + + + 详细信息 + + + + 户籍地 + + + + + + + + 现居地 + + + + + + + + 民族 + + + + + {{form.nation ? nation[form.nation].label : '请选择'}} + + + + + + + + 籍贯 + + + + + + + + 文化程度 + + + + + {{form.eduInfoDto.cultureLevel ? education[form.eduInfoDto.cultureLevel].label : '请选择'}} + + + + + + + + 婚姻状况 + + + + + {{marriageName ? marriageName : '请选择'}} + + + + + + + + 宗教信仰 + + + + + + + + + 居民类别 + + + + 居民类别 + + + + {{residentCategorySty ? residentCategorySty : '请选择'}} + + + + + + {{item.title}} + + + + - 提交 + + 提交 - + - \ No newline at end of file + \ No newline at end of file diff --git a/subpages/statistics/images/man.png b/subpages/statistics/images/man.png new file mode 100644 index 0000000..20a0d26 Binary files /dev/null and b/subpages/statistics/images/man.png differ diff --git a/subpages/statistics/images/woman.png b/subpages/statistics/images/woman.png new file mode 100644 index 0000000..6bb1edf Binary files /dev/null and b/subpages/statistics/images/woman.png differ diff --git a/subpages/statistics/pages/residentPortrait2/residentPortrait.js b/subpages/statistics/pages/residentPortrait2/residentPortrait.js new file mode 100644 index 0000000..4494d16 --- /dev/null +++ b/subpages/statistics/pages/residentPortrait2/residentPortrait.js @@ -0,0 +1,71 @@ +import { + getFamilyRelationshipList, getPersonalFeature, + getPersonalFile, potentialSatisfactionForResident, queryResidentFollowRecord +} from "../../../../utils/statisticsApi"; + +Page({ + data: { + id: 0, + userInfo: {}, + relationship: {}, + unSolvedNum: 0, + unFinishNum: 0, + noServiceNum: 0, + event12345Num: 0, + provinceSatisfactionNum: 0, + selfInspectNum: 0, + logList: [], + tags: {} + }, + + onLoad(options) { + this.setData({ + id: options.id + }) + this.getUser() + this.getNum() + this.getlog() + }, + getUser() { + getPersonalFile({resid: this.data.id}).then(({data}) => { + this.setData({ + userInfo: data + }) + }) + getFamilyRelationshipList({resid: this.data.id, type: 0}).then(({data}) => { + this.setData({ + relationship: data + }) + }) + getPersonalFeature({resid: this.data.id}).then(({data}) => { + this.setData({ + tags: data + }) + }) + }, + getNum() { + let params = { + resiId: this.data.id, + }; + potentialSatisfactionForResident(params).then(({data}) => { + this.setData({ + unSolvedNum: data.unSolvedNum, + unFinishNum: data.unFinishNum, + noServiceNum: data.noServiceNum, + event12345Num: data.event12345Num, + provinceSatisfactionNum: data.provinceSatisfactionNum, + selfInspectNum: data.selfInspectNum + }) + }); + }, + getlog() { + let params = { + resiId: this.data.id, + }; + queryResidentFollowRecord(params).then(({data}) => { + this.setData({ + logList: data + }) + }) + } +}) \ No newline at end of file diff --git a/subpages/statistics/pages/residentPortrait2/residentPortrait.json b/subpages/statistics/pages/residentPortrait2/residentPortrait.json new file mode 100644 index 0000000..40417ee --- /dev/null +++ b/subpages/statistics/pages/residentPortrait2/residentPortrait.json @@ -0,0 +1,4 @@ +{ + "navigationBarTitleText": "居民画像", + "usingComponents": {} +} \ No newline at end of file diff --git a/subpages/statistics/pages/residentPortrait2/residentPortrait.wxml b/subpages/statistics/pages/residentPortrait2/residentPortrait.wxml new file mode 100644 index 0000000..d02cfea --- /dev/null +++ b/subpages/statistics/pages/residentPortrait2/residentPortrait.wxml @@ -0,0 +1,164 @@ + + + 居民档案 + + + + + 居住地址: + + + 四季景园1号楼1单元101 + + + + + 所属网格: + + + 第三网格 + + + + + 入户状况: + + + 入户一致 + + + + + 居住类型: + + + 与子女同住 + + + + + 家庭预警: + + + 满意度风险家庭 + + + + + + + 姓名 + 与本人关系 + 性别 + 年龄 + + + {{item.name}} + {{item.houseHolderRel ? item.houseHolderRel : ''}} + {{item.gender == 2?'男':item.gender == 1?'女':item.gender === '0'?'未知':''}} + {{item.age}} + + + + + + + + + 居民画像 + + + + + + + + + {{tags.age}}岁 + + + {{tags.category1}} + + + {{tags.category2}} + + + {{tags.monthIncomeLevel}} + + + {{tags.cultureLevel}} + + + {{tags.marriage}} + + + {{tags.gender == 2?'男':tags.gender == 1?'女':tags.gender === '0'?'未知':''}} + + + + + + 历史及潜在不满意事项 + + + + 12345投诉 + + {{event12345Num}} + + + + 省满意度调查 + + {{provinceSatisfactionNum}} + + + + 社区满意度自查 + + {{selfInspectNum}} + + + + 事件未解决 + 的次数 + + {{unSolvedNum}} + + + + 需求未满足 + 的次数 + + {{unFinishNum}} + + + + 应享未享服务 + 的次数 + + {{noServiceNum}} + + + + + 回访记录 + + + + + {{item.followUpWay}} + {{item.followPersonName}}({{item.roleNames}}) + + {{item.followTime}} + + + + + + \ No newline at end of file diff --git a/subpages/statistics/pages/residentPortrait2/residentPortrait.wxss b/subpages/statistics/pages/residentPortrait2/residentPortrait.wxss new file mode 100644 index 0000000..a24d1db --- /dev/null +++ b/subpages/statistics/pages/residentPortrait2/residentPortrait.wxss @@ -0,0 +1,299 @@ + +.resident-container { + padding: 20rpx; +} + +page { + background-color: #f7f7f7; +} + +.card { + background: #fff; + border-radius: 20rpx; + padding: 30rpx; + margin-top: 20rpx; +} + +.card .title { + font-size: 34rpx; + font-weight: bold; + color: #333333; + display: flex; + align-items: center; + margin-left: -30rpx; + margin-bottom: 39rpx; + position: relative; +} + +.card .title:before { + content: ''; + display: block; + width: 10rpx; + height: 28rpx; + background: #3A80E7; + border-radius: 4rpx; + margin-right: 20rpx; +} + +.user-info .name { + font-size: 32rpx; + font-weight: bold; + color: #333333; + margin-bottom: 30rpx; +} + +.user-info .address { + font-size: 28rpx; + font-weight: 400; + color: #666666; + padding-bottom: 30rpx; +} + +.table .tr { + display: flex; + padding: 0 20rpx; +} + +.table .tr .th { + font-size: 32rpx; + font-weight: bold; + color: #333333; +} +.table .tr .td { + font-size: 30rpx; + font-weight: 500; + color: #666666; +} +.table .tr .th, +.table .tr .td { + flex: 1; + position: relative; + height: 100rpx; + line-height: 100rpx; +} +.table .tr:nth-of-type(2n) { + background: rgba(58, 128, 231, 0.08); +} + +.table-right-icon { + width: 24rpx; + height: 24rpx; + position: absolute; + right: 0; + top: calc(50% - 12rpx); +} + + + +.portrait { + position: relative; + width: 633rpx; + height: 542rpx; + font-size: 30rpx; + font-weight: bold; + color: #3A80E7; + line-height: 36rpx; +} + +.portrait .tag { + position: absolute; + background: #f4f8fe; + padding: 30rpx; + width: 129rpx; + height: 129rpx; + border-radius: 50%; + display: flex; + align-items: center; + justify-content: center; + box-sizing: border-box; + text-align: center; +} + +.portrait .tag:after { + content: ""; + display: block; + width: calc(100% - 28rpx); + height: calc(100% - 28rpx); + position: absolute; + left: 14rpx; + top: 14rpx; + background: #d3e3fa; + border-radius: 50%; +} +.portrait .tag .text { + position: relative; + z-index: 2; +} +.portrait .tag:nth-of-type(1) { + padding: 38rpx; + width: 163rpx; + height: 163rpx; + left: 227rpx; + top: 0; +} +.portrait .tag:nth-of-type(2) { + padding: 24rpx; + width: 121rpx; + height: 121rpx; + right: 58rpx; + top: 101rpx; +} +.portrait .tag:nth-of-type(3) { + width: 145rpx; + height: 145rpx; + right: 0rpx; + top: 249rpx; +} +.portrait .tag:nth-of-type(4) { + width: 163rpx; + height: 163rpx; + right: 100rpx; + bottom: 0; +} +.portrait .tag:nth-of-type(5) { + left: 99rpx; + bottom: 10rpx; +} +.portrait .tag:nth-of-type(6) { + left: 0rpx; + top: 251rpx; +} +.portrait .tag:nth-of-type(7) { + left: 53rpx; + top: 101rpx; +} + +.bg { + width: 238rpx; + height: 238rpx; + position: absolute; + left: calc(50% - 119rpx); + top: calc(50% - 100rpx); +} +.bg image { + width: 100%; + height: 100%; +} + +.num-list { + display: flex; + width: 100%; + justify-content: space-between; + position: relative; + flex-wrap: wrap; +} + +.num-list .num-item { + flex: 0 0 33.333333%; + position: relative; + margin-bottom: 20rpx; +} + +.num-list .num-item:after { + content: ''; + display: block; + position: absolute; + right: 25rpx; + top: calc(50% - 45rpx); + width: 1rpx; + height: 90rpx; + background: #C1C1C1; + opacity: 0.66; +} + +.num-list .num-item:nth-of-type(3n):after { + display: none; +} + +.num-list .num-item:last-child:after { + display: none; +} + +.num-list .num-item .txt { + font-size: 28rpx; + font-weight: 500; + color: #999999; + margin-bottom: 10rpx; +} + +.num-list .num-item .num { + font-size: 42rpx; + font-weight: bold; + color: #333333; +} + +.tag { + display: inline-block; + line-height: 40rpx; + height: 40rpx; + border-radius: 20rpx; + font-size: 26rpx; + font-weight: 500; + padding: 0 20rpx; + margin-right: 30rpx; +} + +.blue { + background: rgba(79, 148, 255, 0.14); + color: #4F94FF; +} + +.orange { + background: rgba(255, 120, 60, 0.14); + color: #FF783C; +} + +.green { + background: rgba(4, 184, 173, 0.14); + color: #04B8AD; +} + +.red { + color: #FA1919; + background: rgba(255, 48, 27, 0.14); +} + +.log-item { + border-bottom: 1px solid #EAEAEA; + padding: 30rpx 0; +} + +.log-item .user { + display: flex; + align-items: center; +} + +.log-item .tag { + margin-right: 17px; +} + +.log-item .icon { + width: 48rpx; + height: 48rpx; +} + +.log-item .name { + font-size: 32rpx; + font-weight: 500; + color: #333333; +} + +.log-item .date { + font-size: 28rpx; + font-weight: 500; + color: #C1C1C1; + margin-top: 17rpx; +} + +.log-item { + display: flex; + justify-content: space-between; + align-items: center; +} +.img { + width: 128rpx; + height: 128rpx +} +.user-info { + display: flex; +} \ No newline at end of file diff --git a/utils/api.js b/utils/api.js index d2bdb7e..544cb35 100644 --- a/utils/api.js +++ b/utils/api.js @@ -44,7 +44,10 @@ module.exports = { clockRecords, clearOneMessage, getPubKey, - changePassword + changePassword, + getCheckLogList, + getLastLog, + getResiUserInfo } // 获取公钥 @@ -205,7 +208,7 @@ function getAgencygridtree () { } // 上报事件 function addEvent (parm) { - return fly.post(`governance/icEvent/add-event-resi`,parm) + return fly.post(`governance/icEventOld/add-event-resi`,parm) } // 上报诉求中选择居民 function getResidentBaseInfoPage (parm) { @@ -227,3 +230,17 @@ function getFollowUpDetail(id) { function clockRecords(parm) { return fly.post(`actual/base/clockRecords/save`,parm) } +// 打卡记录 +function getCheckLogList(parm) { + return fly.get(`actual/base/clockRecords/logList`,parm) +} +// 打卡记录 +function getLastLog(parm) { + return fly.get(`actual/base/clockRecords/lastLog`,parm) +} +// 获取居民敏感信息 +function getResiUserInfo(id) { + return fly.post(`actual/base/residentBaseInfo/getResiUserInfo/${id}`) +} + + diff --git a/utils/util.js b/utils/util.js index bad397c..bc5a11f 100644 --- a/utils/util.js +++ b/utils/util.js @@ -18,7 +18,14 @@ const formatTime = date => { let newContent= html.replace(/\