4 files modified
2 files added
| | |
| | | version: '2.0.0', |
| | | // 开发环境接口Url |
| | | // devUrl: 'http://z4042833u6.wicp.vip', |
| | | // devUrl: 'http://192.168.0.109:9528', |
| | | // devUrl: 'http://192.168.0.110:9528', |
| | | devUrl: 'https://srgdjczzxtpt.com:2080/api', |
| | | // devUrl: 'https://kt39592615.goho.co', |
| | | minioBaseUrl: "https://srgdjczzxtpt.com:2080/gminio/jczz/", |
| | |
| | | "navigationBarBackgroundColor": "#fff", |
| | | "navigationBarTextStyle": "black" |
| | | } |
| | | }, |
| | | { |
| | | "path": "event/event", |
| | | "style": { |
| | | "navigationBarTitleText": "我的事件", |
| | | "enablePullDownRefresh": false, |
| | | "navigationBarBackgroundColor": "#fff", |
| | | "navigationBarTextStyle": "black" |
| | | } |
| | | } |
| | | ] |
| | | }, |
| | |
| | | } |
| | | }, |
| | | { |
| | | "path": "views/reportDetail", |
| | | "style": { |
| | | "navigationBarTitleText": "报事报修详情", |
| | | "enablePullDownRefresh": false, |
| | | "navigationBarBackgroundColor": "#fff", |
| | | "navigationBarTextStyle": "black" |
| | | } |
| | | }, |
| | | { |
| | | "path": "views/hotelReportDetail", |
| | | "style": { |
| | | "navigationBarTitleText": "审核", |
| | |
| | | <u-cell title="切换角色" isLink url="/subPackage/user/role/index"> |
| | | <image slot="icon" src="/static/icon/menu-center-02.png" class="icon" mode=""></image> |
| | | </u-cell> |
| | | <u-cell v-if="siteInfo.addressType == 1" title="我的事件" isLink url="/subPackage/bs/views/repairList"> |
| | | <image slot="icon" src="/static/icon/menu-center-01.png" class="icon" mode=""></image> |
| | | </u-cell> |
| | | <u-cell v-if="siteInfo.addressType == 2" title="我的事件" isLink url="/subPackage/user/event/event"> |
| | | <image slot="icon" src="/static/icon/menu-center-01.png" class="icon" mode=""></image> |
| | | </u-cell> |
| | | <u-cell title="修改密码" :border="false" isLink url="/subPackage/user/password/index"> |
| | | <image slot="icon" src="/static/icon/menu-center-03.png" class="icon" mode=""></image> |
| | | </u-cell> |
| | | |
| | | </u-cell-group> |
| | | </view> |
| | | <view class="cell-box" v-if="isLogin"> |
| | |
| | | </view> |
| | | </view> --> |
| | | <z-paging ref="paging" v-model="dataList" @query="queryList" :refresher-enabled="false" |
| | | loading-more-no-more-text="没有更多了" :hide-empty-view="true"> |
| | | loading-more-no-more-text="没有更多了" :hide-empty-view="true"> |
| | | <view class="list"> |
| | | <view class="list-item bgc-ff mb-20" v-for="item in dataList" :key="item.id" @click="pushPage(item)"> |
| | | <view class="item-title flex a-i-c j-c-s-b mb-20"> |
| | |
| | | status: 3, |
| | | type: 'error' |
| | | }, |
| | | ] |
| | | |
| | | ], |
| | | repairType: "" |
| | | |
| | | } |
| | | }, |
| | |
| | | } |
| | | }, |
| | | onLoad(option) { |
| | | uni.setNavigationBarTitle({ |
| | | title: option.title |
| | | }) |
| | | |
| | | // this.query.type = option.type |
| | | this.repairType = option.type; |
| | | if (option.type) { |
| | | uni.setNavigationBarTitle({ |
| | | title: option.title |
| | | }) |
| | | this.repairType = option.type; |
| | | } |
| | | |
| | | // this.getList() |
| | | }, |
| | | // onReachBottom() { |
| | |
| | | } |
| | | } |
| | | }, |
| | | |
| | | |
| | | queryList(pageNo, pageSize) { |
| | | getPage({ |
| | | current: pageNo, |
| New file |
| | |
| | | <template> |
| | | <view class=""> |
| | | <z-paging ref="paging" v-model="list" @query="queryList" :refresher-enabled="false" |
| | | loading-more-no-more-text="没有更多了"> |
| | | <view class="bgc-ff" slot="top"> |
| | | <u-tabs :list="tabList" :current="tabIndex" @click="changeTab" :inactiveStyle="{color:'#999999'}" |
| | | :activeStyle="{color:'#017BFC'}" :scrollable="false"> |
| | | </u-tabs> |
| | | </view> |
| | | |
| | | |
| | | <view class="list" v-if="tabIndex == 0"> |
| | | <view class="list-item bgc-ff mb-20" v-for="item in list" :key="item.id" @click="pushPage(item)"> |
| | | <view class="item-title flex a-i-c j-c-s-b mb-20"> |
| | | <text class="f-32 fw">{{getRepairType(item.type)}}</text> |
| | | <u-tag v-if="item.status == 1" text="待处理" type="warning" plain plainFill></u-tag> |
| | | <u-tag v-if="item.status == 2" text="处理中" type="success" plain plainFill></u-tag> |
| | | <u-tag v-if="item.status == 3" text="已处理" type="success" plain plainFill></u-tag> |
| | | </view> |
| | | <view class="item-row flex a-i-c j-c-s-b"> |
| | | <text class="f-28">时间</text> |
| | | <text class="f-28 c-66">{{ item.createTime }}</text> |
| | | </view> |
| | | <view class="item-row flex a-i-c j-c-s-b"> |
| | | <text class="f-28">描述</text> |
| | | <text class="address f-28 c-66">{{ item.remark}}</text> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | |
| | | |
| | | |
| | | <view class="list" v-if="tabIndex == 1"> |
| | | <view class="list-item bgc-ff mb-20" v-for="(i,k) in list" :key="k" |
| | | @click="navTo(i.id,i.reportType,i.status)"> |
| | | <view class="item-title flex a-i-c j-c-s-b mb-20"> |
| | | <text class="f-32 fw">{{i.name}}</text> |
| | | <u-tag v-if="i.status == 4" text="待接收" type="warning" plain plainFill></u-tag> |
| | | <u-tag v-if="i.status == 1" text="待审批" type="warning" plain plainFill></u-tag> |
| | | <u-tag v-if="i.status == 2" text="审核通过" type="success" plain plainFill></u-tag> |
| | | <u-tag v-if="i.status == 3" text="审核拒绝" type="error" plain plainFill></u-tag> |
| | | </view> |
| | | <view class="item-row flex a-i-c j-c-s-b"> |
| | | <text class="f-28">时间</text> |
| | | <text class="f-28 c-66">{{i.createTime}}</text> |
| | | </view> |
| | | <view class="item-row flex a-i-c j-c-s-b"> |
| | | <text class="f-28">地址</text> |
| | | <text class="address f-28 c-66">{{i.addressName || ""}}</text> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | |
| | | |
| | | </z-paging> |
| | | </view> |
| | | </template> |
| | | |
| | | <script> |
| | | import { |
| | | getPage |
| | | } from '@/api/task/taskReportForRepairs' |
| | | import { |
| | | getAuditReportingList |
| | | } from "@/api/reporting/reporting" |
| | | export default { |
| | | data() { |
| | | return { |
| | | tabList: [ |
| | | |
| | | { |
| | | name: "公共报事" |
| | | }, |
| | | { |
| | | name: "标签事件" |
| | | }, |
| | | ], |
| | | typeList: [{ |
| | | name: "公共维修", |
| | | type: 1 |
| | | }, |
| | | { |
| | | name: "居家维修", |
| | | type: 2 |
| | | }, |
| | | { |
| | | name: "矛盾纠纷", |
| | | type: 3 |
| | | }, |
| | | { |
| | | name: "投诉举报", |
| | | type: 4 |
| | | }, |
| | | { |
| | | name: "企业商户上报", |
| | | type: 5 |
| | | } |
| | | ], |
| | | |
| | | tabIndex: 0, |
| | | list: [] |
| | | } |
| | | }, |
| | | |
| | | methods: { |
| | | |
| | | getRepairType(val, key) { |
| | | for (let i of this.typeList) { |
| | | if (i.type == val) { |
| | | return i.name |
| | | } |
| | | } |
| | | }, |
| | | |
| | | changeTab(e) { |
| | | this.tabIndex = e.index; |
| | | this.$refs.paging.reload() |
| | | }, |
| | | |
| | | queryList(pageNo, pageSize) { |
| | | if (this.tabIndex == 0) { |
| | | this.getRepairList(pageNo, pageSize) |
| | | } else { |
| | | this.getReportList(pageNo, pageSize) |
| | | } |
| | | }, |
| | | |
| | | //标签事件列表 |
| | | getReportList(page, size) { |
| | | getAuditReportingList({ |
| | | page: page, |
| | | size: size, |
| | | status: "", |
| | | houseCode: uni.getStorageSync("siteInfo").houseCode |
| | | }).then(res => { |
| | | this.$refs.paging.complete(res.data.records); |
| | | }) |
| | | }, |
| | | |
| | | //公共报事列表 |
| | | getRepairList(page, size) { |
| | | getPage({ |
| | | current: page, |
| | | size: size, |
| | | createUser: uni.getStorageSync("userInfo").user_id, |
| | | type: "" |
| | | }).then(res => { |
| | | this.$refs.paging.complete(res.data.records); |
| | | }) |
| | | }, |
| | | |
| | | navTo(id, type, status) { |
| | | if (status == 4) { |
| | | if (uni.getStorageSync("activeRole").roleName == "民警") { |
| | | this.navToDetail(type, id) |
| | | } else { |
| | | this.navToEdit(type, id); |
| | | } |
| | | } else { |
| | | this.navToDetail(type, id) |
| | | } |
| | | }, |
| | | |
| | | navToEdit(type, id) { |
| | | if (type == 1) { |
| | | this.$u.func.globalNavigator(`/subPackage/label/bail?id=${id}`) |
| | | } else if (type == 2) { |
| | | this.$u.func.globalNavigator(`/subPackage/label/hotel?id=${id}`) |
| | | } else if (type == 3 || type == 4 || type == 5) { |
| | | this.$u.func.globalNavigator(`/subPackage/label/form?id=${id}`) |
| | | } else if (type == 6) { |
| | | this.$u.func.globalNavigator(`/subPackage/label/school?id=${id}`) |
| | | } |
| | | }, |
| | | |
| | | navToDetail(type, id) { |
| | | if (type == 1) { |
| | | this.$u.func.globalNavigator(`/subPackage/workbench/views/bailReportDetail?id=${id}`) |
| | | } else if (type == 2) { |
| | | this.$u.func.globalNavigator(`/subPackage/workbench/views/hotelReportDetail?id=${id}`) |
| | | } else if (type == 3 || type == 4 || type == 5) { |
| | | this.$u.func.globalNavigator(`/subPackage/workbench/views/labelReportDetail?id=${id}`) |
| | | } else if (type == 6) { |
| | | this.$u.func.globalNavigator(`/subPackage/workbench/views/schoolReportDetail?id=${id}`) |
| | | } |
| | | }, |
| | | |
| | | pushPage(item) { |
| | | const data = JSON.stringify(item) |
| | | // this.$u.func.globalNavigator('/subPackage/workbench/views/reportAudit?id='+id) |
| | | this.$u.func.globalNavigator(`/subPackage/workbench/views/reportDetail?data=${data}&from=record`) |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss"> |
| | | page { |
| | | background-color: #F5F5F5; |
| | | } |
| | | |
| | | .list { |
| | | margin: 20rpx 30rpx 0; |
| | | } |
| | | |
| | | .list-item { |
| | | padding: 0 30rpx 20rpx; |
| | | border-radius: 8rpx; |
| | | |
| | | .item-title { |
| | | padding: 30rpx 0; |
| | | border-bottom: 1px solid #F5F5F5; |
| | | } |
| | | |
| | | .item-row { |
| | | padding: 10rpx 0; |
| | | |
| | | .address { |
| | | width: 75%; |
| | | text-align: right; |
| | | } |
| | | } |
| | | } |
| | | </style> |
| New file |
| | |
| | | <template> |
| | | <view class="container"> |
| | | <view class="basic-box"> |
| | | <!-- <view class="title-box"> |
| | | <view class="line"></view> |
| | | <view class="text">基本信息</view> |
| | | </view> --> |
| | | <caption-row title="基本信息" /> |
| | | <view class="basic-data"> |
| | | <lineItem :dataInfo="basicData"></lineItem> |
| | | </view> |
| | | </view> |
| | | <view class="pic-box" v-if="imgUrls.length"> |
| | | <!-- <view class="title-box"> |
| | | <view class="line"></view> |
| | | <view class="text">事件照片</view> |
| | | </view> --> |
| | | <caption-row title="事件照片" /> |
| | | <view class="pic-data"> |
| | | <view class="mr-20 " v-for="(i,k) in imgUrls" :key="k"> |
| | | <u-image class="img" :src="i" width="80" height="80" @click="previewImg(i)"></u-image> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <view class="audit-box"> |
| | | <!-- <view class="title-box"> |
| | | <view class="line"></view> |
| | | <view class="text">审核信息</view> |
| | | </view> --> |
| | | <caption-row title="审核信息" /> |
| | | <view class="step"> |
| | | <view class="step-list " v-for="i in defaultData.taskRepairStepList" |
| | | v-if="defaultData.taskRepairStepList.length"> |
| | | |
| | | <view class="flex j-c-s-b a-i-c mb-10"> |
| | | <text class="f-30 fw">{{i.peopleType ==1?"转办":"已处理"}}</text> |
| | | <text class="f-26 c-99">{{i.createTime}} </text> |
| | | </view> |
| | | <view class="f-28">{{i.content}}</view> |
| | | </view> |
| | | </view> |
| | | |
| | | <view class="audit-form" v-if="defaultData.confirmFlag == 1"> |
| | | <u-form labelWidth="70" :model="form" class="form" ref="form"> |
| | | <u-form-item label="事件状态" @click="showPicker" class="form-item"> |
| | | <!-- <u--input v-model="form.confirmFlag" disabled disabledColor="#ffffff" placeholder="请选择审核状态" |
| | | border="none" :placeholder="defaultPlaceholder" inputAlign="right" color="#333"></u--input> |
| | | <u-icon slot="right" name="arrow-right" v-show="from == 'list'"></u-icon> --> |
| | | |
| | | <view class="stauts"> |
| | | 待处理 |
| | | </view> |
| | | |
| | | |
| | | </u-form-item> |
| | | <u-form-item label="处理情况" class="form-item" |
| | | v-if="from == 'list' || (from == 'record' && form.confirmNotion)"> |
| | | <u--input v-model="form.confirmNotion" :border="from == 'list'?'surround':'none'" |
| | | inputAlign="right" color="#333" :disabled="from == 'record'?true:false"></u--input> |
| | | </u-form-item> |
| | | </u-form> |
| | | </view> |
| | | </view> |
| | | |
| | | <view class="upload bgc-ff" v-if="form.imageList.length"> |
| | | <view class="f-28">图片</view> |
| | | <view class="mt-20"> |
| | | <u-upload :fileList="form.imageList" :previewFullImage="uploadConfig.previewFullImage" |
| | | :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple" :maxCount="form.imageList.length" |
| | | :capture="uploadConfig.capture" :deletable="false" @afterRead="afterReadImg($event,'imageList')" |
| | | @delete="deletePics($event,'imageList')"> |
| | | <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="upload bgc-ff" v-if="form.videoList.length"> |
| | | <view class="f-28">视频</view> |
| | | <view class="mt-20"> |
| | | <u-upload :fileList="form.videoList" :previewFullImage="uploadConfig.previewFullImage" |
| | | :accept="uploadConfig.acceptVideo" :multiple="uploadConfig.multiple" |
| | | :maxCount="form.videoList.length" :capture="uploadConfig.capture" :deletable="false" |
| | | @afterRead="afterReadImg($event,'videoList')" @delete="deletePics($event,'videoList')"> |
| | | <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="bottom" v-if="from == 'list'"> |
| | | <u-button type="primary" @click="submit">提交处理</u-button> |
| | | </view> --> |
| | | |
| | | <!-- <footer-btn @click="submit" v-if="from == 'list'"></footer-btn> --> |
| | | |
| | | <!-- <view class="footer flex a-i-c j-c-s-b" v-if="from == 'list' && confirmFlag == 1"> |
| | | <button class="footer-btn" @click="submit(0)">处置</button> |
| | | <button class="footer-btn" @click="submit(1)">转办</button> |
| | | </view> --> |
| | | <u-picker :defaultIndex="[defaultColums]" :closeOnClickOverlay="true" @close="isPickerShow = false" |
| | | :show="isPickerShow" ref="uPicker" :columns="columns" keyName="name" @cancel="isPickerShow = false" |
| | | @confirm="handleConfirm"></u-picker> |
| | | |
| | | <u-picker :defaultIndex="peopleIndex" :closeOnClickOverlay="true" @close="isShowPeoplePicker = false" |
| | | :show="isShowPeoplePicker" ref="pPicker" :columns="peopleList" keyName="name" |
| | | @cancel="isShowPeoplePicker = false" @confirm="handlePeopleConfirm" @change="changePeople"></u-picker> |
| | | |
| | | |
| | | </view> |
| | | </template> |
| | | |
| | | <script> |
| | | import lineItem from '../components/lineItem.vue' |
| | | import captionRow from '@/components/caption/caption.vue' |
| | | import { |
| | | checkReportForRepairsData, |
| | | reportSave |
| | | } from '@/api/task/taskReportForRepairs.js' |
| | | import { |
| | | getPeopleType |
| | | } from '@/api/user.js' |
| | | import { |
| | | minioBaseUrl |
| | | } from "@/common/setting.js" |
| | | import uploadMixin from "@/mixin/uploadMixin"; |
| | | export default { |
| | | mixins: [uploadMixin], |
| | | components: { |
| | | captionRow, |
| | | lineItem |
| | | }, |
| | | data() { |
| | | return { |
| | | basicData: [{ |
| | | label: '事发地', |
| | | name: 'address', |
| | | value: '未完善' |
| | | }, |
| | | { |
| | | label: '姓名', |
| | | name: 'realName', |
| | | value: '未完善' |
| | | }, |
| | | { |
| | | label: '手机号码', |
| | | name: 'phone', |
| | | value: '未完善' |
| | | }, |
| | | { |
| | | label: '事件类型', |
| | | name: 'type', |
| | | value: '未完善' |
| | | }, |
| | | { |
| | | label: '事件描述', |
| | | name: 'remark', |
| | | value: '未完善' |
| | | }, |
| | | { |
| | | label: '提交时间', |
| | | name: 'createTime', |
| | | value: '未完善' |
| | | } |
| | | ], |
| | | typeList: [{ |
| | | name: "公共维修", |
| | | type: 1 |
| | | }, |
| | | { |
| | | name: "居家维修", |
| | | type: 2 |
| | | }, |
| | | { |
| | | name: "矛盾纠纷", |
| | | type: 3 |
| | | }, |
| | | { |
| | | name: "投诉举报", |
| | | type: 4 |
| | | }, |
| | | { |
| | | name: "企业商户上报", |
| | | type: 5 |
| | | } |
| | | ], |
| | | form: { |
| | | confirmFlag: '', |
| | | confirmNotion: '', |
| | | imageList: [], |
| | | videoList: [] |
| | | }, |
| | | defaultPlaceholder: "", |
| | | defaultColums: 0, |
| | | imgUrls: [], |
| | | currentId: '', |
| | | defaultData: { |
| | | taskRepairStepList: [] |
| | | }, |
| | | isPickerShow: false, |
| | | columns: [ |
| | | [{ |
| | | name: "待处理", |
| | | status: 1 |
| | | }, |
| | | { |
| | | name: "处理中", |
| | | status: 2 |
| | | }, |
| | | { |
| | | name: "已处理", |
| | | status: 3 |
| | | }, |
| | | ] |
| | | ], |
| | | from: "list", |
| | | peopleList: [ |
| | | [{ |
| | | name: "网格员", |
| | | type: 0 |
| | | }, |
| | | { |
| | | name: "物业人员", |
| | | type: 2 |
| | | } |
| | | ], |
| | | [] |
| | | ], |
| | | peopleIndex: [0, 0], |
| | | isShowPeoplePicker: false, |
| | | transferUserId: "", |
| | | content: "", |
| | | confirmFlag: "" |
| | | |
| | | } |
| | | }, |
| | | onLoad(option) { |
| | | // const { id } = option |
| | | // this.currentId = id |
| | | if (option.from) { |
| | | this.from = option.from; |
| | | } |
| | | let data = JSON.parse(option.data) |
| | | this.defaultData = data; |
| | | this.confirmFlag = data.confirmFlag; |
| | | |
| | | if (data.confirmFlag == 3 && data.taskRepairStepList.length) { |
| | | let { |
| | | imageList, |
| | | videoList |
| | | } = data.taskRepairStepList[data.taskRepairStepList.length - 1]; |
| | | this.form.imageList = this.$setImageUrl(imageList, 2) |
| | | this.form.videoList = this.$setImageUrl(videoList, 2) |
| | | } |
| | | |
| | | |
| | | this.getPeopleList(0) |
| | | }, |
| | | onShow() { |
| | | this.setDefaultValue() |
| | | }, |
| | | methods: { |
| | | |
| | | getPeopleList(type) { |
| | | getPeopleType({ |
| | | houseCode: this.defaultData.addressCode, |
| | | type |
| | | }).then(res => { |
| | | console.log(res); |
| | | this.$set(this.peopleList, 1, res.data); |
| | | }) |
| | | }, |
| | | |
| | | showPicker() { |
| | | if (this.from == "list") { |
| | | this.isPickerShow = true; |
| | | } |
| | | }, |
| | | |
| | | setImgUrl(url) { |
| | | return `${minioBaseUrl}${url}` |
| | | }, |
| | | |
| | | async checkReportForRepairs() { |
| | | const { |
| | | confirmFlag, |
| | | confirmNotion |
| | | } = this.form |
| | | |
| | | if (!confirmNotion) { |
| | | uni.showToast({ |
| | | title: "请输入处理情况", |
| | | icon: "none" |
| | | }) |
| | | return; |
| | | } |
| | | |
| | | const res = await checkReportForRepairsData({ |
| | | // id: this.currentId, |
| | | id: this.defaultData.id, |
| | | // confirmFlag: this.findObjValue(confirmFlag, this.columns[0], 'name').status, |
| | | confirmFlag: 3, |
| | | confirmNotion |
| | | }) |
| | | |
| | | if (res.code !== 200) { |
| | | uni.showToast({ |
| | | title: "提交处理失败", |
| | | icon: "error" |
| | | }) |
| | | return |
| | | } |
| | | |
| | | uni.showToast({ |
| | | title: "处理事件成功", |
| | | icon: "success", |
| | | duration: 1500, |
| | | complete() { |
| | | setTimeout(() => { |
| | | uni.navigateBack() |
| | | }, 1500) |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | setDefaultValue() { |
| | | console.log(this.defaultData); |
| | | this.basicData.forEach(item => { |
| | | item.value = this.defaultData[item.name] || '未完善' |
| | | if (item.name === 'type') { |
| | | item.value = this.findObjValue(item.value, this.typeList, 'type').name || '未完善' |
| | | } |
| | | }) |
| | | this.imgUrls = this.$setImageUrl(this.defaultData.imageUrls); |
| | | //if(this.defaultData.imageUrls){ |
| | | // let list = this.defaultData.imageUrls.split(",") |
| | | // let arr = [] |
| | | // for(let i of list){ |
| | | // arr.push(`${minioBaseUrl}${i}`); |
| | | // } |
| | | //} |
| | | |
| | | let columns = this.columns[0] |
| | | this.defaultColums = columns.findIndex(item => item.status == this.defaultData.confirmFlag) |
| | | this.defaultPlaceholder = columns[this.defaultColums].name |
| | | }, |
| | | |
| | | submit(type) { |
| | | if (type == 1) { |
| | | this.isShowPeoplePicker = true; |
| | | } else { |
| | | if (!this.form.confirmNotion) { |
| | | uni.showToast({ |
| | | title: "请输入处理情况", |
| | | icon: "none" |
| | | }) |
| | | return; |
| | | } |
| | | |
| | | let data = { |
| | | confirmFlag: 3, |
| | | content: this.form.confirmNotion, |
| | | imageList: this.getFileName(this.form.imageList), |
| | | mobile: this.defaultData.mobile, |
| | | peopleType: 0, |
| | | repairId: this.defaultData.id, |
| | | videoList: this.getFileName(this.form.videoList) |
| | | } |
| | | this.submitRequest(data) |
| | | } |
| | | // this.checkReportForRepairs() |
| | | }, |
| | | |
| | | getFileName(urls) { |
| | | if (urls.length) { |
| | | let arr = []; |
| | | for (let i of urls) { |
| | | arr.push(i.name); |
| | | } |
| | | return arr.join(","); |
| | | } else { |
| | | return "" |
| | | } |
| | | }, |
| | | |
| | | |
| | | submitRequest(data) { |
| | | reportSave(data).then(res => { |
| | | if (res.code == 200) { |
| | | uni.showToast({ |
| | | title: "操作成功" |
| | | }) |
| | | uni.navigateBack() |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | handleConfirm(e) { |
| | | this.form.confirmFlag = e.value[0].name |
| | | this.isPickerShow = false |
| | | }, |
| | | findObjValue(value, obj, word) { |
| | | const res = obj.find(item => { |
| | | return item[word] == value |
| | | }) |
| | | return res |
| | | }, |
| | | |
| | | previewImg(url) { |
| | | uni.previewImage({ |
| | | urls: this.imgUrls, |
| | | current: url |
| | | }) |
| | | }, |
| | | |
| | | |
| | | changePeople(e) { |
| | | console.log(e); |
| | | const { |
| | | columnIndex, |
| | | value, |
| | | values, // values为当前变化列的数组内容 |
| | | index, |
| | | // 微信小程序无法将picker实例传出来,只能通过ref操作 |
| | | picker = this.$refs.pPicker |
| | | } = e |
| | | if (columnIndex === 0) { |
| | | // picker为选择器this实例,变化第二列对应的选项 |
| | | // picker.setColumnValues(1, this.columnData[index]) |
| | | this.getPeopleList(value[0].type) |
| | | } |
| | | }, |
| | | |
| | | handlePeopleConfirm(e) { |
| | | console.log(e) |
| | | let { |
| | | value, |
| | | indexs |
| | | } = e; |
| | | this.transferUserId = value[1].id |
| | | this.peopleIndex = indexs; |
| | | // this.content = `事件已移交至${value[0].distictName}${value[1].distictName}` |
| | | let data = { |
| | | addressCode: this.defaultData.addressCode, |
| | | confirmFlag: 1, |
| | | content: `事件已移交至${value[0].name}${value[1].name}`, |
| | | peopleType: 1, |
| | | repairId: this.defaultData.id, |
| | | transferUserId: value[1].id |
| | | } |
| | | console.log(data); |
| | | this.submitRequest(data) |
| | | }, |
| | | |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | page { |
| | | background-color: #f6f6f6; |
| | | } |
| | | |
| | | .container { |
| | | padding: 0 20rpx 150rpx; |
| | | |
| | | .basic-box, |
| | | .pic-box, |
| | | .audit-box, |
| | | .bottom { |
| | | background-color: #fff; |
| | | padding: 20rpx; |
| | | } |
| | | |
| | | .pic-box { |
| | | |
| | | // margin-top: 20rpx; |
| | | .pic-data { |
| | | padding: 0 20rpx; |
| | | display: flex; |
| | | flex-wrap: wrap; |
| | | margin-top: 20rpx; |
| | | } |
| | | } |
| | | |
| | | .audit-box { |
| | | // margin-top: 20rpx; |
| | | |
| | | .audit-form { |
| | | padding: 0 20rpx; |
| | | |
| | | .form { |
| | | font-size: 30rpx; |
| | | |
| | | .form-item { |
| | | padding: 0 20rpx; |
| | | |
| | | &:first-child { |
| | | border-bottom: 1rpx solid #f6f6ff; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | .bottom { |
| | | position: fixed; |
| | | left: 0; |
| | | bottom: 0; |
| | | width: calc(100% - 40rpx); |
| | | border-top: 1rpx solid #f6f6f6; |
| | | } |
| | | |
| | | .title-box { |
| | | display: flex; |
| | | align-items: center; |
| | | font-size: 30rpx; |
| | | |
| | | .line { |
| | | width: 6rpx; |
| | | height: 30rpx; |
| | | margin-right: 10rpx; |
| | | background-color: #017BFC; |
| | | } |
| | | |
| | | .text { |
| | | font-weight: 700; |
| | | } |
| | | } |
| | | } |
| | | |
| | | /deep/ .u-form-item__body__left__content__label, |
| | | /deep/ .uni-input-placeholder { |
| | | font-size: 30rpx; |
| | | } |
| | | |
| | | .footer { |
| | | width: 100%; |
| | | padding: 20rpx 30rpx; |
| | | box-sizing: border-box; |
| | | position: fixed; |
| | | bottom: 0; |
| | | left: 0; |
| | | background-color: #fff; |
| | | z-index: 10; |
| | | padding-bottom: calc(env(safe-area-inset-bottom) + 20rpx); |
| | | z-index: 999; |
| | | background-color: #fff; |
| | | box-shadow: 0rpx 0rpx 10rpx 1rpx rgba(0, 0, 0, 0.1); |
| | | |
| | | .footer-btn { |
| | | width: 300rpx; |
| | | height: 78rpx; |
| | | border-radius: 8rpx; |
| | | font-size: 32rpx; |
| | | color: #fff; |
| | | border: none; |
| | | background: linear-gradient(163deg, #01BDFC 0%, #017BFC 100%); |
| | | } |
| | | |
| | | .footer-btn:after { |
| | | border: none; |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | .upload { |
| | | margin: 0 30rpx; |
| | | padding: 30rpx; |
| | | |
| | | .upload-item { |
| | | width: 140rpx; |
| | | height: 140rpx; |
| | | border: 1px solid #EEEEEE; |
| | | } |
| | | } |
| | | |
| | | .step { |
| | | margin-top: 20rpx; |
| | | padding: 0 20rpx; |
| | | } |
| | | |
| | | .step-list { |
| | | padding: 15rpx 0; |
| | | } |
| | | |
| | | .status { |
| | | flex: 1; |
| | | text-align: right; |
| | | } |
| | | </style> |