002201 2 ani în urmă
părinte
comite
9ef90f7f74

+ 26 - 2
src/api/business/purchase/catalogue.js

@@ -1,10 +1,18 @@
 import request from "@/utils/request";
 
-export function LIST(params) {
+export function LIST(data, params) {
   return request({
     url: "/pu/price/catalogue/list",
-    method: "GET",
+    method: "POST",
     params: params,
+    data: data,
+  });
+}
+
+export function ITEM(data) {
+  return request({
+    url: `/pu/price/catalogue/${data}`,
+    method: "GET",
   });
 }
 
@@ -16,6 +24,22 @@ export function EDIT(data) {
   });
 }
 
+export function INVALID(data) {
+  return request({
+    url: "/pu/price/catalogue/invalid",
+    method: "POST",
+    data: data,
+  });
+}
+
+export function ENABLE(data) {
+  return request({
+    url: "/pu/price/catalogue/enable",
+    method: "POST",
+    data: data,
+  });
+}
+
 export function EXPORT(data) {
   return request({
     url: "/pu/price/catalogue/export",

+ 3 - 2
src/views/purchase/apply/add/column.js

@@ -176,14 +176,15 @@ export const TabColumns = [
         width: 200,
         referName: "MATERIAL_PARAM",
         dataMapping: {
-          material: "code",
+          material: "id",
+          materialCode: "code",
           materialName: "name",
           puUnit: "unitIdName",
           specification: "specification",
           manufacturer: "manufacturerIdName",
         },
       },
-      { title: "物料编码", key: "material" },
+      { title: "物料编码", key: "materialCode" },
       {
         title: "生产厂家",
         key: "manufacturer",

+ 3 - 2
src/views/purchase/apply/edit/column.js

@@ -174,14 +174,15 @@ export const TabColumns = [
         width: 200,
         referName: "MATERIAL_PARAM",
         dataMapping: {
-          material: "code",
+          material: "id",
+          materialCode: "code",
           materialName: "name",
           puUnit: "unitIdName",
           specification: "specification",
           manufacturer: "manufacturerIdName",
         },
       },
-      { title: "物料编码", key: "material" },
+      { title: "物料编码", key: "materialCode" },
       {
         title: "生产厂家",
         key: "manufacturer",

+ 1 - 3
src/views/purchase/apply/index.vue

@@ -46,9 +46,7 @@ export default {
         this.loading = true;
         const { pageNum, pageSize } = page;
         const { code, rows, total } = await LIST(
-          {
-            ...prop,
-          },
+          { ...prop },
           { pageNum, pageSize }
         );
         if (code === 200) {

+ 45 - 6
src/views/purchase/catalogue/column.js

@@ -1,4 +1,4 @@
-export const TableColumns = [
+export const FormColumns = [
   {
     key: "puOrgName",
     title: "采购组织",
@@ -39,12 +39,37 @@ export const TableColumns = [
   { key: "buyer", title: "采购员" },
   { key: "buyerName", title: "采购员名称" },
   { key: "source", title: "来源单据编号" },
-  { key: "status", title: "有效状态" },
-  { key: "enableStatus", title: "启用状态" },
+  {
+    key: "status",
+    title: "有效状态",
+    inputType: "Select",
+    referName: "is_effective",
+  },
+  {
+    key: "enableStatus",
+    title: "启用状态",
+    inputType: "Select",
+    referName: "is_effective",
+  },
   { key: "convertRate", title: "换算率" },
-  { key: "materialStatus", title: "物料启用状态" },
-  { key: "isDistribution", title: "配送价" },
-  { key: "priceType", title: "价格类型" },
+  {
+    key: "materialStatus",
+    title: "物料启用状态",
+    inputType: "Select",
+    referName: "is_effective",
+  },
+  {
+    key: "isDistribution",
+    title: "配送价",
+    inputType: "Select",
+    referName: "is_effective",
+  },
+  {
+    key: "priceType",
+    title: "价格类型",
+    inputType: "Select",
+    referName: "sys_price_type",
+  },
   { key: "demandCode", title: "采购需求单号" },
   { key: "expiryEarly", title: "效期预警" },
   { key: "priority", title: "含税/无税优先" },
@@ -80,4 +105,18 @@ export const SearchColumns = [
   },
   { key: "source", title: "来源单据编号", inputType: "Input" },
   { key: "material", title: "物料编码", inputType: "Input" },
+  {
+    key: "status",
+    title: "有效状态",
+    inputType: "Select",
+    referName: "is_effective",
+  },
+  {
+    key: "enableStatus",
+    title: "启用状态",
+    inputType: "Select",
+    referName: "is_effective",
+  },
 ];
+
+export default { FormColumns, SearchColumns };

+ 0 - 137
src/views/purchase/catalogue/edit/index.vue

@@ -1,137 +0,0 @@
-<script>
-import { TableColumns } from "../column";
-import { EDIT } from "@/api/business/purchase/contract";
-import { initDicts, initRules, initParams } from "@/utils/init";
-
-export default {
-  name: "EditDialog",
-  dicts: initDicts(TableColumns),
-  components: {},
-  data() {
-    return {
-      size: "mini",
-      visible: false,
-      loading: false,
-      columns: TableColumns,
-      rules: initRules(TableColumns),
-      params: initParams(TableColumns),
-    };
-  },
-  computed: {},
-  watch: {},
-  methods: {
-    //
-    open(prop) {
-      this.visible = true;
-      this.fetchItem(prop);
-    },
-    //
-    hide() {
-      this.visible = false;
-      this.params = initParams(this.columns);
-    },
-    //
-    async fetchItem(prop) {
-      try {
-        this.loading = true;
-        this.params = prop;
-      } catch (err) {
-        //
-      } finally {
-        this.loading = false;
-      }
-    },
-    //
-    submit(prop) {
-      this.$refs[prop].validate(async (valid) => {
-        if (valid) {
-          try {
-            const { code, msg } = await EDIT({
-              ...this.params,
-            });
-            if (code === 200) {
-              this.hide();
-              this.$emit("success");
-              
-            } else {
-              this.$notify.warning({ title: msg });
-            }
-          } catch (err) {
-            //
-          } finally {
-            //
-          }
-        } else {
-          return false;
-        }
-      });
-    },
-  },
-  created() {},
-  mounted() {},
-  destroyed() {},
-};
-</script>
-<template>
-  <el-dialog :visible.sync="visible" title="新增" fullscreen @close="hide">
-    <el-form
-      ref="ruleForm"
-      v-loading="loading"
-      :size="size"
-      :rules="rules"
-      :model="params"
-      label-width="auto"
-      label-position="right"
-    >
-      <el-row :gutter="20" style="display: flex; flex-wrap: wrap">
-        <el-col
-          v-for="(column, index) in columns"
-          :key="index"
-          :span="column.span || 8"
-        >
-          <el-form-item :prop="column.key" :label="column.title">
-            <el-input
-              v-if="column.inputType === 'Input'"
-              v-model="params[column.key]"
-              :disabled="column.disabled"
-              :readonly="column.readonly"
-              :clearable="column.clearable"
-              :placeholder="column.placeholder"
-              style="width: 100%"
-            ></el-input>
-            <dr-popover-select
-              v-if="column.inputType === 'PopoverSelect'"
-              v-model="params[column.key]"
-              :source.sync="params"
-              :title="column.title"
-              :type="column.referName"
-              :disabled="column.disabled"
-              :readonly="column.readonly"
-              :clearable="column.clearable"
-              :placeholder="column.placeholder"
-              :data-mapping="column.dataMapping"
-              style="width: 100%"
-            >
-            </dr-popover-select>
-            <el-switch
-              v-if="column.inputType === 'Switch'"
-              v-model="params[column.key]"
-              active-value="1"
-              inactive-value="0"
-            >
-            </el-switch>
-            <file-upload
-              v-if="column.inputType === 'Upload'"
-              v-model="params[column.key]"
-              :file-type="column.fileType"
-            ></file-upload>
-          </el-form-item>
-        </el-col>
-      </el-row>
-    </el-form>
-    <div style="text-align: right">
-      <el-button :size="size" @click="hide">取 消</el-button>
-      <el-button :size="size" @click="submit('ruleForm')">新 增</el-button>
-    </div>
-  </el-dialog>
-</template>

+ 45 - 0
src/views/purchase/catalogue/enable/index.vue

@@ -0,0 +1,45 @@
+<script>
+import { ENABLE } from "@/api/business/purchase/catalogue";
+
+export default {
+  name: "EnableDialog",
+  data() {
+    return {};
+  },
+  computed: {},
+  watch: {},
+  methods: {
+    //
+    open(prop, status) {
+      return this.$confirm("是否启停数据项?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "info",
+      })
+        .then(async () => {
+          try {
+            // try
+            const ids = prop.map((item) => item.id);
+            const { msg, code } = await ENABLE({ ids, enableStatus: status });
+            if (code === 200) {
+              this.$emit("success");
+              this.$notify.success(msg);
+            }
+          } catch (err) {
+            // catch
+            console.error(err);
+          } finally {
+            // finally
+          }
+        })
+        .catch((err) => {
+          console.error(err);
+        });
+    },
+  },
+  created() {},
+  mounted() {},
+  destroyed() {},
+};
+</script>
+<template></template>

+ 21 - 0
src/views/purchase/catalogue/hooks/data.js

@@ -0,0 +1,21 @@
+import { initRules, initParams } from "@/utils/init";
+
+export default function useData(prop) {
+  const { FormColumns } = prop;
+  const size = "mini";
+  const width = "100%";
+  const visible = false;
+  const loading = false;
+  const formColumns = FormColumns;
+  const rules = initRules(FormColumns);
+  const params = initParams(FormColumns);
+  return {
+    size,
+    width,
+    visible,
+    loading,
+    formColumns,
+    rules,
+    params,
+  };
+}

+ 16 - 0
src/views/purchase/catalogue/hooks/dicts.js

@@ -0,0 +1,16 @@
+import { initDicts } from "@/utils/init";
+
+export default function useDicts(prop) {
+  const { FormColumns = [], TabColumns = [] } = prop;
+  const dicts = Array.from(
+    new Set([
+      ...initDicts(FormColumns),
+      ...initDicts(
+        TabColumns.map((item) => item.tableColumns)
+          .flat()
+          .filter((item) => item.inputType === "Select")
+      ),
+    ])
+  );
+  return dicts;
+}

+ 32 - 0
src/views/purchase/catalogue/hooks/function.js

@@ -0,0 +1,32 @@
+import { ITEM } from "@/api/business/purchase/catalogue";
+
+export default function useMethods() {
+  const fetchItem = async ({ _this, prop }) => {
+    try {
+      // try
+      _this.loading = true;
+      const { code, data } = await ITEM(prop);
+      if (code === 200) {
+        _this.params = data;
+      }
+    } catch (err) {
+      // catch
+      console.error(err);
+    } finally {
+      // finally
+      _this.loading = false;
+    }
+  };
+  const open = ({ _this }) => {
+    _this.visible = true;
+  };
+  const hide = ({ _this }) => {
+    _this.visible = false;
+  };
+
+  return {
+    open,
+    hide,
+    fetchItem,
+  };
+}

+ 138 - 24
src/views/purchase/catalogue/index.vue

@@ -1,11 +1,14 @@
 <script>
-import { TableColumns, SearchColumns } from "./column";
+import { FormColumns, SearchColumns } from "./column";
 import { LIST } from "@/api/business/purchase/catalogue";
-import { initPage, initParams } from "@/utils/init";
+import { initPage, initDicts, initParams } from "@/utils/init";
 export default {
   name: "PuchaseCatalogue",
+  dicts: [...initDicts(SearchColumns), ...initDicts(FormColumns)],
   components: {
-    EditModel: () => import("./edit/index.vue"),
+    SeeModel: () => import("./see/index.vue"),
+    InvalidModel: () => import("./invalid/index.vue"),
+    EnableModel: () => import("./enable/index.vue"),
   },
   data() {
     return {
@@ -14,25 +17,34 @@ export default {
       searchColumns: SearchColumns,
       params: initParams(SearchColumns),
       tableData: [],
-      tableColumns: TableColumns,
+      selectData: [],
+      tableColumns: FormColumns,
       page: { pageNum: 1, pageSize: 10, total: 0 },
     };
   },
   computed: {},
   created() {
+    this.params.status = "0";
     this.useQuery(this.params, this.page);
   },
   methods: {
     //
+    setSelectable(row) {
+      const { status } = row;
+      // 失效
+      if (status === "2") return false;
+      // other
+      else return true;
+    },
+    //
     async fetchList(prop, page) {
       try {
         this.loading = true;
         const { pageNum, pageSize } = page;
-        const { code, rows, total } = await LIST({
-          pageNum,
-          pageSize,
-          ...prop,
-        });
+        const { code, rows, total } = await LIST(
+          { ...prop },
+          { pageNum, pageSize }
+        );
         if (code === 200) {
           this.tableData = rows;
           this.page.total = total;
@@ -46,6 +58,7 @@ export default {
     },
     // 查 询
     useQuery(prop, page) {
+      this.selectData = [];
       this.fetchList(prop, page);
     },
     // 重 置
@@ -54,12 +67,44 @@ export default {
       this.params = initParams(SearchColumns);
       this.useQuery(this.params, this.page);
     },
-    // 编 辑
-    async useEdit(prop) {
-      return;
-      const { open } = this.$refs.EditModel;
+    // 选 择
+    useSelect(prop) {
+      this.selectData = prop;
+    },
+    // 明 细
+    async useSee(prop) {
+      const { id } = prop;
+      const { open } = this.$refs.SeeModel;
+      await open(id);
+    },
+    // 失 效
+    async useInvalid(prop) {
+      const { open } = this.$refs.InvalidModel;
       await open(prop);
     },
+    hasPowerInvalid(prop) {
+      if (prop.length === 1) {
+        const [{ status }] = prop;
+        if (status === "2") return false;
+        else return true;
+      } else {
+        return !!prop.length;
+      }
+    },
+    // 启 停
+    async useEnable(prop, status) {
+      const { open } = this.$refs.EnableModel;
+      await open(prop, status);
+    },
+    hasPowerEnable(prop) {
+      if (prop.length === 1) {
+        const [{ status }] = prop;
+        if (status === "2") return false;
+        else return true;
+      } else {
+        return !!prop.length;
+      }
+    },
   },
 };
 </script>
@@ -67,10 +112,23 @@ export default {
 <template>
   <el-card
     v-loading="loading"
-    style="width: calc(100% - 24px); height: 100%; margin: 10px"
+    style="
+      width: calc(100% - 20px);
+      height: 100%;
+      margin: 10px;
+      padding: 0 20px 20px 0;
+    "
     :body-style="{ padding: 0 }"
   >
-    <!-- <see-drawer ref="SeeDrawerFef"></see-drawer> -->
+    <see-model ref="SeeModel"></see-model>
+    <invalid-model
+      ref="InvalidModel"
+      @success="useQuery(params, page)"
+    ></invalid-model>
+    <enable-model
+      ref="EnableModel"
+      @success="useQuery(params, page)"
+    ></enable-model>
     <!-- <add-drawer ref="AddDrawerFef" @close="resetList"></add-drawer> -->
     <!-- <edit-model ref="EditModel" @success="resetList"></edit-model> -->
     <el-form
@@ -96,14 +154,24 @@ export default {
                   style="width: 100%"
                   @keyup.enter.native="useQuery(params, page)"
                 ></el-input>
-                <el-switch
-                  v-if="column.inputType === 'Switch'"
+                <el-select
+                  v-if="column.inputType === 'Select'"
                   v-model="params[column.key]"
-                  active-value="1"
-                  inactive-value="0"
+                  :disabled="column.disabled"
+                  :clearable="column.clearable"
+                  :placeholder="column.placeholder"
+                  style="width: 100%"
+                  @change="useQuery(params, page)"
                   @keyup.enter.native="useQuery(params, page)"
                 >
-                </el-switch>
+                  <el-option
+                    v-for="item in dict.type[column.referName]"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                  >
+                  </el-option>
+                </el-select>
                 <dr-popover-select
                   v-if="column.inputType === 'PopoverSelect'"
                   v-model="params[column.key]"
@@ -116,6 +184,7 @@ export default {
                   :value-key="column.valueKey"
                   :placeholder="column.placeholder"
                   :data-mapping="column.dataMapping"
+                  @change="useQuery(params, page)"
                   @keyup.enter.native="useQuery(params, page)"
                 >
                 </dr-popover-select>
@@ -130,21 +199,66 @@ export default {
         查 询
       </el-button>
       <el-button :size="size" @click="useReset"> 重 置 </el-button>
+      <el-button
+        v-show="hasPowerInvalid(selectData)"
+        :size="size"
+        @click="useInvalid(selectData)"
+      >
+        失 效
+      </el-button>
+      <el-button
+        v-show="hasPowerEnable(selectData)"
+        :size="size"
+        @click="useEnable(selectData, '0')"
+      >
+        启 用
+      </el-button>
+      <el-button
+        v-show="hasPowerEnable(selectData)"
+        :size="size"
+        @click="useEnable(selectData, '2')"
+      >
+        停 用
+      </el-button>
     </el-row>
     <el-table
-      @row-dblclick="useEdit"
-      :data="tableData"
       :size="size"
+      :data="tableData"
+      highlight-current-row
+      @row-click="useSelect([$event])"
+      @row-dblclick="useSee"
+      @selection-change="useSelect"
       style="width: 100%; margin: 20px 0 0 0"
     >
       <el-table-column
+        fixed
+        width="55"
+        align="center"
+        type="selection"
+        :selectable="setSelectable"
+      >
+      </el-table-column>
+      <el-table-column
         v-for="(column, index) in tableColumns"
         :key="index"
         :prop="column.key"
         :label="column.title"
-        :width="column.width || 180"
-        :show-overflow-tooltip="column.showOverflowTooltip || true"
+        :width="column.width || 200"
+        show-overflow-tooltip
       >
+        <template slot-scope="scope">
+          <dict-tag
+            v-if="column.inputType === 'Select'"
+            :size="size"
+            :value="scope.row[column.key]"
+            :options="dict.type[column.referName]"
+          />
+          <dr-file-preview
+            v-else-if="column.inputType === 'Upload'"
+            v-model="scope.row[column.key]"
+          ></dr-file-preview>
+          <span v-else>{{ scope.row[column.key] }}</span>
+        </template>
       </el-table-column>
     </el-table>
     <pagination

+ 45 - 0
src/views/purchase/catalogue/invalid/index.vue

@@ -0,0 +1,45 @@
+<script>
+import { INVALID } from "@/api/business/purchase/catalogue";
+
+export default {
+  name: "InvalidDialog",
+  data() {
+    return {};
+  },
+  computed: {},
+  watch: {},
+  methods: {
+    //
+    open(prop) {
+      return this.$confirm("是否失效数据项?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "info",
+      })
+        .then(async () => {
+          try {
+            // try
+            const ids = prop.map((item) => item.id);
+            const { msg, code } = await INVALID({ ids });
+            if (code === 200) {
+              this.$emit("success");
+              this.$notify.success(msg);
+            }
+          } catch (err) {
+            // catch
+            console.error(err);
+          } finally {
+            // finally
+          }
+        })
+        .catch((err) => {
+          console.error(err);
+        });
+    },
+  },
+  created() {},
+  mounted() {},
+  destroyed() {},
+};
+</script>
+<template></template>

+ 127 - 0
src/views/purchase/catalogue/see/index.vue

@@ -0,0 +1,127 @@
+<script>
+import Column from "../column";
+import useData from "../hooks/data";
+import useDicts from "../hooks/dicts";
+import useMethods from "../hooks/function";
+
+export default {
+  name: "SeeDrawer",
+  dicts: useDicts(Column),
+  data() {
+    return {
+      column: 3,
+      title: "明 细",
+      ...useData(Column),
+    };
+  },
+  computed: {
+    hasPowerEnable: function () {
+      return this.$parent.$parent.hasPowerEnable;
+    },
+    hasPowerInvalid: function () {
+      return this.$parent.$parent.hasPowerInvalid;
+    },
+  },
+  watch: {},
+  methods: {
+    //
+    async open(prop) {
+      const { open, fetchItem } = useMethods();
+      await open({ _this: this });
+      await fetchItem({ _this: this, prop });
+    },
+    //
+    async hide() {
+      const { hide } = useMethods();
+      await hide({ _this: this });
+    },
+    //
+    async useInvalid(prop) {
+      const { useInvalid } = this.$parent.$parent;
+      await useInvalid(prop).then(() => {
+        const [{ id }] = prop;
+        const { fetchItem } = useMethods();
+        fetchItem({ _this: this, prop: id });
+      });
+    },
+    //
+    async useEnable(prop) {
+      const [{ id, enableStatus }] = prop;
+      const { useEnable } = this.$parent.$parent;
+      const status = enableStatus === "2" ? "0" : "2";
+      await useEnable(prop, status).then(() => {
+        const { fetchItem } = useMethods();
+        fetchItem({ _this: this, prop: id });
+      });
+    },
+  },
+  created() {},
+  mounted() {},
+  destroyed() {},
+};
+</script>
+<template>
+  <el-drawer
+    :size="width"
+    :title="title"
+    :show-close="false"
+    :visible.sync="visible"
+  >
+    <template slot="title">
+      <span>{{ title }}</span>
+      <span>
+        <el-button
+          :size="size"
+          circle
+          icon="el-icon-close"
+          @click="hide"
+        ></el-button>
+        <el-tooltip
+          v-if="hasPowerInvalid([params])"
+          effect="dark"
+          content="失 效"
+          placement="bottom-end"
+        >
+          <el-button
+            :size="size"
+            circle
+            icon="el-icon-no-smoking"
+            @click="useInvalid([params])"
+          ></el-button>
+        </el-tooltip>
+        <el-tooltip
+          v-if="hasPowerEnable([params])"
+          effect="dark"
+          :content="params.enableStatus === '2' ? '启 用' : '停 用'"
+          placement="bottom-end"
+        >
+          <el-button
+            :size="size"
+            circle
+            icon="el-icon-turn-off-microphone"
+            @click="useEnable([params])"
+          ></el-button>
+        </el-tooltip>
+      </span>
+    </template>
+    <el-descriptions :size="size" :column="column" border style="margin: 10px">
+      <el-descriptions-item
+        v-if="params[column.key]"
+        v-for="(column, index) in formColumns"
+        :key="index"
+        :label="column.title"
+      >
+        <dict-tag
+          v-if="column.inputType === 'Select'"
+          :size="size"
+          :value="params[column.key]"
+          :options="dict.type[column.referName]"
+        />
+        <span v-else-if="column.inputType === 'Upload'">
+          <dr-file-preview v-model="params[column.key]"></dr-file-preview>
+        </span>
+        <span v-else>{{ params[column.key] }}</span>
+      </el-descriptions-item>
+    </el-descriptions>
+  </el-drawer>
+</template>

+ 6 - 1
src/views/purchase/task/first-direct/column.js

@@ -11,7 +11,12 @@ export const TableColumns = [
     inputType: "Select",
     referName: "sys_price_type",
   },
-  { key: "isDistribution", title: "配送价" },
+  {
+    key: "isDistribution",
+    title: "配送价",
+    inputType: "Select",
+    referName: "sys_yes_no",
+  },
   { key: "effectiveDate", title: "价格生效日期" },
   { key: "endDate", title: "价格失效日期" },
   { key: "tax", title: "税率" },

+ 9 - 3
src/views/purchase/task/first-direct/index.vue

@@ -36,7 +36,7 @@ export default {
         this.loading = true;
         const { code, data } = await FIRSTDIRECT(prop);
         if (code === 200) {
-          prop = data;
+          this.data = data;
           return true;
         } else {
           return false;
@@ -144,8 +144,8 @@ export default {
               :size="size"
               :min="cItem.min(item)"
               :max="cItem.max(item)"
-              :controls-position="cItem.controlsPosition"
               :placeholder="cItem.placeholder"
+              :controls-position="cItem.controlsPosition"
               style="width: 90%"
             ></el-input-number>
             <el-date-picker
@@ -154,8 +154,8 @@ export default {
               :size="size"
               :type="cItem.type"
               :placeholder="cItem.placeholder"
-              :picker-options="cItem.pickerOptions"
               :value-format="cItem.valueFormat"
+              :picker-options="cItem.pickerOptions"
               style="width: 90%"
             ></el-date-picker>
             <el-input
@@ -166,6 +166,12 @@ export default {
               type="textarea"
               style="width: 90%"
             ></el-input>
+            <dict-tag
+              v-else-if="cItem.inputType === 'Select'"
+              :size="size"
+              :value="scope.row[cItem.key]"
+              :options="dict.type[cItem.referName]"
+            />
             <span v-else>{{ scope.row[cItem.key] }}</span>
           </template>
         </el-table-column>

+ 0 - 3
src/views/purchase/task/index.vue

@@ -38,9 +38,6 @@ export default {
       if (status === "1") {
         // 已执行协议直采
         return false;
-      } else if (status === "3") {
-        // 已退回
-        return false;
       } else {
         return true;
       }

+ 3 - 3
vue.config.js

@@ -32,18 +32,18 @@ module.exports = {
   devServer: {
     host: "0.0.0.0",
     port: port,
-    open: true,
+    open: false,
     proxy: {
       // detail: https://cli.vuejs.org/config/#devserver-proxy
       [process.env.VUE_APP_BASE_API]: {
         // target: `http://172.16.100.107:8080/drp-admin`, //测试
-        target: `http://test-sy.derom.com/drp-admin`, //测试
+        // target: `http://test-sy.derom.com/drp-admin`, //测试
         // target: `http://release-sy.derom.com/drp-admin`, //预发
         // target: `http://sy.derom.com/drp-admin`, //生产
         // target: `http://172.16.63.202:8000/drp-admin`, // D本地
         // target: `http://172.16.62.241:8000/drp-admin`, //笑寒本地
         // target: `http://172.16.13.152:8000/drp-admin`, //豪哥本地
-        // target: `http://172.16.13.47:8000/drp-admin`, //这是一个美女的本地
+        target: `http://172.16.13.47:8000/drp-admin`, //这是一个美女的本地
         // target: `http://172.16.13.113:8000/drp-admin`, //DWT本地
         // target: `http://172.16.13.77:8000/drp-admin`, //TQ本地
         // target: `http://172.16.13.21:8000/drp-admin`, // 雪豹的本地