diff --git a/pages/artisan/profile.vue b/pages/artisan/profile.vue
index 629d01d..7c9d35d 100644
--- a/pages/artisan/profile.vue
+++ b/pages/artisan/profile.vue
@@ -191,645 +191,645 @@
\ No newline at end of file
diff --git a/pages/ruzhu/ruzhu.vue b/pages/ruzhu/ruzhu.vue
index 46efb3b..aa64e95 100644
--- a/pages/ruzhu/ruzhu.vue
+++ b/pages/ruzhu/ruzhu.vue
@@ -95,712 +95,719 @@
+ .submit-text {
+ color: #ffffff;
+ font-size: 32rpx;
+ font-weight: 500;
+ }
+
+ .showziliao {
+ width: 690rpx;
+ height: 98rpx;
+ background: #FF4767;
+ border-radius: 49rpx;
+ }
+
+ .showziliaotext {
+ height: 40rpx;
+ font-family: PingFangSC, PingFang SC;
+ font-weight: 500;
+ font-size: 32rpx;
+ color: #FFFFFF;
+ line-height: 96rpx;
+ font-style: normal;
+ margin: 0 0 0 281rpx;
+ align-items: center;
+ }
+
\ No newline at end of file
diff --git a/pages/ruzhu/sj-info.vue b/pages/ruzhu/sj-info.vue
index b0cdc2d..b5496e2 100644
--- a/pages/ruzhu/sj-info.vue
+++ b/pages/ruzhu/sj-info.vue
@@ -55,11 +55,14 @@
-
+
注册详细地址
-
+
+ {{ formData.uscc_address || '请选择' }}
+
+
@@ -295,6 +298,11 @@ export default {
uscc_name: '',
uscc_dependency: '',
uscc_address: '',
+ uscc_province: '',
+ uscc_city: '',
+ uscc_area: '',
+ longitude: '',
+ latitude: '',
legal_idcard_positive: '',
legal_idcard_negative: '',
legal_name: '',
@@ -318,7 +326,9 @@ export default {
isRecognizing: false,
recognizeType: '',
userId: null,
- identity: 3
+ identity: 3,
+ addressListener: null,
+ sjAddressListener: null
}
},
@@ -344,6 +354,10 @@ export default {
await this.getUserInfo();
this.regionCitys = this.ChinaCitys[0].citys;
this.regionAreas = this.regionCitys[0].areas;
+ this.setupAddressListener();
+ },
+ beforeDestroy() {
+ this.removeAddressListener();
},
methods: {
@@ -495,6 +509,18 @@ export default {
let city = this.regionCitys[index2].city;
let area = this.regionAreas[index3].area;
this.formData.uscc_dependency = province + '-' + city + '-' + area;
+ if (this.ChinaCitys[index1] && this.ChinaCitys[index1].code) {
+ this.formData.uscc_province = String(this.ChinaCitys[index1].code).substring(0, 6);
+ }
+ if (this.regionCitys[index2] && this.regionCitys[index2].code) {
+ this.formData.uscc_city = String(this.regionCitys[index2].code).substring(0, 6);
+ }
+ if (this.regionAreas[index3] && this.regionAreas[index3].code) {
+ this.formData.uscc_area = String(this.regionAreas[index3].code).substring(0, 6);
+ }
+ this.formData.uscc_address = '';
+ this.formData.longitude = '';
+ this.formData.latitude = '';
this.hideRegionPopup();
},
@@ -543,6 +569,163 @@ export default {
this.hideDatePicker();
},
+ buildRegionTextForSearch() {
+ const dependency = String(this.formData.uscc_dependency || '').trim();
+ if (!dependency) return '';
+ const parts = dependency.split('-');
+ const province = parts[0] || '';
+ const city = parts[1] || '';
+ const district = parts[2] || '';
+ let regionText = '';
+ if (province) regionText += province;
+ if (city && city !== province) regionText += city;
+ if (district) regionText += district;
+ return regionText;
+ },
+
+ getAddressValueForSearch() {
+ const rawAddress = String(this.formData.uscc_address || '').trim();
+ if (!rawAddress) return '';
+ const dependencyText = String(this.formData.uscc_dependency || '').trim();
+ const regionText = this.buildRegionTextForSearch();
+ let detail = rawAddress;
+ if (regionText && detail.indexOf(regionText) === 0) {
+ detail = detail.slice(regionText.length).trim();
+ } else if (dependencyText && detail.indexOf(dependencyText) === 0) {
+ detail = detail.slice(dependencyText.length).trim();
+ }
+ detail = detail.replace(/^[\s,-]+/, '').trim();
+ return detail || rawAddress;
+ },
+
+ getAddressInfo() {
+ const dependency = String(this.formData.uscc_dependency || '').trim();
+ const dependencyCode = String(this.formData.uscc_area || '').trim();
+ const address = this.getAddressValueForSearch();
+ const longitude = String(this.formData.longitude || '').trim();
+ const latitude = String(this.formData.latitude || '').trim();
+
+ const hasDependency = !!dependency;
+ const hasAddress = !!address;
+ const hasLocation = !!(longitude && latitude);
+
+ let params = 'source=sj_info';
+
+ if (hasDependency) {
+ params += `&dependency=${encodeURIComponent(dependency)}`;
+ if (dependencyCode) {
+ params += `&dependency_code=${dependencyCode}`;
+ }
+ }
+ if (hasAddress) {
+ params += `&address=${encodeURIComponent(address)}`;
+ }
+ if (hasLocation) {
+ params += `&longitude=${longitude}&latitude=${latitude}`;
+ }
+ if (!hasDependency && !hasAddress && !hasLocation) {
+ params += '&init_current_location=1&silent_locate=1';
+ }
+
+ uni.navigateTo({
+ url: `/pages/address/search?${params}`
+ });
+ },
+
+ setupAddressListener() {
+ this.addressListener = (addressData) => {
+ this.handleAddressSelected(addressData);
+ };
+ this.sjAddressListener = (addressData) => {
+ this.handleAddressSelected(addressData);
+ };
+ uni.$on('address-selected', this.addressListener);
+ uni.$on('address-selected-for-sj', this.sjAddressListener);
+ },
+
+ removeAddressListener() {
+ if (this.addressListener) {
+ uni.$off('address-selected', this.addressListener);
+ this.addressListener = null;
+ }
+ if (this.sjAddressListener) {
+ uni.$off('address-selected-for-sj', this.sjAddressListener);
+ this.sjAddressListener = null;
+ }
+ },
+
+ checkAddressData() {
+ try {
+ const storedAddress = uni.getStorageSync('sj_selected_address');
+ if (storedAddress) {
+ this.handleAddressSelected(storedAddress);
+ uni.removeStorageSync('sj_selected_address');
+ return;
+ }
+ } catch (e) { }
+
+ if (getApp().globalData && getApp().globalData.selectedAddress) {
+ this.handleAddressSelected(getApp().globalData.selectedAddress);
+ delete getApp().globalData.selectedAddress;
+ }
+
+ try {
+ const selectedAddress = uni.getStorageSync('selectedAddress');
+ if (selectedAddress) {
+ this.handleAddressSelected(selectedAddress);
+ uni.removeStorageSync('selectedAddress');
+ }
+ } catch (e) { }
+ },
+
+ handleAddressSelected(addressData) {
+ if (!addressData) return;
+
+ let detailAddress = '';
+ if (addressData.address) {
+ detailAddress = String(addressData.address).trim();
+ } else if (addressData.name) {
+ detailAddress = String(addressData.name).trim();
+ const regionParts = [];
+ if (addressData.pname) regionParts.push(addressData.pname);
+ if (addressData.cityname && addressData.cityname !== addressData.pname) regionParts.push(addressData.cityname);
+ if (addressData.adname) regionParts.push(addressData.adname);
+ const regionText = regionParts.join('');
+ if (regionText && detailAddress.indexOf(regionText) === 0) {
+ detailAddress = detailAddress.slice(regionText.length).trim();
+ }
+ detailAddress = detailAddress.replace(/^[\s,-]+/, '').trim();
+ }
+
+ this.$set(this.formData, 'uscc_address', detailAddress);
+
+ if (addressData.location) {
+ const [longitude, latitude] = String(addressData.location).split(',');
+ this.$set(this.formData, 'longitude', longitude || '');
+ this.$set(this.formData, 'latitude', latitude || '');
+ }
+
+ if (addressData.pname || addressData.cityname || addressData.adname) {
+ const locationParts = [];
+ if (addressData.pname) locationParts.push(addressData.pname);
+ if (addressData.cityname) locationParts.push(addressData.cityname);
+ if (addressData.adname) locationParts.push(addressData.adname);
+ this.$set(this.formData, 'uscc_dependency', locationParts.join('-'));
+ }
+
+ if (addressData.provinceCode) {
+ this.$set(this.formData, 'uscc_province', String(addressData.provinceCode).substring(0, 6));
+ }
+ if (addressData.cityCode) {
+ this.$set(this.formData, 'uscc_city', String(addressData.cityCode).substring(0, 6));
+ }
+ if (addressData.districtCode) {
+ this.$set(this.formData, 'uscc_area', String(addressData.districtCode).substring(0, 6));
+ }
+
+ this.$forceUpdate();
+ },
+
async recognizeBusinessLicense(imageUrl) {
try {
this.isRecognizing = true;
diff --git a/pages/shop/qualification_sj_change.vue b/pages/shop/qualification_sj_change.vue
index 9bc58e9..de7f180 100644
--- a/pages/shop/qualification_sj_change.vue
+++ b/pages/shop/qualification_sj_change.vue
@@ -6,7 +6,7 @@
请变更您需要变更的信息
-
+
@@ -23,8 +23,11 @@
-
-
+
+
请上传营业执照原件
@@ -36,27 +39,31 @@
商户类型
-
+
证件号码
-
+
-
+
企业名称
-
+
-
+
@@ -72,12 +79,17 @@
-
+
注册详细地址
-
+
+
+ {{ displayData.uscc_address || '请选择' }}
+
+
+
@@ -94,25 +106,31 @@
身份证照片
请保证图片上的文字清晰、无遮挡、证件边角可见
-
+
-
-
+
+
请上传身份证正面(人像面)
-
+
-
-
+
+
请上传身份证反面(国徽面)
@@ -125,22 +143,24 @@
法人代表
-
+
-
+
法人联系方式
-
+
法人身份证号
-
+
@@ -149,13 +169,17 @@
-
+
长久有效
-
+
指定日期有效
@@ -169,23 +193,25 @@
开始日期
- {{formatDateForDisplay(displayData.idcard_start_date) || '请选择日期'}}
+ {{ formatDateForDisplay(displayData.idcard_start_date) || '请选择日期' }}
-
+
结束日期
-
+
- {{formatDateForDisplay(displayData.idcard_end_date) || '请选择日期'}}
+ {{ formatDateForDisplay(displayData.idcard_end_date) || '请选择日期' }}
-
@@ -200,10 +226,11 @@
其他信息
-
+
行业资质
-
+
×
@@ -231,7 +258,7 @@
-
+
@@ -283,12 +310,14 @@
-
+
-
+
- {{item.label}}
+ {{ item.label }}
@@ -310,16 +339,16 @@
确定
-
+
- {{year}}年
+ {{ year }}年
- {{month}}月
+ {{ month }}月
- {{day}}日
+ {{ day }}日
@@ -331,8 +360,10 @@