From e3e17a37d85f50bace525ed019ee0cd8d39143eb Mon Sep 17 00:00:00 2001
From: CD配唱片 <CD配唱片>
Date: 星期四, 08 五月 2025 18:19:23 +0800
Subject: [PATCH] 钣金工单计划管理
---
src/views/mainPlan/apsPartRoutStat/index.vue | 39 +++-
.env.development | 2
src/views/mainPlan/workOrderJobLog/index.vue | 6
src/views/mainPlan/sheetMetalOrderManage/index.vue | 307 +++++++++++++++++++++++---------------
src/components/HxlhTable/index.vue | 34 ++--
src/utils/i18n/locales/plan/index.js | 6
src/views/basicData/processRouteDataPreparate/index.vue | 8 +
src/api/mainPlan/metalOrderManage.js | 23 ++
src/views/basicData/processRoute/index.vue | 3
src/store/modules/request/basic/page.js | 25 +++
src/views/mainPlan/sheetMetalRedundantReport/index.vue | 2
src/App.vue | 14 +
12 files changed, 315 insertions(+), 154 deletions(-)
diff --git a/.env.development b/.env.development
index a4a0a7d..f0b6c1e 100644
--- a/.env.development
+++ b/.env.development
@@ -10,4 +10,4 @@
# 閰嶅悎鍚庣鏈嶅姟
# VITE_APP_LOCAL = 'int'
# VITE_APP_LOCAL = 'zhl'
-VITE_APP_LOCAL = 'cxl'
\ No newline at end of file
+VITE_APP_LOCAL = 'sfd'
\ No newline at end of file
diff --git a/src/App.vue b/src/App.vue
index 9b83df5..15d9d23 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -1,5 +1,8 @@
<template>
- <el-config-provider :locale="locale==='zh'?zhCnEl:enUsEl">
+ <el-config-provider :locale="locale === 'zh' ? zhCnEl : enUsEl">
+ <!-- <keep-alive :include="cachedViews">
+ <router-view />
+ </keep-alive> -->
<router-view />
</el-config-provider>
</template>
@@ -12,6 +15,15 @@
const { locale } = useI18n();
import useSettingsStore from "@/store/modules/settings";
import { handleThemeStyle } from "@/utils/theme";
+const route = useRoute();
+const router = useRouter();
+const cachedViews = computed(() => {
+ console.log(router.getRoutes(),"router.getRoutes()")
+ return router
+ .getRoutes() // 鑾峰彇鎵�鏈夎矾鐢�
+ .filter((r) => r.meta && r.meta.keepAlive) // 杩囨护鍑洪渶瑕佺紦瀛樼殑璺敱
+ .map((r) => r.name); // 鑾峰彇璺敱鍚嶇О浣滀负缂撳瓨閿��
+});
onMounted(() => {
nextTick(() => {
// 鍒濆鍖栦富棰樻牱寮�
diff --git a/src/api/mainPlan/metalOrderManage.js b/src/api/mainPlan/metalOrderManage.js
new file mode 100644
index 0000000..9875539
--- /dev/null
+++ b/src/api/mainPlan/metalOrderManage.js
@@ -0,0 +1,23 @@
+import request from "@/utils/request";
+export function metalOrderManageList(query) {
+ return request({
+ url: `/aps/ApsPlatOrderPlanManager/list`,
+ method: "get",
+ params: query
+ });
+}
+// /ApsPlatOrderPlanManager/requirement/list?workOrderNo=abc
+export function metalOrderManageSubList(workOrderNo) {
+ return request({
+ url: `/aps/ApsPlatOrderPlanManager/requirement/list?workOrderNo=${workOrderNo}`,
+ method: "get"
+ });
+}
+
+//aps/ApsPlateStandardRequire/generatorPlan
+export function generatorPlanList() {
+ return request({
+ url: `/aps/ApsPlateStandardRequire/generatorPlan`,
+ method: "post"
+ });
+}
\ No newline at end of file
diff --git a/src/components/HxlhTable/index.vue b/src/components/HxlhTable/index.vue
index 6ecc5ea..8d2a643 100644
--- a/src/components/HxlhTable/index.vue
+++ b/src/components/HxlhTable/index.vue
@@ -178,18 +178,18 @@
return {};
},
},
- virtualYConfig:{
+ virtualYConfig: {
type: Object,
default: () => {
return {};
},
},
- editConfig:{
+ editConfig: {
type: Object,
default: () => {
return {};
},
- }
+ },
});
const tableForm = ref([]);
@@ -227,22 +227,22 @@
// 杩斿洖 Vuex 涓殑 hxlhTableFootData 鐘舵��
// return useStore.state.hxlhTableFootData;
}
-function scrollBoundaryEvent ({ direction }) {
+function scrollBoundaryEvent({ direction }) {
switch (direction) {
- case 'top':
- console.log('瑙﹀彂椤堕儴闃堝�艰寖鍥�')
- break
- case 'bottom':
- console.log('瑙﹀彂搴曢儴闃堝�艰寖鍥�')
+ case "top":
+ console.log("瑙﹀彂椤堕儴闃堝�艰寖鍥�");
+ break;
+ case "bottom":
+ console.log("瑙﹀彂搴曢儴闃堝�艰寖鍥�");
// this.loadList(20)
- emit('bottomAutoLoadMore')
- break
- case 'left':
- console.log('瑙﹀彂宸︿晶闃堝�艰寖鍥�')
- break
- case 'right':
- console.log('瑙﹀彂鍙充晶闃堝�艰寖鍥�')
- break
+ emit("bottomAutoLoadMore");
+ break;
+ case "left":
+ console.log("瑙﹀彂宸︿晶闃堝�艰寖鍥�");
+ break;
+ case "right":
+ console.log("瑙﹀彂鍙充晶闃堝�艰寖鍥�");
+ break;
}
}
function handleSum(list, field) {
diff --git a/src/store/modules/request/basic/page.js b/src/store/modules/request/basic/page.js
new file mode 100644
index 0000000..6b45a95
--- /dev/null
+++ b/src/store/modules/request/basic/page.js
@@ -0,0 +1,25 @@
+
+import { metalOrderManageList } from "@/api/mainPlan/metalOrderManage.js";
+const useBasicStore = defineStore(
+ 'basicView',
+ {
+ state: () => ({
+ sheetMetalOrderManageList: [],
+ }),
+ actions: {
+ //鑾峰彇閽i噾宸ュ崟璁″垝绠$悊鍒楄〃璇锋眰鏁版嵁
+ getMetalOrderManagerList(query) {
+ return new Promise((reslove,reject)=>{
+ metalOrderManageList(query).then(res=>{
+ console.log(res,"metalOrderManageListmetalOrderManageList")
+ this.sheetMetalOrderManageList = res
+ reslove(res)
+ }).catch(error => {
+ reject(error)
+ })
+ })
+ }
+ }
+ })
+
+export default useBasicStore
diff --git a/src/utils/i18n/locales/plan/index.js b/src/utils/i18n/locales/plan/index.js
index 75901c0..90ec9e8 100644
--- a/src/utils/i18n/locales/plan/index.js
+++ b/src/utils/i18n/locales/plan/index.js
@@ -168,7 +168,8 @@
customizePlannedCompletionDate:"鑷畾涔夎鍒掑畬宸ユ棩",
//閽i噾鏂欏彿宸ュ崟寮傚父
abnormalCause:"寮傚父鍘熷洜",
- creationTime:"宸ュ崟鍒涘缓鏃堕棿"
+ creationTime:"宸ュ崟鍒涘缓鏃堕棿",
+ suggestedCompletionDate:"寤鸿瀹屾垚鏃ユ湡"
},
};
export const en = {
@@ -341,6 +342,7 @@
customizePlannedCompletionDate:"Customize the planned completion date",
//閽i噾鏂欏彿宸ュ崟寮傚父
abnormalCause:"Abnormal cause",
- creationTime:"Creation time"
+ creationTime:"Creation time",
+ suggestedCompletionDate:"Suggested Completion Date寤鸿瀹屾垚鏃ユ湡"
},
};
diff --git a/src/views/basicData/processRoute/index.vue b/src/views/basicData/processRoute/index.vue
index ecc1327..a65b93f 100644
--- a/src/views/basicData/processRoute/index.vue
+++ b/src/views/basicData/processRoute/index.vue
@@ -70,6 +70,7 @@
<HxlhTable
style="width: 100%"
:columns="columns"
+ :showOverflow="true"
:virtualYConfig="virtualYConfig"
:data="processRouteList"
:loading="loading"
@@ -407,7 +408,7 @@
const data = reactive({
form: {},
queryParams: {
- pageNum: 0,
+ pageNum: 1,
pageSize: 100,
itemNo: null,
integrationDay: null,
diff --git a/src/views/basicData/processRouteDataPreparate/index.vue b/src/views/basicData/processRouteDataPreparate/index.vue
index dd00a50..c25fe34 100644
--- a/src/views/basicData/processRouteDataPreparate/index.vue
+++ b/src/views/basicData/processRouteDataPreparate/index.vue
@@ -82,6 +82,8 @@
:data="processRouteList"
:loading="loading"
:height="height"
+ :virtualYConfig="virtualYConfig"
+ :showOverflow="true"
@on-checkbox="handleCheckboxChange"
:page="page"
@changePageNo="changePageNo"
@@ -138,6 +140,11 @@
import { useI18n } from "vue-i18n"; //瑕佸湪js涓娇鐢ㄥ浗闄呭寲
const { t, locale } = useI18n();
const { proxy } = getCurrentInstance();
+const virtualYConfig = {
+ enabled: true,
+ gt: 0,
+ threshold: 50,
+}
// 鍒嗛〉灞炴��
const page = ref({
total: 0,
@@ -343,6 +350,7 @@
apsStandardProcessRouteHeaderList(queryParams.value)
.then((response) => {
processRouteList.value = response.rows;
+ page.value.total = response.total;
loading.value = false;
})
.catch(() => {
diff --git a/src/views/mainPlan/apsPartRoutStat/index.vue b/src/views/mainPlan/apsPartRoutStat/index.vue
index d33329f..2395889 100644
--- a/src/views/mainPlan/apsPartRoutStat/index.vue
+++ b/src/views/mainPlan/apsPartRoutStat/index.vue
@@ -49,6 +49,10 @@
showOverflow: true,
showHeaderOverflow: true,
showFooterOverflow: true,
+ virtualXConfig: {
+ enabled: true,
+ gt: 0,
+ },
height: height,
columnConfig: {
resizable: true,
@@ -68,9 +72,13 @@
let tableColumn = [];
let tableData = [];
let merges = [];
-watch(locale, (newLocale) => {
- getList()
-},{immediate:true, deep:true})
+watch(
+ locale,
+ (newLocale) => {
+ getList();
+ },
+ { immediate: true, deep: true }
+);
/** 鏌ヨ闆朵欢缁熻琛ㄥ垪琛� */
function getList() {
let rowKey = 0;
@@ -89,14 +97,19 @@
loading.value = false;
return;
}
- headersOne.push(t('plan.table.dateYearMonth'));
- headersTwo.push(t('plan.table.resourceName'));
+ headersOne.push(t("plan.table.dateYearMonth"));
+ headersTwo.push(t("plan.table.resourceName"));
colList.push({
field: "dateCol",
- title: t('plan.table.dateYearMonth'),
+ title: t("plan.table.dateYearMonth"),
fixed: "left",
children: [
- { field: `resourceName`, title: t('plan.table.resourceName'), width: 250, type: "html" },
+ {
+ field: `resourceName`,
+ title: t("plan.table.resourceName"),
+ width: 250,
+ type: "html",
+ },
],
width: 160,
});
@@ -112,8 +125,16 @@
field: `dateColTime${colKey}`,
title: item,
children: [
- { field: `designTimes${colKey}`, title: t("plan.table.designWorkingHours"), width: 80 },
- { field: `requireTimes${colKey}`, title: t("plan.table.requiredWorkingHours"), width: 80 },
+ {
+ field: `designTimes${colKey}`,
+ title: t("plan.table.designWorkingHours"),
+ width: 80,
+ },
+ {
+ field: `requireTimes${colKey}`,
+ title: t("plan.table.requiredWorkingHours"),
+ width: 80,
+ },
{
field: `capacityLoad${colKey}`,
title: t("plan.table.capacityLoad"),
diff --git a/src/views/mainPlan/sheetMetalOrderManage/index.vue b/src/views/mainPlan/sheetMetalOrderManage/index.vue
index 4af67d6..2b9872d 100644
--- a/src/views/mainPlan/sheetMetalOrderManage/index.vue
+++ b/src/views/mainPlan/sheetMetalOrderManage/index.vue
@@ -6,44 +6,58 @@
ref="queryRef"
:inline="true"
v-show="showSearch"
- :label-width="locale=='zh'?'110px':'200px'"
+ :label-width="locale == 'zh' ? '110px' : '200px'"
>
- <el-form-item :label="$t('plan.query.workOrderNo')" prop="description">
+ <el-form-item :label="$t('plan.query.workOrderNo')" prop="workOrderNo">
<el-input
- :style="{width:locale=='zh'? '200px':'280px'}"
- v-model="queryParams.description"
- :placeholder="`${$t('common.common.placeholder')}${$t('plan.query.workOrderNo')}`"
+ :style="{ width: locale == 'zh' ? '200px' : '280px' }"
+ v-model="queryParams.workOrderNo"
+ :placeholder="`${$t('common.common.placeholder')}${$t(
+ 'plan.query.workOrderNo'
+ )}`"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
<!-- <el-row type="flex" justify="left">
<el-col :span="5"> -->
- <el-form-item :label="$t('plan.query.requireTraceID')" prop="description">
+ <el-form-item
+ :label="$t('plan.query.requireTraceID')"
+ prop="requireTraceId"
+ >
<el-input
- :style="{width:locale=='zh'? '200px':'280px'}"
- v-model="queryParams.description"
- :placeholder="`${$t('common.common.placeholder')}${$t('plan.query.requireTraceID')}`"
+ :style="{ width: locale == 'zh' ? '200px' : '280px' }"
+ v-model="queryParams.requireTraceId"
+ :placeholder="`${$t('common.common.placeholder')}${$t(
+ 'plan.query.requireTraceID'
+ )}`"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
<!-- </el-col>
<el-col :span="5"> -->
- <el-form-item :label="$t('plan.query.itemNumber')" prop="description">
+ <el-form-item :label="$t('plan.query.itemNumber')" prop="mainPartNumber">
<el-input
- :style="{width:locale=='zh'? '200px':'280px'}"
- v-model="queryParams.description"
- :placeholder="`${$t('common.common.placeholder')}${$t('plan.query.itemNumber')}`"
+ :style="{ width: locale == 'zh' ? '200px' : '280px' }"
+ v-model="queryParams.mainPartNumber"
+ :placeholder="`${$t('common.common.placeholder')}${$t(
+ 'plan.query.itemNumber'
+ )}`"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
- <el-form-item :label="$t('plan.table.delayRiskIdentification')" prop="description">
+ <el-form-item
+ :label="$t('plan.table.delayRiskIdentification')"
+ prop="hasDelayRisk"
+ >
<el-input
- :style="{width:locale=='zh'? '200px':'280px'}"
- v-model="queryParams.description"
- :placeholder="`${$t('common.common.placeholder')}${$t('plan.table.delayRiskIdentification')}`"
+ :style="{ width: locale == 'zh' ? '200px' : '280px' }"
+ v-model="queryParams.hasDelayRisk"
+ :placeholder="`${$t('common.common.placeholder')}${$t(
+ 'plan.table.delayRiskIdentification'
+ )}`"
clearable
@keyup.enter="handleQuery"
/>
@@ -51,10 +65,12 @@
<!-- </el-col>
<el-col :span="14" style="text-align: right"> -->
<el-form-item class="column-with-margin">
- <el-button type="primary" icon="Search" @click="handleQuery"
- >{{$t('common.common.query')}}</el-button
- >
- <el-button icon="Refresh" @click="resetQuery">{{$t('common.common.reset')}}</el-button>
+ <el-button type="primary" icon="Search" @click="handleQuery">{{
+ $t("common.common.query")
+ }}</el-button>
+ <el-button icon="Refresh" @click="resetQuery">{{
+ $t("common.common.reset")
+ }}</el-button>
</el-form-item>
<!-- </el-col>
</el-row> -->
@@ -69,7 +85,7 @@
:disabled="multiple"
@click="handleBatchUpdatePlanDate"
v-hasPermi="['apsPlatePlan:edit']"
- >{{$t('plan.btns.batchUpdateOrderDate')}}</el-button
+ >{{ $t("plan.btns.batchUpdateOrderDate") }}</el-button
>
</el-col>
<el-col :span="1.5">
@@ -77,9 +93,9 @@
type="success"
plain
icon="Edit"
- @click="handleUpdate"
+ @click="handleGenerateList"
v-hasPermi="['apsPlatePlan:edit']"
- >{{$t('plan.btns.generatePlanOrder')}}</el-button
+ >{{ $t("plan.btns.generatePlanOrder") }}</el-button
>
</el-col>
<right-toolbar
@@ -90,7 +106,7 @@
<HxlhTable
style="width: 100%"
:columns="columns"
- :data="calendarList"
+ :data="orderList"
:loading="loading"
:height="height"
ref="tableRef"
@@ -105,7 +121,7 @@
link
@click="handleCheckView(row)"
v-hasPermi="['aps:calendar:update']"
- >{{$t('plan.btns.viewRequirement')}}</el-button
+ >{{ $t("plan.btns.viewRequirement") }}</el-button
>
</template>
</HxlhTable>
@@ -119,10 +135,17 @@
style="width: 100%"
:columns="subGridOptions"
:data="subList"
- :loading="loading"
+ :loading="loadingSub"
:height="heightSub"
>
</HxlhTable>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button @click="openDialog = false">{{
+ $t("common.common.cancel")
+ }}</el-button>
+ </span>
+ </template>
</el-dialog>
<el-dialog
:title="$t('plan.btns.batchUpdateOrderDate')"
@@ -131,15 +154,19 @@
append-to-body
>
<div class="mode_box">
- <span>{{$t('plan.title.setMode')}}</span>
+ <span>{{ $t("plan.title.setMode") }}</span>
<el-radio-group v-model="radio">
- <el-radio :label="1">{{$t('plan.btns.batchUpdateOrderDate')}}</el-radio>
- <el-radio :label="2">{{$t('plan.title.CustomizePlannedCompletionDate')}}</el-radio>
+ <el-radio :label="1">{{
+ $t("plan.btns.batchUpdateOrderDate")
+ }}</el-radio>
+ <el-radio :label="2">{{
+ $t("plan.title.CustomizePlannedCompletionDate")
+ }}</el-radio>
</el-radio-group>
</div>
- <div class="red_color">{{$t('plan.title.tipsBugSheetMetal')}}</div>
- <div class="mode_box" v-if="radio===2">
- <span>{{$t('plan.title.CustomizePlannedCompletionDate')}}</span>
+ <div class="red_color">{{ $t("plan.title.tipsBugSheetMetal") }}</div>
+ <div class="mode_box" v-if="radio === 2">
+ <span>{{ $t("plan.title.CustomizePlannedCompletionDate") }}</span>
<el-date-picker
v-model="value4"
type="dates"
@@ -147,7 +174,7 @@
/>
</div>
<HxlhTable
- v-if="radio===1"
+ v-if="radio === 1"
style="width: 100%"
:columns="subUpdateGridOptions"
:data="subUpdateList"
@@ -156,7 +183,7 @@
>
</HxlhTable>
<HxlhTable
- v-if="radio===2"
+ v-if="radio === 2"
style="width: 100%"
:columns="subUpdateCustomGridOptions"
:data="subUpdateList"
@@ -164,25 +191,25 @@
:height="heightSub"
>
</HxlhTable>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button @click="openBatchDialog = false">{{
+ $t("common.common.cancel")
+ }}</el-button>
+ </span>
+ </template>
</el-dialog>
</div>
</template>
<script setup name="Calendar">
import HxlhTable from "@/components/HxlhTable";
-import {
- listCalendar,
- getCalendar,
- delCalendar,
- addCalendar,
- updateCalendar,
-} from "@/api/basicData/calendar";
-import axios from "axios";
+import useBasicStore from "@/store/modules/request/basic/page";
import { listAll_plant } from "@/api/basicData/plant";
-import { listAll_shop, listAps_shop } from "@/api/basicData/shop";
-import { plateStandardRequireErrorList } from "@/api/basicData/sheetMetalConfig/sheetMetalConfig.js";
+import { metalOrderManageList,metalOrderManageSubList,generatorPlanList } from "@/api/mainPlan/metalOrderManage.js";
import { useI18n } from "vue-i18n"; //瑕佸湪js涓娇鐢ㄥ浗闄呭寲
const { t, locale } = useI18n();
+const basicStore = useBasicStore();
const { proxy } = getCurrentInstance();
const radio = ref(1);
const openDialog = ref(false);
@@ -193,8 +220,9 @@
const subList = ref([]);
const subUpdateList = ref([]);
// const tableRef = ref();
-const calendarList = ref([]);
-const loading = ref(true);
+const orderList = ref([]);
+const loading = ref(false);
+const loadingSub = ref(false)
const showSearch = ref(true);
const ids = ref([]);
const single = ref(true);
@@ -208,18 +236,13 @@
queryParams: {
pageNum: 1,
pageSize: 10,
- description: null,
- type: null,
- effectiveDate: null,
- expiringDate: null,
- content: null,
- applicableFactory: null,
- applicableWorkshop: null,
- applicableProcess: null,
+ workOrderNo: null,
+ requireTraceId: null,
+ mainPartNumber: null,
+ hasDelayRisk: null,
},
});
const { queryParams, form, rules } = toRefs(data);
-const typeRadioNumber = ref(1);
const plantList = ref([]);
const shopList = ref([]);
const allShopList = ref([]);
@@ -240,61 +263,61 @@
{ type: "checkbox", width: 60, align: "center" },
{
title: t("basic.table.requirementID"),
- field: "description",
+ field: "requireId",
width: 150,
align: "center",
},
{
title: t("basic.table.requirementTraceabilityID"),
- field: "type",
+ field: "requireTraceId",
width: 200,
align: "center",
},
{
title: t("plan.table.workOrderNo"),
- field: "effectiveDate",
+ field: "workOrderNo",
width: 200,
align: "center",
},
{
title: t("basic.table.matchQuantity"),
- field: "expiringDate",
+ field: "deductionAmount",
width: 200,
align: "center",
},
{
title: t("basic.table.workOrderType"),
- field: "expiringDate",
+ field: "workOrderType",
width: 200,
align: "center",
},
{
title: t("plan.table.itemNumber"),
- field: "createTime",
+ field: "mainPartNumber",
width: 200,
align: "center",
},
{
title: t("plan.table.mainPartDrawingNumber"),
- field: "createTime",
+ field: "mainPartDrawingNumber",
width: 200,
align: "center",
},
{
title: t("basic.table.mainCustomer"),
- field: "createTime",
+ field: "customer",
width: 200,
align: "center",
},
{
title: t("plan.table.productionQuantity"),
- field: "updateTime",
+ field: "productionQuantity",
width: 100,
align: "center",
},
{
title: t("basic.table.applicableFactories"),
- field: "applicableFactory",
+ field: "applicableFactories",
width: 200,
align: "center",
formatter: ({ cellValue, row, column }) => {
@@ -309,37 +332,37 @@
},
{
title: t("plan.table.productionBase"),
- field: "updateTime",
+ field: "productionBase",
width: 100,
align: "center",
},
{
title: t("plan.table.planStartDay"),
- field: "updateTime",
+ field: "planStartDay",
width: 100,
align: "center",
},
{
title: t("plan.table.planEndDayDate"),
- field: "updateTime",
+ field: "planEndDay",
width: 100,
align: "center",
},
{
title: t("plan.table.workorderCreationTime"),
- field: "updateTime",
+ field: "orderCreateTime",
width: 100,
align: "center",
},
{
title: t("plan.table.mismatchedProductionQuantity"),
- field: "updateTime",
+ field: "unmatchedQuantity",
width: 100,
align: "center",
},
{
title: t("plan.table.delayRiskIdentification"),
- field: "updateTime",
+ field: "hasDelayRisk",
width: 100,
align: "center",
},
@@ -354,91 +377,115 @@
subGridOptions.value = [
{
title: t("basic.table.requirementID"),
- field: "description",
+ field: "id",
width: 150,
align: "center",
},
{
title: t("basic.table.requirementTraceabilityID"),
- field: "type",
+ field: "requireId",
width: 200,
align: "center",
},
{
title: t("plan.table.itemNumber"),
- field: "effectiveDate",
+ field: "bomLineCode",
width: 200,
align: "center",
},
{
title: t("plan.table.bomLowCode"),
- field: "expiringDate",
+ field: "bomLineLevel",
width: 200,
align: "center",
},
{
title: t("plan.table.bomUsage"),
- field: "expiringDate",
+ field: "bomUseAmount",
width: 200,
align: "center",
},
{
title: t("basic.table.processRouteID"),
- field: "createTime",
+ field: "processRouteId",
width: 200,
align: "center",
},
{
title: t("plan.table.processRouteWorkingHours"),
- field: "updateTime",
+ field: "processRouteHours",
width: 100,
align: "center",
},
{
title: t("plan.table.demandQuantity"),
- field: "updateTime",
+ field: "requireAmount",
width: 100,
align: "center",
},
{
title: t("plan.table.netRequirement"),
- field: "updateTime",
+ field: "netRequirement",
width: 100,
align: "center",
},
{
title: t("plan.table.planStartDay"),
- field: "updateTime",
+ field: "startDate",
width: 100,
align: "center",
},
{
title: t("plan.table.planEndDayDate"),
- field: "updateTime",
+ field: "completeDate",
width: 100,
align: "center",
},
{
title: t("plan.table.requirementDate"),
- field: "updateTime",
+ field: "demandDate",
width: 100,
align: "center",
},
{
title: t("basic.table.applicableFactories"),
- field: "updateTime",
+ field: "orgCode",
width: 100,
align: "center",
},
{
title: t("plan.table.productionBase"),
- field: "updateTime",
+ field: "productionBase",
width: 100,
align: "center",
},
{
title: t("plan.table.matchState"),
- field: "updateTime",
+ field: "matchState",
+ width: 100,
+ align: "center",
+ },
+ {
+ title: t("plan.table.matchPattern"),
+ field: "matchMode",
+ width: 100,
+ align: "center",
+ },
+ {
+ title: t("plan.table.unmatchedDemandQuantity"),
+ field: "unmatchedDemandAmount",
+ width: 100,
+ align: "center",
+ },
+ {
+ title: t("plan.table.suggestedCompletionDate"),
+ field: "suggestedCompletionDate",
+ width: 100,
+ align: "center",
+ },
+ {
+ title: t("plan.table.delayRiskIdentification"),
+ field: "hasDelayRisk",
width: 100,
align: "center",
},
@@ -446,61 +493,61 @@
subUpdateGridOptions.value = [
{
title: t("basic.table.requirementID"),
- field: "description",
+ field: "requireId",
width: 150,
align: "center",
},
{
title: t("basic.table.requirementTraceabilityID"),
- field: "type",
+ field: "requireTraceId",
width: 200,
align: "center",
},
{
title: t("plan.table.workOrderNo"),
- field: "effectiveDate",
+ field: "workOrderNo",
width: 200,
align: "center",
},
{
title: t("basic.table.matchQuantity"),
- field: "expiringDate",
+ field: "deductionAmount",
width: 200,
align: "center",
},
{
title: t("basic.table.workOrderType"),
- field: "expiringDate",
+ field: "workOrderType",
width: 200,
align: "center",
},
{
title: t("plan.table.itemNumber"),
- field: "createTime",
+ field: "mainPartNumber",
width: 200,
align: "center",
},
{
title: t("plan.table.planStartDay"),
- field: "updateTime",
+ field: "planStartDay",
width: 100,
align: "center",
},
{
title: t("plan.table.planEndDayDate"),
- field: "updateTime",
+ field: "planEndDay",
width: 100,
align: "center",
},
{
title: t("plan.table.startDateOfDemandPlan"),
- field: "updateTime",
+ field: "startDay",
width: 100,
align: "center",
},
{
title: t("plan.table.requirementPlanCompletionDate"),
- field: "updateTime",
+ field: "completeDay",
width: 100,
align: "center",
},
@@ -508,49 +555,49 @@
subUpdateCustomGridOptions.value = [
{
title: t("basic.table.requirementID"),
- field: "description",
+ field: "requireId",
width: 150,
align: "center",
},
{
title: t("basic.table.requirementTraceabilityID"),
- field: "type",
+ field: "requireTraceId",
width: 200,
align: "center",
},
{
title: t("plan.table.workOrderNo"),
- field: "effectiveDate",
+ field: "workOrderNo",
width: 200,
align: "center",
},
{
title: t("basic.table.matchQuantity"),
- field: "expiringDate",
+ field: "deductionAmount",
width: 200,
align: "center",
},
{
title: t("basic.table.workOrderType"),
- field: "expiringDate",
+ field: "workOrderType",
width: 200,
align: "center",
},
{
title: t("plan.table.itemNumber"),
- field: "createTime",
+ field: "mainPartNumber",
width: 200,
align: "center",
},
{
title: t("plan.table.planStartDay"),
- field: "updateTime",
+ field: "planStartDay",
width: 100,
align: "center",
},
{
title: t("plan.table.planEndDayDate"),
- field: "updateTime",
+ field: "planEndDay",
width: 100,
align: "center",
},
@@ -560,7 +607,7 @@
width: 100,
align: "center",
},
- ]
+ ];
},
{
immediate: true,
@@ -572,15 +619,38 @@
}
function handleCheckView(row) {
openDialog.value = true;
+ loadingSub.value = true;
+ metalOrderManageSubList(row.workOrderNo).then((res)=>{
+ subList.value = res;
+ loadingSub.value = false;
+ console.log(res,"metalOrderManageSubListmetalOrderManageSubList")
+ }).catch(()=>{
+ loadingSub.value = false;
+ })
}
-/** 鏌ヨ鏃ュ巻绠$悊鍒楄〃 */
+async function handleGenerateList(){
+ await generatorPlanList()
+}
+/** 鏌ヨ閽i噾宸ュ崟璁″垝绠$悊鍒楄〃 */
function getList() {
loading.value = true;
- listCalendar(queryParams.value).then((response) => {
- calendarList.value = response.rows;
- page.value.total = response.total;
+ if (basicStore.sheetMetalOrderManageList&&basicStore.sheetMetalOrderManageList.rows) {
+ orderList.value = basicStore.sheetMetalOrderManageList.rows;
loading.value = false;
- });
+ } else {
+ basicStore.getMetalOrderManagerList(queryParams.value).then((response) => {
+ orderList.value = response.rows;
+ page.value.total = response.total;
+ loading.value = false;
+ }).catch(()=>{
+ loading.value = false;
+ });
+ }
+ // metalOrderManageList(queryParams.value).then((response) => {
+ // orderList.value = response.rows;
+ // page.value.total = response.total;
+ // loading.value = false;
+ // });
// axios
// .all([
// /** 鏌ヨ宸ュ巶鍒楄〃 */
@@ -599,11 +669,6 @@
// console.error("璇锋眰鍑洪敊:", error);
// });
}
-// 琛ㄥ崟閲嶇疆
-function reset() {
- proxy.resetForm("calendarRef");
-}
-
/** 鎼滅储鎸夐挳鎿嶄綔 */
function handleQuery() {
queryParams.value.pageNum = 1;
@@ -642,16 +707,16 @@
.column-with-margin {
margin-right: 0px;
}
-.mode_box{
+.mode_box {
margin-left: 30px;
margin-bottom: 10px;
- & span{
+ & span {
padding-right: 20px;
}
}
-.red_color{
- color:#f56c6c;
- margin-bottom:10px;
+.red_color {
+ color: #f56c6c;
+ margin-bottom: 10px;
}
.mart5 {
margin-top: 5px;
diff --git a/src/views/mainPlan/sheetMetalRedundantReport/index.vue b/src/views/mainPlan/sheetMetalRedundantReport/index.vue
index b9f7dbf..a6062c5 100644
--- a/src/views/mainPlan/sheetMetalRedundantReport/index.vue
+++ b/src/views/mainPlan/sheetMetalRedundantReport/index.vue
@@ -183,7 +183,7 @@
},
{ immediate: true, deep: true }
);
-/** 鏌ヨ鏃ュ巻绠$悊鍒楄〃 */
+/** 鏌ヨ绠$悊鍒楄〃 */
function getList() {
loading.value = true;
redundantOrderList(queryParams.value).then((response) => {
diff --git a/src/views/mainPlan/workOrderJobLog/index.vue b/src/views/mainPlan/workOrderJobLog/index.vue
index 272056c..2111f0e 100644
--- a/src/views/mainPlan/workOrderJobLog/index.vue
+++ b/src/views/mainPlan/workOrderJobLog/index.vue
@@ -99,6 +99,7 @@
<HxlhTable
style="width: 100%"
+ :virtualYConfig="virtualYConfig"
:columns="columns"
:data="LogList"
:loading="loading"
@@ -154,7 +155,10 @@
const { proxy } = getCurrentInstance();
const height = ref(document.documentElement.clientHeight - 270 + "px;")
-
+const virtualYConfig = {
+ enabled: true,
+ gt: 0
+};
const LogList = ref([]);
const open = ref(false);
const loading = ref(true);
--
Gitblit v1.9.3