|
@@ -4,8 +4,8 @@
|
|
|
ref="LjDrawerRef"
|
|
|
:class="`${prefixCls}`"
|
|
|
:id="prefixCls"
|
|
|
- direction="rtl"
|
|
|
- size="60%"
|
|
|
+ direction="btt"
|
|
|
+ size="70%"
|
|
|
destroy-on-close
|
|
|
append-to-body
|
|
|
:show-close="false"
|
|
@@ -13,7 +13,10 @@
|
|
|
>
|
|
|
<template #header>
|
|
|
<div class="flx-justify-between">
|
|
|
- <div class="">详细报价</div>
|
|
|
+ <div class="">
|
|
|
+ 详细报价
|
|
|
+ <el-segmented v-model="dannumValue" :options="dannumOptions" class="ml-32" size="default" />
|
|
|
+ </div>
|
|
|
<div class="flx-shrink">
|
|
|
<el-button type="danger" :icon="Close" text circle @click="cancelClick"></el-button>
|
|
|
</div>
|
|
@@ -23,17 +26,17 @@
|
|
|
<template v-if="iforigin">
|
|
|
<el-tabs v-model="activeName">
|
|
|
<el-tab-pane label="新公式" name="first">
|
|
|
- <LjHeader class="flx-1" title="单据统计" />
|
|
|
- <FormulaGroup :data="isNormalFormulas" :fields="fieldsReplace" />
|
|
|
+ <!-- <LjHeader class="flx-1" title="单据统计" /> -->
|
|
|
+ <FormulaGroup :data="isNormalFormulas" :fields="isFieldsReplace" />
|
|
|
</el-tab-pane>
|
|
|
<el-tab-pane label="旧公式" name="second">
|
|
|
- <LjHeader class="flx-1" title="单据统计" />
|
|
|
- <FormulaGroup :data="isNormalFormulasOri" :fields="fieldsReplaceOri" />
|
|
|
+ <!-- <LjHeader class="flx-1" title="单据统计" /> -->
|
|
|
+ <FormulaGroup :data="isNormalFormulasOri" :fields="isFieldsReplaceOri" />
|
|
|
</el-tab-pane>
|
|
|
</el-tabs>
|
|
|
</template>
|
|
|
<template v-else>
|
|
|
- <LjHeader class="flx-1" title="单据统计" />
|
|
|
+ <!-- <LjHeader class="flx-1" title="单据统计" /> -->
|
|
|
<FormulaGroup :data="isNormalFormulas" :fields="fieldsReplace" />
|
|
|
</template>
|
|
|
</template>
|
|
@@ -47,6 +50,7 @@ import { useI18n } from "vue-i18n";
|
|
|
import { useDesign } from "@/hooks/useDesign";
|
|
|
import { useGlobalStore } from "@/stores/modules/global";
|
|
|
import { Close, Search } from "@element-plus/icons-vue";
|
|
|
+import { ElSegmented } from "element-plus";
|
|
|
import FormulaGroup from "./FormulaGroup.vue";
|
|
|
import LjHeader from "@/components/LjHeader/index.vue";
|
|
|
import { cloneDeep } from "lodash-es";
|
|
@@ -68,10 +72,14 @@ const LjDrawerRef = ref();
|
|
|
const formulaList = ref<any>([]);
|
|
|
const fieldsReplace = ref<any>([]);
|
|
|
const formulaListOri = ref<any>([]);
|
|
|
-const fieldsReplaceOri = ref<any>([]);
|
|
|
+const differ = ref<any>([]);
|
|
|
// const mainData = ref<any>({});
|
|
|
const formulaMxList = ref<any>([]);
|
|
|
|
|
|
+const dannumValue = ref("标准");
|
|
|
+
|
|
|
+const dannumOptions = ["标准", "散单", "大单", "小单"];
|
|
|
+
|
|
|
const isNormalFormulas = computed(() => {
|
|
|
let _formula = formulaList.value.filter((item: any) => item.type == 0);
|
|
|
_formula = _formula.map((item: any) => {
|
|
@@ -103,7 +111,7 @@ const isNormalFormulas = computed(() => {
|
|
|
// _formula[index].children.push(item);
|
|
|
// }
|
|
|
// });
|
|
|
- console.log("isNormalFormulas: >>> ", buildTreeArr(_formula));
|
|
|
+ // console.log("isNormalFormulas: >>> ", buildTreeArr(_formula));
|
|
|
|
|
|
return buildTreeArr(_formula);
|
|
|
});
|
|
@@ -111,6 +119,34 @@ const isNormalFormulasOri = computed(() => {
|
|
|
return formulaListOri.value.filter((item: any) => item.type == 0);
|
|
|
});
|
|
|
|
|
|
+const getDannumType = computed(() => {
|
|
|
+ let _type = 1;
|
|
|
+ switch (dannumValue.value) {
|
|
|
+ case "标准":
|
|
|
+ _type = 2;
|
|
|
+ break;
|
|
|
+ case "散单":
|
|
|
+ _type = 1;
|
|
|
+ break;
|
|
|
+ case "大单":
|
|
|
+ _type = 3;
|
|
|
+ break;
|
|
|
+ case "小单":
|
|
|
+ _type = 4;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ return _type;
|
|
|
+});
|
|
|
+
|
|
|
+const isFieldsReplace = computed(() => {
|
|
|
+ let tg = differ.value.find((item: any) => item.type == getDannumType.value);
|
|
|
+ return tg.replace;
|
|
|
+});
|
|
|
+const isFieldsReplaceOri = computed(() => {
|
|
|
+ let tg = differ.value.find((item: any) => item.type == getDannumType.value);
|
|
|
+ return tg.replace_origin;
|
|
|
+});
|
|
|
+
|
|
|
const isMxFormulas = computed(() => {
|
|
|
return formulaList.value.filter((item: any) => item.type == 2);
|
|
|
});
|
|
@@ -146,11 +182,26 @@ const cancelClick = () => {
|
|
|
* @description 显示组件
|
|
|
*/
|
|
|
const open = (data: any) => {
|
|
|
+ switch (data.dannum_type) {
|
|
|
+ case 2:
|
|
|
+ dannumValue.value = "标准";
|
|
|
+ break;
|
|
|
+ case 1:
|
|
|
+ dannumValue.value = "散单";
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ dannumValue.value = "大单";
|
|
|
+ break;
|
|
|
+ case 4:
|
|
|
+ dannumValue.value = "小单";
|
|
|
+ break;
|
|
|
+ }
|
|
|
+
|
|
|
visible.value = true;
|
|
|
formulaList.value = data.formula;
|
|
|
fieldsReplace.value = data.replace;
|
|
|
formulaListOri.value = data.formula_ori;
|
|
|
- fieldsReplaceOri.value = data.replace_ori;
|
|
|
+ differ.value = data.differ;
|
|
|
// mainData.value = data;
|
|
|
|
|
|
// formulaMxList.value;
|