| | |
| | | # é
åå端æå¡ |
| | | # VITE_APP_LOCAL = 'int' |
| | | # VITE_APP_LOCAL = 'zhl' |
| | | VITE_APP_LOCAL = 'cxl' |
| | | VITE_APP_LOCAL = 'sfd' |
| | |
| | | <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> |
| | |
| | | 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(() => { |
| | | // åå§å䏻颿 ·å¼ |
¶Ô±ÈÐÂÎļþ |
| | |
| | | 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" |
| | | }); |
| | | } |
| | |
| | | return {}; |
| | | }, |
| | | }, |
| | | virtualYConfig:{ |
| | | virtualYConfig: { |
| | | type: Object, |
| | | default: () => { |
| | | return {}; |
| | | }, |
| | | }, |
| | | editConfig:{ |
| | | editConfig: { |
| | | type: Object, |
| | | default: () => { |
| | | return {}; |
| | | }, |
| | | } |
| | | }, |
| | | }); |
| | | |
| | | const tableForm = ref([]); |
| | |
| | | // è¿å 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) { |
¶Ô±ÈÐÂÎļþ |
| | |
| | | |
| | | import { metalOrderManageList } from "@/api/mainPlan/metalOrderManage.js"; |
| | | const useBasicStore = defineStore( |
| | | 'basicView', |
| | | { |
| | | state: () => ({ |
| | | sheetMetalOrderManageList: [], |
| | | }), |
| | | actions: { |
| | | //è·åé£éå·¥å计å管çåè¡¨è¯·æ±æ°æ® |
| | | 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 |
| | |
| | | customizePlannedCompletionDate:"èªå®ä¹è®¡åå®å·¥æ¥", |
| | | //é£éæå·å·¥åå¼å¸¸ |
| | | abnormalCause:"å¼å¸¸åå ", |
| | | creationTime:"å·¥åå建æ¶é´" |
| | | creationTime:"å·¥åå建æ¶é´", |
| | | suggestedCompletionDate:"å»ºè®®å®ææ¥æ" |
| | | }, |
| | | }; |
| | | export const en = { |
| | |
| | | customizePlannedCompletionDate:"Customize the planned completion date", |
| | | //é£éæå·å·¥åå¼å¸¸ |
| | | abnormalCause:"Abnormal cause", |
| | | creationTime:"Creation time" |
| | | creationTime:"Creation time", |
| | | suggestedCompletionDate:"Suggested Completion Dateå»ºè®®å®ææ¥æ" |
| | | }, |
| | | }; |
| | |
| | | <HxlhTable |
| | | style="width: 100%" |
| | | :columns="columns" |
| | | :showOverflow="true" |
| | | :virtualYConfig="virtualYConfig" |
| | | :data="processRouteList" |
| | | :loading="loading" |
| | |
| | | const data = reactive({ |
| | | form: {}, |
| | | queryParams: { |
| | | pageNum: 0, |
| | | pageNum: 1, |
| | | pageSize: 100, |
| | | itemNo: null, |
| | | integrationDay: null, |
| | |
| | | :data="processRouteList" |
| | | :loading="loading" |
| | | :height="height" |
| | | :virtualYConfig="virtualYConfig" |
| | | :showOverflow="true" |
| | | @on-checkbox="handleCheckboxChange" |
| | | :page="page" |
| | | @changePageNo="changePageNo" |
| | |
| | | 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, |
| | |
| | | apsStandardProcessRouteHeaderList(queryParams.value) |
| | | .then((response) => { |
| | | processRouteList.value = response.rows; |
| | | page.value.total = response.total; |
| | | loading.value = false; |
| | | }) |
| | | .catch(() => { |
| | |
| | | showOverflow: true, |
| | | showHeaderOverflow: true, |
| | | showFooterOverflow: true, |
| | | virtualXConfig: { |
| | | enabled: true, |
| | | gt: 0, |
| | | }, |
| | | height: height, |
| | | columnConfig: { |
| | | resizable: true, |
| | |
| | | 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; |
| | |
| | | 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, |
| | | }); |
| | |
| | | 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"), |
| | |
| | | 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" |
| | | /> |
| | |
| | | <!-- </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> --> |
| | |
| | | :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"> |
| | |
| | | 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 |
| | |
| | | <HxlhTable |
| | | style="width: 100%" |
| | | :columns="columns" |
| | | :data="calendarList" |
| | | :data="orderList" |
| | | :loading="loading" |
| | | :height="height" |
| | | ref="tableRef" |
| | |
| | | link |
| | | @click="handleCheckView(row)" |
| | | v-hasPermi="['aps:calendar:update']" |
| | | >{{$t('plan.btns.viewRequirement')}}</el-button |
| | | >{{ $t("plan.btns.viewRequirement") }}</el-button |
| | | > |
| | | </template> |
| | | </HxlhTable> |
| | |
| | | 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')" |
| | |
| | | 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" |
| | |
| | | /> |
| | | </div> |
| | | <HxlhTable |
| | | v-if="radio===1" |
| | | v-if="radio === 1" |
| | | style="width: 100%" |
| | | :columns="subUpdateGridOptions" |
| | | :data="subUpdateList" |
| | |
| | | > |
| | | </HxlhTable> |
| | | <HxlhTable |
| | | v-if="radio===2" |
| | | v-if="radio === 2" |
| | | style="width: 100%" |
| | | :columns="subUpdateCustomGridOptions" |
| | | :data="subUpdateList" |
| | |
| | | :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); |
| | |
| | | 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); |
| | |
| | | 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([]); |
| | |
| | | { 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 }) => { |
| | |
| | | }, |
| | | { |
| | | 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", |
| | | }, |
| | |
| | | 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", |
| | | }, |
| | |
| | | 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", |
| | | }, |
| | |
| | | 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", |
| | | }, |
| | |
| | | width: 100, |
| | | align: "center", |
| | | }, |
| | | ] |
| | | ]; |
| | | }, |
| | | { |
| | | immediate: true, |
| | |
| | | } |
| | | 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() |
| | | } |
| | | /** æ¥è¯¢é£éå·¥å计å管çå表 */ |
| | | 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([ |
| | | // /** æ¥è¯¢å·¥åå表 */ |
| | |
| | | // console.error("请æ±åºé:", error); |
| | | // }); |
| | | } |
| | | // 表åéç½® |
| | | function reset() { |
| | | proxy.resetForm("calendarRef"); |
| | | } |
| | | |
| | | /** æç´¢æé®æä½ */ |
| | | function handleQuery() { |
| | | queryParams.value.pageNum = 1; |
| | |
| | | .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; |
| | |
| | | }, |
| | | { immediate: true, deep: true } |
| | | ); |
| | | /** æ¥è¯¢æ¥å管çå表 */ |
| | | /** æ¥è¯¢ç®¡çå表 */ |
| | | function getList() { |
| | | loading.value = true; |
| | | redundantOrderList(queryParams.value).then((response) => { |
| | |
| | | |
| | | <HxlhTable |
| | | style="width: 100%" |
| | | :virtualYConfig="virtualYConfig" |
| | | :columns="columns" |
| | | :data="LogList" |
| | | :loading="loading" |
| | |
| | | |
| | | 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); |