-
zhangwei
2024-08-22 d5eb1ecff5d0236359c744b334cf30fcfdad1132
src/pages/enterprise/enterprise.vue
@@ -1,29 +1,44 @@
<template>
   <view class="full-page">
      <view class="content">
         <up-form labelPosition="left" :model="model1" :rules="rules" ref="form1" labelWidth='90'>
            <up-form-item label="公司营业执照" prop="userInfo.sex" required borderBottom @click="showSex = true; hideKeyboard()"
               ref="item1">
               <tem-upload src='/static/upload.png'/>
         <up-form labelPosition="left" :model="enterpriseInfo" :rules="rules" ref="form1" labelWidth='90'>
            <up-form-item label="公司营业执照" prop="enterpriseInfo.businessLicense" required borderBottom ref="item1">
               <fui-upload immediate :url="`${apiBaseUrl}api/UpFile/UpBizLicense`" ref="uploadB" max='1'
                  background='#fff' @success="success" @error="error" @complete="complete" width="300"
                  height="150">
                  <image
                     :src="enterpriseInfo.businessLicense?enterpriseInfo.businessLicense:'/static/enterprise.png'"
                     mode="widthFix" style="width: 300rpx;height: 150rpx;"></image>
               </fui-upload>
               <!-- <template #right>
                  <up-icon name="arrow-right"></up-icon>
               </template> -->
            </up-form-item>
            <up-form-item label="企业名称" required prop="userInfo.name" borderBottom ref="item1">
               <up-input v-model="state.model1.userInfo.name" border="none" placeholder="请输入企业名称"></up-input>
            <up-form-item label="企业名称" required prop="enterpriseInfo.suppliername" borderBottom ref="item1">
               <up-input v-model="enterpriseInfo.suppliername" border="none" placeholder="请输入企业名称"
                  readonly></up-input>
            </up-form-item>
            <up-form-item label="企业注册地址" required prop="userInfo.name" borderBottom ref="item1">
               <up-input v-model="state.model1.userInfo.name" border="none" placeholder="请输入企业注册地址"></up-input>
            <up-form-item label="企业注册号" required prop="enterpriseInfo.suppliercode" borderBottom ref="item1">
               <up-input v-model="enterpriseInfo.suppliercode" border="none" placeholder="请输入企业注册号"
                  readonly></up-input>
            </up-form-item>
            <up-form-item label="联系人" required prop="userInfo.name" borderBottom ref="item1">
               <up-input v-model="state.model1.userInfo.name" border="none" placeholder="请输入联系人"></up-input>
            <up-form-item label="注册时间" required prop="enterpriseInfo.regtime" borderBottom ref="item1">
               <up-input v-model="enterpriseInfo.regtime" border="none" placeholder="请输入企业注册号" readonly></up-input>
            </up-form-item>
            <up-form-item label="联系电话" required prop="userInfo.name" borderBottom ref="item1">
               <up-input v-model="state.model1.userInfo.name" border="none" placeholder="请输入联系电话"></up-input>
            <up-form-item label="企业注册地址" required prop="enterpriseInfo.address" borderBottom ref="item1">
               <up-input v-model="enterpriseInfo.address" border="none" placeholder="请输入企业注册地址"
                  readonly></up-input>
            </up-form-item>
            <up-form-item label="联系人" required prop="enterpriseInfo.contact" borderBottom ref="item1">
               <up-input v-model="enterpriseInfo.contact" border="none" placeholder="请输入联系人"></up-input>
            </up-form-item>
            <up-form-item label="联系电话" required prop="enterpriseInfo.phone" borderBottom ref="item1">
               <up-input v-model="enterpriseInfo.phone" border="none" placeholder="请输入联系电话"></up-input>
            </up-form-item>
            
            <up-form-item label="公司简介" required prop="userInfo.name" borderBottom ref="item1">
               <up-textarea v-model="state.model1.userInfo.name" count placeholder="请输入公司简介" maxlength='800' autoHeight></up-textarea>
            <up-form-item label="公司简介" required prop="enterpriseInfo.resume" borderBottom ref="item1">
               <up-textarea v-model="enterpriseInfo.resume" count placeholder="请输入公司简介"
                  maxlength='800'></up-textarea>
            </up-form-item>
            <view class="tabbtns">
               <up-button color='#fece01' class="text-69" text="保存"></up-button>
@@ -36,6 +51,9 @@
<script setup>
   import {
      apiBaseUrl
   } from '@/common/setting/constVarsHelper.js';
   import {
      ref,
      reactive
   } from 'vue';
@@ -43,22 +61,8 @@
   // 使用 reactive 创建响应式状态  
   const state = reactive({
      showSex: false,
      model1: {
         userInfo: {
            name: '',
            sex: '',
         },
      },
      actions: [{
            name: '男'
         },
         {
            name: '女'
         },
         {
            name: '保密'
         },
      ],
      
      radio: '',
      switchVal: false,
@@ -66,14 +70,39 @@
   // 使用 ref 创建响应式引用  
   const formRef = ref(null);
   const enterpriseInfo = reactive({
      id: 0, //用户公司Id
      businessLicense: '', //营业执照路径
      suppliername: '', //企业名称
      regtime: '', //注册时间
      address: '', //联系地址
      suppliercode: '', //企业注册号
      contact: '', //联系人
      phone: '', //联系电话
      resume: '', //公司简介
   })
   // 定义方法
   function sexSelect(e) {
      state.model1.userInfo.sex = e.name;
      if (formRef.value) {
         formRef.value.validateField('userInfo.sex');
   //上传成功时触发
   const success = (text, e) => {
      //e.res 为服务器返回数据
      //上传成功回调,处理服务器返回数据【此处根据实际返回数据进行处理】
      let res = JSON.parse(e.res.data.replace(/\ufeff/g, "") || "{}")
      console.log(res.data, 'res.data');
      if (res.data.url) {
         enterpriseInfo.businessLicense = res.data.url
      }
   }
   //上传失败时触发
   const error = (e) => {}
   //选择图片或上传完成时触发
   const complete = (e) => {
      if (e.action == 'delete') {
         // 删除处理
      }
      console.log(e, '删除')
   }
</script>
<style>