|
|
@@ -7,8 +7,7 @@
|
|
|
import { add, update as updateOrderHeader, getDetail } from '@/api/order/order'
|
|
|
import { getList as getOrderItemList } from '@/api/order/order-item'
|
|
|
import { createSalesOrder, updateOrder, addOrderItem, updateOrderItem } from '@/api/order/sales-order'
|
|
|
-import { getCustomerInfo } from '@/api/common/index'
|
|
|
-import { getList as getAddressList } from '@/api/order/address'
|
|
|
+import { getCustomerInfo, getCustomerAddressSelectList } from '@/api/common/index'
|
|
|
import { submitOrderToU9 } from '@/api/order/sales-order'
|
|
|
|
|
|
// 常量和枚举导入
|
|
|
@@ -606,7 +605,7 @@ export default {
|
|
|
|
|
|
/**
|
|
|
* 加载客户地址信息
|
|
|
- * @description 根据客户ID获取地址列表,如果只有一个地址则直接选中,如果多个则选中默认地址
|
|
|
+ * @description 根据客户ID获取地址列表,如果只有一个地址则直接选中,多个则选中第一条
|
|
|
* @param {string} customerCode - 客户ID
|
|
|
* @returns {Promise<void>}
|
|
|
* @throws {Error} 当API调用失败时抛出异常
|
|
|
@@ -615,21 +614,18 @@ export default {
|
|
|
*/
|
|
|
async loadCustomerAddresses(customerCode) {
|
|
|
try {
|
|
|
- // 使用getList方法,传递分页参数和查询条件
|
|
|
- const response = await getAddressList(1, 100, { customerCode })
|
|
|
+ // 使用统一客户地址选择接口
|
|
|
+ const response = await getCustomerAddressSelectList(1, 100)
|
|
|
|
|
|
- if (response?.data?.success && response.data.data?.records) {
|
|
|
- const addresses = response.data.data.records
|
|
|
+ if (response?.data?.success && Array.isArray(response.data.data)) {
|
|
|
+ const addresses = response.data.data
|
|
|
|
|
|
if (addresses.length === 1) {
|
|
|
// 只有一个地址,直接选中
|
|
|
this.selectAddress(addresses[0])
|
|
|
} else if (addresses.length > 1) {
|
|
|
- // 多个地址,选中默认地址
|
|
|
- const defaultAddress = addresses.find(addr => addr.isDefault === 1)
|
|
|
- if (defaultAddress) {
|
|
|
- this.selectAddress(defaultAddress)
|
|
|
- }
|
|
|
+ // 多个地址,选中第一条
|
|
|
+ this.selectAddress(addresses[0])
|
|
|
}
|
|
|
} else {
|
|
|
console.warn('获取客户地址失败:', response?.data?.msg || '未知错误')
|
|
|
@@ -643,18 +639,18 @@ export default {
|
|
|
/**
|
|
|
* 选择地址
|
|
|
* @description 将选中的地址信息填充到表单中
|
|
|
- * @param {import('@/api/types/address').CustomerAddressRecord} address - 地址对象
|
|
|
+ * @param {import('@/api/types/common').CustomerAddressSelectItem} address - 地址对象
|
|
|
* @returns {void}
|
|
|
* @private
|
|
|
* @this {import('./types').OrderFormMixinComponent}
|
|
|
*/
|
|
|
selectAddress(address) {
|
|
|
if (address && this.formData) {
|
|
|
- this.$set(this.formData, 'addressId', address.id.toString())
|
|
|
- this.$set(this.formData, 'receiverName', address.receiverName || '')
|
|
|
- this.$set(this.formData, 'receiverPhone', address.receiverPhone || '')
|
|
|
- this.$set(this.formData, 'receiverRegion', address.regionName || '')
|
|
|
- this.$set(this.formData, 'receiverAddress', address.detailAddress || '')
|
|
|
+ this.$set(this.formData, 'addressId', address.id != null ? address.id.toString() : '')
|
|
|
+ this.$set(this.formData, 'receiverName', address.Contacts || '')
|
|
|
+ this.$set(this.formData, 'receiverPhone', address.Phone || '')
|
|
|
+ this.$set(this.formData, 'receiverRegion', address.CustAddress || '')
|
|
|
+ this.$set(this.formData, 'receiverAddress', address.CustAddress || '')
|
|
|
}
|
|
|
},
|
|
|
|