From 2d43a1df3f5ba42710e6d21c27d1e13bdb8dfd56 Mon Sep 17 00:00:00 2001
From: zhangwei <1504152376@qq.com>
Date: 星期一, 24 三月 2025 09:23:08 +0800
Subject: [PATCH] -
---
src/pages/enterprise/enterprise.vue | 276 +++++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 226 insertions(+), 50 deletions(-)
diff --git a/src/pages/enterprise/enterprise.vue b/src/pages/enterprise/enterprise.vue
index ea39769..a33f721 100644
--- a/src/pages/enterprise/enterprise.vue
+++ b/src/pages/enterprise/enterprise.vue
@@ -1,32 +1,47 @@
<template>
- <view class="full-page">
+ <view class="full-page-fff">
<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="formRef" labelWidth='90'>
+ <up-form-item label="钀ヤ笟鎵х収" prop="businessLicense" required ref="item1">
+ <fui-upload immediate :url="`${apiBaseUrl}/api/UpFile/UpBizLicense`" ref="uploadB" max='1'
+ background='#fff' @success="success" @error="error" @complete="complete" width="300"
+ :sizeType='sizeType' height="150">
+ <image src="/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="suppliername" 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="suppliercode" 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="regtime" 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="address" ref="item1">
+ <up-input v-model="enterpriseInfo.address" border="none" placeholder="璇疯緭鍏ヤ紒涓氬湴鍧�" readonly></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="contact" ref="item1">
+ <up-input v-model="enterpriseInfo.contact" border="none" placeholder="璇疯緭鍏ヨ仈绯讳汉"></up-input>
</up-form-item>
+ <up-form-item label="鑱旂郴鐢佃瘽" required prop="phone" ref="item1">
+ <up-input v-model="enterpriseInfo.phone" border="none" placeholder="璇疯緭鍏ヨ仈绯荤數璇�"></up-input>
+ </up-form-item>
+
+ <up-form-item label="鍏徃绠�浠�" required prop="resume" ref="item1">
+
+ </up-form-item>
+ <up-textarea v-model="enterpriseInfo.resume" count placeholder="璇疯緭鍏ュ叕鍙哥畝浠�" height='200'
+ maxlength='800'></up-textarea>
<view class="tabbtns">
- <up-button color='#fece01' class="text-69" text="淇濆瓨"></up-button>
+ <up-button color='#fece01' text="淇濆瓨" :loading='isLoading' loadingText="淇濆瓨涓�"
+ @click="saveUserCompany"></up-button>
</view>
</up-form>
</view>
@@ -36,49 +51,210 @@
<script setup>
import {
+ apiBaseUrl
+ } from '@/common/setting/constVarsHelper.js';
+ import {
+ onLoad,
+ onShow,
+ onReady
+ } from "@dcloudio/uni-app";
+ import {
+ useStore
+ } from 'vuex'
+ const store = useStore()
+ let sizeType = ['compressed']
+ let rules = {
+ businessLicense: {
+ required: true,
+ message: '钀ヤ笟鎵х収涓嶈兘涓虹┖',
+ trigger: ['blur', 'change']
+ }, //钀ヤ笟鎵х収璺緞
+ suppliername: {
+ required: true,
+ message: '浼佷笟鍚嶇О涓嶈兘涓虹┖',
+ trigger: ['blur', 'change']
+ }, //浼佷笟鍚嶇О
+ regtime: {
+ required: true,
+ message: '娉ㄥ唽鏃堕棿涓嶈兘涓虹┖',
+ trigger: ['blur', 'change']
+ }, //娉ㄥ唽鏃堕棿
+ address: {
+ required: true,
+ message: '浼佷笟鍦板潃涓嶈兘涓虹┖',
+ trigger: ['blur', 'change']
+ }, //鑱旂郴鍦板潃
+ suppliercode: {
+ required: true,
+ message: '浼佷笟娉ㄥ唽鍙蜂笉鑳戒负绌�',
+ trigger: ['blur', 'change']
+ }, //浼佷笟娉ㄥ唽鍙�
+ contact: {
+ required: true,
+ message: '鑱旂郴浜轰笉鑳戒负绌�',
+ trigger: ['blur', 'change']
+ }, //鑱旂郴浜�
+ resume: {
+ required: true,
+ message: '鍏徃绠�浠嬩笉鑳戒负绌�',
+ trigger: ['blur', 'change']
+ }, //鍏徃绠�浠�
+ phone: [{
+ required: true,
+ message: '鑱旂郴鐢佃瘽涓嶈兘涓虹┖',
+ trigger: ['blur', 'change']
+ }
+ // ,{
+ // // 鑷畾涔夐獙璇佸嚱鏁帮紝瑙佷笂璇存槑
+ // validator: (rule, value, callback) => {
+ // // 涓婇潰鏈夎锛岃繑鍥瀟rue琛ㄧず鏍¢獙閫氳繃锛岃繑鍥瀎alse琛ㄧず涓嶉�氳繃
+ // // uni.$u.test.mobile()灏辨槸杩斿洖true鎴栬�協alse鐨�
+ // return uni.$u.test.mobile(value);
+ // },
+ // message: '鑱旂郴鐢佃瘽涓嶆纭�',
+ // // 瑙﹀彂鍣ㄥ彲浠ュ悓鏃剁敤blur鍜宑hange
+ // trigger: ['change','blur'],
+ // },
+ ]
+ }
+ import {
ref,
- reactive
+ reactive,
+ getCurrentInstance,
+ onMounted
} from 'vue';
-
- // 浣跨敤 reactive 鍒涘缓鍝嶅簲寮忕姸鎬�
- const state = reactive({
- showSex: false,
- model1: {
- userInfo: {
- name: '',
- sex: '',
- },
- },
- actions: [{
- name: '鐢�'
- },
- {
- name: '濂�'
- },
- {
- name: '淇濆瘑'
- },
- ],
-
- radio: '',
- switchVal: false,
- });
-
+ const {
+ $upload,
+ $api,
+ $util,
+ $db
+ } = getCurrentInstance().appContext.config.globalProperties
+ let uploadB = ref()
+ onLoad(() => {
+ const userToken = $db.get("userToken");
+ if (!userToken) {
+ uni.showToast({
+ title: '璇峰厛鐧诲綍锛�',
+ icon: 'none',
+ duration: 1000,
+ complete: function() {
+ setTimeout(function() {
+ uni.hideToast();
+ uni.navigateTo({
+ url: '/pages/login/index'
+ });
+ },
+ 1000);
+ }
+ });
+ }
+ let data = $db.get('userInfo') ? $db.get('userInfo').userCompany : null
+ if (data) {
+ enterpriseInfo.businessLicense = data.businessLicense
+ enterpriseInfo.suppliername = data.suppliername //浼佷笟鍚嶇О
+ enterpriseInfo.regtime = data.regtime //娉ㄥ唽鏃堕棿
+ enterpriseInfo.address = data.address //鑱旂郴鍦板潃
+ enterpriseInfo.suppliercode = data.suppliercode //浼佷笟娉ㄥ唽鍙�
+ enterpriseInfo.contact = data.contact //鑱旂郴浜�
+ enterpriseInfo.phone = data.phone //鑱旂郴鐢佃瘽
+ enterpriseInfo.id = data.id
+ enterpriseInfo.resume = data.resume
+ }
+ })
+ let isLoading = ref(false)
// 浣跨敤 ref 鍒涘缓鍝嶅簲寮忓紩鐢�
const formRef = ref(null);
-
- // 瀹氫箟鏂规硶
- function sexSelect(e) {
- state.model1.userInfo.sex = e.name;
- if (formRef.value) {
- formRef.value.validateField('userInfo.sex');
+ onReady(() => {
+ formRef.value.setRules(rules);
+ if (enterpriseInfo.businessLicense) {
+ uploadB.value.urls = [enterpriseInfo.businessLicense]
+ uploadB.value.status = ['success']
}
+ })
+ onMounted(() => {
+ formRef.value.setRules(rules);
+ console.log(formRef.value, 'formRef'); // 璁块棶瀛愮粍浠禗emo涓殑灞炴��
+ });
+ const enterpriseInfo = reactive({
+ id: 0, //鐢ㄦ埛鍏徃Id
+ businessLicense: '', //钀ヤ笟鎵х収璺緞
+ suppliername: '', //浼佷笟鍚嶇О
+ regtime: '', //娉ㄥ唽鏃堕棿
+ address: '', //鑱旂郴鍦板潃
+ suppliercode: '', //浼佷笟娉ㄥ唽鍙�
+ contact: '', //鑱旂郴浜�
+ phone: '', //鑱旂郴鐢佃瘽
+ resume: '', //鍏徃绠�浠�
+ })
+
+ //涓婁紶鎴愬姛鏃惰Е鍙�
+ const success = (e) => {
+ //e.res 涓烘湇鍔″櫒杩斿洖鏁版嵁
+ //涓婁紶鎴愬姛鍥炶皟锛屽鐞嗘湇鍔″櫒杩斿洖鏁版嵁銆愭澶勬牴鎹疄闄呰繑鍥炴暟鎹繘琛屽鐞嗐��
+ let res = JSON.parse(e.res.data.replace(/\ufeff/g, "") || "{}")
+ console.log(res.data);
+ if (res.data.url) {
+ enterpriseInfo.businessLicense = res.data.url
+ enterpriseInfo.suppliername = res.data.info.name //浼佷笟鍚嶇О
+ enterpriseInfo.regtime = res.data.info.setDate //娉ㄥ唽鏃堕棿
+ enterpriseInfo.address = res.data.info.address //鑱旂郴鍦板潃
+ enterpriseInfo.suppliercode = res.data.info.regNum //浼佷笟娉ㄥ唽鍙�
+ enterpriseInfo.contact = res.data.info.person //鑱旂郴浜�
+ }
+ }
+ const isTelephone = (value) => {
+ value = value.replace(/[^-|\d]/g, '');
+ return /^((\+86)|(86))?(1)\d{10}$/.test(value) || /^0[0-9-]{10,13}$/.test(value);
+ }
+
+
+ //涓婁紶澶辫触鏃惰Е鍙�
+ const error = (e) => {}
+ //閫夋嫨鍥剧墖鎴栦笂浼犲畬鎴愭椂瑙﹀彂
+ const complete = (e) => {
+ if (e.action == 'delete') {
+ // 鍒犻櫎澶勭悊
+ }
+ console.log(e, '鍒犻櫎')
+
+ }
+ const getUserInfo = async () => {
+ await store.dispatch('getUserInfo')
+ uni.navigateBack()
+ $util.showToast({
+ title: "淇濆瓨鎴愬姛锛�",
+ icon: "success"
+ })
+ }
+ const saveUserCompany = () => {
+ formRef.value.validate().then(res => {
+ isLoading.value = true
+ $api.saveUserCompany(enterpriseInfo).then(res => {
+ if (res.code == 1) {
+ getUserInfo()
+
+ } else {
+ $util.showToast({
+ title: res.msg ? res.msg : res.error
+ })
+ }
+ isLoading.value = false
+ })
+ }).catch(errors => {
+ console.log(errors)
+ uni.$u.toast(errors[0].message)
+ })
+
}
</script>
<style>
- .content{
+ .content {
background-color: #fff;
padding: 0 20rpx;
}
+
+ .u-form-item__body {
+ padding: 5px 0 !important;
+ }
</style>
\ No newline at end of file
--
Gitblit v1.9.1