Browse Source

物料工艺方案

damon227 2 years ago
parent
commit
5c29fc72f9

+ 18 - 0
src/api/material.js

@@ -0,0 +1,18 @@
+import request from "@/utils/httpRequest";
+
+// 查询物料列表
+export function getMaterialList(params) {
+  return request({
+    url: request.adornUrl(`/biz-service/product/material/list`),
+    method: "get",
+    params: params,
+  });
+}
+
+// 查询物料工艺方案详情
+export function getMaterialTechDetail(id) {
+  return request({
+    url: request.adornUrl(`/biz-service/pro-technology-option/info/${id}`),
+    method: "get",
+  });
+}

+ 1 - 1
src/views/modules/common/e-desc.vue

@@ -91,7 +91,7 @@
     },
     beforeDestroy () {
       if (this.observe) {
-        this.observer.disconnect()
+        this.observe.disconnect()
       }
     }
   }

+ 202 - 0
src/views/modules/tech-manage/material-tech-add-or-update.vue

@@ -0,0 +1,202 @@
+<template>
+  <div>
+    <div class="my-title">{{ !id ? "新增" : "修改" }}</div>
+    <el-form
+      :model="dataForm"
+      :rules="dataRule"
+      ref="dataForm"
+      @keyup.enter.native="dataFormSubmit()"
+      label-width="100px"
+    >
+      <el-row class="my-row">
+        <el-col :span="8">
+          <el-form-item label="方案编码" prop="optionCode">
+            <el-input
+              v-model="dataForm.optionCode"
+              placeholder="方案编码"
+              :disabled="isEdit"
+            ></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="8">
+          <el-form-item label="物料名称" prop="productId">
+            <el-select
+              v-model="dataForm.productId"
+              placeholder="请选择"
+              filterable
+              remote
+              clearable
+            >
+              <el-option
+                v-for="item in materialList"
+                :key="item.materialId"
+                :label="item.materialName"
+                :value="item.materialId"
+              >
+              </el-option>
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="8">
+          <el-form-item label="方案名称" prop="optionName">
+            <el-input
+              v-model="dataForm.optionName"
+              placeholder="方案名称"
+              :disabled="isEdit"
+            ></el-input>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-row class="my-row">
+        <el-col :span="12">
+          <el-form-item label="备注说明" prop="remark">
+            <el-input
+              type="textarea"
+              v-model="dataForm.remark"
+              placeholder="备注"
+              :disabled="isEdit"
+            ></el-input>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-row class="my-row">
+        <upload-component
+          :title="'工艺方案附件'"
+          :accept="'*'"
+          :file-obj-list="fileList"
+          @uploadSuccess="uploadSuccess"
+        />
+      </el-row>
+    </el-form>
+    <span slot="footer" class="dialog-footer">
+      <el-button @click="onChose">取消</el-button>
+      <el-button type="primary" @click="dataFormSubmit()">确定</el-button>
+    </span>
+  </div>
+</template>
+
+<script>
+import UploadComponent from "../common/upload-component";
+import { getMaterialList, getMaterialTechDetail } from "@/api/material";
+export default {
+  name: "material-tech-add-or-update",
+  components: { UploadComponent },
+  data() {
+    return {
+      id: 0,
+      isEdit: false,
+      dataForm: {
+        optionCode: "",
+        productId: "",
+        optionName: "",
+        remark: "",
+      },
+      fileList: [],
+      materialList: [],
+      dataRule: {
+        optionCode: [
+          { required: true, message: "请输入方案编码", trigger: "blur" },
+        ],
+        materialName: [
+          { required: true, message: "请输入物料名称", trigger: "blur" },
+        ],
+        optionName: [
+          { required: true, message: "请输入方案名称", trigger: "blur" },
+        ],
+      },
+    };
+  },
+  created() {},
+  methods: {
+    onChose() {
+      this.$emit("onChose");
+    },
+    async init(id, display) {
+      this.id = id || 0;
+      this.fileList = [];
+      this.$refs["dataForm"].resetFields();
+      this.materialList = [];
+
+      await this.getMaterialList();
+
+      if (!id) return;
+
+      await getMaterialTechDetail(id).then(({ data }) => {
+        if (data && data.code === "200") {
+          this.dataForm.productId = data.data.productId;
+          this.dataForm.optionCode = data.data.optionCode;
+          this.dataForm.optionName = data.data.optionName;
+          this.dataForm.remark = data.data.remark;
+          
+          // 附件
+          if (data.data.attachList) {
+            data.data.attachList.forEach((item) => {
+              this.fileList.push({
+                name: item.fileName,
+                url: item.url,
+                id: item.url,
+              });
+            });
+          }
+        }
+      });
+    },
+    uploadSuccess(fileList) {
+      this.fileList = fileList;
+    },
+    async getMaterialList() {
+      await getMaterialList().then(({ data }) => {
+        if (data && data.code === "200") {
+          this.materialList = data.data.records;
+        }
+      });
+    },
+    dataFormSubmit() {
+      this.$refs["dataForm"].validate((valid) => {
+        if (valid) {
+          // 产品技术文件
+          let fList = this.fileList;
+          if (fList.length > 0) {
+            this.dataForm.attachList = [];
+            for (let i = 0; i < fList.length; i++) {
+              this.dataForm.attachList.push({
+                fileName: fList[i].name,
+                url: fList[i].url,
+              });
+            }
+          } else {
+            this.$message.error("请上传工艺方案附件");
+            return;
+          }
+
+          this.$http({
+            url: !this.id
+              ? this.$http.adornUrl(`/biz-service/pro-technology-option/save`)
+              : this.$http.adornUrl(
+                  `/biz-service/pro-technology-option/update`
+                ),
+            method: "post",
+            data: this.$http.adornData({ ...this.dataForm, orgId: this.orgId }),
+          }).then(({ data }) => {
+            if (data && data.code === "200") {
+              this.$message({
+                message: "操作成功",
+                type: "success",
+                duration: 1500,
+                onClose: () => {
+                  this.onChose();
+                  this.$emit("refreshDataList");
+                },
+              });
+            } else {
+              this.$message.error(data.msg);
+            }
+          });
+        }
+      });
+    },
+  },
+};
+</script>
+
+<style scoped></style>

