Bläddra i källkod

修改领料 申请 拆出新页面

ysy 1 år sedan
förälder
incheckning
b505ff8d95
2 ändrade filer med 199 tillägg och 2 borttagningar
  1. 197 0
      src/views/materialPlan/pickPlan.vue
  2. 2 2
      vue.config.js

+ 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': ''