近期更改

This commit is contained in:
z 2025-08-20 19:22:53 +08:00
parent 79a62df340
commit ba39a1db06
49 changed files with 803 additions and 125 deletions

View File

@ -152,5 +152,6 @@ public class PlanRespVO {
@Schema(description = "工艺结束日期")
private LocalDateTime castEndDate;
@Schema(description = "是否需要铸件图:1表示需要0表示不需要")
private Integer hasCast;
}

View File

@ -79,4 +79,6 @@ public class TaskDispatchPageReqVO extends PageParam {
@Schema(description = "生产计划单号")
private String planCode;
@Schema(description = "图号")
private String blueprintNo;
}

View File

@ -222,7 +222,7 @@ public interface MaterialPlanBoomMapper extends BaseMapperX<MaterialPlanBoomDO>
MPJLambdaWrapper<MaterialPlanBoomDO> query = new MPJLambdaWrapper<>();
query.selectAll(MaterialPlanBoomDO.class)
.select("p.project_name as projectName","p.name as projectSubName","p.name_sim as projectSubNameSim")
.select("d.spec as boomSpec","d.blueprint_no as blueprintNo","d.unit as unit","f.name as supplierName")
.select(" COALESCE(m.boom_spec, d.spec) as boomSpec","d.blueprint_no as blueprintNo","d.unit as unit","f.name as supplierName")
.select("a.nickname as duEmpName","c.name as procedureName","e.name as compositionName")
.select("COALESCE(m.the_weight, t.mat_weight) as theWeight","COALESCE(m.the_weight, t.mat_weight) as theWeight")
.select("COALESCE(m.purchase_amount, t.boom_amount) AS purchaseAmounts,m.supplier_id as supplierIds,m.estimated_price as estimatedPrices")

View File