+ 156 - 0
src/views/modules/tech-manage/material-tech-detail.vue

@@ -0,0 +1,156 @@
+<template>
+  <div>
+    <div class="my-title">详情</div>
+    <div style="margin-left: 20px; margin-right: 20px">
+      <e-desc title="基本信息" column="3">
+        <e-desc-item label="方案编码">{{ dataForm.optionCode }}</e-desc-item>
+        <e-desc-item label="物料名称">{{ dataForm.materialName }}</e-desc-item>
+        <e-desc-item label="方案名称">{{ dataForm.optionName }}</e-desc-item>
+        <e-desc-item label="备注说明" span="3">{{
+          dataForm.remark
+        }}</e-desc-item>
+      </e-desc>
+      <e-desc title="附件">
+        <upload-component
+          :display="true"
+          :display-title="false"
+          :accept="'*'"
+          :file-obj-list="fileList"
+        />
+      </e-desc>
+    </div>
+    <span slot="footer" class="dialog-footer">
+      <el-button @click="onChose">返回</el-button>
+    </span>
+  </div>
+</template>
+
+<script>
+import EDesc from "../common/e-desc";
+import EDescItem from "../common/e-desc-item";
+import UploadComponent from "../common/upload-component";
+import { getMaterialList, getMaterialTechDetail } from "@/api/material";
+export default {
+  name: "material-tech-detail",
+  components: { UploadComponent, EDesc, EDescItem },
+  data() {
+    return {
+      id: 0,
+      isEdit: false,
+      dataForm: {
+        optionCode: "",
+        productId: "",
+        optionName: "",
+        remark: "",
+      },
+      fileList: [],
+      materialList: [],
+      dataRule: {
+        optionCode: [
+          { required: true, message: "请输入方案编码", trigger: "blur" },
+        ],
+        materialName: [
+          { required: true, message: "请输入物料名称", trigger: "blur" },
+        ],
+        optionName: [
+          { required: true, message: "请输入方案名称", trigger: "blur" },
+        ],
+      },
+    };
+  },
+  created() {},
+  methods: {
+    onChose() {
+      this.$emit("onChose");
+    },
+    async init(id, display) {
+      this.id = id || 0;
+      this.fileList = [];
+      this.materialList = [];
+
+      await this.getMaterialList();
+
+      if (!id) return;
+
+      await getMaterialTechDetail(id).then(({ data }) => {
+        if (data && data.code === "200") {
+          this.dataForm.productId = data.data.productId;
+          let marterial = this.materialList.find(
+            (t) => t.materialId == data.data.productId
+          );
+          if (marterial) {
+            this.dataForm.materialName = marterial.materialName;
+          }
+          this.dataForm.optionCode = data.data.optionCode;
+          this.dataForm.optionName = data.data.optionName;
+          this.dataForm.remark = data.data.remark;
+
+          // 附件
+          if (data.data.attachList) {
+            data.data.attachList.forEach((item) => {
+              this.fileList.push({
+                name: item.fileName,
+                url: item.url,
+                id: item.url,
+              });
+            });
+          }
+        }
+      });
+    },
+    async getMaterialList() {
+      await getMaterialList().then(({ data }) => {
+        if (data && data.code === "200") {
+          this.materialList = data.data.records;
+        }
+      });
+    },
+    dataFormSubmit() {
+      this.$refs["dataForm"].validate((valid) => {
+        if (valid) {
+          // 产品技术文件
+          let fList = this.fileList;
+          if (fList.length > 0) {
+            this.dataForm.attachList = [];
+            for (let i = 0; i < fList.length; i++) {
+              this.dataForm.attachList.push({
+                fileName: fList[i].name,
+                url: fList[i].url,
+              });
+            }
+          } else {
+            this.$message.error("请上传工艺方案附件");
+            return;
+          }
+
+          this.$http({
+            url: !this.id
+              ? this.$http.adornUrl(`/biz-service/pro-technology-option/save`)
+              : this.$http.adornUrl(
+                  `/biz-service/pro-technology-option/update`
+                ),
+            method: "post",
+            data: this.$http.adornData({ ...this.dataForm, orgId: this.orgId }),
+          }).then(({ data }) => {
+            if (data && data.code === "200") {
+              this.$message({
+                message: "操作成功",
+                type: "success",
+                duration: 1500,
+                onClose: () => {
+                  this.onChose();
+                  this.$emit("refreshDataList");
+                },
+              });
+            } else {
+              this.$message.error(data.msg);
+            }
+          });
+        }
+      });
+    },
+  },
+};
+</script>
+
+<style scoped></style>

