From 593b3453dbf8bb34546ad1b8c6f4b568d1d4ab39 Mon Sep 17 00:00:00 2001
From: peng <peng.com>
Date: 星期四, 16 十月 2025 13:47:41 +0800
Subject: [PATCH] 修改模板
---
seller/src/main.js | 1
seller/src/api/common.js | 5 ++
seller/src/views/order/order/editTemplateModal.vue | 51 ++++++++++++++++++++++++-
seller/src/views/order/order/orderDetail.vue | 5 ++
4 files changed, 59 insertions(+), 3 deletions(-)
diff --git a/seller/src/api/common.js b/seller/src/api/common.js
index 8e1fe45..4fe2288 100644
--- a/seller/src/api/common.js
+++ b/seller/src/api/common.js
@@ -39,3 +39,8 @@
data: params
})
}
+
+// 鑾峰彇鏂囦欢棰勮鍦板潃
+export const getFilePreviewUrl = (fileKey) => {
+ return getRequest(`${commonUrl}/common/common/file/view/${fileKey}`);
+};
diff --git a/seller/src/main.js b/seller/src/main.js
index b33493f..a4e8967 100644
--- a/seller/src/main.js
+++ b/seller/src/main.js
@@ -71,6 +71,7 @@
Vue.prototype.removeStore = removeStore;
Vue.prototype.$mainColor = mainColor;
Vue.prototype.md5 = md5;
+Vue.prototype.endpoint = "https://lmk-1356772813.cos.ap-chengdu.myqcloud.com"; // 娣诲姞endpoint閰嶇疆
const PC_URL = BASE.PC_URL; // 璺宠浆涔板绔湴鍧� pc绔�
const WAP_URL = BASE.WAP_URL; // 璺宠浆涔板绔湴鍧� wap绔�
Vue.prototype.linkTo = function (goodsId, skuId) {
diff --git a/seller/src/views/order/order/editTemplateModal.vue b/seller/src/views/order/order/editTemplateModal.vue
index 31b172d..18e0d4a 100644
--- a/seller/src/views/order/order/editTemplateModal.vue
+++ b/seller/src/views/order/order/editTemplateModal.vue
@@ -136,6 +136,7 @@
},
formValues: {},
selectedImageId: null,
+ selectedImageUrl: null, // 娣诲姞閫変腑鍥剧墖URL鐨勫瓨鍌�
currentUploadFieldId: null // 褰撳墠姝e湪涓婁紶鐨勫瓧娈礗D
};
},
@@ -152,6 +153,10 @@
},
visible(val) {
this.$emit("input", val);
+ // 褰撳脊绐楀叧闂椂锛岄噸缃�変腑鐨勫浘鐗嘦RL
+ if (!val) {
+ this.selectedImageUrl = null;
+ }
}
},
methods: {
@@ -187,10 +192,11 @@
// 鍒濆鍖栭�変腑鐨勫浘鐗嘔D
this.selectedImageId = null;
+ // 澶勭悊妯℃澘鑷畾涔夋爣棰樺瓧娈电殑鍥炴樉
if (res.data.templateConstomizeTitles) {
res.data.templateConstomizeTitles.forEach(item => {
// 鍥炴樉宸叉湁鐨勫��
- if (item.value) {
+ if (item.value !== undefined && item.value !== null) {
this.$set(this.formValues, item.id, item.value);
} else {
// 鍒濆鍖栬〃鍗曞�硷紙濡傛灉娌℃湁榛樿鍊硷級
@@ -199,14 +205,24 @@
});
}
- // 濡傛灉鏈夋ā鏉垮浘鐗囷紝璁剧疆榛樿閫変腑鐨勫浘鐗�
+ // 澶勭悊妯℃澘鍥剧墖鐨勫洖鏄�
if (res.data.templateImgs && res.data.templateImgs.length > 0) {
// 濡傛灉宸叉湁閫変腑鐨勫浘鐗嘔D锛屽垯浣跨敤璇D锛屽惁鍒欓粯璁ら�変腑绗竴寮�
if (res.data.chooseImageId) {
this.selectedImageId = res.data.chooseImageId;
+ // 鏌ユ壘閫変腑鍥剧墖鐨刄RL骞朵繚瀛�
+ const selectedImage = res.data.templateImgs.find(img => img.id === res.data.chooseImageId);
+ if (selectedImage) {
+ this.selectedImageUrl = selectedImage.imgUrl || '';
+ }
} else {
this.selectedImageId = res.data.templateImgs[0].id;
+ this.selectedImageUrl = res.data.templateImgs[0].imgUrl || '';
}
+ } else {
+ // 濡傛灉娌℃湁妯℃澘鍥剧墖锛屾竻绌洪�変腑鐘舵��
+ this.selectedImageId = null;
+ this.selectedImageUrl = null;
}
console.log("澶勭悊鍚庣殑鏁版嵁:", {
@@ -239,6 +255,21 @@
return fileKey;
}
+ // 濡傛灉鏈塭ndpoint閰嶇疆锛屼娇鐢╡ndpoint鎷兼帴URL
+ if (this.$root.endpoint) {
+ // 纭繚fileKey涓嶄互/寮�澶达紝endpoint涓嶄互/缁撳熬
+ const cleanEndpoint = this.$root.endpoint.replace(/\/$/, '');
+ const cleanFileKey = fileKey.replace(/^\//, '');
+ return `${cleanEndpoint}/${cleanFileKey}`;
+ }
+
+ // 濡傛灉鏄浉瀵硅矾寰勬垨鍏朵粬鏍煎紡锛屽皾璇曢�氳繃getFilePreviewUrl鑾峰彇瀹屾暣URL
+ try {
+ return getFilePreviewUrl(fileKey);
+ } catch (error) {
+ console.warn('getFilePreviewUrl failed for fileKey:', fileKey, error);
+ }
+
// 鍚﹀垯杩斿洖fileKey锛岃缁勪欢鑷繁澶勭悊
return fileKey;
},
@@ -246,6 +277,18 @@
// 閫夋嫨鍥剧墖
selectImage(imageId) {
this.selectedImageId = imageId;
+
+ // 鏌ユ壘閫変腑鍥剧墖鐨刄RL骞朵繚瀛�
+ if (this.templateData && this.templateData.templateImgs) {
+ const selectedImage = this.templateData.templateImgs.find(img => img.id === imageId);
+ if (selectedImage) {
+ this.selectedImageUrl = selectedImage.imgUrl || '';
+ } else {
+ this.selectedImageUrl = '';
+ }
+ } else {
+ this.selectedImageUrl = '';
+ }
},
// 涓婁紶鍥剧墖
@@ -301,6 +344,9 @@
this.$set(this.formValues, fieldId, fileKey);
this.$Message.success("鍥剧墖涓婁紶鎴愬姛");
+
+ // 寮哄埗鏇存柊瑙嗗浘浠ョ‘淇濆浘鐗囬瑙堟纭樉绀�
+ this.$forceUpdate();
} else {
this.$Message.error(res.msg || "鍥剧墖涓婁紶澶辫触");
}
@@ -327,6 +373,7 @@
sn: this.orderSn,
templateName: this.form.templateName,
chooseImageId: this.selectedImageId,
+ chooseImage: this.selectedImageUrl, // 娣诲姞閫変腑鍥剧墖URL
templateForm: []
};
diff --git a/seller/src/views/order/order/orderDetail.vue b/seller/src/views/order/order/orderDetail.vue
index 727d99c..8c04378 100644
--- a/seller/src/views/order/order/orderDetail.vue
+++ b/seller/src/views/order/order/orderDetail.vue
@@ -17,6 +17,10 @@
<Button @click="toPrint" type="primary" ghost
v-if="allowOperation.ship && logisticsType != 'SHUNFENG'">鎵撳嵃鐢靛瓙闈㈠崟</Button>
<Button @click="modifyRemark" type="primary">娣诲姞澶囨敞</Button>
+ <!-- 灏嗙紪杈戞ā鏉挎寜閽Щ鍒拌繖閲� -->
+ <Button v-if="orderInfo.userCheckTemplates && orderInfo.userCheckTemplates.length > 0"
+ @click="editTemplateInfo(orderInfo.userCheckTemplates[0].templateId, sn)"
+ type="primary">缂栬緫妯℃澘</Button>
</div>
</Card>
@@ -157,7 +161,6 @@
<div class="div-item-left">鍟嗗搧妯℃澘锛�</div>
<div class="div-item-right">
{{ item.templateName || '鏃犳ā鏉挎爣棰�' }} <!-- 澶勭悊绌哄�奸粯璁ゆ樉绀� -->
- <Button size="small" @click="editTemplateInfo(item.templateId, sn)" style="margin-left: 10px;">缂栬緫</Button>
</div>
</div>
<!-- 4. 閫夋嫨鍥剧墖锛氭覆鏌� chooseImg 瀛楁锛堝鐞� null/绌哄�硷級 -->
--
Gitblit v1.8.0