gaoluyang
2 天以前 36b909e117c3ccc22dd266a94479e2a02335d261
src/views/productionManagement/processRoute/index.vue
@@ -2,13 +2,25 @@
  <div class="app-container">
    <div class="search_form">
      <el-form :model="searchForm" :inline="true">
        <el-form-item label="规格名称:">
          <el-input v-model="searchForm.model" placeholder="请输入" clearable prefix-icon="Search"
                    style="width: 200px;"
                    @change="handleQuery" />
        <el-form-item label="工艺路线编号">
          <el-input v-model="searchForm.processRouteCode" placeholder="请输入工艺路线编号" clearable style="width: 200px;" />
        </el-form-item>
        <el-form-item label="工艺路线名称">
          <el-input v-model="searchForm.processRouteName" placeholder="请输入工艺路线名称" clearable style="width: 200px;" />
        </el-form-item>
        <el-form-item label="工序名称">
          <el-select v-model="searchForm.processName" placeholder="请选择工序" clearable style="width: 200px;">
            <el-option
              v-for="item in processOptions"
              :key="item.id"
              :label="item.name"
              :value="item.name"
            />
          </el-select>
        </el-form-item>
        <el-form-item>
          <el-button type="primary" @click="handleQuery">搜索</el-button>
          <el-button @click="resetQuery">重置</el-button>
        </el-form-item>
      </el-form>
    </div>
@@ -29,87 +41,65 @@
          :total="page.total"
      />
    </div>
    <new-process
        v-if="isShowNewModal"
        v-model:visible="isShowNewModal"
        @completed="getList"
    />
    <edit-process
        v-if="isShowEditModal"
        v-model:visible="isShowEditModal"
        :record="record"
        @completed="getList"
    />
    <route-item-form
        v-if="isShowItemModal"
        v-model:visible="isShowItemModal"
        :record="record"
    <process-form
        v-if="isShowFormModal"
        ref="formRef"
        v-model:visible="isShowFormModal"
        @completed="getList"
    />
  </div>
</template>
<script setup>
import {onMounted, ref} from "vue";
import NewProcess from "@/views/productionManagement/processRoute/New.vue";
import EditProcess from "@/views/productionManagement/processRoute/Edit.vue";
import RouteItemForm from "@/views/productionManagement/processRoute/ItemsForm.vue";
import {onMounted, ref, nextTick} from "vue";
import ProcessForm from "@/views/productionManagement/processRoute/Form.vue";
import {listPage, del} from "@/api/productionManagement/processRoute.js";
import { useRouter } from 'vue-router'
import {processList} from "@/api/productionManagement/productionProcess.js";
const router = useRouter()
const data = reactive({
  searchForm: {
    model: "",
    processRouteCode: '',
    processRouteName: '',
    processName: undefined,
  },
});
const { searchForm } = toRefs(data);
const processOptions = ref([]);
const tableColumn = ref([
  {
    label: "工艺路线编号",
    prop: "processRouteCode",
  },
  {
    label: "产品名称",
    prop: "productName",
    label: "工艺路线名称",
    prop: "processRouteName",
  },
  {
    label: "产品图纸编号",
    prop: "drawingNumber",
    label: "工序列表",
    prop: "processName",
    minWidth: 300,
  },
  {
    label: "规格名称",
    prop: "model",
    label: "创建人",
    prop: "createBy",
  },
  {
    label: "BOM编号",
    prop: "bomNo",
  },
  {
    label: "描述",
    prop: "description",
    label: "创建时间",
    prop: "createTime",
  },
  {
    dataType: "action",
    label: "操作",
    align: "center",
    fixed: "right",
    width: 280,
    width: 150,
    operation: [
      {
        name: "编辑",
        type: "text",
        clickFun: (row) => {
          showEditModal(row);
        }
      },
      {
        name: "路线项目",
        type: "text",
        clickFun: (row) => {
          showItemModal(row);
        }
      }
    ]
@@ -118,10 +108,9 @@
const tableData = ref([]);
const selectedRows = ref([]);
const tableLoading = ref(false);
const isShowNewModal = ref(false);
const isShowEditModal = ref(false);
const isShowItemModal = ref(false);
const isShowFormModal = ref(false);
const record = ref({});
const formRef = ref(null);
const page = reactive({
  current: 1,
  size: 100,
@@ -132,6 +121,17 @@
// 查询列表
/** 搜索按钮操作 */
const handleQuery = () => {
  page.current = 1;
  getList();
};
/** 重置按钮操作 */
const resetQuery = () => {
  searchForm.value = {
    processRouteCode: '',
    processRouteName: '',
    processName: undefined,
  };
  page.current = 1;
  getList();
};
@@ -162,28 +162,14 @@
// 打开新增弹框
const showNewModal = () => {
  isShowNewModal.value = true
  isShowFormModal.value = true;
  record.value = {};
};
const showEditModal = (row) => {
  isShowEditModal.value = true
  record.value = row
};
const showItemModal = (row) => {
  router.push({
    path: '/productionManagement/processRouteItem',
    query: {
      id: row.id,
      processRouteCode: row.processRouteCode || '',
      drawingNumber: row.drawingNumber || "",
      productName: row.productName || '',
      model: row.model || '',
      bomNo: row.bomNo || '',
      description: row.description || '',
      type: 'route',
    }
  })
const showEditModal = async (row) => {
  isShowFormModal.value = true;
  await nextTick();
  await formRef.value && formRef.value.setData({ id: row.id, processRouteCode: row.processRouteCode, processRouteName: row.processRouteName });
};
// 删除
@@ -202,8 +188,18 @@
}
onMounted(() => {
  getProcessList();
  getList();
});
// 获取工序列表
const getProcessList = () => {
  processList({}).then(res => {
    processOptions.value = res.data || [];
  }).catch(err => {
    console.error("获取工序列表失败:", err);
  });
};
</script>
<style scoped></style>