Browse Source

Merge branch 'master' into sit

戴艳蓉 3 years ago
parent
commit
6acbcff3cb
32 changed files with 329 additions and 31 deletions
  1. 0 0
      dist/index.html
  2. 0 0
      dist/static/css/chunk-1dde2c1a.368fa72c.css
  3. BIN
      dist/static/css/chunk-1dde2c1a.368fa72c.css.gz
  4. 0 0
      dist/static/css/chunk-32d78286.6efa4be9.css
  5. 0 0
      dist/static/css/chunk-3e859cc7.bf56aeb1.css
  6. 0 0
      dist/static/css/chunk-4e6f0a75.92daac56.css
  7. BIN
      dist/static/css/chunk-4e6f0a75.92daac56.css.gz
  8. 0 0
      dist/static/css/chunk-b086b426.46845d3b.css
  9. BIN
      dist/static/css/chunk-b086b426.46845d3b.css.gz
  10. 0 0
      dist/static/js/app.05350599.js
  11. BIN
      dist/static/js/app.05350599.js.gz
  12. 0 0
      dist/static/js/app.14235106.js
  13. BIN
      dist/static/js/app.14235106.js.gz
  14. 0 0
      dist/static/js/chunk-1dde2c1a.ceb4ddb8.js
  15. BIN
      dist/static/js/chunk-1dde2c1a.ceb4ddb8.js.gz
  16. 0 0
      dist/static/js/chunk-2aa72184.9f570522.js
  17. BIN
      dist/static/js/chunk-2aa72184.9f570522.js.gz
  18. 0 0
      dist/static/js/chunk-32d78286.ead997ca.js
  19. BIN
      dist/static/js/chunk-32d78286.ead997ca.js.gz
  20. BIN
      dist/static/js/chunk-3e859cc7.77491a9d.js.gz
  21. 0 0
      dist/static/js/chunk-4e6f0a75.4a97d856.js
  22. BIN
      dist/static/js/chunk-4e6f0a75.4a97d856.js.gz
  23. 0 0
      dist/static/js/chunk-b086b426.e13d6af8.js
  24. BIN
      dist/static/js/chunk-b086b426.e13d6af8.js.gz
  25. 3 1
      src/apis/service/good-share/index.js
  26. 1 1
      src/apis/service/purchaseIn/workbench/index.js
  27. 12 1
      src/layout/components/AppMain.vue
  28. 1 0
      src/styles/index.scss
  29. 302 0
      src/views/good-share/components/backGoodShow.vue
  30. 4 24
      src/views/good-share/components/columnsForm.js
  31. 1 1
      src/views/good-share/index.vue
  32. 5 3
      src/views/purchaseIn/workbench/detail.vue

File diff suppressed because it is too large
+ 0 - 0
dist/index.html


File diff suppressed because it is too large
+ 0 - 0
dist/static/css/chunk-1dde2c1a.368fa72c.css


BIN
dist/static/css/chunk-1dde2c1a.368fa72c.css.gz


File diff suppressed because it is too large
+ 0 - 0
dist/static/css/chunk-32d78286.6efa4be9.css


File diff suppressed because it is too large
+ 0 - 0
dist/static/css/chunk-3e859cc7.bf56aeb1.css


File diff suppressed because it is too large
+ 0 - 0
dist/static/css/chunk-4e6f0a75.92daac56.css


BIN
dist/static/css/chunk-4e6f0a75.92daac56.css.gz


File diff suppressed because it is too large
+ 0 - 0
dist/static/css/chunk-b086b426.46845d3b.css


BIN
dist/static/css/chunk-b086b426.46845d3b.css.gz


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/app.05350599.js


BIN
dist/static/js/app.05350599.js.gz


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/app.14235106.js


BIN
dist/static/js/app.14235106.js.gz


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-1dde2c1a.ceb4ddb8.js


BIN
dist/static/js/chunk-1dde2c1a.ceb4ddb8.js.gz


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-2aa72184.9f570522.js


BIN
dist/static/js/chunk-2aa72184.9f570522.js.gz


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-32d78286.ead997ca.js


BIN
dist/static/js/chunk-32d78286.ead997ca.js.gz


BIN
dist/static/js/chunk-3e859cc7.77491a9d.js.gz


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-4e6f0a75.4a97d856.js


BIN
dist/static/js/chunk-4e6f0a75.4a97d856.js.gz


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-b086b426.e13d6af8.js


BIN
dist/static/js/chunk-b086b426.e13d6af8.js.gz


