From eedfb8fa8d1eeb83554081f5785f832f45a64f3a Mon Sep 17 00:00:00 2001
From: chengxiangling <291105840@qq.com>
Date: 星期日, 11 五月 2025 12:29:23 +0800
Subject: [PATCH] 提交页面script加上name命名
---
src/views/mainPlan/sheetMetalOrderManage/index.vue | 1125 ++++++++++++++++++++++++++++++++++++++--------------------
1 files changed, 735 insertions(+), 390 deletions(-)
diff --git a/src/views/mainPlan/sheetMetalOrderManage/index.vue b/src/views/mainPlan/sheetMetalOrderManage/index.vue
index 544f05e..705b2ef 100644
--- a/src/views/mainPlan/sheetMetalOrderManage/index.vue
+++ b/src/views/mainPlan/sheetMetalOrderManage/index.vue
@@ -6,87 +6,142 @@
ref="queryRef"
:inline="true"
v-show="showSearch"
- label-width="110px"
+ :label-width="locale == 'zh' ? '110px' : '200px'"
>
- <el-form-item label="宸ュ崟鍙�" prop="description">
+ <el-row type="flex" justify="left">
+ <el-col :span="12">
+ <el-form-item
+ :label="$t('plan.query.workOrderNo')"
+ prop="workOrderNo"
+ >
<el-input
- style="width: 140px"
- v-model="queryParams.description"
- placeholder="璇疯緭鍏ラ渶姹傝拷婧疘D"
+ :style="{ width: '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="闇�姹傝拷婧疘D" prop="description">
+ </el-col>
+ <el-col :span="12">
+ <el-form-item
+ :label="$t('plan.query.requireTraceID')"
+ prop="requireTrackId"
+ >
<el-input
- style="width: 140px"
- v-model="queryParams.description"
- placeholder="璇疯緭鍏ラ渶姹傝拷婧疘D"
+ :style="{ width: '280px' }"
+ v-model="queryParams.requireTrackId"
+ :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="鏂欏彿" prop="description">
+ </el-col>
+ </el-row>
+ <el-row type="flex" justify="left">
+ <el-col :span="12">
+ <el-form-item
+ :label="$t('plan.query.itemNumber')"
+ prop="mainPartNumber"
+ >
<el-input
- style="width: 140px"
- v-model="queryParams.description"
- placeholder="璇疯緭鍏ユ枡鍙�"
+ :style="{ width:'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="寤惰繜椋庨櫓鏍囪瘑" prop="description">
- <el-input
- style="width: 140px"
- v-model="queryParams.description"
- placeholder="璇疯緭鍏ユ枡鍙�"
+ </el-col>
+ <el-col :span="12">
+ <el-form-item
+ :label="$t('plan.table.delayRiskIdentification')"
+ prop="hasDelayRisk"
+ >
+ <!-- <el-input
+ :style="{ width: locale == 'zh' ? '200px' : '280px' }"
+ v-model="queryParams.hasDelayRisk"
+ :placeholder="`${$t('common.common.placeholder')}${$t(
+ 'plan.table.delayRiskIdentification'
+ )}`"
+ clearable
+ @keyup.enter="handleQuery"
+ /> -->
+ <el-select
clearable
- @keyup.enter="handleQuery"
- />
- </el-form-item>
- <!-- </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"
- >鏌ヨ</el-button
+ v-model="queryParams.hasDelayRisk"
+ style="width: 280px"
>
- <el-button icon="Refresh" @click="resetQuery">閲嶇疆</el-button>
+ <el-option
+ v-for="item in delayRiskOptions"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ />
+ </el-select>
</el-form-item>
- <!-- </el-col>
- </el-row> -->
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col
+ :span="24"
+ style="
+ display: flex;
+ justify-content: flex-end;
+ align-item: center;
+ 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-form-item>
+ </el-col>
+ </el-row>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
- type="primary"
- plain
- icon="Plus"
- :disabled="single"
- @click="handleUpdate"
- v-hasPermi="['apsPlatePlan:edit']"
- >鎵归噺鏇存柊宸ュ崟璁″垝鏃ユ湡</el-button>
+ type="primary"
+ plain
+ icon="Plus"
+ :disabled="multiple"
+ @click="handleBatchUpdatePlanDate"
+ v-hasPermi="['ApsPlatOrderPlanManager:requirement:list']"
+ >{{ $t("plan.btns.batchUpdateOrderDate") }}</el-button
+ >
</el-col>
<el-col :span="1.5">
<el-button
- type="success"
- plain
- icon="Edit"
- :disabled="single"
- @click="handleUpdate"
- v-hasPermi="['apsPlatePlan:edit']"
- >鐢熸垚閽i噾璁″垝宸ュ崟</el-button>
+ type="success"
+ plain
+ icon="Edit"
+ :disabled="loadingGenerateList"
+ @click="handleGenerateList"
+ v-hasPermi="['apsPlatePlan:edit']"
+ >{{ $t("plan.btns.generatePlanOrder") }}</el-button
+ >
</el-col>
- <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>
+ <right-toolbar
+ v-model:showSearch="showSearch"
+ @queryTable="getList"
+ ></right-toolbar>
</el-row>
<HxlhTable
style="width: 100%"
:columns="columns"
- :data="calendarList"
+ :data="orderList"
:loading="loading"
:height="height"
ref="tableRef"
@@ -94,29 +149,151 @@
@changePageNo="changePageNo"
@changePageSize="changePageSize"
@on-checkbox="handleCheckboxChange"
- class="auto-height-grid"
>
+ <template #buttons="{ row }">
+ <el-button
+ type="primary"
+ link
+ @click="handleCheckView(row)"
+ v-hasPermi="['ApsPlatOrderPlanManager:requirement:list']"
+ >{{ $t("plan.btns.viewRequirement") }}</el-button
+ >
+ </template>
</HxlhTable>
+ <el-dialog
+ :title="$t('plan.title.viewAssociatedRequirements')"
+ v-model="openDialog"
+ width="900px"
+ style="height: 400px; overflow: hidden"
+ append-to-body
+ >
+ <HxlhTable
+ style="width: 100%"
+ :columns="subGridOptions"
+ :data="subList"
+ :loading="loadingSub"
+ :height="'280px'"
+ >
+ </HxlhTable>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button @click="openDialog = false">{{
+ $t("common.common.close")
+ }}</el-button>
+ </span>
+ </template>
+ </el-dialog>
+ <el-dialog
+ :title="$t('plan.btns.batchUpdateOrderDate')"
+ v-model="openBatchDialog"
+ width="900px"
+ style="height: 400px; overflow: hidden"
+ append-to-body
+ >
+ <div class="mode_box">
+ <span>{{ $t("plan.title.setMode") }}</span>
+ <el-radio-group v-model="radio" @change="changeRadioCustom">
+ <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>
+ <!-- <el-date-picker
+ v-model="customicDate"
+ type="dates"
+ :placeholder="$t('plan.title.CustomizePlannedCompletionDate')"
+ @change="handleChangeCustomDate($event)"
+ /> -->
+ <el-date-picker
+ v-model="customicDate"
+ type="datetime"
+ :placeholder="$t('plan.title.CustomizePlannedCompletionDate')"
+ @change="handleChangeCustomDate($event)"
+ />
+ </div>
+ <HxlhTable
+ v-if="radio === 1"
+ style="width: 100%"
+ :columns="subUpdateGridOptions"
+ :data="subUpdateList"
+ :loading="loading"
+ :height="'200px'"
+ >
+ </HxlhTable>
+ <HxlhTable
+ v-if="radio === 2"
+ style="width: 100%"
+ :columns="subUpdateCustomGridOptions"
+ :data="subUpdateList"
+ :loading="loading"
+ :height="'200px'"
+ >
+ </HxlhTable>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button @click="openBatchDialog = false">{{
+ $t("common.common.cancel")
+ }}</el-button>
+ <el-button
+ type="primary"
+ @click="hanleBatchUpdateDate"
+ :disabled="loadingUpdateDate"
+ v-hasPermi="['ApsPlatOrderPlanManager:requirement:list']"
+ >{{ $t("common.common.batchUpdate") }}</el-button
+ >
+ </span>
+ </template>
+ </el-dialog>
</div>
</template>
-<script setup name="Calendar">
+<script setup name="SheetMetalOrderManage">
import HxlhTable from "@/components/HxlhTable";
-import {
- listCalendar,
- getCalendar,
- delCalendar,
- addCalendar,
- updateCalendar,
-} from "@/api/basicData/calendar";
-import axios from "axios";
+import { parseTime } from "@/utils/ruoyi.js";
+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 { selectProcessNameList } from "@/api/basicData/processRoute.js";
+import {
+ metalOrderManageList,
+ metalOrderManageSubList,
+ generatorPlanList,
+ planDateList,
+} from "@/api/mainPlan/metalOrderManage.js";
+import { useI18n } from "vue-i18n"; //瑕佸湪js涓娇鐢ㄥ浗闄呭寲
+import { ElMessage } from "element-plus";
+const { t, locale } = useI18n();
+const basicStore = useBasicStore();
const { proxy } = getCurrentInstance();
-const tableRef = ref();
-const calendarList = ref([]);
-const loading = ref(true);
+const delayRiskOptions = ref([
+ {
+ label: "鏈夐闄�",
+ value: "1",
+ },
+ {
+ label: "鏃犻闄�",
+ value: "0",
+ },
+]);
+const radio = ref(1);
+const customicDate = ref("");
+const openDialog = ref(false);
+const openBatchDialog = ref(false);
+const subGridOptions = ref([]);
+const subUpdateGridOptions = ref([]);
+const subUpdateCustomGridOptions = ref([]);
+const subList = ref([]);
+const subUpdateList = ref([]);
+// const tableRef = ref();
+const orderList = ref([]);
+const loading = ref(false);
+const loadingUpdateDate = ref(false);
+const loadingGenerateList = ref(false);
+const loadingSub = ref(false);
const showSearch = ref(true);
const ids = ref([]);
const single = ref(true);
@@ -130,170 +307,512 @@
queryParams: {
pageNum: 1,
pageSize: 10,
- description: null,
- type: null,
- effectiveDate: null,
- expiringDate: null,
- content: null,
- applicableFactory: null,
- applicableWorkshop: null,
- applicableProcess: null,
+ workOrderNo: null,
+ requireTrackId: null,
+ mainPartNumber: null,
+ hasDelayRisk: null,
},
});
const { queryParams, form, rules } = toRefs(data);
-const typeRadioNumber = ref(1);
const plantList = ref([]);
const shopList = ref([]);
const allShopList = ref([]);
const processList = ref([]);
-const height = ref(document.documentElement.clientHeight - 220 + "px;");
+const height = ref(document.documentElement.clientHeight - 320 + "px;");
// 琛ㄦ牸閰嶇疆-鍒楄〃
-const columns = ref([
- { type: "checkbox", width: 60, align: "center" },
- {
- title: "闇�姹侷D",
- field: "description",
- width: 150,
- align: "center",
- },
- {
- title: "闇�姹傝拷婧疘D",
- field: "type",
- width: 200,
- align: "center",
- },
- {
- title: "宸ュ崟鍙�",
- field: "effectiveDate",
- width: 200,
- align: "center",
- },
- {
- title: "鍖归厤鏁伴噺",
- field: "expiringDate",
- width: 200,
- align: "center",
- },
- {
- title: "宸ュ崟绫诲瀷",
- field: "expiringDate",
- width: 200,
- align: "center",
- },
- {
- title: "鏂欏彿",
- field: "createTime",
- width: 200,
- align: "center",
- },
- {
- title: "涓讳欢鍥惧彿",
- field: "createTime",
- width: 200,
- align: "center",
- },
- {
- title: "涓讳欢瀹㈡埛",
- field: "createTime",
- width: 200,
- align: "center",
- },
- {
- title: "鐢熶骇鏁伴噺",
- field: "updateTime",
- width: 100,
- align: "center",
- },
- {
- title: "闇�姹傛棩鏈�",
- field: "updateTime",
- width: 100,
- align: "center",
- },
- {
- title: "閫傜敤宸ュ巶",
- field: "applicableFactory",
- width: 200,
- align: "center",
- formatter: ({ cellValue, row, column }) => {
- if (cellValue) {
- for (let i = 0; i < plantList.value.length; i++) {
- if (cellValue === plantList.value[i].plantCode) {
- return plantList.value[i].plantName;
- }
- }
- }
- },
- },
- {
- title: "鐢熶骇鍩哄湴",
- field: "updateTime",
- width: 100,
- align: "center",
- },
-]);
+const columns = ref([]);
// 鍒嗛〉灞炴��
const page = ref({
total: 0,
current: 1,
size: 10,
});
-
-/** 鏌ヨ鏃ュ巻绠$悊鍒楄〃 */
+watch(
+ locale,
+ (newLocale) => {
+ columns.value = [
+ { type: "checkbox", width: 60, align: "center", fixed: "left" },
+ {
+ title: t("basic.table.requirementID"),
+ field: "requireId",
+ width: 150,
+ align: "center",
+ },
+ {
+ title: t("basic.table.requirementTraceabilityID"),
+ field: "requireTrackId",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.workOrderNo"),
+ field: "workOrderNo",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("basic.table.matchQuantity"),
+ field: "deductionAmount",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("basic.table.workOrderType"),
+ field: "workOrderType",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.itemNumber"),
+ field: "mainPartNumber",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.mainPartDrawingNumber"),
+ field: "mainPartDrawingNumber",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("basic.table.mainCustomer"),
+ field: "customer",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.productionQuantity"),
+ field: "productionQuantity",
+ width: 100,
+ align: "center",
+ },
+ {
+ title: t("basic.table.applicableFactories"),
+ field: "applicableFactories",
+ width: 200,
+ align: "center",
+ formatter: ({ cellValue, row, column }) => {
+ if (cellValue) {
+ for (let i = 0; i < plantList.value.length; i++) {
+ if (cellValue === plantList.value[i].plantCode) {
+ return plantList.value[i].plantName;
+ }
+ }
+ }
+ },
+ },
+ {
+ title: t("plan.table.productionBase"),
+ field: "productionBase",
+ width: 100,
+ align: "center",
+ },
+ {
+ title: t("plan.table.planStartDay"),
+ field: "planStartDay",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.planEndDayDate"),
+ field: "planEndDay",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.workorderCreationTime"),
+ field: "orderCreateTime",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.mismatchedProductionQuantity"),
+ field: "unmatchedQuantity",
+ width: 100,
+ align: "center",
+ },
+ {
+ title: t("plan.table.delayRiskIdentification"),
+ field: "hasDelayRisk",
+ width: 100,
+ align: "center",
+ formatter: ({ cellValue, row, column }) => {
+ if (cellValue) {
+ for (let i = 0; i < delayRiskOptions.value.length; i++) {
+ if (cellValue === delayRiskOptions.value[i].value) {
+ return delayRiskOptions.value[i].label;
+ }
+ }
+ }
+ },
+ },
+ {
+ title: t("common.common.operate"),
+ width: 150,
+ fixed: "right",
+ slots: { default: "buttons" },
+ align: "center",
+ },
+ ];
+ subGridOptions.value = [
+ {
+ title: t("basic.table.requirementID"),
+ field: "id",
+ width: 150,
+ align: "center",
+ },
+ {
+ title: t("basic.table.requirementTraceabilityID"),
+ field: "requireId",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.itemNumber"),
+ field: "bomLineCode",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.bomLowCode"),
+ field: "bomLineLevel",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.bomUsage"),
+ field: "bomUseAmount",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("basic.table.processRouteID"),
+ field: "processRouteId",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.processRouteWorkingHours"),
+ field: "processRouteHours",
+ width: 100,
+ align: "center",
+ },
+ {
+ title: t("plan.table.demandQuantity"),
+ field: "requireAmount",
+ width: 100,
+ align: "center",
+ },
+ {
+ title: t("plan.table.netRequirement"),
+ field: "netRequirement",
+ width: 100,
+ align: "center",
+ },
+ {
+ title: t("plan.table.planStartDay"),
+ field: "startDate",
+ width: 100,
+ align: "center",
+ },
+ {
+ title: t("plan.table.planEndDayDate"),
+ field: "completeDate",
+ width: 100,
+ align: "center",
+ },
+ {
+ title: t("plan.table.requirementDate"),
+ field: "demandDate",
+ width: 100,
+ align: "center",
+ },
+ {
+ title: t("basic.table.applicableFactories"),
+ field: "orgCode",
+ width: 100,
+ align: "center",
+ },
+ {
+ title: t("plan.table.productionBase"),
+ field: "productionBase",
+ width: 100,
+ align: "center",
+ },
+ {
+ title: t("plan.table.matchState"),
+ 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",
+ formatter: ({ cellValue, row, column }) => {
+ if (cellValue) {
+ for (let i = 0; i < delayRiskOptions.value.length; i++) {
+ if (cellValue === delayRiskOptions.value[i].value) {
+ return delayRiskOptions.value[i].label;
+ }
+ }
+ }
+ },
+ },
+ ];
+ subUpdateGridOptions.value = [
+ {
+ title: t("basic.table.requirementID"),
+ field: "requireId",
+ width: 150,
+ align: "center",
+ },
+ {
+ title: t("basic.table.requirementTraceabilityID"),
+ field: "requireTrackId",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.workOrderNo"),
+ field: "workOrderNo",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("basic.table.matchQuantity"),
+ field: "deductionAmount",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("basic.table.workOrderType"),
+ field: "workOrderType",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.itemNumber"),
+ field: "mainPartNumber",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.planStartDay"),
+ field: "planStartDay",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.planEndDayDate"),
+ field: "planEndDay",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.startDateOfDemandPlan"),
+ field: "startDate",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.requirementPlanCompletionDate"),
+ field: "completeDate",
+ width: 200,
+ align: "center",
+ },
+ ];
+ subUpdateCustomGridOptions.value = [
+ {
+ title: t("basic.table.requirementID"),
+ field: "requireId",
+ width: 150,
+ align: "center",
+ },
+ {
+ title: t("basic.table.requirementTraceabilityID"),
+ field: "requireTrackId",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.workOrderNo"),
+ field: "workOrderNo",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("basic.table.matchQuantity"),
+ field: "deductionAmount",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("basic.table.workOrderType"),
+ field: "workOrderType",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.itemNumber"),
+ field: "mainPartNumber",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.planStartDay"),
+ field: "planStartDay",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.planEndDayDate"),
+ field: "planEndDay",
+ width: 200,
+ align: "center",
+ },
+ {
+ title: t("plan.table.customizePlannedCompletionDate"),
+ field: "customTime",
+ width: 200,
+ align: "center",
+ },
+ ];
+ },
+ {
+ immediate: true,
+ deep: true,
+ }
+);
+function changeRadioCustom() {}
+function handleBatchUpdatePlanDate() {
+ openBatchDialog.value = true;
+}
+function handleChangeCustomDate(e) {
+ customicDate.value = parseTime(e); //new Date(e).getFullYear()+ '-' + parseInt(new Date(e).getMonth()*1+1) + '-' + new Date(e).getDate()
+ console.log(customicDate.value, "chang date");
+ if (radio.value == 2) {
+ subUpdateList.value = subUpdateList.value.map((item) => {
+ return {
+ ...item,
+ customTime: customicDate.value,
+ };
+ });
+ console.log(subUpdateList.value, "changeRadioCustom");
+ }
+}
+function handleCheckView(row) {
+ openDialog.value = true;
+ loadingSub.value = true;
+ metalOrderManageSubList(row.workOrderNo)
+ .then((res) => {
+ subList.value = res;
+ loadingSub.value = false;
+ })
+ .catch(() => {
+ loadingSub.value = false;
+ });
+}
+async function hanleBatchUpdateDate() {
+ loadingUpdateDate.value = true;
+ let planIds = subUpdateList.value.map((item) => {
+ return item.id;
+ });
+ let res = null;
+ console.log(planIds, "planIds");
+ if (radio.value == 1) {
+ res = await planDateList({
+ isCustom: false,
+ planIds,
+ });
+ } else {
+ res = await planDateList({
+ isCustom: true,
+ planIds,
+ customDate: customicDate.value,
+ });
+ console.log(res, "res planDateList");
+ }
+ if (res.code === 200) {
+ ElMessage({
+ message: t("plan.message.update"),
+ type: "success",
+ });
+ openBatchDialog.value = false;
+ loadingUpdateDate.value = false;
+ getList();
+ } else {
+ openBatchDialog.value = true;
+ loadingUpdateDate.value = false;
+ }
+}
+async function handleGenerateList() {
+ loadingGenerateList.value = true;
+ const res = await generatorPlanList();
+ if (res.code == 200) {
+ ElMessage({
+ message: t("plan.message.update"),
+ type: "success",
+ });
+ loadingGenerateList.value = false;
+ getList();
+ } else {
+ loadingGenerateList.value = false;
+ }
+}
+/** 鏌ヨ閽i噾宸ュ崟璁″垝绠$悊鍒楄〃 */
function getList() {
loading.value = true;
- listCalendar(queryParams.value).then((response) => {
- calendarList.value = response.rows;
- page.value.total = response.total;
- loading.value = false;
- });
- axios
- .all([
- /** 鏌ヨ宸ュ巶鍒楄〃 */
- listAll_plant({}),
- /** 鏌ヨ杞﹂棿鍒楄〃 */
- listAll_shop({}),
- ])
- .then(
- axios.spread((response1, response2) => {
- plantList.value = response1.data;
- shopList.value = response2.data;
- loading.value = false;
- })
- )
- .catch((error) => {
- console.error("璇锋眰鍑洪敊:", error);
+ metalOrderManageList(queryParams.value)
+ .then((response) => {
+ orderList.value = response.rows;
+ page.value.total = response.total;
+ loading.value = false;
+ })
+ .catch((res) => {
+ loading.value = false;
});
}
-// 鍙栨秷鎸夐挳
-function cancel() {
- open.value = false;
- reset();
-}
-
-// 琛ㄥ崟閲嶇疆
-function reset() {
- form.value = {
- id: null,
- description: null,
- type: "1",
- effectiveDate: null,
- expiringDate: null,
- content: null,
- applicableFactory: null,
- applicableWorkshop: null,
- applicableProcess: null,
- createBy: null,
- createTime: null,
- updateBy: null,
- updateTime: null,
- };
- proxy.resetForm("calendarRef");
-}
-
+// axios
+// .all([
+// /** 鏌ヨ宸ュ巶鍒楄〃 */
+// listAll_plant({}),
+// /** 鏌ヨ杞﹂棿鍒楄〃 */
+// listAll_shop({}),
+// ])
+// .then(
+// axios.spread((response1, response2) => {
+// plantList.value = response1.data;
+// shopList.value = response2.data;
+// loading.value = false;
+// })
+// )
+// .catch((error) => {
+// console.error("璇锋眰鍑洪敊:", error);
+// });
/** 鎼滅储鎸夐挳鎿嶄綔 */
function handleQuery() {
+ console.log("111111");
queryParams.value.pageNum = 1;
getList();
}
@@ -302,145 +821,6 @@
function resetQuery() {
proxy.resetForm("queryRef");
handleQuery();
-}
-
-// 澶氶�夋閫変腑鏁版嵁
-function handleSelectionChange(selection) {
- ids.value = selection.map((item) => item.id);
- single.value = selection.length != 1;
- multiple.value = !selection.length;
-}
-
-/** 鏂板鎸夐挳鎿嶄綔 */
-async function handleAdd() {
- reset();
- open.value = true;
- title.value = "娣诲姞鏃ュ巻绠$悊";
-}
-/** 閫夋嫨宸ュ巶鍚庝簨浠� 鍔犺浇杞﹂棿 鍜� 宸ュ簭 **/
-function changePlant(plant) {
- listAps_shop({ plantCode: plant }).then((response) => {
- shopList.value = response.rows;
- });
- selectProcessNameList({ orgCode: plant }).then((response) => {
- processList.value = response.rows;
- });
-}
-/** 淇敼鎸夐挳鎿嶄綔 */
-function handleUpdate(row) {
- reset();
- const _id = row.id || ids.value;
- getCalendar(_id).then((response) => {
- form.value = response.data;
- // form.value.content = JSON.parse(response.data.content.value);
- if (form.value.type === "1") {
- weekDaysSettingList.value = JSON.parse(
- response.data.content.value
- ).weekdays;
- } else if (form.value.type === "2") {
- holidays.value = JSON.parse(response.data.content.value).holidays;
- }
-
- open.value = true;
- title.value = "淇敼鏃ュ巻绠$悊";
- });
-}
-
-/** 鎻愪氦鎸夐挳 */
-function submitForm() {
- proxy.$refs["calendarRef"].validate((valid) => {
- if (valid) {
- if (form.value.id != null) {
- if (form.value.type === "1") {
- updateCalendar({
- ...form.value,
- content: {
- weekdays: weekDaysSettingList.value,
- },
- applicableWorkshop: form.value.applicableWorkshop,
- applicableProcess: form.value.applicableProcess,
- }).then((response) => {
- proxy.$modal.msgSuccess("淇敼鎴愬姛");
- open.value = false;
- getList();
- });
- } else if (form.value.type === "2") {
- updateCalendar({
- ...form.value,
- content: {
- holidays: holidays.value,
- },
- applicableWorkshop: form.value.applicableWorkshop,
- applicableProcess: form.value.applicableProcess,
- }).then((response) => {
- proxy.$modal.msgSuccess("淇敼鎴愬姛");
- open.value = false;
- getList();
- });
- }
- } else {
- if (form.value.type === "1") {
- addCalendar({
- ...form.value,
- content: {
- weekdays: weekDaysSettingList.value,
- },
- }).then((response) => {
- proxy.$modal.msgSuccess("鏂板鎴愬姛");
- open.value = false;
- getList();
- });
- } else if (form.value.type === "2") {
- addCalendar({
- ...form.value,
- content: {
- holidays: holidays.value,
- },
- }).then((response) => {
- proxy.$modal.msgSuccess("鏂板鎴愬姛");
- open.value = false;
- getList();
- });
- }
- }
- }
- });
-}
-
-/** 鍒犻櫎鎸夐挳鎿嶄綔 */
-function handleDelete(row) {
- const _ids = row.id || ids.value;
- proxy.$modal
- .confirm('鏄惁纭鍒犻櫎鏃ュ巻绠$悊缂栧彿涓�"' + _ids + '"鐨勬暟鎹」锛�')
- .then(function () {
- return delCalendar(_ids);
- })
- .then(() => {
- getList();
- proxy.$modal.msgSuccess("鍒犻櫎鎴愬姛");
- })
- .catch(() => {});
-}
-
-/** 瀵煎嚭鎸夐挳鎿嶄綔 */
-function handleExport() {
- proxy.download(
- "core/calendar/export",
- {
- ...queryParams.value,
- },
- `calendar_${new Date().getTime()}.xlsx`
- );
-}
-function handleSwitchType(e) {
- typeRadioNumber.value = e;
- form.value.type = e;
- form.value.effectiveDate = null;
- form.value.expiringDate = null;
- form.value.content = null;
- form.value.applicableFactory = null;
- form.value.applicableWorkshop = null;
- form.value.applicableProcess = null;
}
function changePageNo(currentPage) {
queryParams.value.pageNum = currentPage;
@@ -455,9 +835,11 @@
}
// 澶氶�夋閫変腑鏁版嵁
const handleCheckboxChange = (data) => {
+ console.log(data, "handleCheckboxChange");
ids.value = data.records.map((item) => item.id);
single.value = data.records.length !== 1;
multiple.value = !data.records.length;
+ subUpdateList.value = data.records;
};
onMounted(() => {
getList();
@@ -467,55 +849,18 @@
.column-with-margin {
margin-right: 0px;
}
-.title_bar_line {
- display: flex;
- justify-content: flex-start;
- align-items: center;
- color: #333;
+.mode_box {
+ margin-left: 30px;
margin-bottom: 10px;
- .line_short {
- width: 5%;
- height: 1px;
- margin-right: 20px;
- border-top: 1px solid #ddd;
- }
- .line_long {
- width: 60%;
- height: 1px;
- margin-left: 20px;
- border-top: 1px solid #ddd;
+ & span {
+ padding-right: 20px;
}
}
-.week_flex {
- display: flex;
- justify-content: flex-start;
- align-content: center;
- color: #606266;
- font-weight: 700;
- margin-left: 20px;
- &.mt20 {
- margin-top: 20px;
- margin-left: 0 !important;
- }
- .week_flex_item {
- &:nth-child(1) {
- margin-top: 5px;
- }
- &:nth-child(2) {
- margin-left: 20px;
- }
- }
-}
-.factory_use_item {
- margin-top: 10px;
+.red_color {
+ color: #f56c6c;
+ margin-bottom: 10px;
}
.mart5 {
margin-top: 5px;
-}
-.custom-height {
- height: 200px; /* 鎴栬�呬娇鐢� min-height */
-}
-.auto-height-grid .xe-body .xe-body--row {
- height: auto; /* 鎴栬�呬娇鐢� min-height */
}
</style>
--
Gitblit v1.9.3