+ 102 - 0
src/views/modules/tech-manage/material-tech-note-change.vue

@@ -0,0 +1,102 @@
+<template>
+  <div>
+    <div class="my-title">变更</div>
+    <el-form
+      :model="dataForm"
+      :rules="dataRule"
+      ref="dataForm"
+      @keyup.enter.native="dataFormSubmit()"
+      label-width="100px"
+    >
+      <el-row class="my-row">
+        <el-col :span="8">
+          <el-form-item label="变更内容" prop="content">
+            <el-input
+              type="textarea"
+              v-model="dataForm.content"
+              placeholder=""
+            ></el-input>
+          </el-form-item>
+        </el-col>
+      </el-row>
+    </el-form>
+    <span slot="footer" class="dialog-footer">
+      <el-button @click="onChose">取消</el-button>
+      <el-button type="primary" @click="dataFormSubmit()">确定</el-button>
+    </span>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "material-tech-note-change",
+  components: {},
+  data() {
+    return {
+      id: 0,
+      isEdit: false,
+      dataForm: {
+        content: "",
+      },
+      dataRule: {
+        optionCode: [
+          { required: true, message: "请输入方案编码", trigger: "blur" },
+        ],
+      },
+    };
+  },
+  created() {},
+  methods: {
+    onChose() {
+      this.$emit("onChose");
+    },
+    init() {},
+    dataFormSubmit() {
+      this.$refs["dataForm"].validate((valid) => {
+        if (valid) {
+          // 产品技术文件
+          let fList = this.fileList;
+          if (fList.length > 0) {
+            this.dataForm.attachList = [];
+            for (let i = 0; i < fList.length; i++) {
+              this.dataForm.attachList.push({
+                fileName: fList[i].name,
+                url: fList[i].url,
+              });
+            }
+          } else {
+            this.$message.error("请上传工艺方案附件");
+            return;
+          }
+
+          this.$http({
+            url: !this.id
+              ? this.$http.adornUrl(`/biz-service/pro-technology-option/save`)
+              : this.$http.adornUrl(
+                  `/biz-service/pro-technology-option/update`
+                ),
+            method: "post",
+            data: this.$http.adornData({ ...this.dataForm, orgId: this.orgId }),
+          }).then(({ data }) => {
+            if (data && data.code === "200") {
+              this.$message({
+                message: "操作成功",
+                type: "success",
+                duration: 1500,
+                onClose: () => {
+                  this.onChose();
+                  this.$emit("refreshDataList");
+                },
+              });
+            } else {
+              this.$message.error(data.msg);
+            }
+          });
+        }
+      });
+    },
+  },
+};
+</script>
+
+<style scoped></style>