+ 3 - 1
src/apis/service/good-share/index.js

@@ -20,5 +20,7 @@ export default {
   // 毛利率修改
   rateEdit: (data, params) => http(api + "projectrate", data, "post", params),
   // 项目返回商品分页查询
-  back_good_list: (data, params) => http(api + "consultbidlist", data, "post", params),
+  back_good_list: (data, params) => http(api + "projectfeedlist", data, "post", params),
+  // 反馈商品选择
+  back_good_submit: (data, params) => http(api + "projectfeeddheck", data, "post", params),
 };

+ 1 - 1
src/apis/service/purchaseIn/workbench/index.js

@@ -19,7 +19,7 @@ export default {
   // 反馈商品编辑
   good_update: (data, params) => http(api + "consultfeededit", data, "post", params),
   // 反馈商品列表
-  good_list: (data, params) => http(api + "consultfeedlist", data, "post", params),
+  good_list: (data, params) => http(api + "consultbidlist", data, "post", params),
   // 更新
   update: (data, params) => http(api + "customaredit", data, "post", params),
   // 新建

+ 12 - 1
src/layout/components/AppMain.vue

@@ -23,12 +23,23 @@ export default {
 </script>
 
 <style lang="scss" scoped>
+// @import "~@/styles/mixin.scss";
+// @import "~@/styles/sidebar.scss";
+@import "~@/styles/variables.scss";
+@import "~@/styles/mixin.scss";
+@import "~@/styles/transition.scss";
+@import "~@/styles/element-ui.scss";
+@import "~@/styles/sidebar.scss";
+@import "~@/styles/btn.scss";
 .app-main {
+  /* 50= navbar  50  */
   min-height: 100%;
+  //calc(100vh - 50px);
   width: 100%;
   height: 100%;
   position: relative;
-  overflow-y: scroll;
+  overflow: scroll;
+  @include scrollBar();
 }
 
 .fixed-header + .app-main {

+ 1 - 0
src/styles/index.scss

@@ -6,6 +6,7 @@
 @import "./btn.scss";
 .pagePadding{
   padding: 8px 20px 20px 20px;
+
 }
 
 body {

+ 302 - 0
src/views/good-share/components/backGoodShow.vue

@@ -0,0 +1,302 @@
+<template>
+  <div v-if="allList[index]">
+    <div class="project-backGoodShow" v-loading="allList[index].loading">
+      <div class="project-backGoodShow-main">
+        <div class="project-backGoodShow-title">
+          商品要求{{ index + 1 }}
+          <el-button-group :size="'mini'" class="fr" style="margin: 8px 0 0 0">
+            <el-button
+              class="fr"
+              v-if="index !== 0"
+              type="primary"
+              :size="'mini'"
+              icon="el-icon-arrow-left"
+              @click="index--"
+              >上一个</el-button
+            >
+            <el-button
+              type="primary"
+              class="fr"
+              v-if="index + 1 !== allList.length"
+              @click="next()"
+              :size="'mini'"
+              >下一个<i
+                class="el-icon-arrow-right el-icon--right"
+                :size="'mini'"
+              ></i
+            ></el-button>
+            <el-button
+              type="primary"
+              class="fr"
+              @click="next()"
+              v-if="index + 1 === allList.length"
+              :size="'mini'"
+              >提交<i class="el-icon-upload el-icon--right"></i>
+            </el-button>
+          </el-button-group>
+        </div>
+        <div class="project-backGoodShow-ask-table">
+          <template v-if="allList[index].ladder">
+            <el-table
+              :data="allList[index].ladder"
+              :size="'mini'"
+              border
+              stripe
+              style="width: 100%"
+            >
+              <el-table-column prop="good_type" label="商品类型" width="80px">
+                <template slot-scope="scope">
+                  <el-tag
+                    :size="'mini'"
+                    v-text="
+                      (
+                        statusOptions.find(
+                          (items) => items.value == scope.row.good_type
+                        ) || {}
+                      ).label || '--'
+                    "
+                  ></el-tag
+                ></template>
+              </el-table-column>
+              <el-table-column
+                prop="budget_price"
+                label="预算单价"
+                width="110"
+              />
+              <el-table-column prop="num" label="购买数量" width="110" />
+              <el-table-column prop="cat_name" label="商品分类" />
+              <el-table-column prop="good_img" label="图片" width="50">
+                <template slot-scope="scope">
+                  <div
+                    v-if="scope.row.good_img"
+                    style="width: 20px; height: 20px"
+                    class="hover"
+                    v-viewer
+                  >
+                    <img
+                      :src="scope.row.good_img"
+                      style="display: inline-block; width: 100%; height: 100%"
+                      alt=""
+                    />
+                  </div>
+                </template>
+              </el-table-column>
+              <el-table-column prop="good_name" label="商品名称" />
+            </el-table>
+          </template>
+        </div>
+        <div class="project-backGoodShow-title">商品反馈情况</div>
+        <div class="project-backGoodShow-backGood-table">
+          <template v-if="allList[index].tableData">
+            <ex-table
+              v-loading="allList[index].loading"
+              :table="table"
+              :data="allList[index].tableData"
+              :columns="columns"
+              :page="allList[index].pageInfo"
+              :size="'mini'"
+              @page-curr-change="handlePageChange($event, index)"
+              @page-size-change="handleSizeChange($event, index)"
+              @screen-reset="
+                allList[index].pageInfo.curr = 1;
+                searchList(index);
+              "
+              @screen-submit="
+                allList[index].pageInfo.curr = 1;
+                searchList(index);
+              "
+              @selection="selection_change"
+            >
+            </ex-table>
+          </template>
+        </div>
+      </div>
+    </div>
+  </div>
+</template>
+<script>
+import asyncRequest from "@/apis/service/good-share";
+import resToken from "@/mixins/resToken";
+import columnsForm from "./columnsForm";
+export default {
+  name: "backGoodShow",
+  props: ["showModel", "sitem", "id", "type", "newTime"],
+  mixins: [resToken],
+  watch: {
+    // showModel: function (val) {
+    //   this.showModelThis = val;
+    //   if (val) {
+    //     this.initForm();
+    //   }
+    // },
+    // showModelThis(val) {
+    //   if (!val) {
+    //     this.$emit("cancel");
+    //   }
+    // },
+  },
+  data() {
+    return {
+      loading: false,
+      allList: [],
+      index: 0,
+      projectNo: "",
+      statusOptions: [
+        { value: "1", label: "竞品" },
+        { value: "2", label: "竞聘" },
+      ],
+      table: {
+        stripe: true,
+        border: true,
+        // _defaultHeader_: ["setcol"],
+      },
+      // 表格 - 列参数
+      columns: columnsForm,
+    };
+  },
+  mounted() {
+    this.initForm();
+  },
+  methods: {
+    //初始化整个组件
+    async initForm() {
+      this.loading = true;
+      await this.initListData();
+      this.loading = false;
+      // console.log(this.allList);
+      await this.searchList(this.index);
+    },
+    async next() {
+      const { selection } = this.allList[this.index];
+      if (selection.length === 0) {
+        this.$message.warning("至少选择一个商品!");
+        return;
+      }
+      if (this.index + 1 !== this.allList.length) {
+        this.index++;
+        await this.searchList(this.index);
+      } else {
+        await this.$confirm("确定要提交?", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning",
+        })
+          .then(async () => {
+            this.$emit("selectEnd");
+          })
+          .catch(() => {
+            console.log("取消");
+          });
+      }
+    },
+
+    selection_change(e) {
+      const { list } = e;
+      this.allList[this.index].selection = JSON.parse(JSON.stringify(list));
+      let change_all_list = [];
+      this.allList.forEach((a, ai) => {
+        const { selection } = a;
+        if (selection && selection.length > 0) {
+          selection.forEach((b) => {
+            let item = JSON.parse(JSON.stringify(b));
+            item.noIndex = ai + 1;
+            change_all_list.push(item);
+          });
+        }
+      });
+      this.$emit("tableChange", { list: change_all_list });
+    },
+
+    //初始化整个组件
+    async initListData() {
+      // console.log(this.sitem);
+      this.allList = [];
+      const { projectNo, ladder } = this.sitem;
+      this.projectNo = projectNo;
+      if (ladder && ladder.length > 0) {
+        ladder.forEach((e) => {
+          let item = JSON.parse(JSON.stringify(e));
+          // console.log(item);
+          let model = {
+            ladder: [item],
+            pageInfo: {
+              size: 15,
+              curr: 1,
+              total: 0,
+            },
+            loading: true,
+            selection: [],
+            tableData: [],
+          };
+          this.allList.push(model);
+        });
+      }
+    },
+    async allSearchList() {
+      if (this.allList && this.allList.length > 0) {
+        this.allList.forEach(async (e, i) => {
+          await this.searchList(i);
+        });
+      }
+    },
+    //页数选择
+    async handlePageChange(e, index) {
+      this.allList[index].pageInfo.curr = e;
+      await this.searchList(index);
+    },
+    //页面条数选择
+    async handleSizeChange(e, index) {
+      this.allList[index].pageInfo.curr = 1;
+      this.allList[index].pageInfo.size = e;
+      await this.searchList(index);
+    },
+    async searchList(index) {
+      const { pageInfo } = this.allList[index];
+      const { size, curr } = pageInfo;
+      this.allList[index].loading = true;
+      let model = {
+        page: curr,
+        size: size,
+        zxNo: "",
+        infoNo: "",
+        bidNo: "",
+        projectNo: this.projectNo,
+      };
+      const { code, data } = await asyncRequest.back_good_list(model);
+      if (code === 0) {
+        const { list, count } = data;
+        this.allList[index].tableData = list;
+        this.allList[index].pageInfo.total = Number(count);
+      } else if (code >= 100 && code <= 104) {
+        await this.logout();
+      } else {
+        this.allList[index].tableData = [];
+        this.allList[index].pageInfo.total = 0;
+      }
+      this.allList[index].loading = false;
+    },
+  },
+};
+</script>
+
+   <style lang="scss" scoped>
+.project-backGoodShow {
+  box-sizing: border-box;
+  width: 100%;
+  padding: 2px 16px 16px 16px;
+
+  .project-backGoodShow-main {
+    // padding: 2px 16px 16px 16px;
+    // background: #fefefe;
+    // border-radius: 5px;
+    // overflow: hidden;
+    // border: 1px solid #f0f0f0;
+    // margin: 0 0 16px 0;
+    .project-backGoodShow-title {
+      height: 48px;
+      line-height: 48px;
+      color: #676767;
+    }
+  }
+}
+</style>

+ 4 - 24
src/views/good-share/components/columnsForm.js

@@ -3,12 +3,7 @@ export default [
     {
         prop: "spuCode",
         label: "商品编号",
-        width: '110px'
-    },
-    {
-        prop: "sale_price",
-        label: "销售单价",
-        width: '110px'
+        width: '170px'
     },
     {
         prop: "good_img",
@@ -25,20 +20,10 @@ export default [
     },
     {
         prop: "model",
-        label: "型号",
-        width: '70px'
-    },
-    {
-        prop: "color",
-        label: "颜色",
-        width: '70px'
-    },
-    {
-        prop: "material",
-        label: "材质",
-        width: '70px'
+        label: "规格",
+        _slot_: "model",
+        'min-width': '110px'
     },
-
     {
         prop: "expiry_day",
         label: "信息有效期",
@@ -54,11 +39,6 @@ export default [
         label: "物流时间",
         width: '70px'
     },
-
-    // {
-    //     prop: "weight",
-    //     label: "商品重量",
-    // },
     {
         prop: "salesman",
         label: "申请人",

+ 1 - 1
src/views/good-share/index.vue

@@ -52,7 +52,7 @@ export default {
       status: "",
       radio: "",
       sitem: {},
-      queryId: "PROv1b1220301161345",
+      queryId: "PROa8gi220310202256",
       multipleSelection: [],
       tableData: [],
       newTime: "",

+ 5 - 3
src/views/purchaseIn/workbench/detail.vue

@@ -42,12 +42,12 @@
               <li>{{ sitem.can_name }}</li>
               <li>商品品牌:</li>
               <li>{{ sitem.brand ? sitem.brand : "无要求" }}</li>
-              <li>型号:</li>
+              <!-- <li>商品规格:</li>
               <li>{{ sitem.model }}</li>
               <li>颜色:</li>
               <li>{{ sitem.color }}</li>
               <li>材质:</li>
-              <li>{{ sitem.material }}</li>
+              <li>{{ sitem.material }}</li> -->
               <li>重量:</li>
               <li>{{ sitem.total_weight }}g</li>
               <li>是否多地:</li>
@@ -68,7 +68,7 @@
               <li v-if="sitem.is_metal">
                 {{ sitem.other_config }}
               </li>
-              <li v-if="sitem.is_metal">金属种类:</li>
+              <li v-if="sitem.is_metal">金属种类:</li>
               <li v-if="sitem.is_metal">
                 {{ sitem.metal_id }}
               </li>
@@ -261,6 +261,8 @@ export default {
       editId: "add",
       editType: "wait",
       parmValue: {
+        page:1,
+        size:100,
         zxNo: "",
         infoNo: "",
         bidNo: "",

Some files were not shown because too many files changed in this diff