18 files modified
1 files added
| | |
| | | { |
| | | "path": "communityList", |
| | | "style": { |
| | | "navigationBarTitleText": "", |
| | | "navigationBarTitleText": "选举调查", |
| | | "enablePullDownRefresh": false, |
| | | "navigationBarBackgroundColor": "#fff", |
| | | "navigationBarTextStyle": "black" |
| | | } |
| | | }, |
| | | { |
| | | "path": "signUpList", |
| | | "style": { |
| | | "navigationBarTitleText": "公益报名", |
| | | "enablePullDownRefresh": false, |
| | | "navigationBarBackgroundColor": "#fff", |
| | | "navigationBarTextStyle": "black" |
| | |
| | | {
|
| | | title: "公益报名",
|
| | | icon: "/static/icon/nav-13.png",
|
| | | path: "/subPackage/article/communityList?type=0"
|
| | | path: "/subPackage/article/signUpList"
|
| | |
|
| | | },
|
| | | {
|
| | |
| | | <template> |
| | | <view class=""> |
| | | <!-- <view class="tab" v-if="tabList.length"> |
| | | <view class="tab" v-if="tabList.length"> |
| | | <u-tabs :list="tabList" :current="tabIndex" keyName="dictValue" @change="changeTab" |
| | | :inactiveStyle="{color:'#999999'}" :activeStyle="{color:'#017BFC'}"></u-tabs> |
| | | </view> --> |
| | | </view> |
| | | <z-paging ref="paging" v-model="list" @query="queryList" @onRefresh="refreshList" |
| | | loading-more-no-more-text="没有更多了"> |
| | | <view class="list bgc-ff"> |
| | |
| | | this.eventType = option.type; |
| | | if (option.type == 0) { |
| | | this.type = 3 |
| | | uni.setNavigationBarTitle({ |
| | | title: "公益报名" |
| | | }) |
| | | } else { |
| | | this.type = 4 |
| | | uni.setNavigationBarTitle({ |
| | | title: "选举调查" |
| | | }) |
| | | } |
| | | this.getCateList() |
| | | // this.getNoticeList() |
| | | |
| | | }, |
| | |
| | | this.list = []; |
| | | this.currentPage = 1; |
| | | // this.getNoticeList() |
| | | this.refreshList(); |
| | | }, |
| | | |
| | | getCateList() { |
| | | getCategory({ |
| | | parentId: '1722966265111248897', |
| | | parentId: '1740566650527752194', |
| | | }).then(res => { |
| | | console.log(res) |
| | | let data = res.data; |
| | |
| | | dictValue: "全部" |
| | | }) |
| | | this.tabList = data; |
| | | // this.tabId = data[0].dictKey; |
| | | this.getNoticeList() |
| | | this.tabId = data[0].dictKey; |
| | | // this.getNoticeList() |
| | | }) |
| | | }, |
| | | |
| | |
| | | //报名 |
| | | handleApply() { |
| | | if (this.computeEndTime > 0) { |
| | | |
| | | communityModel.addApply({ |
| | | publicDiscussId: this.pdId, |
| | | articleId: this.params.id, |
| | | houseCode: uni.getStorageSync("siteInfo").houseCode |
| | | }).then(res => { |
| | | if (res.code == 200) { |
| | | uni.showToast({ |
| | | title: "操作成功" |
| | | }) |
| | | this.getApplyList(); |
| | | this.getApplyDetail() |
| | | } |
| | | uni.navigateTo({ |
| | | url: "signature" |
| | | }) |
| | | // communityModel.addApply({ |
| | | // publicDiscussId: this.pdId, |
| | | // articleId: this.params.id, |
| | | // houseCode: uni.getStorageSync("siteInfo").houseCode |
| | | // }).then(res => { |
| | | // if (res.code == 200) { |
| | | // uni.showToast({ |
| | | // title: "操作成功" |
| | | // }) |
| | | // this.getApplyList(); |
| | | // this.getApplyDetail() |
| | | // } |
| | | // }) |
| | | } else { |
| | | uni.showToast({ |
| | | title: "报名已结束", |
| | |
| | | } |
| | | }, |
| | | |
| | | applyRequest(signPath) { |
| | | signature_path |
| | | let data = { |
| | | publicDiscussId: this.pdId, |
| | | articleId: this.params.id, |
| | | houseCode: uni.getStorageSync("siteInfo").houseCode |
| | | } |
| | | if (signPath) { |
| | | data.signaturePath = signPath |
| | | } |
| | | communityModel.addApply(data).then(res => { |
| | | if (res.code == 200) { |
| | | uni.showToast({ |
| | | title: "操作成功" |
| | | }) |
| | | this.getApplyList(); |
| | | this.getApplyDetail() |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | |
| | | selectOption(id, index) { |
| | | let item = this.voteTopicList[index]; |
| | | item.selected = id; |
| New file |
| | |
| | | <template> |
| | | <view class=""> |
| | | <view class="tab" v-if="tabList.length"> |
| | | <u-tabs :list="tabList" :current="tabIndex" keyName="dictValue" @change="changeTab" |
| | | :inactiveStyle="{color:'#999999'}" :activeStyle="{color:'#017BFC'}"></u-tabs> |
| | | </view> |
| | | <z-paging ref="paging" v-model="list" @query="queryList" @onRefresh="refreshList" |
| | | loading-more-no-more-text="没有更多了"> |
| | | <view class="list bgc-ff"> |
| | | <notice-list :data="list" /> |
| | | </view> |
| | | </z-paging> |
| | | <!-- <u-loadmore :status="loadingStatus" loadmoreText="开始加载" loadingText="数据加载中" nomoreText="没有更多了" line /> --> |
| | | </view> |
| | | </template> |
| | | |
| | | <script> |
| | | import { |
| | | getPage, |
| | | getCategory |
| | | } from "@/api/article/article.js"; |
| | | import noticeList from "@/components/noticeList/noticeList.vue" |
| | | export default { |
| | | components: { |
| | | noticeList |
| | | }, |
| | | data() { |
| | | return { |
| | | tabList: [], |
| | | tabId: "", |
| | | tabIndex: 0, |
| | | list: [], |
| | | currentPage: 1, |
| | | loadingStatus: 'nomore', |
| | | eventType: "", |
| | | type: '', |
| | | } |
| | | }, |
| | | onLoad(option) { |
| | | this.eventType = option.type; |
| | | if (option.type == 0) { |
| | | this.type = 3 |
| | | } else { |
| | | this.type = 4 |
| | | } |
| | | // this.getCateList() |
| | | // this.getNoticeList() |
| | | |
| | | }, |
| | | // onReachBottom() { |
| | | // this.currentPage++ |
| | | // this.getPageList() |
| | | // }, |
| | | |
| | | methods: { |
| | | |
| | | refreshList() { |
| | | this.$refs.paging.reload(); |
| | | }, |
| | | |
| | | changeTab(e) { |
| | | this.tabIndex = e.index; |
| | | this.tabId = e.dictKey; |
| | | this.list = []; |
| | | this.currentPage = 1; |
| | | // this.getNoticeList() |
| | | this.refreshList(); |
| | | }, |
| | | |
| | | getCateList() { |
| | | getCategory({ |
| | | parentId: '1740566650527752194', |
| | | }).then(res => { |
| | | console.log(res) |
| | | let data = res.data; |
| | | data.unshift({ |
| | | dictKey: "", |
| | | dictValue: "全部" |
| | | }) |
| | | this.tabList = data; |
| | | this.tabId = data[0].dictKey; |
| | | // this.getNoticeList() |
| | | }) |
| | | }, |
| | | |
| | | queryList(pageNo, pageSize) { |
| | | getPage({ |
| | | current: pageNo, |
| | | size: pageSize, |
| | | articleType: this.tabId, |
| | | eventType: this.eventType, |
| | | type: this.type, |
| | | houseCode: uni.getStorageSync("siteInfo").houseCode |
| | | }).then(res => { |
| | | this.$refs.paging.complete(res.data.records); |
| | | }) |
| | | }, |
| | | |
| | | |
| | | async getNoticeList() { |
| | | this.loadingStatus = 'loadingmore' |
| | | const param = { |
| | | size: 10, |
| | | current: this.currentPage, |
| | | articleType: this.tabId, |
| | | eventType: this.eventType, |
| | | type: this.type, |
| | | houseCode: uni.getStorageSync("siteInfo").houseCode |
| | | } |
| | | const res = await getPage(param) |
| | | const { |
| | | code, |
| | | data: { |
| | | records |
| | | } |
| | | } = res |
| | | if (code != 200) { |
| | | uni.showToast({ |
| | | title: '数据请求失败', |
| | | icon: 'error' |
| | | }) |
| | | return |
| | | } |
| | | this.list = [...this.list, ...records] |
| | | this.loadingStatus = 'nomore' |
| | | |
| | | }, |
| | | navTo(id, type) { |
| | | this.$u.func.globalNavigator(`detail?id=${id}&type=${type}`, "navTo") |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss"> |
| | | page { |
| | | background-color: #f5f5f5; |
| | | } |
| | | |
| | | .tab { |
| | | width: 100%; |
| | | height: 88rpx; |
| | | position: fixed; |
| | | /*#ifdef H5*/ |
| | | top: 88rpx; |
| | | /*#endif*/ |
| | | /*#ifdef MP-WEIXIN*/ |
| | | top: 0; |
| | | /*#endif*/ |
| | | left: 0; |
| | | background-color: #fff; |
| | | padding: 0 30rpx; |
| | | box-sizing: border-box; |
| | | z-index: 999; |
| | | } |
| | | |
| | | .list { |
| | | // margin-top: 108rpx; |
| | | padding: 0 30rpx; |
| | | } |
| | | </style> |
| | |
| | | <template> |
| | | <view> |
| | | <jushi-signature :settings="settings" @change="signatureChange"></jushi-signature> |
| | | <view class="" style="margin-top: 20rpx;"> |
| | | <text class="text">保存后的签名图片</text> |
| | | <view class="preview"> |
| | | <image :src="imgUrl" mode="" style="width: 100%;"></image> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <view> |
| | | <jushi-signature :settings="settings" @change="signatureChange"></jushi-signature> |
| | | <!-- <view class="" style="margin-top: 20rpx;"> |
| | | <text class="text">保存后的签名图片</text> |
| | | <view class="preview"> |
| | | <image :src="imgUrl" mode="" style="width: 100%;"></image> |
| | | </view> |
| | | </view> --> |
| | | </view> |
| | | </template> |
| | | |
| | | <script> |
| | | export default { |
| | | data() { |
| | | return { |
| | | settings:{ //签名设置 |
| | | width: '750',//签名区域的宽 |
| | | height: '500',//签名区域的高 |
| | | lineWidth:3,//签名时线宽 |
| | | textColor:'#007AFF' //签名文字颜色 |
| | | }, |
| | | imgUrl: '' |
| | | } |
| | | }, |
| | | methods: { |
| | | signatureChange(e) { |
| | | this.imgUrl = e |
| | | } |
| | | } |
| | | } |
| | | import { |
| | | Base64 |
| | | } from '@/utils/base64.js'; |
| | | import { |
| | | prodUrl, |
| | | clientId, |
| | | clientSecret, |
| | | minioBaseUrl |
| | | } from '@/common/setting' |
| | | export default { |
| | | data() { |
| | | return { |
| | | settings: { //签名设置 |
| | | width: '750', //签名区域的宽 |
| | | height: '1100', //签名区域的高 |
| | | lineWidth: 3, //签名时线宽 |
| | | textColor: '#007AFF' //签名文字颜色 |
| | | }, |
| | | imgUrl: '', |
| | | header: {}, |
| | | uploadConfig: { |
| | | url: prodUrl + "/blade-resource/oss/endpoint/put-file", |
| | | header: {}, |
| | | }, |
| | | } |
| | | }, |
| | | |
| | | onLoad() { |
| | | this.getHeader() |
| | | }, |
| | | |
| | | methods: { |
| | | //获取头部 |
| | | getHeader() { |
| | | let accessToken = uni.getStorageSync('accessToken'); |
| | | let myHeader = {} |
| | | if (accessToken) { |
| | | myHeader['Blade-Auth'] = 'bearer ' + accessToken; |
| | | } |
| | | // 客户端认证参数 |
| | | myHeader['Authorization'] = 'Basic ' + Base64.encode(clientId + ':' + clientSecret); |
| | | this.uploadConfig.header = myHeader |
| | | }, |
| | | |
| | | signatureChange(e) { |
| | | this.imgUrl = e; |
| | | this.uploadSignImg(e) |
| | | }, |
| | | |
| | | uploadSignImg(url) { |
| | | uni.uploadFile({ |
| | | url: this.uploadConfig.url, |
| | | filePath: url, |
| | | name: 'file', |
| | | header: this.uploadConfig.header, |
| | | success: (res) => { |
| | | let data = JSON.parse(res.data); |
| | | this.handleApply(data.data.name); |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | async handleApply(src) { |
| | | let pages = getCurrentPages(); |
| | | let prePage = pages[pages.length - 2]; |
| | | await prePage.$vm.applyRequest(); |
| | | uni.navigateBack({ |
| | | delta: 2 |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style> |
| | | .preview{ |
| | | margin: 10rpx; |
| | | border: 1rpx solid #aaaaaa; |
| | | border-radius: 10rpx; |
| | | } |
| | | .text { |
| | | margin: 20rpx; |
| | | color: #aaaaaa; |
| | | } |
| | | .preview { |
| | | margin: 10rpx; |
| | | border: 1rpx solid #aaaaaa; |
| | | border-radius: 10rpx; |
| | | } |
| | | |
| | | .text { |
| | | margin: 20rpx; |
| | | color: #aaaaaa; |
| | | } |
| | | </style> |
| | |
| | | <u-input v-model="form.name" border="none" placeholder="姓名" />
|
| | | </u-form-item>
|
| | | <u-form-item class="form-item" label="联系方式" labelWidth="80">
|
| | | <u-input v-model="form.phoneNumber" border="none" placeholder="联系方式" />
|
| | | <u-input type="number" v-model="form.phoneNumber" border="none" placeholder="联系方式" />
|
| | | </u-form-item>
|
| | | <u-form-item class="form-item" label="身份证号码" required prop="idCard" labelWidth="80">
|
| | | <u-input v-model="form.idCard" border="none" placeholder="身份证号码" />
|
| | | <u-input type="idcard" v-model="form.idCard" border="none" placeholder="身份证号码" />
|
| | | </u-form-item>
|
| | | <u-form-item class="form-item" label="户籍地址" labelWidth="80">
|
| | | <u-input v-model="form.hukouRegistration" border="none" placeholder="选填" />
|
| | |
| | | // 可以单个或者同时写两个触发验证方式
|
| | | trigger: ['change', 'blur'],
|
| | | }],
|
| | | "phoneNumber": [{
|
| | | required: true,
|
| | | message: '请输入联系方式',
|
| | | trigger: ['change', 'blur'],
|
| | | },
|
| | | {
|
| | | validator: (rule, value, callback) => {
|
| | | return uni.$u.test.mobile(value);
|
| | | },
|
| | | message: '手机号码不正确',
|
| | | trigger: ['change', 'blur']
|
| | | }
|
| | | ],
|
| | | idCard: [{
|
| | | required: true,
|
| | | message: '请输入身份证号',
|
| | |
| | | <style lang="scss" scoped>
|
| | | .form-box {
|
| | | background: #fff;
|
| | | } |
| | | |
| | | }
|
| | | </style> |
| | |
| | | message: '请输入姓名',
|
| | | trigger: ['blur', 'change']
|
| | | },
|
| | | 'phone': {
|
| | | type: 'string',
|
| | | required: true,
|
| | | message: '请输入手机号',
|
| | | trigger: ['blur', 'change']
|
| | | },
|
| | | 'phone': [{
|
| | | type: 'string',
|
| | | required: true,
|
| | | message: '请输入手机号',
|
| | | trigger: ['blur', 'change']
|
| | | },
|
| | |
|
| | | {
|
| | |
|
| | | validator: (rule, value, callback) => {
|
| | | return uni.$u.test.mobile(value);
|
| | | },
|
| | | message: '手机号码不正确',
|
| | | trigger: ['change', 'blur']
|
| | |
|
| | | }
|
| | |
|
| | | ],
|
| | | 'address': {
|
| | | type: 'string',
|
| | | required: true,
|
| | |
| | | .address-content {
|
| | | width: calc(100% - 116rpx - 20rpx);
|
| | | margin-right: 20rpx;
|
| | | text-align: right;
|
| | | }
|
| | |
|
| | | .location-btn {
|
| | |
| | | addOrUpdateTitle: "添加", |
| | | houseCode: "", |
| | | form: { |
| | | roleName: "", |
| | | relationName: '', |
| | | location: "", |
| | | title: "", |
| | | // roleName: "", |
| | | // relationName: '', |
| | | // location: "", |
| | | // title: "", |
| | | // roleType:null, |
| | | description: "", |
| | | // description: "", |
| | | }, |
| | | rules: { |
| | | 'selectDefaultName.relationship': { |
| | |
| | | onLoad(option) { |
| | | const data = JSON.parse(option.data) |
| | | console.log("data==>", data) |
| | | this.houseCode = data.houseCode |
| | | this.houseCode = data.houseCode; |
| | | |
| | | this.getRegionList() |
| | | this.type = data.type; |
| | | if (data.id) { |
| | |
| | | } |
| | | if (option.from) { |
| | | this.from = option.from; |
| | | if (data.type == 1) { |
| | | this.houseCode = uni.getStorageSync("siteInfo").houseCode |
| | | } |
| | | } |
| | | this.form.roleName = uni.getStorageSync("activeRole").roleName; |
| | | }, |
| | | |
| | | onShow() { |
| | |
| | | <u-form labelPosition="left" :model="info" :rules="rules" ref="form" labelWidth="100" |
| | | :labelStyle="{fontSize:'28rpx'}"> |
| | | <view class="content"> |
| | | <u-form-item label="姓名" prop="checkUserName" borderBottom required> |
| | | <u-input v-model="info.checkUserName" border="none" placeholder="请输入" placeholderClass="f-28 c-99" |
| | | <u-form-item label="姓名" prop="checkUserName" borderBottom required> |
| | | <u-input v-model="info.checkUserName" border="none" placeholder="请输入" placeholderClass="f-28 c-99" |
| | | inputAlign="right"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="手机" prop="checkTelephone" borderBottom required> |
| | | <u-form-item label="手机" prop="checkTelephone" borderBottom required> |
| | | <u-input v-model="info.checkTelephone" border="none" placeholder="请输入" placeholderClass="f-28 c-99" |
| | | inputAlign="right"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="申请事由" prop="applyName" borderBottom required> |
| | | <u-form-item label="申请事由" prop="applyName" borderBottom required> |
| | | <u-input v-model="info.applyName" border="none" placeholder="请输入" placeholderClass="f-28 c-99" |
| | | inputAlign="right"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="申请时间" prop="applyTime" borderBottom required @click="showSelectDate = true"> |
| | | <u-form-item label="申请时间" prop="applyTime" borderBottom required @click="showSelectDate = true"> |
| | | <u-input v-model="info.applyTime" disabled disabledColor="#ffffff" border="none" placeholder="请输入" |
| | | placeholderClass="f-28 c-99" inputAlign="right"></u-input> |
| | | <u-icon slot="right" name="arrow-right"></u-icon> |
| | |
| | | <view class="address-content f-28" v-if="info.location"> |
| | | {{info.location}} |
| | | </view> |
| | | <view class="address-content f-28" style="color: #c0c4cc;" v-if="!info.location"> |
| | | <view class="address-content f-28" style="color: #c0c4cc;" v-if="!info.location"> |
| | | 请选择位置 |
| | | </view> |
| | | <view class="location-btn c-main f-24" @click="getLocation()"> |
| | | <view class="location-btn c-main f-24" @click="getLocation()"> |
| | | 获取地址 |
| | | </view> |
| | | </view> |
| | | |
| | | |
| | | </u-form-item> |
| | | </view> |
| | | |
| | |
| | | </u-form> |
| | | <button class="submit-btn" @click="sumitInfo">提交</button> |
| | | <button class="list-btn mb-20" @click="navigatorPage">我上报的事件</button> |
| | | <u-datetime-picker ref="datetimePicker" :show="showSelectDate" v-model="applyTime" mode="datetime" |
| | | :formatter="formatter" @confirm="confirmDate" @cancel="showSelectDate = false"></u-datetime-picker> |
| | | <u-datetime-picker ref="datetimePicker" :show="showSelectDate" v-model="applyTime" mode="datetime" |
| | | :formatter="formatter" @confirm="confirmDate" @cancel="showSelectDate = false"></u-datetime-picker> |
| | | </view> |
| | | </template> |
| | | |
| | |
| | | mixins: [uploadMixin], |
| | | data() { |
| | | return { |
| | | form:{ |
| | | images:[] |
| | | form: { |
| | | images: [] |
| | | }, |
| | | info: { |
| | | checkUserName: "", |
| | | checkTelephone: "", |
| | | applyName:"", |
| | | applyTime:'' , |
| | | location:"", |
| | | houseCode:"", |
| | | districtName:"", |
| | | checkUserId:"", |
| | | reportType:1 |
| | | applyName: "", |
| | | applyTime: '', |
| | | location: "", |
| | | houseCode: "", |
| | | districtName: "", |
| | | checkUserId: "", |
| | | reportType: 1 |
| | | }, |
| | | rules: { |
| | | 'checkName': { |
| | | 'checkUserName': { |
| | | type: 'string', |
| | | required: true, |
| | | message: '请输入姓名', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | 'checkPhone': { |
| | | type: 'number', |
| | | required: true, |
| | | message: '请输入手机', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | 'checkTelephone': [{ |
| | | type: 'number', |
| | | required: true, |
| | | message: '请输入手机', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | { |
| | | |
| | | validator: (rule, value, callback) => { |
| | | return uni.$u.test.mobile(value); |
| | | }, |
| | | message: '手机号码不正确', |
| | | trigger: ['change', 'blur'] |
| | | |
| | | } |
| | | |
| | | ], |
| | | 'applyName': { |
| | | type: 'string', |
| | | required: true, |
| | |
| | | message: '请输入选择时间', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | 'location':{ |
| | | 'location': { |
| | | type: 'string', |
| | | required: true, |
| | | message: '请输入位置', |
| | |
| | | } |
| | | }, |
| | | showSelectDate: false, |
| | | applyTime:Number(new Date()) |
| | | applyTime: Number(new Date()) |
| | | } |
| | | }, |
| | | onLoad(option) { |
| | |
| | | let userInfo = uni.getStorageSync("userInfo"); |
| | | this.$set(this.info, "houseCode", siteInfo.houseCode); |
| | | this.$set(this.info, "districtName", siteInfo.name); |
| | | this.$set(this.info,"checkUserName",userInfo.real_name); |
| | | this.$set(this.info,"checkTelephone",userInfo.phone); |
| | | this.$set(this.info, "checkUserName", userInfo.real_name); |
| | | this.$set(this.info, "checkTelephone", userInfo.phone); |
| | | this.$set(this.info, "checkUserId", userInfo.user_id); |
| | | }, |
| | | |
| | |
| | | }, |
| | | |
| | | methods: { |
| | | |
| | | getLocation(){ |
| | | |
| | | getLocation() { |
| | | uni.chooseLocation({ |
| | | success:(res)=>{ |
| | | this.$set(this.info,"location",res.address); |
| | | success: (res) => { |
| | | this.$set(this.info, "location", res.address); |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | |
| | | |
| | | formatter(type, value) { |
| | | if (type === 'year') { |
| | |
| | | this.showSelectDate = false; |
| | | this.info.applyTime = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM:ss') |
| | | }, |
| | | |
| | | |
| | | checkImages() { |
| | | if (this.form.images.length) { |
| | | this.$set(this.info,"locationImageUrls",this.setImages()) |
| | | this.$set(this.info, "locationImageUrls", this.setImages()) |
| | | } |
| | | }, |
| | | |
| | | setImages(){ |
| | | |
| | | setImages() { |
| | | let urls = []; |
| | | for(let i of this.form.images){ |
| | | for (let i of this.form.images) { |
| | | urls.push(i.name); |
| | | } |
| | | return urls.join(",") |
| | | return urls.join(",") |
| | | }, |
| | | |
| | | sumitInfo() { |
| | |
| | | color: #fff; |
| | | margin-top: 50rpx; |
| | | } |
| | | .address-row{ |
| | | flex:1; |
| | | |
| | | .address-row { |
| | | flex: 1; |
| | | justify-content: flex-end; |
| | | align-items:center; |
| | | align-items: center; |
| | | } |
| | | .address-content{ |
| | | width:calc(100% - 116rpx - 20rpx); |
| | | margin-right:20rpx; |
| | | |
| | | .address-content { |
| | | width: calc(100% - 116rpx - 20rpx); |
| | | margin-right: 20rpx; |
| | | text-align: right; |
| | | } |
| | | .location-btn{ |
| | | width:116rpx; |
| | | height:46rpx; |
| | | |
| | | .location-btn { |
| | | width: 116rpx; |
| | | height: 46rpx; |
| | | line-height: 46rpx; |
| | | border-radius: 4rpx; |
| | | border:1px solid currentColor; |
| | | padding:0; |
| | | border: 1px solid currentColor; |
| | | padding: 0; |
| | | background-color: #fff; |
| | | text-align: center; |
| | | } |
| | |
| | | :labelStyle="{fontSize:'28rpx'}"> |
| | | <view class="content"> |
| | | <u-form-item label="对象电话" prop="transactionObjectTel" borderBottom required> |
| | | <u-input v-model="info.transactionObjectTel" border="none" placeholder="请输入" |
| | | <u-input v-model="info.transactionObjectTel" type="number" border="none" placeholder="请输入" |
| | | placeholderClass="f-28 c-99" inputAlign="right"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="交易金额" prop="transactionMoney" borderBottom required> |
| | | <u-input v-model="info.transactionMoney" border="none" placeholder="请输入" |
| | | <u-input type="digit" v-model="info.transactionMoney" border="none" placeholder="请输入" |
| | | placeholderClass="f-28 c-99" inputAlign="right"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="物品数量" prop="goodsNums" borderBottom required> |
| | |
| | | <u-upload :fileList="goodsImageUrls" :previewFullImage="uploadConfig.previewFullImage" |
| | | :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple" |
| | | :maxCount="uploadConfig.maxCount" :capture="uploadConfig.capture" |
| | | @afterRead="afterReadImgs($event,'goodsImageUrls')" @delete="deletePics($event,'goodsImageUrls')"> |
| | | @afterRead="afterReadImgs($event,'goodsImageUrls')" |
| | | @delete="deletePics($event,'goodsImageUrls')"> |
| | | <view class="upload-item upload-icon flex_base"> |
| | | <u-icon name="/static/icon/upload.png" width="60rpx" height="60rpx"></u-icon> |
| | | </view> |
| | |
| | | userId: "" |
| | | }, |
| | | rules: { |
| | | 'transactionObjectTel': { |
| | | type: 'string', |
| | | required: true, |
| | | message: '请输入对象电话', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | |
| | | 'transactionObjectTel': [{ |
| | | type: 'number', |
| | | required: true, |
| | | message: '请输入对象电话', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | { |
| | | validator: (rule, value, callback) => { |
| | | return uni.$u.test.mobile(value); |
| | | }, |
| | | message: '手机号码不正确', |
| | | trigger: ['change', 'blur'] |
| | | } |
| | | ], |
| | | 'transactionMoney': { |
| | | type: 'string', |
| | | required: true, |
| | | message: '请输入交易金额', |
| | | trigger: ['blur', 'change'] |
| | |
| | | }) |
| | | } |
| | | this.$set(this.info, "eventType", option.type); |
| | | |
| | | |
| | | if(option.type == 1){ |
| | | |
| | | |
| | | if (option.type == 1) { |
| | | this.$set(this.info, "reportType", 3); |
| | | }else if(option.type == 2){ |
| | | } else if (option.type == 2) { |
| | | this.$set(this.info, "reportType", 4); |
| | | }else { |
| | | } else { |
| | | this.$set(this.info, "reportType", 5); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | let siteInfo = uni.getStorageSync("siteInfo"); |
| | | let userInfo = uni.getStorageSync("userInfo"); |
| | | this.$set(this.info, "houseCode", siteInfo.houseCode); |
| | |
| | | <u-form labelPosition="left" :model="info" :rules="rules" ref="form" labelWidth="100" |
| | | :labelStyle="{fontSize:'28rpx'}"> |
| | | <view class="content"> |
| | | <u-form-item label="社区名称" prop="districtName" borderBottom > |
| | | <u-form-item label="社区名称" prop="districtName" borderBottom> |
| | | <view class="content-name f-28"> |
| | | {{info.districtName}} |
| | | </view> |
| | |
| | | inputAlign="right"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="自查时间" prop="checkTime" borderBottom required @click="showSelectDate = true"> |
| | | <u-input v-model="info.checkTime" disabled disabledColor="#ffffff" border="none" placeholder="请输入" |
| | | <u-input v-model="info.checkTime" 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="phone" borderBottom required> |
| | | <u-form-item label="自查人姓名" prop="checkUserName" borderBottom required> |
| | | <u-input v-model="info.checkUserName" border="none" placeholder="请输入" placeholderClass="f-28 c-99" |
| | | inputAlign="right"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="自查人手机" prop="phone" borderBottom required> |
| | | <u-input v-model="info.checkTelephone" border="none" placeholder="请输入" placeholderClass="f-28 c-99" |
| | | inputAlign="right"></u-input> |
| | | <u-form-item label="自查人手机" prop="checkTelephone" borderBottom required> |
| | | <u-input type="number" v-model="info.checkTelephone" border="none" placeholder="请输入" |
| | | placeholderClass="f-28 c-99" inputAlign="right"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="自查位置" prop="location" borderBottom ref="location" required> |
| | | <!-- <u-input v-model="info.location" border="none" placeholder="请输入" placeholderClass="f-28 c-99" |
| | | inputAlign="right"></u-input> --> |
| | | <view class="address-row flex"> |
| | | <view class="address-content f-28" v-if="info.location"> |
| | | {{info.location}} |
| | | </view> |
| | | <view class="address-content f-28 c-99" v-if="!info.location"> |
| | | 请选择位置 |
| | | </view> |
| | | <view class="location-btn c-main f-24" @click="getLocation()"> |
| | | 获取地址 |
| | | </view> |
| | | <view class="address-row flex"> |
| | | <view class="address-content f-28" v-if="info.location"> |
| | | {{info.location}} |
| | | </view> |
| | | <view class="address-content f-28 c-99" v-if="!info.location"> |
| | | 请选择位置 |
| | | </view> |
| | | <view class="location-btn c-main f-24" @click="getLocation()"> |
| | | 获取地址 |
| | | </view> |
| | | </view> |
| | | </u-form-item> |
| | | <u-form-item label="灭火器数量" prop="fireNums" borderBottom> |
| | | <u-input type="number" v-model="info.fireNums" border="none" placeholder="请输入" |
| | |
| | | </view> |
| | | |
| | | <view class="content"> |
| | | <u-form-item label="接待未成年人需要做到的五个必须" prop="fiveMust" labelWidth="300" :borderBottom="false" required labelPosition="top"> |
| | | <u-form-item label="接待未成年人需要做到的五个必须" prop="fiveMust" labelWidth="300" :borderBottom="false" required |
| | | labelPosition="top"> |
| | | <view class="mt-30"> |
| | | <u-radio-group v-model="info.fiveMust" placement="column"> |
| | | <u-radio :customStyle="{marginBottom: '10px'}" v-for="(item, index) in mustList" :key="index" |
| | | :label="item.name" :name="item.value" labelSize="14" iconSize="20"> |
| | | <u-radio :customStyle="{marginBottom: '10px'}" v-for="(item, index) in mustList" |
| | | :key="index" :label="item.name" :name="item.value" labelSize="14" iconSize="20"> |
| | | </u-radio> |
| | | </u-radio-group> |
| | | </view> |
| | |
| | | realName: "", |
| | | houseCode: "", |
| | | checkUserId: "", |
| | | reportType:2 |
| | | reportType: 2 |
| | | }, |
| | | rules: { |
| | | // 'districtName': { |
| | |
| | | message: '请选择自查时间', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | 'checkName': { |
| | | 'checkUserName': { |
| | | type: 'string', |
| | | required: true, |
| | | message: '请输入自查人姓名', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | 'checkPhone': { |
| | | type: 'number', |
| | | required: true, |
| | | message: '请输入自查人手机', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | 'checkTelephone': [{ |
| | | type: 'number', |
| | | required: true, |
| | | message: '请输入自查人手机', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | { |
| | | validator: (rule, value, callback) => { |
| | | return uni.$u.test.mobile(value); |
| | | }, |
| | | message: '手机号码不正确', |
| | | trigger: ['change', 'blur'] |
| | | } |
| | | ], |
| | | 'location': { |
| | | type: 'string', |
| | | required: true, |
| | |
| | | let userInfo = uni.getStorageSync("userInfo"); |
| | | this.$set(this.info, "houseCode", siteInfo.houseCode); |
| | | this.$set(this.info, "districtName", siteInfo.neiName || ""); |
| | | this.$set(this.info,"checkUserName",userInfo.real_name); |
| | | this.$set(this.info,"checkTelephone",userInfo.phone); |
| | | this.$set(this.info, "checkUserName", userInfo.real_name); |
| | | this.$set(this.info, "checkTelephone", userInfo.phone); |
| | | this.$set(this.info, "checkUserId", userInfo.user_id); |
| | | }, |
| | | |
| | |
| | | }, |
| | | |
| | | methods: { |
| | | |
| | | getLocation(){ |
| | | |
| | | getLocation() { |
| | | uni.chooseLocation({ |
| | | success:(res)=>{ |
| | | this.$set(this.info,"location",res.address); |
| | | success: (res) => { |
| | | this.$set(this.info, "location", res.address); |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | |
| | | formatter(type, value) { |
| | | if (type === 'year') { |
| | | return `${value}年` |
| | |
| | | sumitInfo() { |
| | | this.$refs.form.validate().then(valid => { |
| | | this.checkImages() |
| | | console.log("info=>",this.info); |
| | | console.log("info=>", this.info); |
| | | saveHotelReporting(this.info).then(res => { |
| | | uni.showToast({ |
| | | icon: 'success', |
| | |
| | | padding: 0 30rpx; |
| | | background-color: #fff; |
| | | } |
| | | .content-name{ |
| | | flex:1; |
| | | |
| | | .content-name { |
| | | flex: 1; |
| | | text-align: right; |
| | | } |
| | | |
| | |
| | | font-size: 32rpx; |
| | | color: #fff; |
| | | margin-top: 50rpx; |
| | | margin-bottom:20rpx; |
| | | margin-bottom: 20rpx; |
| | | } |
| | | |
| | | .mb-20 { |
| | | margin-bottom: 20rpx; |
| | | } |
| | | .mt-30{ |
| | | margin-top:30rpx; |
| | | |
| | | .mt-30 { |
| | | margin-top: 30rpx; |
| | | } |
| | | .address-row{ |
| | | flex:1; |
| | | |
| | | .address-row { |
| | | flex: 1; |
| | | justify-content: flex-end; |
| | | align-items:center; |
| | | align-items: center; |
| | | } |
| | | .address-content{ |
| | | width:calc(100% - 116rpx - 20rpx); |
| | | margin-right:20rpx; |
| | | |
| | | .address-content { |
| | | width: calc(100% - 116rpx - 20rpx); |
| | | margin-right: 20rpx; |
| | | text-align: right; |
| | | } |
| | | .location-btn{ |
| | | width:116rpx; |
| | | height:46rpx; |
| | | |
| | | .location-btn { |
| | | width: 116rpx; |
| | | height: 46rpx; |
| | | line-height: 46rpx; |
| | | border-radius: 4rpx; |
| | | border:1px solid currentColor; |
| | | padding:0; |
| | | border: 1px solid currentColor; |
| | | padding: 0; |
| | | background-color: #fff; |
| | | text-align: center; |
| | | } |
| | |
| | | inputAlign="right"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="自查时间" prop="checkTime" borderBottom required @click="showSelectDate = true"> |
| | | <u-input v-model="info.checkTime" disabled disabledColor="#ffffff" border="none" placeholder="请输入" |
| | | <u-input v-model="info.checkTime" 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> |
| | |
| | | inputAlign="right"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="自查人手机" prop="checkTelephone" borderBottom required> |
| | | <u-input v-model="info.checkTelephone" border="none" placeholder="请输入" placeholderClass="f-28 c-99" |
| | | inputAlign="right"></u-input> |
| | | <u-input type="number" v-model="info.checkTelephone" border="none" placeholder="请输入" |
| | | placeholderClass="f-28 c-99" inputAlign="right"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="自查位置" prop="location" borderBottom ref="location" required> |
| | | <view class="address-row flex"> |
| | |
| | | <u-upload :fileList="fireFacsImageUrls" :previewFullImage="uploadConfig.previewFullImage" |
| | | :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple" |
| | | :maxCount="uploadConfig.maxCount" :capture="uploadConfig.capture" |
| | | @afterRead="afterReadImgs($event,'fireFacsImageUrls')" @delete="deletePics($event,'fireFacsImageUrls')"> |
| | | @afterRead="afterReadImgs($event,'fireFacsImageUrls')" |
| | | @delete="deletePics($event,'fireFacsImageUrls')"> |
| | | <view class="upload-item upload-icon flex_base"> |
| | | <u-icon name="/static/icon/upload.png" width="60rpx" height="60rpx"></u-icon> |
| | | </view> |
| | |
| | | <u-upload :fileList="patrolImageUrls" :previewFullImage="uploadConfig.previewFullImage" |
| | | :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple" |
| | | :maxCount="uploadConfig.maxCount" :capture="uploadConfig.capture" |
| | | @afterRead="afterReadImgs($event,'patrolImageUrls')" @delete="deletePics($event,'patrolImageUrls')"> |
| | | @afterRead="afterReadImgs($event,'patrolImageUrls')" |
| | | @delete="deletePics($event,'patrolImageUrls')"> |
| | | <view class="upload-item upload-icon flex_base"> |
| | | <u-icon name="/static/icon/upload.png" width="60rpx" height="60rpx"></u-icon> |
| | | </view> |
| | |
| | | </u-form-item> |
| | | </view> |
| | | |
| | | <view class="upload bgc-ff mb-20" v-if="info.antiCollision == '有'"> |
| | | <view class="upload bgc-ff mb-20" v-if="info.antiCollision == '有'"> |
| | | <view class="f-28 mb-20">校园防撞装置照片</view> |
| | | <view class="mt-20"> |
| | | <u-upload :fileList="antiCollisionImageUrls" :previewFullImage="uploadConfig.previewFullImage" |
| | | :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple" |
| | | :maxCount="uploadConfig.maxCount" :capture="uploadConfig.capture" |
| | | @afterRead="afterReadImgs($event,'antiCollisionImageUrls')" @delete="deletePics($event,'antiCollisionImageUrls')"> |
| | | @afterRead="afterReadImgs($event,'antiCollisionImageUrls')" |
| | | @delete="deletePics($event,'antiCollisionImageUrls')"> |
| | | <view class="upload-item upload-icon flex_base"> |
| | | <u-icon name="/static/icon/upload.png" width="60rpx" height="60rpx"></u-icon> |
| | | </view> |
| | |
| | | <u-input type="number" v-model="info.fullSoNums" border="none" placeholder="请输入" |
| | | placeholderClass="f-28 c-99" inputAlign="right"></u-input> |
| | | </u-form-item> |
| | | <u-form-item label="兼职保安人数" prop="partSoNums" borderBottom required > |
| | | <u-form-item label="兼职保安人数" prop="partSoNums" borderBottom required> |
| | | <u-input type="number" v-model="info.partSoNums" border="none" placeholder="请输入" |
| | | placeholderClass="f-28 c-99" inputAlign="right"></u-input> |
| | | </u-form-item> |
| | |
| | | highAltitudeMonitor: '', |
| | | houseCode: "", |
| | | checkUserId: "", |
| | | reportType:6 |
| | | reportType: 6 |
| | | }, |
| | | rules: { |
| | | // 'districtName': { |
| | |
| | | message: '请选择自查时间', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | 'checkName': { |
| | | 'checkUserName': { |
| | | type: 'string', |
| | | required: true, |
| | | message: '请输入自查人姓名', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | 'checkTelephone': { |
| | | type: 'number', |
| | | required: true, |
| | | message: '请输入自查人手机', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | 'checkTelephone': [{ |
| | | type: 'number', |
| | | required: true, |
| | | message: '请输入自查人手机', |
| | | trigger: ['blur', 'change'] |
| | | }, |
| | | |
| | | { |
| | | validator: (rule, value, callback) => { |
| | | return uni.$u.test.mobile(value); |
| | | }, |
| | | message: '手机号码不正确', |
| | | trigger: ['change', 'blur'] |
| | | } |
| | | |
| | | ], |
| | | 'location': { |
| | | type: 'string', |
| | | required: true, |
| | |
| | | }, |
| | | |
| | | methods: { |
| | | |
| | | getLocation(){ |
| | | |
| | | getLocation() { |
| | | uni.chooseLocation({ |
| | | success:(res)=>{ |
| | | this.$set(this.info,"location",res.address); |
| | | success: (res) => { |
| | | this.$set(this.info, "location", res.address); |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | |
| | | formatter(type, value) { |
| | | if (type === 'year') { |
| | | return `${value}年` |
| | |
| | | <u-form-item label="审核结果" prop="confirmFlag" borderBottom> |
| | | <u-input v-model="confirmFlag" 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-icon slot="right" name="arrow-right"></u-icon> --> |
| | | </u-form-item> |
| | | <u-form-item label="备注" borderBottom v-if="info.confirmNotion"> |
| | | <u--input type="textarea" v-model="info.confirmNotion" :disabled="true" disabledColor="#ffffff" |
| | |
| | | </u-form> |
| | | </view> |
| | | |
| | | <view v-if="status == 2 && roleType == 2"> |
| | | <view v-if="status == 2"> |
| | | <u-subsection :list="tabList" :current="tabIndex" button-color="#017BFC" @change="changeTab"></u-subsection> |
| | | <u-form labelPosition="left" :model="goOutInfo" ref="form" labelWidth="100" |
| | | :labelStyle="{fontSize:'28rpx'}"> |
| | |
| | | }, |
| | | |
| | | showPickerDate() { |
| | | if (this.roleType == 2 && this.status != 1) return; |
| | | if (this.roleType == 1 && this.status != 1) return; |
| | | this.showSelectDate = true; |
| | | }, |
| | | cancelPickerDate() { |
| | |
| | | this.info.confirmFlag = data.confirmFlag; |
| | | this.info.confirmUserName = data.confirmUserName; |
| | | this.info.confirmUserTelephone = data.confirmUserTelephone; |
| | | for (let i in this.goOutInfo) { |
| | | this.goOutInfo[i] = data[i]; |
| | | } |
| | | this.startImageUrls = this.$setImageUrl(data.startImageUrls, 2); |
| | | this.reachImageUrls = this.$setImageUrl(data.reachImageUrls, 2); |
| | | this.returnImageUrls = this.$setImageUrl(data.returnImageUrls, 2); |
| | | } |
| | | this.basicData.forEach(item => { |
| | | item.value = data[item.name] |
| | | }) |
| | | this.locationImageUrls = this.$setImageUrl(data.locationImageUrls); |
| | | |
| | | }) |
| | | }, |
| | | |
| | |
| | | |
| | | submit(val) { |
| | | if (this.roleType == 1) { |
| | | if (!this.info.confirmUserName) { |
| | | uni.showToast({ |
| | | title: "请输入审核人员姓名", |
| | | icon: "none" |
| | | }) |
| | | return |
| | | } |
| | | if (!this.info.confirmUserTelephone) { |
| | | uni.showToast({ |
| | | title: "请输入审核人员手机号", |
| | | icon: "none" |
| | | }) |
| | | return; |
| | | } |
| | | this.info.confirmFlag = val.type; |
| | | this.info.confirmNotion = val.remark; |
| | | this.submitRequest(this.info); |
| | |
| | | </u-form-item>
|
| | | <u-form-item class="form-item" labelWidth="100" :required="isRequired" :disabled="isDisabled"
|
| | | label="手机号:" prop="principalPhone">
|
| | | <u--input border="none" v-model="form.principalPhone" placeholder="请输入">
|
| | | <u--input border="none" type="number" v-model="form.principalPhone" placeholder="请输入">
|
| | | </u--input>
|
| | | </u-form-item>
|
| | | </view>
|
| | |
| | | <view class="box-title">
|
| | | <box-title title="场所照片"></box-title>
|
| | | </view>
|
| | |
|
| | |
|
| | |
|
| | |
|
| | | <u-upload :fileList="form.images" :previewFullImage="uploadConfig.previewFullImage"
|
| | | :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple"
|
| | | :maxCount="uploadConfig.maxCount" :capture="uploadConfig.capture"
|
| | |
| | | message: '请输入场所负责人',
|
| | | trigger: ['blur', 'change'],
|
| | | },
|
| | | 'phone': {
|
| | | type: 'string',
|
| | | required: true,
|
| | | message: '请输入手机号',
|
| | | trigger: ['blur', 'change'],
|
| | | },
|
| | | 'principalPhone': [{
|
| | | required: false,
|
| | | message: '请输入手机号',
|
| | | trigger: ['blur', 'change'],
|
| | | },
|
| | | {
|
| | | validator: (rule, value, callback) => {
|
| | | return uni.$u.test.mobile(value);
|
| | | },
|
| | | message: '手机号码不正确',
|
| | | trigger: ['change', 'blur']
|
| | |
|
| | | }
|
| | |
|
| | | ],
|
| | | },
|
| | |
|
| | | labelList: [{
|
| | |
| | | <u-form-item label="法人信息" required class="form-item" prop="legalPerson">
|
| | | <u--input border="none" v-model="form.legalPerson" placeholder="请填写法人信息"></u--input>
|
| | | </u-form-item>
|
| | | <u-form-item label="法人电话" class="form-item">
|
| | | <u--input border="none" v-model="form.legalTel" placeholder="请填写法人电话"></u--input>
|
| | | <u-form-item label="法人电话" class="form-item" prop="legalTel" required>
|
| | | <u--input border="none" type="number" v-model="form.legalTel" placeholder="请填写法人电话"></u--input>
|
| | | </u-form-item>
|
| | | </u-form>
|
| | | </view>
|
| | |
| | | planImageUrls: []
|
| | | },
|
| | | rules: {
|
| | | location: {
|
| | | "location": {
|
| | | required: true,
|
| | | message: '请选择地址',
|
| | | trigger: ['blur', 'change']
|
| | | },
|
| | | placeName: {
|
| | | "placeName": {
|
| | | required: true,
|
| | | message: '请填写场所名称',
|
| | | trigger: ['blur', 'change']
|
| | | },
|
| | | legalPerson: {
|
| | | "legalPerson": {
|
| | | required: true,
|
| | | message: '请填写法人信息',
|
| | | trigger: ['blur', 'change']
|
| | | }
|
| | | },
|
| | | "legalTel": [{
|
| | | required: true,
|
| | | message: '请填写法人电话',
|
| | | trigger: ['blur', 'change']
|
| | | },
|
| | | {
|
| | | validator: (rule, value, callback) => {
|
| | | return uni.$u.test.mobile(value);
|
| | | },
|
| | | message: '手机号码不正确',
|
| | | trigger: ['change', 'blur']
|
| | | }
|
| | | ]
|
| | | },
|
| | | personNum: 1,
|
| | | curSelectSite: {},
|
| | |
| | | onShow() {
|
| | | this.curSelectSite = uni.getStorageSync('siteInfo')
|
| | |
|
| | | },
|
| | | onReady() {
|
| | | //onReady 为uni-app支持的生命周期之一
|
| | | this.$refs.form.setRules(this.rules)
|
| | | },
|
| | | mounted() {
|
| | | this.$nextTick(() => {
|
| | |
| | | updatePlaceExt(data) {
|
| | | data['imageUrls'] = this.getImageUrl('imageUrls')
|
| | | data['planImageUrls'] = this.getImageUrl('planImageUrls')
|
| | | data.confirmFlag = 1;
|
| | | // data['imageUrls'] = data['imageUrls'].join('、')
|
| | | // data['planImageUrls'] = data['planImageUrls'].join('、')
|
| | | updatePlaceExtData({
|
| | |
| | | this.personNum++
|
| | | },
|
| | | submit() {
|
| | | const placePractitioner = []
|
| | | this.$refs.formItemRef.forEach(item => {
|
| | | item.form.placeId = this.form.placeId
|
| | | placePractitioner.push(item.form)
|
| | | if (this.personNum > 0) {
|
| | | const placePractitioner = []
|
| | | this.$refs.formItemRef.forEach(item => {
|
| | | item.form.placeId = this.form.placeId
|
| | | placePractitioner.push(item.form)
|
| | | })
|
| | | this.form.placePractitioner = placePractitioner
|
| | | }
|
| | |
|
| | | this.$refs.form.validate().then(res => {
|
| | | this.updatePlaceExt(this.form)
|
| | | }).catch(errors => {
|
| | | uni.$u.toast('请完善基本信息')
|
| | | })
|
| | | this.form.placePractitioner = placePractitioner
|
| | | this.updatePlaceExt(this.form)
|
| | | },
|
| | |
|
| | | pushPage() {
|
| | |
| | | onShow() {
|
| | | this.currentRole = uni.getStorageSync("activeRole")
|
| | | this.reportList = []
|
| | | this.pagingParams.current = 1;
|
| | | this.getPageList()
|
| | | },
|
| | | onReachBottom() {
|
| | |
| | | confirmFlag: this.tabStatus
|
| | | }
|
| | | if (this.selectDate.length) {
|
| | | params.startTime = this.selectDate[0],
|
| | | params.endTime = this.selectDate[1]
|
| | | params.startTime = this.selectDate[0]
|
| | | params.endTime = this.selectDate[1]
|
| | | }
|
| | | if (this.houseCode) {
|
| | | params.addressCode = this.houseCode;
|
| | |
| | | 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,
|
| | |
| | | disable-scroll="true" @touchstart="touchstart" @touchmove="touchmove" @touchend="touchend"></canvas> |
| | | </view> |
| | | <view class="btn-view"> |
| | | <view class="save" @click="save()">保存</view> |
| | | <view class="save" @click="save()">确定</view> |
| | | <view class="clear" @click="clear()">清除</view> |
| | | </view> |
| | | </view> |