+ 297 - 0
src/views/modules/tech-manage/material-tech.vue

@@ -0,0 +1,297 @@
+<!-- 工艺方案管理 -->
+<template>
+  <div class="stock">
+    <template v-if="!addOrUpdateVisible && !detailVisible && !noteChangeVisible">
+      <el-form :inline="true" :model="dataForm" @keyup.enter.native="search()">
+        <el-form-item label="名称">
+          <el-input
+            v-model="dataForm.optionName"
+            placeholder="请输入产品名称"
+            clearable
+          />
+        </el-form-item>
+        <el-form-item label="创建日期">
+          <el-date-picker
+            v-model="dataForm.createTime"
+            value-format="yyyy-MM-dd"
+            type="daterange"
+            range-separator="至"
+            start-placeholder="开始日期"
+            end-placeholder="结束日期"
+          >
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="物料">
+          <el-select v-model="dataForm.productId" filterable remote clearable placeholder="请选择">
+            <el-option
+                v-for="item in materialList"
+                :key="item.materialId"
+                :label="item.materialName"
+                :value="item.materialId"
+              >
+              </el-option>
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item>
+          <el-button @click="search()">查询</el-button>
+          <el-button
+            v-if="isAuth('cus:customer:save')"
+            type="primary"
+            @click="addOrUpdateHandle(0, false)"
+            >新建</el-button
+          >
+          <el-button
+            v-if="isAuth('cus:customer:save')"
+            type="primary"
+            @click="noteChange()"
+            >变更通知人设置</el-button
+          >
+        </el-form-item>
+      </el-form>
+      <el-table
+        :data="dataList"
+        border
+        v-loading="dataListLoading"
+        style="width: 100%"
+      >
+        <el-table-column label="序号" type="index" width="50" align="center">
+        </el-table-column>
+        <el-table-column
+          prop="optionCode"
+          header-align="center"
+          align="center"
+          min-width="120"
+          :show-tooltip-when-overflow="true"
+          label="方案编码"
+        >
+        </el-table-column>
+        <el-table-column
+          prop="optionName"
+          header-align="center"
+          align="center"
+          min-width="120"
+          label="方案名称"
+        >
+        </el-table-column>
+        <el-table-column
+          prop="materialName"
+          header-align="center"
+          align="center"
+          min-width="120"
+          label="物料名称"
+        >
+        </el-table-column>
+        <el-table-column
+          prop="address"
+          header-align="center"
+          align="center"
+          width="120"
+          :show-tooltip-when-overflow="true"
+          label="方案文件"
+        >
+        </el-table-column>
+        <el-table-column
+          prop="optionAlter"
+          header-align="center"
+          align="center"
+          label="更改说明"
+        >
+        </el-table-column>
+        <el-table-column
+          prop="notes"
+          header-align="center"
+          align="center"
+          min-width="180"
+          :show-tooltip-when-overflow="true"
+          label="更改单"
+        >
+        </el-table-column>
+        <el-table-column
+          prop="remark"
+          header-align="center"
+          align="center"
+          :show-tooltip-when-overflow="true"
+          label="备注"
+        >
+        </el-table-column>
+        <el-table-column
+          prop="createTime"
+          header-align="center"
+          align="center"
+          min-width="120"
+          :show-tooltip-when-overflow="true"
+          label="创建时间"
+        >
+        </el-table-column>
+        <el-table-column
+          prop="creatorName"
+          header-align="center"
+          align="center"
+          :show-tooltip-when-overflow="true"
+          label="创建人"
+        >
+        </el-table-column>
+        <el-table-column
+          fixed="right"
+          header-align="center"
+          align="center"
+          width="150"
+          label="操作"
+        >
+          <template slot-scope="scope">
+            <el-button
+              v-if="isAuth('cus:customer:info')"
+              type="text"
+              size="small"
+              @click="detailHandle(scope.row.optionId)"
+              >查看</el-button
+            >
+            <el-button
+              v-if="isAuth('cus:customer:update')"
+              type="text"
+              size="small"
+              @click="addOrUpdateHandle(scope.row.optionId, false)"
+              >编辑</el-button
+            >
+          </template>
+        </el-table-column>
+      </el-table>
+      <el-pagination
+        @size-change="sizeChangeHandle"
+        @current-change="currentChangeHandle"
+        :current-page="pageIndex"
+        :page-sizes="[10, 20, 50, 100]"
+        :page-size="pageSize"
+        :total="totalPage"
+        layout="total, sizes, prev, pager, next, jumper"
+      >
+      </el-pagination>
+    </template>
+    <add-or-update
+      ref="addOrUpdate"
+      v-if="addOrUpdateVisible"
+      @refreshDataList="getDataList"
+      @onChose="onChose"
+    ></add-or-update>
+    <detail ref="detail" v-if="detailVisible" @onChose="onChose"></detail>
+    <note-change ref="noteChange" v-if="noteChangeVisible" @onChose="onChose"></note-change>
+  </div>
+</template>
+
+<script>
+import AddOrUpdate from "./material-tech-add-or-update";
+import Detail from "./material-tech-detail";
+import NoteChange from "./material-tech-note-change";
+import { getMaterialList } from "@/api/material";
+export default {
+  name: "material-tech",
+  components: {
+    AddOrUpdate,
+    Detail,
+    NoteChange
+  },
+  data() {
+    return {
+      addOrUpdateVisible: false,
+      detailVisible: false,
+      noteChangeVisible: false,
+      materialList: [],
+      dataForm: {
+        optionName: "",
+      },
+      options: [],
+      dataList: [],
+      pageIndex: 1,
+      pageSize: 10,
+      totalPage: 0,
+      dataListLoading: false,
+    };
+  },
+  created() {
+    this.getDataList();
+    this.getMaterialList();
+  },
+  methods: {
+    onChose() {
+      this.addOrUpdateVisible = false;
+      this.detailVisible = false;
+      this.noteChangeVisible = false;
+    },
+    getMaterialList() {
+      getMaterialList().then(({ data }) => {
+        if (data && data.code === "200") {
+          this.materialList = data.data.records;
+        }
+      });
+    },
+    // 查询
+    search() {
+      this.pageIndex = 1;
+      this.getDataList();
+    },
+    // 获取数据列表
+    getDataList() {
+      this.addOrUpdateVisible = false;
+      this.dataListLoading = true;
+      this.$http({
+        url: this.$http.adornUrl("/biz-service/pro-technology-option/list"),
+        method: "get",
+        params: this.$http.adornParams({
+          current: this.pageIndex,
+          size: this.pageSize,
+          optionName: this.dataForm.optionName,
+          productId: this.dataForm.productId,
+          createTimeS: this.dataForm.createTime
+            ? this.dataForm.createTime[0]
+            : null,
+          createTimeE: this.dataForm.createTime
+            ? this.dataForm.createTime[1]
+            : null,
+        }),
+      }).then(({ data }) => {
+        if (data && data.code === "200") {
+          this.dataList = data.data.records;
+          this.totalPage = Number(data.data.total);
+        } else {
+          this.dataList = [];
+          this.totalPage = 0;
+        }
+        this.dataListLoading = false;
+      });
+    },
+    // 每页数
+    sizeChangeHandle(val) {
+      this.pageSize = val;
+      this.pageIndex = 1;
+      this.getDataList();
+    },
+    // 当前页
+    currentChangeHandle(val) {
+      this.pageIndex = val;
+      this.getDataList();
+    },
+    // 新增 / 修改
+    addOrUpdateHandle(id, disabled) {
+      this.addOrUpdateVisible = true;
+      this.$nextTick(() => {
+        this.$refs.addOrUpdate.init(id, disabled);
+      });
+    },
+    detailHandle(id) {
+      this.detailVisible = true;
+      this.$nextTick(() => {
+        this.$refs.detail.init(id);
+      });
+    },
+    noteChange(){
+      this.noteChangeVisible = true;
+      this.$nextTick(() => {
+        this.$refs.noteChange.init();
+      });
+    }
+  },
+};
+</script>
+
+<style scoped></style>

