Explorar o código

Merge remote-tracking branch 'origin/dev' into dev

liuyi hai 1 ano
pai
achega
5f1eafacd4
Modificáronse 3 ficheiros con 210 adicións e 43 borrados
  1. 11 41
      src/views/materialPlan/index.vue
  2. 197 0
      src/views/materialPlan/pickPlan.vue
  3. 2 2
      vue.config.js

+ 11 - 41
src/views/materialPlan/index.vue

@@ -4,13 +4,10 @@
       <materialPlan-search @search="reload" :statusOpt="statusOpt" :activeName="activeName" ref="searchRef">
       </materialPlan-search>
 
-      <el-tabs v-model="activeName" type="card">
-        <el-tab-pane label="采购配料计划" name="first"></el-tab-pane>
-        <el-tab-pane label="生产配料计划" name="second"></el-tab-pane>
-      </el-tabs>
+   
       <!-- 数据表格 -->
-      <ele-pro-table ref="table" :key="activeName" :initLoad="false" :columns="columns" :datasource="datasource"
-        :cache-key="`${activeName}materialPlanTable`">
+      <ele-pro-table ref="table"  :initLoad="false" :columns="columns" :datasource="datasource"
+        cache-key="`materialPlanTable`">
         <template v-slot:toolbar>
           <el-button type="primary" @click="handleEdit('add')">创建计划</el-button>
         </template>
@@ -44,7 +41,7 @@
       </ele-pro-table>
     </el-card>
     <planEditDialog ref="planEditDialogRef" @success="reload" />
-    <produceEditDialog ref="produceEditDialogRef" @success="reload"></produceEditDialog>
+   
     <detail ref="detailRef"></detail>
   </div>
 </template>
@@ -52,13 +49,13 @@
 <script>
 import materialPlanSearch from './components/materialPlan-search.vue';
 import planEditDialog from './components/plan-edit-dialog.vue';
