MrShi
2024-02-05 5019ed6016b47221321bf395cd102dc4b51b4724
company/src/components/business/OperaCompanyDescWindow.vue
@@ -1,7 +1,8 @@
<template>
    <GlobalWindow
        :title="title"
        width="80%"
        width="100%"
        :withFooter="false"
        :visible.sync="visible"
        :confirm-working="isWorking"
        @confirm="confirm"
@@ -9,7 +10,10 @@
        <div class="info">
            <div class="info_label">
                <span>企业详情</span>
                <el-button type="primary" @click="$refs.operaCompanyWindow.open('编辑企业信息', row)">修改企业信息</el-button>
                <div>
                    <el-button type="primary" @click="$refs.modification.open('修改保险方案', form)">更改保险方案</el-button>
                    <el-button type="primary" @click="$refs.operaCompanyWindow.open('编辑企业信息', form)">修改企业信息</el-button>
                </div>
            </div>
            <div class="info_list">
                <div class="info_list_item">
@@ -90,27 +94,49 @@
                <div class="info_list_item">
                    <div class="info_list_item_label" style="width: 100px;">营业执照:</div>
                    <div class="info_list_item_val">
                        <div class="image" v-if="form.businessImg.fileurl">
                            <img :src="form.businessImg.fileurlFull + form.businessImg.fileurl" alt="">
                        <div class="image" v-if="form.businessImg.fileurlFull">
                          <el-image
                              v-if="form.businessImg.fileurlFull!=null"
                              style="width: 90px; height: 90px"
                              :src="form.businessImg.fileurlFull"
                              :preview-src-list="[form.businessImg.fileurlFull]">
                          </el-image>
                        </div>
                    </div>
                </div>
                <div class="info_list_item">
                    <div class="info_list_item_label" style="width: 100px;">法人身份证:</div>
                    <div class="info_list_item_val">
                        <div class="image" v-if="form.idcardImgList[0].fileurl">
                            <img :src="form.idcardImgList[0].fileurlFull + form.idcardImgList[0].fileurl" alt="">
                        <div class="image" v-if="form.idcardImgList[0].fileurlFull">
                          <el-image
                              append-to-body
                              v-if="form.idcardImgList[0].fileurlFull"
                              style="width: 90px; height: 90px"
                              :src="form.idcardImgList[0].fileurlFull"
                              :preview-src-list="[form.idcardImgList[0].fileurlFull]">
                          </el-image>
                        </div>
                        <div class="image" v-if="form.idcardImgList[1].fileurl">
                            <img :src="form.idcardImgList[1].fileurlFull + form.idcardImgList[1].fileurl" alt="">
                        <div class="image" v-if="form.idcardImgList[1].fileurlFull">
                          <el-image
                              append-to-body
                              v-if="form.idcardImgList[1].fileurlFull"
                              style="width: 90px; height: 90px"
                              :src="form.idcardImgList[1].fileurlFull"
                              :preview-src-list="[form.idcardImgList[1].fileurlFull]">
                          </el-image>
                        </div>
                    </div>
                </div>
                <div class="info_list_item">
                    <div class="info_list_item_label" style="width: 100px;">企业签章:</div>
                    <div class="info_list_item_val">
                        <div class="image" v-if="form.signImg.fileurl">
                            <img :src="form.signImg.fileurlFull + form.signImg.fileurl" alt="">
                        <div class="image" v-if="form.signImg.fileurlFull">
                          <el-image
                              v-if="form.signImg.fileurlFull!=null"
                              style="width: 90px; height: 90px"
                              :src="form.signImg.fileurlFull"
                              :preview-src-list="[form.signImg.fileurlFull]">
                          </el-image>
                        </div>
                    </div>
                </div>
@@ -118,6 +144,9 @@
        </div>
        <!-- 新建/修改 -->
        <OperaCompanyWindow ref="operaCompanyWindow" @success="callback"/>
        <!-- 修改保险方案 -->
        <modification ref="modification" @success="callback"/>
        <!-- 修改手机号 -->
        <el-dialog
            title="更改绑定手机号"
            :visible.sync="visiblePhone"