+ 0 - 226
src/views/modules/tech-manage/pro-tech-manage.vue

@@ -1,226 +0,0 @@
-<!-- 工艺方案管理 -->
-<template>
-  <div class="stock">
-    <template v-if="!addOrUpdateVisible && !detailVisible">
-      <el-form :inline="true" :model="dataForm" @keyup.enter.native="search()">
-        <el-form-item label="名称">
-          <el-input v-model="dataForm.optionName" placeholder="请输入产品名称" clearable/>
-        </el-form-item>
-        <el-form-item label="创建日期">
-          <el-date-picker
-            v-model="dataForm.createTime"
-            value-format="yyyy-MM-dd"
-            type="daterange"
-            range-separator="至"
-            start-placeholder="开始日期"
-            end-placeholder="结束日期">
-          </el-date-picker>
-        </el-form-item>
-        <el-form-item label="物料">
-          <el-select
-            v-model="dataForm.productId"
-            remote
-            placeholder="请选择">
-            <el-option
-              v-for="item in options"
-              :key="item.code"
-              :label="item.value"
-              :value="item.code">
-            </el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item>
-          <el-button @click="search()">查询</el-button>
-          <el-button v-if="isAuth('cus:customer:save')" type="primary" @click="addOrUpdateHandle(0, false)">新建</el-button>
-          <el-button v-if="isAuth('cus:customer:save')" type="primary" @click="addOrUpdateHandle(0, false)">变更通知人设置</el-button>
-        </el-form-item>
-      </el-form>
-      <el-table
-        :data="dataList"
-        border
-        v-loading="dataListLoading"
-        style="width: 100%;">
-        <el-table-column
-          label="序号"
-          type="index"
-          width="50"
-          align="center">
-        </el-table-column>
-        <el-table-column
-          prop="optionCode"
-          header-align="center"
-          align="center"
-          min-width="120"
-          :show-tooltip-when-overflow="true"
-          label="方案编码">
-        </el-table-column>
-        <el-table-column
-          prop="optionName"
-          header-align="center"
-          align="center"
-          min-width="120"
-          label="方案名称">
-        </el-table-column>
-        <el-table-column
-          prop="materialName"
-          header-align="center"
-          align="center"
-          min-width="120"
-          label="物料名称">
-        </el-table-column>
-        <el-table-column
-          prop="address"
-          header-align="center"
-          align="center"
-          width="120"
-          :show-tooltip-when-overflow="true"
-          label="方案文件">
-        </el-table-column>
-        <el-table-column
-          prop="optionAlter"
-          header-align="center"
-          align="center"
-          label="更改说明">
-        </el-table-column>
-        <el-table-column
-          prop="notes"
-          header-align="center"
-          align="center"
-          min-width="180"
-          :show-tooltip-when-overflow="true"
-          label="更改单">
-        </el-table-column>
-        <el-table-column
-          prop="remark"
-          header-align="center"
-          align="center"
-          :show-tooltip-when-overflow="true"
-          label="备注">
-        </el-table-column>
-        <el-table-column
-          prop="createTime"
-          header-align="center"
-          align="center"
-          min-width="120"
-          :show-tooltip-when-overflow="true"
-          label="创建时间">
-        </el-table-column>
-        <el-table-column
-          prop="creatorName"
-          header-align="center"
-          align="center"
-          :show-tooltip-when-overflow="true"
-          label="创建人">
-        </el-table-column>
-        <el-table-column
-          fixed="right"
-          header-align="center"
-          align="center"
-          width="150"
-          label="操作">
-          <template slot-scope="scope">
-            <el-button v-if="isAuth('cus:customer:info')" type="text" size="small" @click="detailHandle(scope.row.customerId)">查看</el-button>
-            <el-button v-if="isAuth('cus:customer:update')" type="text" size="small" @click="addOrUpdateHandle(scope.row.customerId, false)">编辑</el-button>
-          </template>
-        </el-table-column>
-      </el-table>
-      <el-pagination
-        @size-change="sizeChangeHandle"
-        @current-change="currentChangeHandle"
-        :current-page="pageIndex"
-        :page-sizes="[10, 20, 50, 100]"
-        :page-size="pageSize"
-        :total="totalPage"
-        layout="total, sizes, prev, pager, next, jumper">
-      </el-pagination>
-    </template>
-  </div>
-</template>
-
-<script>
-  export default {
-    name: 'pro-tech-manage',
-    components: {
-      
-    },
-    data () {
-      return {
-        addOrUpdateVisible: false,
-        detailVisible: false,
-        dataForm: {
-          optionName: ''
-        },
-        options: [],
-        dataList: [],
-        pageIndex: 1,
-        pageSize: 10,
-        totalPage: 0,
-        dataListLoading: false,
-      }
-    },
-    created () {
-     this.getDataList()
-    },
-    methods: {
-      // 查询
-      search () {
-        this.pageIndex = 1
-        this.getDataList()
-      },
-      // 获取数据列表
-      getDataList () {
-        this.addOrUpdateVisible = false
-        this.dataListLoading = true
-        this.$http({
-          url: this.$http.adornUrl('/biz-service/pro-technology-option/list'),
-          method: 'get',
-          params: this.$http.adornParams({
-            'current': this.pageIndex,
-            'size': this.pageSize,
-            'optionName': this.dataForm.optionName,
-            'productId': this.dataForm.productId,
-            'createTimeS': this.dataForm.createTime ? this.dataForm.createTime[0] : null,
-            'createTimeE': this.dataForm.createTime ? this.dataForm.createTime[1] : null
-          })
-        }).then(({data}) => {
-          if (data && data.code === '200') {
-            this.dataList = data.data.records
-            this.totalPage = Number(data.data.total)
-          } else {
-            this.dataList = []
-            this.totalPage = 0
-          }
-          this.dataListLoading = false
-        })
-      },
-      // 每页数
-      sizeChangeHandle (val) {
-        this.pageSize = val
-        this.pageIndex = 1
-        this.getDataList()
-      },
-      // 当前页
-      currentChangeHandle (val) {
-        this.pageIndex = val
-        this.getDataList()
-      },
-      // 新增 / 修改
-      addOrUpdateHandle (id, disabled) {
-        this.addOrUpdateVisible = true
-        // this.$nextTick(() => {
-        //   this.$refs.addOrUpdate.init(id, disabled)
-        // })
-      },
-       detailHandle (id) {
-        this.detailVisible = true
-        // this.$nextTick(() => {
-        //   this.$refs.detail.init(id)
-        // })
-      }
-    }
-  }
-</script>
-
-<style scoped>
-
-</style>