-import produceEditDialog from './components/produce-edit-dialog'
+
 import detail from './components/detail.vue'
 import { getList, del, submit } from '@/api/materialPlan/index';
 export default {
   components: {
     planEditDialog,
-    produceEditDialog,
+
     materialPlanSearch,
     detail
   },
@@ -69,9 +66,6 @@ export default {
 
       // 加载状态
       loading: false,
-      pageType: 'add',
-      dialogTitle: '',
-      isBindPlan: false,
 
 
       statusOpt: {
@@ -83,13 +77,7 @@ export default {
           { label: '已完成', value: '6' },
 
         ],
-        second: [
-          { label: '所有状态', value: null },
-          { label: '待排产', value: '1' },
-          { label: '待发布', value: '2' },
-          { label: '发布失败', value: '3' },
-          { label: '已完成', value: '6' },
-        ]
+    
       },
 
       approvalStatusOpt: {
@@ -130,10 +118,6 @@ export default {
         },
 
 
-
-
-
-
         {
           columnKey: 'status',
           label: '状态',
@@ -143,18 +127,13 @@ export default {
         },
 
 
-        ...(this.activeName === 'first'
-          ? [
-            {
+        {
               prop: 'approvalStatus',
               label: '审批状态',
               align: 'center',
               slot: 'approvalStatus',
               action: 'approvalStatus'
-            }
-          ]
-          : []),
-
+            },
 
 
         {
@@ -198,12 +177,7 @@ export default {
     },
     /* 表格数据源 */
     datasource({ page, limit, where }) {
-      if (this.activeName == 'first') {
-        where.type = 1
-      } else if (this.activeName == 'second') {
-        where.type = 2
-        delete where.statusList
-      }
+      where.type = 1
       return getList({
         pageNum: page,
         size: limit,
@@ -211,11 +185,7 @@ export default {
       });
     },
     handleEdit(type, row) {
-      if (this.activeName == 'first') {
-        this.$refs.planEditDialogRef.open(type, row);
-      } else if (this.activeName == 'second') {
-        this.$refs.produceEditDialogRef.open(type, row);
-      }
+      this.$refs.planEditDialogRef.open(type, row);
 
     },
     handleDel({ id }) {

+ 197 - 0
src/views/materialPlan/pickPlan.vue

@@ -0,0 +1,197 @@
+<template>
+    <div class="ele-body">
+      <el-card shadow="never" v-loading="loading">
+        <materialPlan-search @search="reload" :statusOpt="statusOpt" :activeName="activeName" ref="searchRef">
+        </materialPlan-search>
+  
+
+        <!-- 数据表格 -->
+        <ele-pro-table ref="table" :initLoad="false" :columns="columns" :datasource="datasource"
+          cache-key="pickPlanTable">
+          <template v-slot:toolbar>
+            <el-button type="primary" @click="handleEdit('add')">创建计划</el-button>
+          </template>
+  
+          <template v-slot:status="{ row }">
+            <span :class="{ 'ele-text-danger': row.status == 3 }">
+              {{ statusFormatter(row.status) }}
+            </span>
+          </template>
+
+
+          
+          <!-- 操作列 -->
+          <template v-slot:action="{ row }">
+  
+  
+            <el-link type="primary" :underline="false" icon="el-icon-edit" @click="handleEdit('edit', row)">
+              修改计划
+            </el-link>
+            <el-link @click="handleDel(row)" type="danger" :underline="false" icon="el-icon-delete">
+              删除
+            </el-link>
+
+          </template>
+        </ele-pro-table>
+      </el-card>
+      <produceEditDialog ref="produceEditDialogRef" @success="reload"></produceEditDialog>
+
+    </div>
+  </template>
+  
+  <script>
+  import materialPlanSearch from './components/materialPlan-search.vue';
+
+  import produceEditDialog from './components/produce-edit-dialog'
+  import { getList, del,  } from '@/api/materialPlan/index';
+  export default {
+    components: {
+
+      produceEditDialog,
+      materialPlanSearch,
+    
+    },
+  
+    data() {
+      return {
+        activeName: 'second',
+  
+        // 加载状态
+        loading: false,
+   
+  
+  
+        statusOpt: {
+    
+          second: [
+            { label: '所有状态', value: null },
+            { label: '待排产', value: '1' },
+            { label: '待发布', value: '2' },
+            { label: '发布失败', value: '3' },
+            { label: '已完成', value: '6' },
+          ]
+        },
+  
+    
+      };
+    },
+    computed: {
+      // 表格列配置
+      columns() {
+        return [
+          {
+            columnKey: 'index',
+            label: '序号',
+            type: 'index',
+            width: 55,
+            align: 'center',
+            fixed: 'left'
+          },
+          {
+            slot: 'name',
+            prop: 'name',
+            label: '计划名称',
+            align: 'center',
+  
+          },
+          {
+            prop: 'code',
+            label: '计划编号',
+            align: 'center',
+  
+          },
+  
+  
+  
+  
+          {
+            columnKey: 'status',
+            label: '状态',
+            align: 'center',
+            slot: 'status',
+            action: 'status'
+          },
+  
+  
+  
+  
+          {
+            prop: 'createUserName',
+            label: '创建人',
+            align: 'center'
+          },
+          {
+            prop: 'createTime',
+            label: '创建时间',
+            align: 'center',
+  
+          },
+          {
+            columnKey: 'action',
+            label: '操作',
+            width: 250,
+            align: 'center',
+            resizable: false,
+            fixed: 'right',
+            slot: 'action'
+          }
+        ];
+      }
+    },
+    methods: {
+      statusFormatter(status) {
+        const obj = this.statusOpt[this.activeName].find(
+          (i) => i.value == status
+        );
+  
+        return obj && obj.label;
+      },
+  
+
+      /* 表格数据源 */
+      datasource({ page, limit, where }) {
+        where.type = 2
+        delete where.statusList
+        return getList({
+          pageNum: page,
+          size: limit,
+          ...where
+        });
+      },
+      handleEdit(type, row) {
+        this.$refs.produceEditDialogRef.open(type, row);
+      },
+
+      handleDel({ id }) {
+        this.$confirm('确认删除当前数据!', '提示').then(async () => {
+          await del([id]);
+          this.$message.success('删除成功!');
+          this.reload();
+        });
+      },
+  
+
+  
+      handleTabChange() {
+        this.$refs.searchRef.reset();
+      },
+  
+      /* 刷新表格 */
+      reload(where = {}) {
+         if(where.statusList) {
+          where.statusList =  where.statusList.split(',')
+         }
+        this.$nextTick(() => {
+          this.$refs.table.reload({ page: 1, where });
+        });
+      },
+  
+
+  
+  
+    }
+  };
+  </script>
+  
+  <style lang="scss" scoped></style>
+  

+ 2 - 2
vue.config.js

@@ -32,8 +32,8 @@ module.exports = {
       // 当我们的本地的请求 有/api的时候,就会代理我们的请求地址向另外一个服务器发出请求
       '/api': {
         // target: 'http://192.168.1.210:86/',
-        // target: 'http://192.168.1.116:18086',
-        target: 'http://192.168.1.125:18086',
+        target: 'http://192.168.1.116:18086',
+        // target: 'http://192.168.1.125:18086',
         changeOrigin: true, // 只有这个值为true的情况下 才表示开启跨域
         pathRewrite: {
           '^/api': ''