| | |
| | | <u-icon name="arrow-right" size="20"></u-icon> |
| | | </view> |
| | | |
| | | <u-form labelPosition="left" :model="info" ref="form" labelWidth="90" :labelStyle="{fontSize:'28rpx'}"> |
| | | <view class="content bgc-ff"> |
| | | |
| | | <view class="content bgc-ff"> |
| | | <u-form labelPosition="left" :model="info" :rules="rules" ref="form" labelWidth="90" |
| | | :labelStyle="{fontSize:'28rpx'}"> |
| | | |
| | | |
| | | <u-form-item label="地址" prop="address" :borderBottom="false" v-if="!isScan"> |
| | | <u-form-item label="地址" prop="address" required :borderBottom="false" v-if="!isScan"> |
| | | <view class="address-row flex"> |
| | | <view class="address-content f-28" v-if="info.address"> |
| | | {{info.address}} |
| | | </view> |
| | | <view class="address-content f-28 c-99" v-if="!info.address"> |
| | | <view class="address-content f-28 " style="color:#c0c4cc;" v-if="!info.address"> |
| | | 请选择地址 |
| | | </view> |
| | | <view class="location-btn c-main f-24" @click="getLocation()"> |
| | | 获取地址 |
| | | </view> |
| | | </view> |
| | | <!-- <u-input v-model="info.address" border="none" placeholderClass="f-28 c-99" |
| | | inputAlign="right" disabled disabledColor="#fff"> |
| | | <template slot="suffix"> |
| | | <button class="location-btn c-main f-24" @click="getLocation()">获取地址</button> |
| | | </template> |
| | | </u-input> --> |
| | | </u-form-item> |
| | | |
| | | <u-form-item label="地址" borderBottom required v-if="isScan"> |
| | |
| | | placeholderClass="f-28 c-99" inputAlign="right"></u-textarea> |
| | | </u-form-item> |
| | | |
| | | |
| | | <!-- <u-form-item label="业主姓名" borderBottom required v-if="isScan"> |
| | | <u-input v-model="houseHoldInfo.name" border="none" disabled disabledColor="#fff" |
| | | placeholderClass="f-28 c-99" inputAlign="right"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="业主电话" borderBottom required v-if="isScan"> |
| | | <u-input v-model="houseHoldInfo.phoneNumber" border="none" disabled disabledColor="#fff" |
| | | placeholderClass="f-28 c-99" inputAlign="right"></u-input> |
| | | </u-form-item> --> |
| | | |
| | | <u-form-item label="问卷调查" borderBottom required prop="pubContent"> |
| | | <u-form-item label="宣传内容" borderBottom prop="pubContent"> |
| | | <u-textarea type="textarea" v-model="info.pubContent" border="none" placeholderClass="f-28 c-99" |
| | | inputAlign="right" placeholder="请输入问卷调查"> |
| | | inputAlign="right" placeholder="请输入宣传内容"> |
| | | </u-textarea> |
| | | </u-form-item> |
| | | <!-- <u-form-item label="走访时间" prop="workTime" :borderBottom="false" required @click="showSelectDate = true"> |
| | | <u-input v-model="info.workTime" disabled disabledColor="#ffffff" border="none" placeholder="请选择" |
| | | placeholderClass="f-28 c-99" inputAlign="right"></u-input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> --> |
| | | <!-- <u-form-item label="房屋" prop="houseCode" :borderBottom="false" required |
| | | @click="isShowScStatus = true"> |
| | | <u-input v-model="info.scStatus" disabled disabledColor="#fff" border="none" placeholder="请选择" |
| | | placeholderClass="f-28 c-99" inputAlign="right"></u-input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | | </u-form-item> --> |
| | | </u-form> |
| | | </view> |
| | | <view class="upload bgc-ff"> |
| | | <view class="f-28">宣传佐证照片</view> |
| | | <view class="mt-20"> |
| | | <u-upload :fileList="form.images" :previewFullImage="uploadConfig.previewFullImage" |
| | | :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple" :maxCount="uploadConfig.maxCount" |
| | | :capture="uploadConfig.capture" @afterRead="afterReadImg" @delete="deletePic"> |
| | | <view class="upload-item upload-icon flex_base"> |
| | | <u-icon name="/static/icon/upload.png" width="60rpx" height="60rpx"></u-icon> |
| | | </view> |
| | | </u-upload> |
| | | </view> |
| | | </view> |
| | | |
| | | <view class="info mt-20 bgc-ff" v-if="isScan"> |
| | | <caption-row title="房屋信息" /> |
| | | <view class="info-row flex j-c-s-b a-i-c f-28"> |
| | | <text>业主姓名</text> |
| | | <text>{{houseHoldInfo.name}}</text> |
| | | <!-- <u-form-item label="是否下载国家反诈app" labelWidth="120" prop="isFzApp"> |
| | | <u-radio-group v-model="info.isFzApp"> |
| | | <u-radio :customStyle="{marginBottom: '8px'}" v-for="(item, index) in statusList" :key="index" |
| | | :label="item.name" :name="item.id"> |
| | | </u-radio> |
| | | </u-radio-group> |
| | | |
| | | </u-form-item> |
| | | <u-form-item label="是否打开预警功能" labelWidth="120" prop="isOpenAlarm"> |
| | | <u-radio-group v-model="info.isOpenAlarm"> |
| | | <u-radio :customStyle="{marginBottom: '8px'}" v-for="(item, index) in statusList" :key="index" |
| | | :label="item.name" :name="item.id"> |
| | | </u-radio> |
| | | </u-radio-group> |
| | | </u-form-item> --> |
| | | </view> |
| | | <view class="info-row flex j-c-s-b a-i-c f-28"> |
| | | <text>业主手机号</text> |
| | | <text>{{houseHoldInfo.phoneNumber}}</text> |
| | | <view class="upload bgc-ff"> |
| | | <view class="f-28">宣传佐证照片</view> |
| | | <view class="mt-20"> |
| | | <u-upload :fileList="form.images" :previewFullImage="uploadConfig.previewFullImage" |
| | | :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple" |
| | | :maxCount="uploadConfig.maxCount" :capture="uploadConfig.capture" @afterRead="afterReadImg" |
| | | @delete="deletePic"> |
| | | <view class="upload-item upload-icon flex_base"> |
| | | <u-icon name="/static/icon/upload.png" width="60rpx" height="60rpx"></u-icon> |
| | | </view> |
| | | </u-upload> |
| | | </view> |
| | | </view> |
| | | <view class="info-row flex j-c-s-b a-i-c f-28" @click="navToHouse"> |
| | | <text>查看更多</text> |
| | | <u-icon name="arrow-right"></u-icon> |
| | | |
| | | <view class="info mt-20 bgc-ff" v-if="isScan"> |
| | | <caption-row title="房屋信息" /> |
| | | <view class="info-row flex j-c-s-b a-i-c f-28"> |
| | | <text>业主姓名</text> |
| | | <text>{{houseHoldInfo.name}}</text> |
| | | </view> |
| | | <view class="info-row flex j-c-s-b a-i-c f-28"> |
| | | <text>业主手机号</text> |
| | | <text>{{houseHoldInfo.phoneNumber}}</text> |
| | | </view> |
| | | <view class="info-row flex j-c-s-b a-i-c f-28" @click="navToHouse"> |
| | | <text>查看更多</text> |
| | | <u-icon name="arrow-right"></u-icon> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | |
| | | <view class="info mt-20 bgc-ff" v-if="false"> |
| | | <caption-row title="宣防对象" /> |
| | | <view v-for="(item, index) in info.backblastPubPersonEntityList" :key="index"> |
| | | <view class="flex a-i-c j-c-s-b" style="padding:20rpx;"> |
| | | <view class="flex j-c-s-b a-i-c"> |
| | | <view class="title fw" style="text-align:center; mr-20">人员信息-#{{ index*1 + 1 }}</view> |
| | | <ocr-navigator @onSuccess="recognizePersonSuccess($event,index)" certificateType="idCard" |
| | | :opposite="false"> |
| | | <view class="recognize-btn flex a-i-c"> |
| | | <u-icon name="scan" color="#fff" size="24"></u-icon> |
| | | <text class="f-26 c-ff" style="margin-left: 10rpx;">身份证信息识别</text> |
| | | </view> |
| | | </ocr-navigator> |
| | | </view> |
| | | |
| | | |
| | | <view> |
| | | <u-icon name="trash-fill" color="#ff0000" size="20" @click="delPerson(index)" /> |
| | | </view> |
| | | </view> |
| | | |
| | | <u-form-item label="姓名" borderBottom required> |
| | | <u-input v-model="info.backblastPubPersonEntityList[index].name" border="none" |
| | | placeholderClass="f-28 c-99" inputAlign="right" placeholder="请输入姓名"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="手机号" borderBottom required> |
| | | <u-input v-model="info.backblastPubPersonEntityList[index].telephone" border="none" |
| | | placeholderClass="f-28 c-99" inputAlign="right" placeholder="请输入手机号"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="身份证号" borderBottom required> |
| | | <u-input v-model="info.backblastPubPersonEntityList[index].idCard" type="idCard" border="none" |
| | | placeholderClass="f-28 c-99" inputAlign="right" placeholder="请输入身份证号"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="职业" borderBottom> |
| | | <u-input v-model="info.backblastPubPersonEntityList[index].occupation" border="none" |
| | | placeholderClass="f-28 c-99" inputAlign="right" placeholder="请输入职业"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="居住地" borderBottom> |
| | | <u-input v-model="info.backblastPubPersonEntityList[index].address" border="none" |
| | | placeholderClass="f-28 c-99" inputAlign="right" placeholder="请输入居住地"></u-input> |
| | | </u-form-item> |
| | | |
| | | |
| | | |
| | | </view> |
| | | <view class="add-person" style="padding:20rpx 30rpx;"> |
| | | <u-button type="success" plain @click="addPerson">再加一人</u-button> |
| | | </view> |
| | | </view> |
| | | |
| | | </u-form> |
| | | |
| | | |
| | | <view class="blank"></view> |
| | | |
| | |
| | | } from "@/api/doorplateAddress/doorplateAddress"; |
| | | |
| | | import { |
| | | addCounterfraud |
| | | addCounterfraud, |
| | | getCounterfraudDetail |
| | | } from "@/api/counterfraud/counterfraud.js" |
| | | |
| | | import captionRow from "@/components/caption/caption.vue" |
| | |
| | | houseCode: "", |
| | | lng: "", |
| | | lat: "", |
| | | pubContent: "" |
| | | pubContent: "", |
| | | isFzApp: "", |
| | | isOpenAlarm: "", |
| | | backblastPubPersonEntityList: [] |
| | | }, |
| | | rules: { |
| | | address: [{ |
| | | type: 'number', |
| | | required: true, |
| | | message: '请输入地址', |
| | | trigger: ['blur', 'change'] |
| | | }] |
| | | }, |
| | | // rules: { |
| | | // address: [{ |
| | | // type: 'number', |
| | | // required: true, |
| | | // message: '请输入地址', |
| | | // trigger: ['blur', 'change'] |
| | | // }] |
| | | // }, |
| | | showSelectDate: false, |
| | | workTime: Number(new Date()), |
| | | isShowPicker: false, |
| | |
| | | isEdit: false, |
| | | id: "", |
| | | isScan: false, //是否扫码 |
| | | houseHoldInfo: {} |
| | | houseHoldInfo: {}, |
| | | statusList: [{ |
| | | name: "是", |
| | | id: 1 |
| | | }, |
| | | { |
| | | name: "否", |
| | | id: 2 |
| | | } |
| | | ], |
| | | personList: [] |
| | | } |
| | | }, |
| | | // onLoad() { |
| | |
| | | |
| | | onReady() { |
| | | //onReady 为uni-app支持的生命周期之一 |
| | | this.$refs.form.setRules(this.rules) |
| | | // this.$refs.form.setRules(this.rules) |
| | | }, |
| | | |
| | | methods: { |
| | |
| | | this.isShowPicker = false; |
| | | }, |
| | | |
| | | //选择走访类型 |
| | | confirmType(e) { |
| | | console.log("type==>", e); |
| | | this.typeIndex = e.indexs; |
| | | this.info.type = e.value[0].dictKey; |
| | | this.typeName = e.value[0].dictValue; |
| | | |
| | | if (e.value[0].dictKey == 1) { |
| | | this.info.personType = ""; |
| | | this.keyword = ""; |
| | | this.getHouseholdList(); |
| | | } |
| | | this.isShowTypePicker = false; |
| | | }, |
| | | |
| | | //选择重点人群类型 |
| | | confirmLabelType(e) { |
| | | this.labelIndex = e.indexs; |
| | | this.info.personType = e.value[0].id; |
| | | this.labelName = e.value[0].name; |
| | | this.isShowLabelPicker = false; |
| | | this.getHouseholdList(); |
| | | }, |
| | | |
| | | //搜索住户 |
| | | searchHousehold() { |
| | | this.getHouseholdList() |
| | | }, |
| | | |
| | | clearKeyword() { |
| | | this.keyword = ""; |
| | | this.getHouseholdList() |
| | | }, |
| | | |
| | | //选择住户 |
| | | selectHousehold(item) { |
| | | this.selectedHousehold = item; |
| | | this.info.householdId = item.id; |
| | | this.address = `${item.townStreetName}${item.neiName}${item.aoiName}${item.address || ""}` |
| | | this.isShowPopup = false; |
| | | }, |
| | | |
| | | checkImages() { |
| | | if (this.form.images.length) { |
| | |
| | | |
| | | |
| | | submitInfo() { |
| | | this.$refs.form.validate().then(valid => { |
| | | this.checkImages(); |
| | | if (this.isEdit) { |
| | | this.updateWorkLogRequest() |
| | | } else { |
| | | this.addWorkLogRequest() |
| | | } |
| | | }) |
| | | |
| | | this.checkImages(); |
| | | if (!this.info.address) { |
| | | this.$showTips("请选择地址") |
| | | return |
| | | } |
| | | |
| | | // if (!this.info.backblastPubPersonEntityList.length) { |
| | | // this.$showTips("请添加宣防对象") |
| | | // return; |
| | | // } else { |
| | | // for (let i of this.info.backblastPubPersonEntityList) { |
| | | // if (!i.name) { |
| | | // this.$showTips("请完善宣防对象信息") |
| | | // return; |
| | | // } |
| | | // if (!i.telephone) { |
| | | // this.$showTips("请完善宣防对象信息") |
| | | // return; |
| | | // } |
| | | // if (!i.idCard) { |
| | | // this.$showTips("请完善宣防对象信息") |
| | | // return; |
| | | // } |
| | | // } |
| | | // } |
| | | |
| | | if (this.isEdit) { |
| | | this.updateWorkLogRequest() |
| | | } else { |
| | | this.addWorkLogRequest() |
| | | } |
| | | |
| | | }, |
| | | |
| | | addWorkLogRequest() { |
| | |
| | | uni.navigateTo({ |
| | | url: `propagateRecord` |
| | | }) |
| | | }, |
| | | |
| | | addPerson() { |
| | | let data = { |
| | | name: "", |
| | | telephone: "", |
| | | idCard: "", |
| | | address: "", |
| | | occupation: "" |
| | | } |
| | | |
| | | this.info.backblastPubPersonEntityList.push(data) |
| | | }, |
| | | |
| | | delPerson(index) { |
| | | this.info.backblastPubPersonEntityList.splice(index, 1); |
| | | }, |
| | | |
| | | |
| | | |
| | | recognizePersonSuccess(e, index) { |
| | | let { |
| | | detail: { |
| | | name, |
| | | id, |
| | | } |
| | | } = e; |
| | | this.info.backblastPubPersonEntityList[index].name = name.text; |
| | | this.info.backblastPubPersonEntityList[index].idCard = id.text; |
| | | } |
| | | |
| | | |
| | |
| | | // background-color: #F5F5F5; |
| | | font-size: 28rpx; |
| | | padding: 2rpx 10rpx; |
| | | text-align: right; |
| | | } |
| | | |
| | | .top { |
| | |
| | | color: #fff; |
| | | margin-top: 50rpx; |
| | | } |
| | | |
| | | /deep/ .u-radio-group { |
| | | justify-content: flex-end; |
| | | } |
| | | |
| | | /deep/ .u-textarea__field { |
| | | text-align: right; |
| | | } |
| | | |
| | | .recognize-btn { |
| | | padding: 12rpx; |
| | | border-radius: 6rpx; |
| | | background-color: #3c9cff; |
| | | margin-left: 30rpx; |
| | | } |
| | | </style> |