@ -93,9 +93,9 @@ public interface PgMasterLineMapper extends BaseMapperX<PgMasterLineDO> {
.eq(reqVO.getPgType() != null, PgMasterLineDO::getPgType, reqVO.getPgType())
.eq(reqVO.getDispatchStatus() != null, PgMasterLineDO::getDispatchStatus, reqVO.getDispatchStatus());
if (reqVO.getSubOrDetailName() != null && !reqVO.getSubOrDetailName().trim().equals("")){
query.and( e ->e.like(PgMasterLineDO::getProjectName, reqVO.getSubOrDetailName()).or().like(
query.and( e ->e.eq(PgMasterLineDO::getProjectName, reqVO.getSubOrDetailName()).or().eq(
PgMasterLineDO::getProjectSubName, reqVO.getSubOrDetailName()
).or().like(PgMasterLineDO::getMaterialName, reqVO.getSubOrDetailName()));
).or().eq(PgMasterLineDO::getMaterialName, reqVO.getSubOrDetailName()));
// query.eq(" (b.project_name like '%" + reqVO.getSubOrDetailName() + "%' or c.name like '%" + reqVO.getSubOrDetailName() + "%')");
}

View File

@ -228,6 +228,19 @@ public interface ProcessDesignMapper extends BaseMapperX<ProcessDesignDO> {
;
query.and(q -> q
.and(innerQ -> innerQ
.apply("a.craft_start_date is not null and a.craft_end_date is not null and t.process_design_type = {0}", ProcessDesignTypeEnum.BLUEPRINT_FOUNDRY_TECHNOLOGY.name())
.or()
.apply("b.start_blank_date is not null and b.blank_date is not null and t.process_design_type = {0}", ProcessDesignTypeEnum.BLUEPRINT_WORKBLANK.name())
.or()
.apply("b.start_two_dim_Date is not null and b.two_dim_date is not null and t.process_design_type = {0}", ProcessDesignTypeEnum.BLUEPRINT_2D.name())
.or()
.apply("b.start_three_dim_date is not null and b.three_dim_date is not null and t.process_design_type = {0}", ProcessDesignTypeEnum.BLUEPRINT_3D.name())
)
.or()
.apply("a.cast_start_date is not null and a.cast_end_date is not null and t.process_design_type = {0}", ProcessDesignTypeEnum.CASTING_DRAWING.name())
);
if(!StringUtils.isEmpty(reqVO.getOwnerName())){
query.and(QueryWrapper -> QueryWrapper.apply("u2.nickname like concat('%', {0}, '%') and t.process_design_type = {1}", reqVO.getOwnerName(), ProcessDesignTypeEnum.BLUEPRINT_FOUNDRY_TECHNOLOGY.name())
.or()
@ -301,7 +314,19 @@ public interface ProcessDesignMapper extends BaseMapperX<ProcessDesignDO> {
.like(!StringUtils.isEmpty(reqVO.getProcessDesignType()), ProcessDesignDO::getProcessDesignType, reqVO.getProcessDesignType())
;
query.and(q -> q
.and(innerQ -> innerQ
.apply("a.craft_start_date is not null and a.craft_end_date is not null and t.process_design_type = {0}", ProcessDesignTypeEnum.BLUEPRINT_FOUNDRY_TECHNOLOGY.name())
.or()
.apply("b.start_blank_date is not null and b.blank_date is not null and t.process_design_type = {0}", ProcessDesignTypeEnum.BLUEPRINT_WORKBLANK.name())
.or()
.apply("b.start_two_dim_Date is not null and b.two_dim_date is not null and t.process_design_type = {0}", ProcessDesignTypeEnum.BLUEPRINT_2D.name())
.or()
.apply("b.start_three_dim_date is not null and b.three_dim_date is not null and t.process_design_type = {0}", ProcessDesignTypeEnum.BLUEPRINT_3D.name())
)
.or()
.apply("a.cast_start_date is not null and a.cast_end_date is not null and t.process_design_type = {0}", ProcessDesignTypeEnum.CASTING_DRAWING.name())
);
if(!StringUtils.isEmpty(reqVO.getOwnerName())){
query.and(QueryWrapper -> QueryWrapper.apply("u2.nickname like concat('%', {0}, '%') and t.process_design_type = {1}", reqVO.getOwnerName(), ProcessDesignTypeEnum.BLUEPRINT_FOUNDRY_TECHNOLOGY.name())
.or()

View File

@ -330,9 +330,9 @@ public interface TaskDispatchDetailMapper extends BaseMapperX<TaskDispatchDetail
}
if (reqVO.getSubOrDetailName() != null && !reqVO.getSubOrDetailName().trim().equals("")){
query.and( e ->e.like(ProjectOrderDO::getProjectName, reqVO.getSubOrDetailName()).or().like(
query.and( e ->e.eq(ProjectOrderDO::getProjectName, reqVO.getSubOrDetailName()).or().eq(
ProjectOrderSubDO::getName, reqVO.getSubOrDetailName()
).or().like(ProcessBomDetailDO::getMaterialName, reqVO.getSubOrDetailName()));
).or().eq(ProcessBomDetailDO::getMaterialName, reqVO.getSubOrDetailName()));
// query.eq(" (b.project_name like '%" + reqVO.getSubOrDetailName() + "%' or c.name like '%" + reqVO.getSubOrDetailName() + "%')");
}
query.and(wrapper -> {

View File

@ -1,5 +1,6 @@
package com.chanko.yunxi.mes.module.heli.dal.mysql.taskdispatch;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
@ -79,6 +80,7 @@ public interface TaskDispatchMapper extends BaseMapperX<TaskDispatchDO> {
.like(!StringUtils.isEmpty(reqVO.getOwnerName()), "u1.nickname", reqVO.getOwnerName())
.like(!StringUtils.isEmpty(reqVO.getTaskCode()), PlanTaskDO::getTaskNo, reqVO.getTaskCode())
.like(!StringUtils.isEmpty(reqVO.getPlanCode()), PlanDO::getPlanNo, reqVO.getPlanCode())
.like(ObjectUtil.isNotEmpty(reqVO.getBlueprintNo()),ProcessBomDetailDO::getBlueprintNo, reqVO.getBlueprintNo());
;
return selectPage(reqVO, query);
}
@ -127,6 +129,8 @@ public interface TaskDispatchMapper extends BaseMapperX<TaskDispatchDO> {
.like(!StringUtils.isEmpty(reqVO.getOwnerId()), "u1.id", reqVO.getOwnerId())
.like(!StringUtils.isEmpty(reqVO.getTaskCode()), PlanTaskDO::getTaskNo, reqVO.getTaskCode())
.like(!StringUtils.isEmpty(reqVO.getPlanCode()), PlanDO::getPlanNo, reqVO.getPlanCode())
.like(ObjectUtil.isNotEmpty(reqVO.getBlueprintNo()),ProcessBomDetailDO::getBlueprintNo, reqVO.getBlueprintNo());
;
return selectList(query);
}

View File

@ -119,7 +119,7 @@ public interface ZjPgMasterLineMapper extends BaseMapperX<ZjPgMasterLineDO> {
;
if (reqVO.getSubOrDetailName() != null && !reqVO.getSubOrDetailName().trim().equals("")){
query.and( e ->e.like(ZjPgMasterLineDO::getProjectName, reqVO.getSubOrDetailName()).or().like(
query.and( e ->e.eq(ZjPgMasterLineDO::getProjectName, reqVO.getSubOrDetailName()).or().eq(
ZjPgMasterLineDO::getProjectSubName, reqVO.getSubOrDetailName()
));
// query.eq(" (b.project_name like '%" + reqVO.getSubOrDetailName() + "%' or c.name like '%" + reqVO.getSubOrDetailName() + "%')");

View File

@ -70,7 +70,7 @@
<el-button
type="primary"
plain
@click="openDetail('create')"
v-hasPermi="['heli:pricequoterecord:create']"
>
@ -151,7 +151,7 @@
<Pagination
:total="total"
v-model:page="queryParams.pageNo"
v-model:limit="queryParams.pageSize"
v-model:limit="queryParams.pageSize"
@pagination="getList"
/>
</ContentWrap>
@ -161,12 +161,12 @@
</template>
<script setup lang="ts">
import { getIntDictOptions, getStrDictOptions, DICT_TYPE } from '@/utils/dict'
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import { dateFormatter } from '@/utils/formatTime'
import download from '@/utils/download'
import * as PricequoterecordApi from '@/api/heli/pricequoterecord'
import PricequoterecordForm from './PricequoterecordForm.vue'
import routeParamsCache from '@/utils/routeParamsCache';
defineOptions({ name: 'Pricequoterecord' })
const message = useMessage() //
@ -262,7 +262,21 @@ const handleExport = async () => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
</script>
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -189,11 +189,11 @@
</template>
<script setup lang="ts">
import {getStrDictOptions, DICT_TYPE, getIntDictOptions, getDictLabel} from '@/utils/dict'
import {dateFormatter, dateFormatter2} from '@/utils/formatTime'
import { DICT_TYPE, getIntDictOptions, getDictLabel} from '@/utils/dict'
import {dateFormatter2} from '@/utils/formatTime'
import download from '@/utils/download'
import * as DeliverOrderApi from '@/api/heli/deliverorder'
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'DeliverOrder' })
const message = useMessage() //
@ -349,7 +349,21 @@ const getOrderProperty = (property) => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -113,7 +113,7 @@
import * as FpUserDetailApi from '@/api/heli/fpuserdetail'
import router from "@/router";
import {ref} from "vue";
import routeParamsCache from '@/utils/routeParamsCache';
defineOptions({ name: 'FpUserDetail' })
const message = useMessage() //
@ -199,7 +199,21 @@ const handleDelete = async (id: number) => {
// }
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -94,7 +94,7 @@
<script setup lang="ts">
import * as InspectionReportApi from '@/api/heli/inspectionreport'
import {useCommonStore} from "@/store/modules/common";
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'InspectionReport' })
const message = useMessage() //
@ -158,7 +158,21 @@ const openDetail = (type: string, id?: number) => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -81,7 +81,7 @@
import { DICT_TYPE } from '@/utils/dict'
import { dateFormatter1} from '@/utils/formatTime'
import * as MaterialPlanApi from '@/api/heli/materialplan'
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'MaterialPlan' })
const router = useRouter()
@ -173,9 +173,23 @@ const handleDelete = async (id: number) => {
const userInit = ref()
/** 初始化 **/
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
//
// userInit.value = await UserApi.getSimpleUserList()
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -85,7 +85,7 @@ import { DICT_TYPE } from '@/utils/dict'
import { dateFormatter1} from '@/utils/formatTime'
import * as MaterialPlanApi from '@/api/heli/materialplan'
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'MaterialPlan' })
const router = useRouter()
const message = useMessage() //
@ -178,9 +178,23 @@ const handleDelete = async (id: number) => {
const userInit = ref()
/** 初始化 **/
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
//
// userInit.value = await UserApi.getSimpleUserList()
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -99,12 +99,12 @@
</template>
<script setup lang="ts">
import {dateFormatter, dateFormatter1} from '@/utils/formatTime'
import {dateFormatter1} from '@/utils/formatTime'
import download from '@/utils/download'
import * as MatReqApi from '@/api/heli/matreq'
import MatReqForm from './MatReqForm.vue'
import {DICT_TYPE} from "@/utils/dict";
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'MatReq' })
const message = useMessage() //
@ -191,7 +191,21 @@ const handleExport = async () => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -135,7 +135,7 @@ import download from '@/utils/download'
import * as OutsourceStockApi from '@/api/heli/outsourcestock'
import OutsourceStockForm from './OutsourceStockForm.vue'
import { dateFormatter, formatDate } from '@/utils/formatTime'
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'OutsourceStock' })
const message = useMessage() //
@ -238,7 +238,21 @@ const handleExport = async () => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
</script>
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -99,6 +99,14 @@
</template>
</el-table-column>
<el-table-column label="材质" align="center" prop="compositionName" min-width="120" />
<el-table-column min-width="200px" align="center" >
<template #header>规格</template>
<template #default="{ row, $index }">
<el-form-item :prop="`${$index}.boomSpec`" class="mb-0px!" >
<el-input class="!w-265px" v-model="row.boomSpec" placeholder="规格" />
</el-form-item>
</template>
</el-table-column>
<el-table-column label="零件号" align="center" prop="blueprintNo" min-width="120" />
<el-table-column label="需求数量" align="center" prop="boomAmount" min-width="120" />
<el-table-column label="单位" align="center" prop="unit" min-width="120">

View File

@ -59,7 +59,7 @@
<!-- 列表 -->
<ContentWrap>
<el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true" class="hl-table">
<el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true" class="hl-table" show-summary :summary-method="getSummaries">
<el-table-column label="序号" type="index" align="center" fixed min-width="70px" />
<el-table-column label="送审日期" align="center" prop="createTime" min-width="150px" :formatter="dateFormatter1"/>
<el-table-column label="客户简称" align="center" prop="brief" min-width="100px" />
@ -170,13 +170,78 @@ const handleQuery = () => {
queryParams.pageNo = 1
getList()
}
const getSummaries = (param: SummaryMethodProps) => {
const summaryField = ["estimatedPrice"];
console.log(param)
const { columns, data } = param;
const sums = [];
columns.forEach((column, index) => {
if (index === 0) {
sums[index] = '合计';
return;
}
if (!summaryField.includes(column.property)) {
sums[index] = '';
return;
}
const values = data.map(item => Number(item[column.property]));
if (!values.every(value => isNaN(value))) {
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return floatAdd(prev, curr);
} else {
return prev;
}
}, 0);
const thousandsField = [];
if (thousandsField.includes(column.property)) {
sums[index] = thousandsFormat(sums[index]);
}
} else {
sums[index] = '';
}
});
// const sumValue = computed(() => {
// return list.value.reduce((sum, item) => sum + item.quantityLent, 0);
// });
// const sums = ['','','','','','','','',sumValue];
return sums;
}
/** 重置按钮操作 */
const resetQuery = () => {
queryFormRef.value.resetFields()
handleQuery()
}
const floatAdd = (a, b) => {
var c, d, e;
if (undefined === a || null === a || "" === a || isNaN(a)) { a = 0; }
if (undefined === b || null === b || "" === b || isNaN(b)) { b = 0; }
try {
c = a.toString().split(".")[1].length;
} catch (f) {
c = 0;
}
try {
d = b.toString().split(".")[1].length;
} catch (f) {
d = 0;
}
e = Math.pow(10, Math.max(c, d));
return (floatMul(a, e) + floatMul(b, e)) / e;
};
const floatMul = (a, b) => {
var c = 0,
d = a.toString(),
e = b.toString();
try {
c += d.split(".")[1].length;
} catch (f) {}
try {
c += e.split(".")[1].length;
} catch (f) {}
return Number(d.replace(".", "")) * Number(e.replace(".", "")) / Math.pow(10, c);
}
/** 添加/修改操作 */
const openForm = (type: string, id?: number) => {

View File

@ -179,8 +179,7 @@ import * as PlanApi from '@/api/heli/plan'
import Print from './productionPrint.vue' //
import A3sonPrint from './A3sonPrint.vue' // A3
import * as UserApi from '@/api/system/user'
import {disposeCoordSysRecordIfNeeded} from "echarts/types/src/component/dataZoom/roams";
import routeParamsCache from '@/utils/routeParamsCache';
import routeParamsCache from '@/utils/routeParamsCache';
defineOptions({ name: 'Plan' })
const message = useMessage() //
@ -314,12 +313,12 @@ onMounted(async () => {
}
await getList()
});
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);