@@ -130,20 +159,21 @@
                <div class="form_item">
                    <div class="form_item_label">绑定手机号:</div>
                    <div class="form_item_val">
                        <input type="text" placeholder="请输入" />
                        <el-input v-model="phone" placeholder="请输入"></el-input>
                    </div>
                </div>
                <div class="form_item">
                    <div class="form_item_label">验证码:</div>
                    <div class="form_item_val">
                        <input type="text" placeholder="请输入" />
                        <el-button type="primary" style="margin-left: 20px;">发送验证码</el-button>
                        <el-input v-model="code" placeholder="请输入"></el-input>
                        <el-button type="primary" style="margin-left: 20px;" @click="send" v-if="num === 0">发送验证码</el-button>
                        <el-button type="primary" style="flex-shrink: 0; margin-left: 15px;" v-else>{{num}}s</el-button>
                    </div>
                </div>
            </div>
            <span slot="footer" class="dialog-footer">
                <el-button @click="visiblePhone = false">取 消</el-button>
                <el-button type="primary" @click="visiblePhone = false">提 交</el-button>
                <el-button @click="close">取 消</el-button>
                <el-button type="primary" @click="updatePhoneEvent">提 交</el-button>
            </span>
        </el-dialog>
    </GlobalWindow>
@@ -153,20 +183,26 @@
    import BaseOpera from '@/components/base/BaseOpera'
    import GlobalWindow from '@/components/common/GlobalWindow'
    import OperaCompanyWindow from '@/components/business/OperaCompanyWindow'
    import { getById } from '@/api/business/company'
    import modification from '@/components/business/modification'
    import { getById, updatePhone } from '@/api/business/company'
    import { listForCompany } from '@/api/business/solutions'
    import { sendSms } from '@/api/business/smsEmail'
    export default {
        name: 'OperaCompanyDescWindow',
        extends: BaseOpera,
        components: { GlobalWindow, OperaCompanyWindow },
        components: { GlobalWindow, OperaCompanyWindow, modification },
        data () {
            return {
                ruleForm: {
                    phone: '',
                    code: ''
                },
                num: 0,
                timer: null,
                // 表单数据
                form: {},
                phone: '',
                code: '',
                visiblePhone: false,
                options: [],
                tableData: []
@@ -179,12 +215,94 @@
            })
        },
        methods: {
            close() {
                this.visiblePhone = false
                this.phone = ''
                this.code = ''
                clearInterval(this.timer)
                this.num = 0
            },
            updatePhoneEvent() {
                if (!this.phone) {
                    this.$message.warning('请输入手机号')
                    return
                }
                if (!this.code) {
                    this.$message.warning('请输入验证码')
                    return
                }
                updatePhone({
                    id: this.form.id,
                    captche: this.code,
                    phone: this.phone
                }).then(res => {
                    this.form.phone = JSON.parse(JSON.stringify(this.phone))
                    this.$message.success('操作成功')
                    this.visiblePhone = false
                    this.phone = ''
                    this.code = ''
                    clearInterval(this.timer)
                    this.num = 0
                })
            },
            send() {
                if (!this.phone) {
                    this.$message.warning('请输入手机号')
                    return
                }
                sendSms({ phone: this.phone })
                    .then(res => {
                        this.num = 60
                        this.setTime()
                    })
            },
            setTime() {
                this.timer = setInterval(() => {
                    this.num -= 1
                    if (this.num === 0) {
                        clearInterval(this.timer)
                        this.num = 0
                    }
                }, 1000)
            },
            open (title, target) {
                const that = this;
                this.title = title
                this.phone = ''
                this.code = ''
                clearInterval(this.timer)
                this.num = 0
                getById(target.id)
                    .then(res => {
                        this.form = res
                        this.form.type = 1
                        this.form.file = {
                            imgurl: '',
                            imgurlfull: ''
                        }
                        this.form.file1 = {
                            imgurl: '',
                            imgurlfull: ''
                        }
                        this.form.file2 = {
                            imgurl: '',
                            imgurlfull: ''
                        }
                        this.form.file3 = {
                            imgurl: '',
                            imgurlfull: ''
                        }
                        this.form.file.imgurl = res.businessImg.fileurl
                        this.form.file.imgurlfull = res.businessImg.fileurlFull
                        this.form.file1.imgurl = res.idcardImgList[0].fileurl
                        this.form.file1.imgurlfull = res.idcardImgList[0].fileurlFull
                        this.form.file2.imgurl = res.idcardImgList[1].fileurl
                        this.form.file2.imgurlfull = res.idcardImgList[1].fileurlFull
                        this.form.file3.imgurl = res.signImg.fileurl
                        this.form.file3.imgurlfull = res.signImg.fileurlFull
                        listForCompany({ companyId: target.id })
                            .then(resa => {
                                that.form.solutionList = resa.map(item => {
@@ -201,6 +319,7 @@
                                        canReduce: item.canReduce
                                    }
                                })
                                console.log(that.form)
                                that.visible = true
                            })
                    })