| | |
| | | <template>
|
| | | <view class="container">
|
| | | <view class="main-content">
|
| | | <view class="mt-20 b-c-w">
|
| | | <view class="base">
|
| | | <box-title :title="'基本信息'"></box-title>
|
| | | <u-form labelWidth="70" :model="form" :rules="rules" ref="form" class="form">
|
| | | <u-form-item label="场所位置" required class="form-item" prop="localtion">
|
| | | <u--input border="none" v-model="form.localtion"></u--input>
|
| | | <u-form-item label="场所位置" required class="form-item" prop="localtion" @click="getLocation">
|
| | | <u--input border="none" v-model="form.localtion" placeholder="请选择场所位置"></u--input>
|
| | | <u-icon slot="right" name="arrow-right"></u-icon>
|
| | | </u-form-item>
|
| | | <u-form-item label="场所名称" required class="form-item" prop="placeName">
|
| | | <u--input border="none" v-model="form.placeName"></u--input>
|
| | | <u--input border="none" v-model="form.placeName" placeholder="请填写场所名称"></u--input>
|
| | | </u-form-item>
|
| | | <u-form-item label="法人信息" required class="form-item" prop="legalPerson">
|
| | | <u--input border="none" v-model="form.legalPerson"></u--input>
|
| | | <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"></u--input>
|
| | | <u--input border="none" v-model="form.legalTel" placeholder="请填写法人电话"></u--input>
|
| | | </u-form-item>
|
| | | </u-form>
|
| | | </view>
|
| | | <view class="mt-20 b-c-w">
|
| | | <view class="license">
|
| | | <box-title title="营业执照"></box-title>
|
| | | <view class="upload-img">
|
| | | <u-upload :fileList="form.imageUrls" :previewFullImage="uploadConfig.previewFullImage"
|
| | | :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple"
|
| | | :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple" |
| | | uploadIcon="/static/icon/upload.png"
|
| | | :maxCount="uploadConfig.maxCount" :capture="uploadConfig.capture" @afterRead="afterReadImg"
|
| | | @delete="deletePic">
|
| | | </u-upload>
|
| | | </view>
|
| | | </view>
|
| | | <view class="mt-20 b-c-w">
|
| | | <view class="upload">
|
| | | <box-title title="场所平面图"></box-title>
|
| | | <view class="upload-img">
|
| | | <u-upload :fileList="form.planImageUrls" :previewFullImage="uploadConfig.previewFullImage"
|
| | | :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple"
|
| | | :accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple" |
| | | uploadIcon="/static/icon/upload.png"
|
| | | :maxCount="uploadConfig.maxCount" :capture="uploadConfig.capture" @afterRead="afterReadImg"
|
| | | @delete="deletePic">
|
| | | </u-upload>
|
| | |
| | | </view>
|
| | | <view class="practitioner">
|
| | | <box-title title="从业人员信息"></box-title>
|
| | | <view class="info" v-for="i in personNum" :key="i">
|
| | | <view class="title">人员信息-#{{ i }}</view>
|
| | | <view class="info" v-for="(item, index) in personNum" :key="i">
|
| | | <view class="title">人员信息-#{{ index*1 + 1 }}</view>
|
| | | <formItem ref="formItemRef"></formItem>
|
| | | </view>
|
| | |
|
| | |
| | | },
|
| | | onShow() {
|
| | | this.curSelectSite = uni.getStorageSync('siteInfo')
|
| | | this.getCsDetails()
|
| | | // this.getLocation()
|
| | |
|
| | | },
|
| | | mounted() {
|
| | | this.$nextTick(() => {
|
| | | this.getCsDetails()
|
| | | })
|
| | | },
|
| | | methods: {
|
| | | // getLocation() {
|
| | | // uni.chooseLocation({
|
| | | // success: (res) => {
|
| | | // console.log(res);
|
| | | // }
|
| | | // })
|
| | | // },
|
| | | getCsDetails() { |
| | | const that = this
|
| | | getLocation() {
|
| | | uni.chooseLocation({
|
| | | success: (addressResult) => {
|
| | | const {
|
| | | address
|
| | | } = addressResult
|
| | | this.form.localtion = address
|
| | | }
|
| | | })
|
| | | },
|
| | | getCsDetails() {
|
| | | getPlaceDetail({
|
| | | placeId: this.curSelectSite.id
|
| | | }).then(detailRes => {
|
| | |
| | | return
|
| | | }
|
| | | const placePractitioner = data?.placePractitioner || []
|
| | | console.log(data);
|
| | | Object.keys(this.form).forEach(key => {
|
| | | this.form[key] = data[key]
|
| | | if (key === 'imageUrls' || key === 'planImageUrls') {
|
| | |
| | | }
|
| | | })
|
| | |
|
| | | that.personNum = placePractitioner.length
|
| | | // that.$nextTick(() => {
|
| | | console.log(placePractitioner);
|
| | | setTimeout(() => { |
| | | const componetns = that.$refs.formItemRef || [] |
| | | that.$refs.formItemRef.forEach((item, index) => { |
| | | item.form = placePractitioner[index] |
| | | }) |
| | | }, 0)
|
| | | // })
|
| | | this.personNum = placePractitioner.length
|
| | | const componetns = this.$refs.formItemRef || []
|
| | | this.$refs.formItemRef.forEach((item, index) => {
|
| | | item.form = placePractitioner[index]
|
| | | })
|
| | | })
|
| | | },
|
| | | updatePlaceExt(data) {
|
| | |
| | | }
|
| | | </script>
|
| | |
|
| | | <style>
|
| | | page {
|
| | | background: #F5F5F5;
|
| | | }
|
| | | </style>
|
| | | <style lang="scss" scoped>
|
| | | .container {
|
| | | width: 100%;
|
| | | height: 100vh;
|
| | |
|
| | | height: 100%;
|
| | | display: flex;
|
| | | flex-direction: column;
|
| | | background: #F9F9FA;
|
| | | color: #fff;
|
| | | font-size: 32rpx;
|
| | |
|
| | | .main-content {
|
| | | height: 0;
|
| | | flex: 1;
|
| | | overflow-y: auto;
|
| | | padding: 0 30rpx 250rpx 30rpx;
|
| | |
|
| | | .base,
|
| | | .license,
|
| | | .upload,
|
| | | .practitioner {
|
| | | background-color: #fff;
|
| | | border-radius: 8rpx;
|
| | | margin-top: 20rpx;
|
| | | padding: 30rpx;
|
| | | }
|
| | |
|
| | | .license,
|
| | | .upload {
|
| | | padding-bottom: 20rpx !important;
|
| | |
|
| | | .upload-img {
|
| | | margin-top: 20rpx;
|
| | | }
|
| | | }
|
| | |
|
| | | .practitioner {
|
| | | .info {
|
| | | margin-top: 20rpx;
|
| | |
|
| | | .title {
|
| | | margin-bottom: 10rpx;
|
| | | text-align: center;
|
| | | }
|
| | | }
|
| | |
|
| | | .add-person {
|
| | | margin-top: 20rpx;
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | |
|
| | |
|
| | | .btn-group {
|
| | | padding: 20rpx;
|
| | | z-index: 999;
|
| | | background-color: #fff;
|
| | | width: calc(100% - 40rpx);
|
| | | position: fixed;
|
| | | left: 0;
|
| | | bottom: 0;
|
| | | }
|
| | | }
|
| | |
|
| | | /deep/ .u-form-item {
|
| | | border-bottom: 1rpx solid #f5f5f5;
|
| | | }
|
| | |
|
| | | .form {
|
| | | margin-top: 20rpx;
|
| | |
|
| | | .form-item {
|
| | | background-color: #fff;
|
| | | padding: 0 20rpx;
|
| | | border-bottom: 1rpx solid #f6f6f6;
|
| | | }
|
| | |
|
| | | }
|
| | |
|
| | | .upload-img {
|
| | | background-color: #fff;
|
| | | padding: 20rpx;
|
| | | padding-bottom: 10rpx;
|
| | | margin-top: 20rpx;
|
| | | }
|
| | |
|
| | | .add-person {
|
| | | width: 30%;
|
| | | margin: 20rpx auto;
|
| | | }
|
| | |
|
| | | .practitioner {
|
| | | .info {
|
| | | margin-top: 20rpx;
|
| | |
|
| | | .title {
|
| | | text-align: center;
|
| | | font-size: 30rpx;
|
| | | margin-bottom: 10rpx;
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | /deep/ .u-upload__button {
|
| | | border: 1rpx solid #EEEEEE;
|
| | | background-color: #fff;
|
| | | }
|
| | | </style> |