View File

@ -97,11 +97,12 @@
</template>
<script setup lang="ts">
import { getIntDictOptions, getStrDictOptions, DICT_TYPE } from '@/utils/dict'
import { dateFormatter, formatDate } from '@/utils/formatTime'
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import { formatDate } from '@/utils/formatTime'
import download from '@/utils/download'
import * as PlanTaskApi from '@/api/heli/plantask'
import { useRoute } from 'vue-router';
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'PlanTask' })
const message = useMessage() //
@ -177,12 +178,25 @@ const handleExport = async () => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute();
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
const code = route.query.code;
if(code != null && code!=''){
queryParams.planNo = code as string;
}
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -107,13 +107,13 @@
</template>
<script setup lang="ts">
import { getStrDictOptions, DICT_TYPE, getDictLabel, getIntDictOptions } from '@/utils/dict'
import { dateFormatter, dateFormatter2, formatDate } from '@/utils/formatTime'
import { getStrDictOptions, DICT_TYPE, getIntDictOptions } from '@/utils/dict'
import { dateFormatter2, } from '@/utils/formatTime'
import download from '@/utils/download'
import * as ProcessDesignApi from '@/api/heli/processdesign'
import { useCommonStateWithOut } from '@/store/modules/common'
import {useUserStore} from "@/store/modules/user";
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'ProcessDesign2D' })
const message = useMessage() //
@ -248,7 +248,21 @@ const handleExport = async () => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -157,13 +157,13 @@
</template>
<script setup lang="ts">
import {getStrDictOptions, DICT_TYPE, getDictLabel, getIntDictOptions} from '@/utils/dict'
import {dateFormatter, dateFormatter2, formatDate} from '@/utils/formatTime'
import {getStrDictOptions, DICT_TYPE, getIntDictOptions} from '@/utils/dict'
import { dateFormatter2, } from '@/utils/formatTime'
import download from '@/utils/download'
import * as ProcessDesignApi from '@/api/heli/processdesign'
import {useCommonStateWithOut} from "@/store/modules/common";
import {useUserStore} from "@/store/modules/user";
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'ProcessDesign3D' })
const message = useMessage() //
@ -298,7 +298,21 @@ const handleExport = async () => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -110,8 +110,7 @@ import download from '@/utils/download'
import * as ProcessBomApi from '@/api/heli/processbom'
import { useCommonStateWithOut } from '@/store/modules/common'
import BomImportForm from './bomImportForm.vue'
import * as planTaskBomApi from '@/api/heli/plantaskbom'
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'ProcessBom' })
const commonStore = useCommonStateWithOut()
@ -245,9 +244,23 @@ const openPlanTaskDetail = async (code) => {
router.push({ path: '/plan/PlanTasks', query: { code: code } })
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>
<style >
.status-4 {

View File

@ -87,6 +87,7 @@ import download from '@/utils/download'
import * as ProcessBomApi from '@/api/heli/processbom'
import { useCommonStateWithOut } from '@/store/modules/common'
import { useUserStore } from '@/store/modules/user'
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'ProcessBom' })
const commonStore = useCommonStateWithOut()
@ -199,7 +200,21 @@ const openDetail = (type: string, id?: number) => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -1,7 +1,7 @@
<template>
<el-card class="hl-card">
<template #header>
<span>造工艺进度上报</span>
<span>件图进度上报</span>
</template>
<ContentWrap class="borderxx">
<!-- 搜索工作栏 -->
@ -151,13 +151,13 @@
</template>
<script setup lang="ts">
import {getStrDictOptions, DICT_TYPE, getDictLabel, getIntDictOptions} from '@/utils/dict'
import {dateFormatter, formatDate} from '@/utils/formatTime'
import {getStrDictOptions, DICT_TYPE, getIntDictOptions} from '@/utils/dict'
import { formatDate} from '@/utils/formatTime'
import download from '@/utils/download'
import * as ProcessDesignApi from '@/api/heli/processdesign'
import {useCommonStore} from "@/store/modules/common";
import {useUserStore} from "@/store/modules/user";
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'ProcessDesign' })
const message = useMessage() //
@ -291,7 +291,21 @@ const handleExport = async () => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -151,13 +151,13 @@
</template>
<script setup lang="ts">
import {getStrDictOptions, DICT_TYPE, getDictLabel, getIntDictOptions} from '@/utils/dict'
import {dateFormatter, formatDate} from '@/utils/formatTime'
import {getStrDictOptions, DICT_TYPE, getIntDictOptions} from '@/utils/dict'
import { formatDate} from '@/utils/formatTime'
import download from '@/utils/download'
import * as ProcessDesignApi from '@/api/heli/processdesign'
import {useCommonStore} from "@/store/modules/common";
import {useUserStore} from "@/store/modules/user";
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'ProcessDesign' })
const message = useMessage() //
@ -291,7 +291,21 @@ const handleExport = async () => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -106,13 +106,13 @@
</template>
<script setup lang="ts">
import { getStrDictOptions, DICT_TYPE, getDictLabel, getIntDictOptions } from '@/utils/dict'
import { dateFormatter, dateFormatter2, formatDate } from '@/utils/formatTime'
import { getStrDictOptions, DICT_TYPE, getIntDictOptions } from '@/utils/dict'
import { dateFormatter2, } from '@/utils/formatTime'
import download from '@/utils/download'
import * as ProcessDesignApi from '@/api/heli/processdesign'
import { useCommonStateWithOut } from '@/store/modules/common'
import {useUserStore} from "@/store/modules/user";
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'ProcessDesignWorkblank' })
const message = useMessage() //
@ -245,7 +245,21 @@ const handleExport = async () => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -246,11 +246,11 @@
</template>
<script setup lang="ts">
import { getIntDictOptions, getStrDictOptions, DICT_TYPE } from '@/utils/dict'
import { dateFormatter, dateFormatter2, formatDate } from '@/utils/formatTime'
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import { dateFormatter2, formatDate } from '@/utils/formatTime'
import download from '@/utils/download'
import * as ProjectOrderApi from '@/api/heli/projectorder'
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'ProjectOrderApprove' })
const message = useMessage() //
@ -372,12 +372,26 @@ const handleCommand = async (command, id) => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onActivated(() => {
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>
<style scoped>

View File

@ -219,11 +219,11 @@
</template>
<script setup lang="ts">
import { getIntDictOptions, getStrDictOptions, DICT_TYPE } from '@/utils/dict'
import {dateFormatter, dateFormatter2, formatDate} from '@/utils/formatTime'
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import { dateFormatter2, formatDate} from '@/utils/formatTime'
import download from '@/utils/download'
import * as ProjectOrderApi from '@/api/heli/projectorder'
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'ProjectOrderArchive' })
const message = useMessage() //
@ -337,12 +337,26 @@ const handleExport = async () => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onActivated(() => {
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>
<style scoped>

View File

@ -238,10 +238,11 @@
</template>
<script setup lang="ts">
import { getIntDictOptions, getStrDictOptions, DICT_TYPE } from '@/utils/dict'
import { dateFormatter, dateFormatter2, formatDate } from '@/utils/formatTime'
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import { dateFormatter2, formatDate } from '@/utils/formatTime'
import download from '@/utils/download'
import * as ProjectOrderApi from '@/api/heli/projectorder'
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'ProjectOrderAudit' })
@ -372,12 +373,26 @@ const handleCommand = async (command, id) => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onActivated(() => {
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>
<style scoped>

View File

@ -198,8 +198,8 @@ ref="reportRef"
</template>
<script setup lang="ts">
import { getIntDictOptions, getStrDictOptions, DICT_TYPE } from '@/utils/dict'
import { dateFormatter, dateFormatter2, formatDate } from '@/utils/formatTime'
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import { dateFormatter2, formatDate } from '@/utils/formatTime'
import download from '@/utils/download'
import * as ProjectOrderApi from '@/api/heli/projectorder'
import Print from './startprint.vue' //
@ -207,8 +207,7 @@ import { ref } from 'vue'
import {useCommonStore} from "@/store/modules/common";
import {ElMessageBox, ElTable} from "element-plus";
import {ProjectOrderVO} from "@/api/heli/projectorder";
import * as DeliverOrderApi from "@/api/heli/deliverorder";
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'ProjectOrder' })
const message = useMessage() //
@ -436,12 +435,26 @@ const printHandle = (id,property) => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onActivated(() => {
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>
<style scoped>

View File

@ -132,10 +132,8 @@ import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import { dateFormatter, formatDate } from '@/utils/formatTime'
import download from '@/utils/download'
import * as PurchaseOrderNoApi from '@/api/heli/purchaseorderno'
import PurchaseOrderForm from './PurchaseOrderForm.vue'
import {getPurchaseOrderNoPageByStatus} from "@/api/heli/purchaseorderno";
import dayjs from "dayjs";
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'PurchaseOrder' })
const message = useMessage() //
@ -252,8 +250,22 @@ const setDefaultDate = () => {
}
/** 初始化 **/
const route = useRoute()
onMounted(async () => {
setDefaultDate()
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
await getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -262,7 +262,7 @@ import * as PurchaseOrderApi from '@/api/heli/purchaseorder'
import * as PurchaseOrderNoApi from '@/api/heli/purchaseorderno'
import { ElTable } from 'element-plus'
import dayjs from "dayjs";
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'PurchaseOrder' })
const message = useMessage() //
@ -437,12 +437,26 @@ const setDefaultDate = () => {
}
/** 初始化 **/
const route = useRoute()
onMounted(async () => {
setDefaultDate()
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
await getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
const rowPrintLoading = reactive({})
@ -560,7 +574,7 @@ function doPrint() {
overflow-wrap: break-word !important;
padding: 4px 2px;
}
</style>
</head>
<body>
@ -658,4 +672,4 @@ function limitTo20Chars(input) {
</style>
</style>

View File

@ -110,9 +110,8 @@ import download from '@/utils/download'
import * as PurchaseOrderApi from '@/api/heli/purchaseorder'
import * as PurchaseOrderNoApi from '@/api/heli/purchaseorderno'
import { ElTable } from 'element-plus'
import dayjs from "dayjs";
import {useUserStore} from "@/store/modules/user";
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'PurchaseOrder' })
const userStore = useUserStore()
const username = userStore.getUser.nickname
@ -284,7 +283,21 @@ const handleExportWithTax = async () => {
}
}
/** 初始化 **/
onMounted( () => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -87,13 +87,12 @@ v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true" cl
</template>
<script setup lang="ts">
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import { DICT_TYPE } from '@/utils/dict'
import download from '@/utils/download'
import * as PurchaseOrderApi from '@/api/heli/purchaseorder'
import * as PurchaseOrderNoApi from '@/api/heli/purchaseorderno'
import { ElTable } from 'element-plus'
import dayjs from "dayjs";
import {useUserStore} from "@/store/modules/user";
import routeParamsCache from '@/utils/routeParamsCache'
import { useRoute } from 'vue-router';
defineOptions({ name: 'PurchaseOrder' })
const message = useMessage() //
@ -263,12 +262,24 @@ const handleExportWithTax = async () => {
}
/** 初始化 **/
const route = useRoute();
/** 初始化 **/
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
const flushParam = route.query.flush;
if(flushParam){
getList()
}
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -123,7 +123,7 @@ import { dateFormatter } from '@/utils/formatTime'
import download from '@/utils/download'
import * as QualityFeedbackApi from '@/api/heli/qualityfeedback'
import {useCommonStore} from "@/store/modules/common";
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'QualityFeedback' })
const message = useMessage() //
@ -218,7 +218,21 @@ const openDetail = (type: string, id?: number) => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -119,7 +119,7 @@ import download from '@/utils/download'
import * as SaleeOrderCost from '@/api/heli/saleordercost'
import * as UserApi from '@/api/system/user'
import {DICT_TYPE} from "@/utils/dict";
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'Shenhe' })
const userList = ref<UserApi.UserVO[]>([]) //
const message = useMessage() //
@ -196,9 +196,23 @@ const handleExport = async () => {
}
/** 初始化 **/
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
loading.value = true
await getList()
userList.value = await UserApi.getSimpleUserList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -202,11 +202,10 @@
<script setup lang="ts">
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import { dateFormatter } from '@/utils/formatTime'
import download from '@/utils/download'
import * as StorageApi from '@/api/heli/storage'
import * as WarehouseApi from '@/api/heli/warehouse'
import * as UserApi from '@/api/system/user'
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'Storage' })
const message = useMessage() //
@ -280,7 +279,12 @@ const openDetail = (active: string, id?: number) => {
}
/** 初始化 **/
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
const queryParamsWarehouse = reactive({
pageNo: 1,
pageSize: 99
@ -298,6 +302,15 @@ onMounted(async () => {
await getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
onActivated(() => {
getList()
})

View File

@ -207,11 +207,10 @@
<script setup lang="ts">
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import { dateFormatter } from '@/utils/formatTime'
import download from '@/utils/download'
import * as StorageApi from '@/api/heli/storage'
import * as WarehouseApi from '@/api/heli/warehouse'
import * as UserApi from '@/api/system/user'
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'Storage' })
const message = useMessage() //
@ -285,7 +284,12 @@ const openDetail = (active: string, id?: number) => {
}
/** 初始化 **/
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
const queryParamsWarehouse = reactive({
pageNo: 1,
pageSize: 99
@ -306,4 +310,13 @@ onMounted(async () => {
onActivated(() => {
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -207,11 +207,10 @@
<script setup lang="ts">
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import { dateFormatter } from '@/utils/formatTime'
import download from '@/utils/download'
import * as StorageApi from '@/api/heli/storage'
import * as WarehouseApi from '@/api/heli/warehouse'
import * as UserApi from '@/api/system/user'
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'Storage' })
const message = useMessage() //
@ -286,7 +285,12 @@ const openDetail = (active: string, id?: number) => {
}
/** 初始化 **/
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
const queryParamsWarehouse = reactive({
pageNo: 1,
pageSize: 99
@ -307,4 +311,13 @@ onMounted(async () => {
onActivated(() => {
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -119,7 +119,7 @@ import * as StorageCheckApi from '@/api/heli/storagecheck'
import StorageCheckForm from './StorageCheckForm.vue'
import * as WarehouseApi from '@/api/heli/warehouse'
import * as UserApi from '@/api/system/user'
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'StorageCheck' })
const router = useRouter() //
@ -224,8 +224,22 @@ const handleExport = async () => {
}
/** 初始化 **/
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
await init_page_wh()
await getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -98,7 +98,7 @@ import * as StorageinApi from '@/api/heli/storagein'
import { ElTable } from 'element-plus'
import {useUserStore} from "@/store/modules/user";
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'PurchaseOrder' })
const userStore = useUserStore()
const username = userStore.getUser.nickname
@ -181,7 +181,21 @@ const openForm = (type: string, id?: number) => {
}
}
/** 初始化 **/
onMounted( () => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
handleQuery()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -109,7 +109,7 @@ v-for="dict in pnCurrentList" :key="dict.id" :label="dict.pn_name"
import * as StorageInventoryApi from '@/api/heli/storageinventory'
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import routeParamsCache from '@/utils/routeParamsCache'
import * as WarehouseApi from '@/api/heli/warehouse'
import * as RgApi from '@/api/heli/rg'
import * as PnApi from '@/api/heli/pn'
@ -209,10 +209,24 @@ const init_page_pn = (async ()=>{
})
/** 初始化 **/
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
await init_page_wh()
await init_page_rg()
await init_page_pn()
await getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -84,20 +84,16 @@
</template>
<script setup lang="ts">
import download from '@/utils/download'
import * as StorageLogApi from '@/api/heli/storagelog'
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import * as WarehouseApi from '@/api/heli/warehouse'
// import * as RgApi from '@/api/heli/rg'
// import * as PnApi from '@/api/heli/pn'
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'StorageLog' })
const whList = ref([])
// const rgList = ref([])
// const pnList = ref([])
const message = useMessage() //
const { t } = useI18n() //
@ -157,10 +153,24 @@ const init_page_wh = (async ()=>{
// })
/** 初始化 **/
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
await init_page_wh()
// await init_page_rg()
// await init_page_pn()
await getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -87,7 +87,7 @@ import { dateFormatter1} from '@/utils/formatTime'
import * as MaterialPlanApi from '@/api/heli/materialplan'
import * as UserApi from '@/api/system/user'
import dayjs from "dayjs";
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'supplementManagement' })
const router = useRouter()
@ -186,14 +186,27 @@ const setDefaultDate = () => {
const userInit = ref()
/** 初始化 **/
const route = useRoute()
onMounted(async () => {
setDefaultDate()
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
userInit.value = await UserApi.getSimpleUserList()
//
setDefaultDate()
getList()
})
onActivated(() => {
console.log(11)
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -80,6 +80,7 @@
<td colspan="1">网格</td>
<td colspan="1">深钻孔</td>
<td colspan="1">钻孔</td>
<td colspan="1">定制</td>
</tr>
<tr v-for="item in formDataprocess.tablename" :key="item">
<td colspan="1"> {{item.index}} </td>
@ -106,6 +107,7 @@
<td colspan="1" class="hr-dotted">{{item.lettering}}</td>
<td colspan="1" class="hr-dotted">{{item.electrowelding}}</td>
<td colspan="1" class="hr-dotted">{{item.drill}}</td>
<td colspan="1" class="hr-dotted">{{item.customization}}</td>
</tr>
</tbody>
<tbody>
@ -150,13 +152,11 @@
</template>
<script setup lang="ts">
// import { ref, reactive } from 'vue'
import { Check } from '@element-plus/icons-vue'
import urlimg from '@/assets/imgs/exlogo.png'
import { betweenDay, dateFormatter, formatDate } from '@/utils/formatTime'
import { formatDate } from '@/utils/formatTime'
import * as TaskDispatchApi from '@/api/heli/taskdispatch'
import * as ProcedureApi from '@/api/heli/procedure'
import * as UserApi from '@/api/system/user'
import { string } from 'vue-types'
import { log } from 'console'
import { getOperateLogPage } from '@/api/system/operatelog'
const logoDataUrl = ref('') // LogoBase64URL
@ -226,6 +226,10 @@ const summarylist = ref([
name: undefined,
data: undefined
},
{
name: undefined,
data: undefined
}
])
const formDataprocess = ref({
tablename: [
@ -250,6 +254,7 @@ const formDataprocess = ref({
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 2,
@ -272,6 +277,8 @@ const formDataprocess = ref({
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 3,
@ -294,6 +301,8 @@ const formDataprocess = ref({
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 4,
@ -316,6 +325,8 @@ const formDataprocess = ref({
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 5,
@ -338,6 +349,8 @@ const formDataprocess = ref({
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 6,
@ -360,6 +373,8 @@ const formDataprocess = ref({
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 7,
@ -383,6 +398,8 @@ const formDataprocess = ref({
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 8,
@ -405,6 +422,8 @@ const formDataprocess = ref({
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 9,
@ -428,6 +447,8 @@ const formDataprocess = ref({
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 10,
@ -451,6 +472,8 @@ const formDataprocess = ref({
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 11,
@ -474,6 +497,8 @@ const formDataprocess = ref({
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 12,
@ -665,6 +690,10 @@ const outopen = () => {
name: undefined,
data: undefined
},
{
name: undefined,
data: undefined
},
{
name: undefined,
data: undefined
@ -712,6 +741,8 @@ const outopen = () => {
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 2,
@ -734,6 +765,8 @@ const outopen = () => {
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 3,
@ -756,6 +789,8 @@ const outopen = () => {
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 4,
@ -778,6 +813,8 @@ const outopen = () => {
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 5,
@ -800,6 +837,8 @@ const outopen = () => {
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 6,
@ -822,6 +861,8 @@ const outopen = () => {
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 7,
@ -845,6 +886,8 @@ const outopen = () => {
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 8,
@ -867,6 +910,8 @@ const outopen = () => {
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 9,
@ -890,6 +935,8 @@ const outopen = () => {
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 10,
@ -913,6 +960,8 @@ const outopen = () => {
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 11,
@ -936,6 +985,8 @@ const outopen = () => {
cutting:undefined,
froth:undefined,
electrode:undefined,
customization:undefined,
},
{
index: 12,
@ -1640,7 +1691,7 @@ const open = async (id?: number) => {
if (!summarylist.value[15].data) {
summarylist.value[15].data = taskitem.summary
} else if (summarylist.value[15].data && taskitem.summary) {
summarylist.value[15].data = summarylist.value[13].data + ',' + taskitem.summary
summarylist.value[15].data = summarylist.value[15].data + ',' + taskitem.summary
}
if (!formDataprocess.value.tablename[0].electrode) {
formDataprocess.value.tablename[0].electrode = taskitem.sort
@ -1673,6 +1724,44 @@ const open = async (id?: number) => {
if (taskitem.workingHours){
formDataprocess.value.tablename[5].electrode = taskitem.workingHours
}
}else if (Procedure.name == '定制') {
summarylist.value[16].name = Procedure.name
if (!summarylist.value[16].data) {
summarylist.value[16].data = taskitem.summary
} else if (summarylist.value[16].data && taskitem.summary) {
summarylist.value[16].data = summarylist.value[16].data + ',' + taskitem.summary
}
if (!formDataprocess.value.tablename[0].customization) {
formDataprocess.value.tablename[0].customization = taskitem.sort
} else if (formDataprocess.value.tablename[0].customization && taskitem.sort) {
formDataprocess.value.tablename[0].customization =
formDataprocess.value.tablename[0].customization + ',' + taskitem.sort
}
Procedata.list.forEach((item: any) => {
if (item.name == Procedure.name) {
formDataprocess.value.tablename[2].customization = item.standard1Time
formDataprocess.value.tablename[3].customization = item.standard2Time
}
})
if(taskitem.owner){
const initialUser = await UserApi.getUser(taskitem.owner)
if (!formDataprocess.value.tablename[6].customization) {
formDataprocess.value.tablename[6].customization = initialUser.nickname
} else if (
formDataprocess.value.tablename[6].customization &&
!formDataprocess.value.tablename[8].customization
) {
formDataprocess.value.tablename[8].customization = initialUser.nickname
} else {
}
}
if (taskitem.bgWorkTime){
formDataprocess.value.tablename[9].customization = taskitem.bgWorkTime
}
if (taskitem.workingHours){
formDataprocess.value.tablename[5].customization = taskitem.workingHours
}
}
})
}

View File

@ -175,13 +175,13 @@
</template>
<script setup lang="ts">
import { getIntDictOptions, getStrDictOptions, DICT_TYPE } from '@/utils/dict'
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import {dateFormatter, dateFormatter2} from '@/utils/formatTime'
import download from '@/utils/download'
import * as TaskDispatchApi from '@/api/heli/taskdispatch'
import {useCommonStore} from "@/store/modules/common";
import {useUserStore} from "@/store/modules/user";
import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'TaskDispatchAssemble' })
const message = useMessage() //
@ -285,7 +285,21 @@ const openDetail = (type: string, id?: number) => {
}
/** 初始化 **/
onMounted(() => {
const route = useRoute()
onMounted(async () => {
let params = routeParamsCache.get(route.path);
if (params ) {
Object.assign(queryParams, params);
}
getList()
})
onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams);
});
</script>

View File

@ -197,6 +197,7 @@ class="!w-260px" v-model="formData.requiredCompletedDate" type="date" value-form
<el-checkbox label="网格" size="large" border :disabled="disabledLabels.includes('网格')"/>
<el-checkbox label="深孔钻" size="large" border :disabled="disabledLabels.includes('深孔钻')" />
<el-checkbox label="钻孔" size="large" border :disabled="disabledLabels.includes('钻孔')"/>
<el-checkbox label="定制" size="large" border :disabled="disabledLabels.includes('定制')"/>
<!-- 2025 06 01 以下工序关闭 更新为上面的-->
<!-- <el-checkbox label="铣床" size="large" border />
@ -1516,7 +1517,7 @@ const checkList = ref([])
const disabledLabels = ref([])
const checkListTemp = ref([])
/** 新增按钮操作 */
const procedureArrary = ['下料','电焊','编程','开粗','铣床','车床','磨床','数控1','数控2','刻字','网格','深钻孔','钻孔','热处理','火花','线切割','泡沫','电极']
const procedureArrary = ['下料','电焊','编程','开粗','铣床','车床','磨床','数控1','数控2','刻字','网格','深钻孔','钻孔','热处理','火花','线切割','泡沫','电极','定制']
const onAddItem = () => {
console.log(formData.value.taskDispatchDetails)
//
@ -1583,7 +1584,11 @@ const onAddItem = () => {
if(items.isReport!= null){
row.isReport = items.isReport;
}
if (items.name=='定制'){
row.isOutsourcing=true
}
}
})
var add = true;
if(list != null){

View File

@ -35,6 +35,9 @@
<el-form-item label="任务负责人" prop="ownerName">
<el-input v-model="queryParams.ownerName" placeholder="请输入任务负责人" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="图号" prop="blueprintNo">
<el-input v-model="queryParams.blueprintNo" placeholder="请输入图号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item>
<el-button @click="handleQuery" type="primary">
<Icon icon="ep:search" class="mr-5px" /> 搜索
@ -138,7 +141,8 @@ const queryParams = reactive({
remark: undefined,
status: undefined,
createTime: [],
ownerName: username
ownerName: username,
blueprintNo:undefined,
})
const queryFormRef = ref() //
const exportLoading = ref(false) //