diff --git a/package.json b/package.json
index 676d90e..ada3107 100644
--- a/package.json
+++ b/package.json
@@ -55,7 +55,7 @@
"mockjs": "^1.1.0",
"nprogress": "0.2.0",
"obj-modal": "^1.2.0",
- "obj-table-plus": "^2.3.0",
+ "obj-table-plus": "^2.4.0",
"quill": "1.3.7",
"screenfull": "5.0.2",
"signature_pad": "^3.0.0-beta.4",
diff --git a/src/api/modules/mer_admin.js b/src/api/modules/mer_admin.js
index 4d5ea89..6948e3a 100644
--- a/src/api/modules/mer_admin.js
+++ b/src/api/modules/mer_admin.js
@@ -1,5 +1,6 @@
import $http from "@/utils/httpRequest.js";
import city_data from "@/utils/country-level2-data.js";
+import qs from "qs";
export const mer_admin = {
/**
@@ -86,8 +87,12 @@ export const mer_admin = {
},
//删除模板
removeShippingTemplate: (id) => {
- return $http.post(`/merchant-api/shippingTemplates/delete`, {
+ return $http.post(`/merchant-api/shippingTemplates/delete`, qs.stringify({
id
+ }), {
+ headers: {
+ 'Content-Type': 'application/x-www-form-urlencoded'
+ }
})
},
//更新模板
diff --git a/src/views/modules/logistics-fare/logistics-template/index.vue b/src/views/modules/logistics-fare/logistics-template/index.vue
index bb40d54..1c38d97 100644
--- a/src/views/modules/logistics-fare/logistics-template/index.vue
+++ b/src/views/modules/logistics-fare/logistics-template/index.vue
@@ -8,6 +8,9 @@
v-model="dataList"
@query="queryList"
>
+
+
+
@@ -76,8 +79,64 @@ export default {
console.log(row);
this.$api.mer_admin.getShippingTemplateInfo(row.id).then((res) => {
console.log(res);
- // this.$set(row,tableData,);
+ console.log("row.tableData", row.tableData);
+
+ if (!row.tableData) {
+ if (res.data.data.shippingTemplatesRegionResultList) {
+ this.$set(
+ row,
+ "tableData",
+ res.data.data.shippingTemplatesRegionResultList.map(
+ (item) => {
+ item.cityCodes = item.cityCodes?.split(",");
+ console.log("item.cityCodes", item.cityCodes);
+
+ return item;
+ }
+ )
+ );
+ } else {
+ //包邮,假数据写死
+ this.$set(row, "tableData", [
+ {
+ cityCodes: "0",
+ first: "1",
+ firstPrice: "0.00",
+ renewal: "1",
+ renewalPrice: "0.00",
+ },
+ ]);
+ }
+ }
});
+ const findLabelsByCode = (tree, codes) => {
+ const labels = [];
+ // console.log("row.cityCodes",row.cityCodes);
+ //全国范围
+ if (codes == "0") {
+ return "中国";
+ }
+ function searchTree(node) {
+ // 如果当前节点的 code 在 codes 数组中,添加其 label
+ if (codes?.includes(node.code)) {
+ labels.push(node.name);
+ }
+ // 如果有子节点,继续递归查找
+ if (node.children) {
+ for (let child of node.children) {
+ searchTree(child);
+ }
+ }
+ }
+
+ // 对树的每个顶层节点调用 searchTree
+ for (let node of tree) {
+ searchTree(node);
+ }
+
+ return labels.join(",");
+ };
+
const appointMapper = {
0: "(全国包邮)",
1: "(部分包邮)",
@@ -101,10 +160,25 @@ export default {
});
};
const remove = () => {
- this.$api.mer_admin.removeShippingTemplate(row.id)
- .then(res=>{
+ this.$api.mer_admin.removeShippingTemplate(row.id).then((res) => {
this.$refs.oTable.refresh();
- })
+ });
+ };
+ const groupMapper = {
+ 1: {
+ first: "首件(个)",
+ renewal: "续件(个)",
+ },
+ 2: {
+ first: "首重(kg)",
+ renewal: "续重(kg)",
+ },
+ };
+ //打开弹窗预览
+ const openPreview = (str) => {
+ this.$confirm(str, "详情", {
+ showCancel: false,
+ });
};
return (
@@ -122,7 +196,11 @@ export default {
修改
-
+
删除
@@ -130,30 +208,59 @@ export default {
-
+
{
+ console.log("scope", scope);
+ return (
+ {
+ openPreview(
+ findLabelsByCode(
+ this.$api.mer_admin.getCityOptions(),
+ scope.row.cityCodes
+ )
+ );
+ }}
+ >
+ {findLabelsByCode(
+ this.$api.mer_admin.getCityOptions(),
+ scope.row.cityCodes
+ )}
+
+ );
+ },
+ }}
>
diff --git a/src/views/modules/logistics-fare/logistics-template/popup/add-template.vue b/src/views/modules/logistics-fare/logistics-template/popup/add-template.vue
index 375ead1..fee0a46 100644
--- a/src/views/modules/logistics-fare/logistics-template/popup/add-template.vue
+++ b/src/views/modules/logistics-fare/logistics-template/popup/add-template.vue
@@ -30,13 +30,13 @@ const BASE_DATA = {
//默认运费,不限制城市
cityCodes: "0",
//首重
- first: "",
+ first: 1,
//首重价格
- firstPrice: "",
+ firstPrice: 0,
//续重
- renewal: "",
+ renewal: 1,
//续重价格
- renewalPrice: "",
+ renewalPrice: 0,
},
],
//追加
@@ -121,8 +121,8 @@ export default {
//默认运费回显
_data.shippingTemplatesRegionList =
- [_data.shippingTemplatesRegionResultList?.[0]] ||
- BASE_DATA.shippingTemplatesRegionList;
+ _data.shippingTemplatesRegionResultList?.slice(0,1)||
+ cloneDeep(BASE_DATA.shippingTemplatesRegionList);
//指定城市设置运费
_data.shippingTemplatesRegionListAppend =
_data.shippingTemplatesRegionResultList
@@ -130,7 +130,7 @@ export default {
?.map((item) => {
item.cityCodes = item.cityCodes.split(",");
return item;
- }) || BASE_DATA.shippingTemplatesRegionListAppend;
+ }) || cloneDeep(BASE_DATA.shippingTemplatesRegionListAppend);
//指定包邮条件
_data.shippingTemplatesConditionList =
_data.shippingTemplatesConditionResultList?.map((item) => {
@@ -144,7 +144,7 @@ export default {
item.conditionType = "件数";
}
return item;
- }) || BASE_DATA.shippingTemplatesConditionList;
+ }) || cloneDeep(BASE_DATA.shippingTemplatesConditionList);
//计价方式
_data.calculateMethod = {
@@ -167,7 +167,7 @@ export default {
return {
add: () => {
this.$nextTick(() => {
- this.modalData = JSON.parse(JSON.stringify(BASE_DATA));
+ this.modalData = cloneDeep(BASE_DATA);
});
this.isAdd = true;
this.modalConfig.title = "添加运费模板";
@@ -181,6 +181,8 @@ export default {
this.isAdd = true;
refillData(e);
this.modalConfig.title = "添加运费模板";
+ console.log("this.modalData",this.modalData);
+
this.modalData.templateName += "(复制)";
},
};
@@ -394,6 +396,7 @@ export default {
//默认运费,不限制城市
cityCodes: "",
//城市可选的选项
+ cityOptions: [],
//首重
first: "",
//首重价格
@@ -522,9 +525,9 @@ export default {
>