Commit 0db6303d authored by qiyaxin's avatar qiyaxin

CCAP控制计划管理-历史控制计划查询

parent ea065012
...@@ -15,12 +15,11 @@ export function getAllBusinessUnitName() { ...@@ -15,12 +15,11 @@ export function getAllBusinessUnitName() {
method: 'get', method: 'get',
}) })
} }
// 查询CCAP控制计划历史列表 // 查询所有车型代码
export function getCCAPPlanHistoryList(query) { export function getAllvehicleModelCode() {
return request({ return request({
url: '/ccapPlan/hisList', url: '/control/notificationManagement/getAllModelCode',
method: 'get', method: 'get',
params: query
}) })
} }
// 删除控制计划 // 删除控制计划
...@@ -38,3 +37,11 @@ export function undoPlan(data) { ...@@ -38,3 +37,11 @@ export function undoPlan(data) {
data: data data: data
}) })
} }
// 查询CCAP控制计划历史列表
export function getCCAPPlanHistoryList(query) {
return request({
url: '/control/ccapPlan/hisList',
method: 'get',
params: query
})
}
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
"reset": "重置", "reset": "重置",
"pleaseChoose": "请选择", "pleaseChoose": "请选择",
"pleaseEnter": "请输入", "pleaseEnter": "请输入",
"pleaseChooseOrEnter": "请选择或输入",
"businessDivision": "事业部", "businessDivision": "事业部",
"vehicleTypeCode": "车型代码", "vehicleTypeCode": "车型代码",
"vehicleTypeSeries": "车型系列", "vehicleTypeSeries": "车型系列",
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
"reset": "Reset", "reset": "Reset",
"pleaseChoose": "Please Choose", "pleaseChoose": "Please Choose",
"pleaseEnter": "Please Enter", "pleaseEnter": "Please Enter",
"pleaseChooseOrEnter": "Please choose or enter",
"businessDivision": "Business division", "businessDivision": "Business division",
"vehicleTypeCode": "Vehicle Type Code", "vehicleTypeCode": "Vehicle Type Code",
"vehicleTypeSeries": "Vehicle Type Series", "vehicleTypeSeries": "Vehicle Type Series",
......
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form v-model="queryParams" ref="queryRef" :inline="true" > <el-form v-model="queryParams" ref="queryRef" :inline="true">
<!-- 事业部 --> <el-row :gutter="20">
<el-form-item :label="`${cn.businessDivision}/${en.businessDivision}`" prop="businessUnitId"> <!-- 控制计划编号 -->
<el-select <el-col :span="8">
v-model="queryParams.businessUnitId" <el-form-item :label="`${cn.controlPlanNumber}/${en.controlPlanNumber}`" prop="controlPlanNumber">
:placeholder="`${cn.pleaseChoose}/${en.pleaseChoose}`" <el-input
clearable v-model="queryParams.controlPlanNumber"
style="width: 200px" :placeholder="`${cn.pleaseEnter}/${en.pleaseEnter}`"
> clearable
<el-option style="width: 200px"
v-for="item in businessList" />
:label="item.businessUnitName" </el-form-item>
:value="item.businessUnitName" </el-col>
/> <!-- 事业部 -->
</el-select> <el-col :span="8">
</el-form-item> <el-form-item :label="`${cn.businessDivision}/${en.businessDivision}`" prop="businessUnitId">
<!-- 车型代码 --> <el-select
<el-form-item :label="`${cn.vehicleTypeCode}/${en.vehicleTypeCode}`" prop="status"> v-model="queryParams.businessUnitId"
<el-select :placeholder="`${cn.pleaseChoose}/${en.pleaseChoose}`"
v-model="queryParams" clearable
:placeholder="`${cn.pleaseChoose}/${en.pleaseChoose}`" style="width: 200px"
clearable >
style="width: 200px" <el-option
> v-for="item in businessList"
<el-option :label="item.businessUnitName"
v-for="dict in businessList" :value="item.businessUnitName"
:label="dict.businessUnitName" />
:value="dict.id" </el-select>
/> </el-form-item>
</el-select> </el-col>
</el-form-item> <!-- 车型代码 -->
<!-- 车型系列 --> <el-col :span="8">
<el-form-item :label="`${cn.vehicleTypeSeries}/${en.vehicleTypeSeries}`" prop="status"> <el-form-item :label="`${cn.vehicleTypeCode}/${en.vehicleTypeCode}`" prop="vehicleModelCode">
<el-select <el-select
v-model="queryParams" v-model="queryParams.vehicleModelCode"
:placeholder="`${cn.pleaseChoose}/${en.pleaseChoose}`" :placeholder="`${cn.pleaseChooseOrEnter}/${en.pleaseChooseOrEnter}`"
clearable clearable
style="width: 200px" filterable
> style="width: 200px"
<el-option >
v-for="dict in businessList" <el-option
:label="dict.businessUnitName" v-for="item in vehicleModelCodeList"
:value="dict.id" :label="item.vehicleModelCode"
/> :value="item.vehicleModelCode"
</el-select> />
</el-form-item> </el-select>
<!-- 生产地址 --> </el-form-item>
<el-form-item :label="`${cn.productionAddress}/${en.productionAddress}`" prop="templateCode"> </el-col>
<el-input </el-row>
v-model="queryParams" <el-row :gutter="20">
:placeholder="`${cn.pleaseEnter}/${en.pleaseEnter}`" <!-- 车型系列 -->
clearable <el-col :span="8">
style="width: 200px" <el-form-item :label="`${cn.vehicleTypeSeries}/${en.vehicleTypeSeries}`" prop="vehicleSeries">
/> <el-select
</el-form-item> v-model="queryParams.vehicleSeries"
<!-- 版本号 --> :placeholder="`${cn.pleaseChoose}/${en.pleaseChoose}`"
<el-form-item :label="`${cn.versionNumber}/${en.versionNumber}`" prop="templateCode"> clearable
<el-input style="width: 200px"
v-model="queryParams" >
placeholder="A0-Z9" <el-option
clearable v-for="dict in vehicle_model_series"
disabled :key="dict.key"
style="width: 200px" :label="dict.label"
/> :value="dict.value"
</el-form-item> />
<!-- 创建人 --> </el-select>
<el-form-item :label="`${cn.creator}/${en.creator}`" prop="templateCode"> </el-form-item>
<el-input </el-col>
v-model="queryParams" <el-col :span="8">
:placeholder="`${cn.pleaseEnter}/${en.pleaseEnter}`" <!-- 生产地址 -->
clearable <el-form-item :label="`${cn.productionAddress}/${en.productionAddress}`" prop="productionAddress">
style="width: 200px" <el-input
/> v-model="queryParams.productionAddress"
</el-form-item> :placeholder="`${cn.pleaseEnter}/${en.pleaseEnter}`"
<!-- 生产厂 --> clearable
<el-form-item :label="`${cn.productionPlant}/${en.productionPlant}`" prop="templateCode"> style="width: 200px"
<el-input />
v-model="queryParams" </el-form-item>
:placeholder="`${cn.pleaseEnter}/${en.pleaseEnter}`" </el-col>
clearable <el-col :span="8">
style="width: 200px" <!-- 版本号 -->
/> <el-form-item :label="`${cn.versionNumber}/${en.versionNumber}`" prop="versionNumber">
</el-form-item> <el-input
<!-- 搜索、重置 按钮 --> v-model="queryParams.versionNumber"
<el-form-item> placeholder="A0 - Z9"
<el-button style="width: 110px" class="btn-A" @click="handleQuery">{{cn.search}}/{{en.search}}</el-button> clearable
<el-button style="width: 110px" class="btn-B" @click="resetQuery">{{cn.reset}}/{{en.reset}}</el-button> disabled
</el-form-item> style="width: 200px"
/>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="16">
<!-- 生产厂 -->
<el-form-item :label="`${cn.productionPlant}/${en.productionPlant}`" prop="productionFactory">
<el-input
v-model="queryParams.productionFactory"
:placeholder="`${cn.pleaseEnter}/${en.pleaseEnter}`"
clearable
style="width: 200px"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="button-container">
<el-button style="width: 110px" class="btn-A" @click="handleQuery">{{ cn.search }}/{{ en.search }}</el-button>
<el-button style="width: 110px" class="btn-B" @click="resetQuery">{{ cn.reset }}/{{ en.reset }}</el-button>
</el-form-item>
</el-col>
</el-row>
</el-form> </el-form>
<el-table :data="tableList"> <el-table :data="tableList">
...@@ -256,37 +279,81 @@ import cn from '@/locales/controlPlan/CCAPControlPlan/CCAPControlPlanManagement/ ...@@ -256,37 +279,81 @@ import cn from '@/locales/controlPlan/CCAPControlPlan/CCAPControlPlanManagement/
import en from '@/locales/controlPlan/CCAPControlPlan/CCAPControlPlanManagement/history/en.json' import en from '@/locales/controlPlan/CCAPControlPlan/CCAPControlPlanManagement/history/en.json'
import { ref } from 'vue' import { ref } from 'vue'
import { import {
getAllBusinessUnitName, getAllBusinessUnitName, getAllvehicleModelCode,
getCCAPPlanHistoryList, getCCAPPlanHistoryList,
getCCAPPlanList, getCCAPPlanList,
} from '@/api/CCAPControlPlanManagement/CCAPControlPlanManagement.js' } from '@/api/CCAPControlPlanManagement/CCAPControlPlanManagement.js'
import { getDicts } from '@/api/system/dict/data.js'
import { ElMessage } from 'element-plus'
const router = useRouter()
const { proxy } = getCurrentInstance();
const {vehicle_model_series, control_plan_status} = proxy.useDict('vehicle_model_series','control_plan_status');
const total = ref(0); const total = ref(0);
const queryParams = ref({ const queryParams = ref({
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
controlPlanNumber:null,
businessUnitId:null, businessUnitId:null,
vehicleModelCode:null, vehicleModelCode:null,
vehicleSeries:null, vehicleSeries:null,
productionAddress:null,
versionNumber:null, versionNumber:null,
controlPlanStatus:null, productionFactory:null
createBy:null
}); });
const businessList = ref([]); const businessList = ref([]);
const vehicleModelCodeList = ref([])
const tableList = ref([]); const tableList = ref([]);
function getAllBusinessUnit() { function getAllBusinessUnit() {
getAllBusinessUnitName().then(res => { getAllBusinessUnitName().then(res => {
businessList.value = res.data businessList.value = res.rows
})
}
function getAllVehicleModelCode() {
getAllvehicleModelCode().then(res => {
vehicleModelCodeList.value = res.data
}) })
} }
function getList() { function getList() {
getCCAPPlanHistoryList(queryParams.value).then(res => { getCCAPPlanHistoryList(queryParams.value).then(res => {
total.value = res.total total.value = res.total
tableList.value = res.rows tableList.value = res.rows
console.log("列表",tableList.value)
}); });
} }
/** 搜索按钮操作 */
function handleQuery() {
queryParams.value.pageNum = 1;
getList();
}
/** 重置按钮操作 */
function resetQuery() {
proxy.resetForm("queryRef");
queryParams.value = {
pageNum: 1,
pageSize: 10,
controlPlanNumber:null,
businessUnitId:null,
vehicleModelCode:null,
vehicleSeries:null,
productionAddress:null,
versionNumber:null,
productionFactory:null
};
handleQuery();
}
onMounted(()=>{
getList()
getAllBusinessUnit()
getAllVehicleModelCode()
})
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
......
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form v-model="queryParams" ref="queryRef" :inline="true" > <el-form v-model="queryParams" ref="queryRef" :inline="true">
<!-- 控制计划编号 --> <el-row :gutter="20">
<el-form-item :label="`${cn.controlPlanNumber}/${en.controlPlanNumber}`" prop="xinzeng1"> <!-- 控制计划编号 -->
<el-input <el-col :span="8">
v-model="queryParams.xinzeng1" <el-form-item :label="`${cn.controlPlanNumber}/${en.controlPlanNumber}`" prop="controlPlanNumber">
:placeholder="`${cn.pleaseEnter}/${en.pleaseEnter}`" <el-input
clearable v-model="queryParams.controlPlanNumber"
style="width: 200px" :placeholder="`${cn.pleaseEnter}/${en.pleaseEnter}`"
/> clearable
</el-form-item> style="width: 200px"
<!-- 事业部 --> />
<el-form-item :label="`${cn.businessDivision}/${en.businessDivision}`" prop="businessUnitId"> </el-form-item>
<el-select </el-col>
v-model="queryParams.businessUnitId" <!-- 事业部 -->
:placeholder="`${cn.pleaseChoose}/${en.pleaseChoose}`" <el-col :span="8">
clearable <el-form-item :label="`${cn.businessDivision}/${en.businessDivision}`" prop="businessUnitId">
style="width: 200px" <el-select
> v-model="queryParams.businessUnitId"
<el-option :placeholder="`${cn.pleaseChoose}/${en.pleaseChoose}`"
v-for="item in businessList" clearable
:label="item.businessUnitName" style="width: 200px"
:value="item.businessUnitName" >
/> <el-option
</el-select> v-for="item in businessList"
</el-form-item> :label="item.businessUnitName"
<!-- 车型代码 --> :value="item.businessUnitName"
<el-form-item :label="`${cn.vehicleTypeCode}/${en.vehicleTypeCode}`" prop="vehicleModelCode"> />
<el-select </el-select>
v-model="queryParams.vehicleModelCode" </el-form-item>
:placeholder="`${cn.pleaseChooseOrEnter}/${en.pleaseChooseOrEnter}`" </el-col>
clearable <!-- 车型代码 -->
filterable <el-col :span="8">
style="width: 200px" <el-form-item :label="`${cn.vehicleTypeCode}/${en.vehicleTypeCode}`" prop="vehicleModelCode">
> <el-select
<el-option v-model="queryParams.vehicleModelCode"
v-for="dict in businessList" :placeholder="`${cn.pleaseChooseOrEnter}/${en.pleaseChooseOrEnter}`"
:label="dict.businessUnitName" clearable
:value="dict.id" filterable
/> style="width: 200px"
</el-select> >
</el-form-item> <el-option
<!-- 车型系列 --> v-for="item in vehicleModelCodeList"
<el-form-item :label="`${cn.vehicleTypeSeries}/${en.vehicleTypeSeries}`" prop="vehicleSeries"> :label="item.vehicleModelCode"
<el-select :value="item.vehicleModelCode"
v-model="queryParams.vehicleSeries" />
:placeholder="`${cn.pleaseChoose}/${en.pleaseChoose}`" </el-select>
clearable </el-form-item>
style="width: 200px" </el-col>
> </el-row>
<el-option <el-row :gutter="20">
v-for="dict in vehicle_model_series" <!-- 车型系列 -->
:key="dict.key" <el-col :span="8">
:label="dict.label" <el-form-item :label="`${cn.vehicleTypeSeries}/${en.vehicleTypeSeries}`" prop="vehicleSeries">
:value="dict.value"/> <el-select
</el-select> v-model="queryParams.vehicleSeries"
</el-form-item> :placeholder="`${cn.pleaseChoose}/${en.pleaseChoose}`"
<!-- 版本号 --> clearable
<el-form-item :label="`${cn.versionNumber}/${en.versionNumber}`" prop="versionNumber"> style="width: 200px"
<el-input >
v-model="queryParams.versionNumber" <el-option
placeholder="A0-Z9" v-for="dict in vehicle_model_series"
clearable :key="dict.key"
disabled :label="dict.label"
style="width: 200px" :value="dict.value"
/> />
</el-form-item> </el-select>
<!-- 生产地址 --> </el-form-item>
<el-form-item :label="`${cn.productionAddress}/${en.productionAddress}`" prop="xinzeng2"> </el-col>
<el-input <!-- 版本号 -->
v-model="queryParams.xinzeng2" <el-col :span="8">
:placeholder="`${cn.pleaseEnter}/${en.pleaseEnter}`" <el-form-item :label="`${cn.versionNumber}/${en.versionNumber}`" prop="versionNumber">
clearable <el-input
style="width: 200px" v-model="queryParams.versionNumber"
/> placeholder="A0-Z9"
</el-form-item> clearable
<!-- 创建人 --> disabled
<el-form-item :label="`${cn.creator}/${en.creator}`" prop="createBy"> style="width: 200px"
<el-input />
v-model="queryParams.createBy" </el-form-item>
:placeholder="`${cn.pleaseEnter}/${en.pleaseEnter}`" </el-col>
clearable <!-- 生产地址 -->
style="width: 200px" <el-col :span="8">
/> <el-form-item :label="`${cn.productionAddress}/${en.productionAddress}`" prop="productionAddress">
</el-form-item> <el-input
<!-- 生产厂 --> v-model="queryParams.productionAddress"
<el-form-item :label="`${cn.productionPlant}/${en.productionPlant}`" prop="xinzeng3"> :placeholder="`${cn.pleaseEnter}/${en.pleaseEnter}`"
<el-input clearable
v-model="queryParams.xinzeng3" style="width: 200px"
:placeholder="`${cn.pleaseEnter}/${en.pleaseEnter}`" />
clearable </el-form-item>
style="width: 200px" </el-col>
/> </el-row>
</el-form-item> <el-row :gutter="20">
<!-- 控制计划状态 --> <!-- 创建人 -->
<el-form-item :label="`${cn.controlPlanStatus}/${en.controlPlanStatus}`" prop="controlPlanStatus"> <el-col :span="8">
<el-select <el-form-item :label="`${cn.creator}/${en.creator}`" prop="createBy">
v-model="queryParams.controlPlanStatus" <el-input
:placeholder="`${cn.pleaseChoose}/${en.pleaseChoose}`" v-model="queryParams.createBy"
clearable :placeholder="`${cn.pleaseEnter}/${en.pleaseEnter}`"
style="width: 200px" clearable
> style="width: 200px"
<el-option />
v-for="dict in control_plan_status" </el-form-item>
:key="dict.key" </el-col>
:label="dict.label" <!-- 生产厂 -->
:value="dict.value"/> <el-col :span="8">
</el-select> <el-form-item :label="`${cn.productionPlant}/${en.productionPlant}`" prop="productionFactory">
</el-form-item> <el-input
<!-- 搜索、重置 按钮 --> v-model="queryParams.productionFactory"
<el-form-item> :placeholder="`${cn.pleaseEnter}/${en.pleaseEnter}`"
<el-button style="width: 110px" class="btn-A" @click="handleQuery">{{cn.search}}/{{en.search}}</el-button> clearable
<el-button style="width: 110px" class="btn-B" @click="resetQuery">{{cn.reset}}/{{en.reset}}</el-button> style="width: 200px"
</el-form-item> />
</el-form-item>
</el-col>
<!-- 控制计划状态 -->
<el-col :span="8">
<el-form-item :label="`${cn.controlPlanStatus}/${en.controlPlanStatus}`" prop="controlPlanStatus">
<el-select
v-model="queryParams.controlPlanStatus"
:placeholder="`${cn.pleaseChoose}/${en.pleaseChoose}`"
clearable
style="width: 200px"
>
<el-option
v-for="dict in control_plan_status"
:key="dict.key"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="button-container">
<el-button style="width: 110px" class="btn-A" @click="handleQuery">{{ cn.search }}/{{ en.search }}</el-button>
<el-button style="width: 110px" class="btn-B" @click="resetQuery">{{ cn.reset }}/{{ en.reset }}</el-button>
</div>
</el-col>
</el-row>
</el-form> </el-form>
<div class="button-container"> <div class="button-container">
...@@ -276,49 +305,49 @@ ...@@ -276,49 +305,49 @@
</div> </div>
</el-button> </el-button>
<!-- 撤销 --> <!-- 撤销 -->
<el-button link type="danger" @click="handleUndo(scope.row)"> <el-button v-show="scope.row.controlPlanStatus === 'plan_drafting' || scope.row.controlPlanStatus === 'plan_draft_completed'" link type="danger" @click="handleUndo(scope.row)">
<div> <div>
<div>{{cn.revoke}}</div> <div>{{cn.revoke}}</div>
<div>{{en.revoke}}</div> <div>{{en.revoke}}</div>
</div> </div>
</el-button> </el-button>
<!-- 删除 --> <!-- 删除 -->
<el-button link type="danger" @click="handleDelete(scope.row.id)"> <el-button v-show="scope.row.controlPlanStatus === 'plan_draft_revoked' || scope.row.controlPlanStatus === 'plan_draft_deleted'" link type="danger" @click="handleDelete(scope.row.id)">
<div> <div>
<div>{{cn.delete}}</div> <div>{{cn.delete}}</div>
<div>{{en.delete}}</div> <div>{{en.delete}}</div>
</div> </div>
</el-button> </el-button>
<!-- 调整编制负责人 --> <!-- 调整编制负责人 -->
<el-button link type="primary" @click="adjustCompilationResponsiblePerson(scope.row)"> <el-button v-show="scope.row.controlPlanStatus === 'plan_drafting' || scope.row.controlPlanStatus === 'plan_draft_completed'" link type="primary" @click="adjustCompilationResponsiblePerson(scope.row)">
<div> <div>
<div>{{cn.adjustCompilationResponsiblePerson}}</div> <div>{{cn.adjustCompilationResponsiblePerson}}</div>
<div>{{en.adjustCompilationResponsiblePerson}}</div> <div>{{en.adjustCompilationResponsiblePerson}}</div>
</div> </div>
</el-button> </el-button>
<!-- 生成文件 --> <!-- 生成文件 -->
<el-button link type="warning"> <el-button v-show="scope.row.controlPlanStatus === 'plan_draft_final_confirmed'" link type="warning">
<div> <div>
<div>{{cn.generateFile}}</div> <div>{{cn.generateFile}}</div>
<div>{{en.generateFile}}</div> <div>{{en.generateFile}}</div>
</div> </div>
</el-button> </el-button>
<!-- 提醒下载 --> <!-- 提醒下载 -->
<el-button link type="primary" @click="handleRemindDownload(scope.row)"> <el-button v-show="scope.row.controlPlanStatus === 'plan_draft_final_confirmed'" link type="primary" @click="handleRemindDownload(scope.row)">
<div> <div>
<div>{{cn.remindDownload}}</div> <div>{{cn.remindDownload}}</div>
<div>{{en.remindDownload}}</div> <div>{{en.remindDownload}}</div>
</div> </div>
</el-button> </el-button>
<!-- 变更 --> <!-- 变更 -->
<el-button link type="warning" @click="handleChange(scope.row)"> <el-button v-show="scope.row.controlPlanStatus === 'plan_draft_final_confirmed'" link type="warning" @click="handleChange(scope.row)">
<div> <div>
<div>{{cn.change}}</div> <div>{{cn.change}}</div>
<div>{{en.change}}</div> <div>{{en.change}}</div>
</div> </div>
</el-button> </el-button>
<!-- 微调 --> <!-- 微调 -->
<el-button link type="primary" @click="fineTune(scope.row)"> <el-button v-show="scope.row.controlPlanStatus === 'plan_draft_final_confirmed'" link type="primary" @click="fineTune(scope.row)">
<div> <div>
<div>{{cn.fineTune}}</div> <div>{{cn.fineTune}}</div>
<div>{{en.fineTune}}</div> <div>{{en.fineTune}}</div>
...@@ -343,7 +372,7 @@ ...@@ -343,7 +372,7 @@
title="提示" title="提示"
width="500" width="500"
align-center align-center
style="width: 400px;height: 195px;margin-top: 300px" :fullscreen="true" style="width: 400px;height: 200px;margin-top: 300px" :fullscreen="true"
> >
<template #header> <template #header>
<div>{{cn.prompt}}</div> <div>{{cn.prompt}}</div>
...@@ -357,7 +386,7 @@ ...@@ -357,7 +386,7 @@
</div> </div>
</div> </div>
<template #footer> <template #footer>
<div style="margin-top: 10px"> <div>
<el-button class="btn-B" @click="undoDialogVisible = false">{{cn.cancel}}/{{en.cancel}}</el-button> <el-button class="btn-B" @click="undoDialogVisible = false">{{cn.cancel}}/{{en.cancel}}</el-button>
<el-button class="btn-A" @click="confirmUndo()">{{cn.confirm}}/{{en.confirm}}</el-button> <el-button class="btn-A" @click="confirmUndo()">{{cn.confirm}}/{{en.confirm}}</el-button>
</div> </div>
...@@ -370,7 +399,7 @@ ...@@ -370,7 +399,7 @@
title="提示" title="提示"
width="500" width="500"
align-center align-center
style="width: 400px;height: 195px;margin-top: 300px" :fullscreen="true" style="width: 400px;height: 200px;margin-top: 300px" :fullscreen="true"
> >
<template #header> <template #header>
<div>{{cn.prompt}}</div> <div>{{cn.prompt}}</div>
...@@ -384,7 +413,7 @@ ...@@ -384,7 +413,7 @@
</div> </div>
</div> </div>
<template #footer> <template #footer>
<div style="margin-top: 10px"> <div>
<el-button class="btn-B" @click="deleteDialogVisible = false">{{cn.cancel}}/{{en.cancel}}</el-button> <el-button class="btn-B" @click="deleteDialogVisible = false">{{cn.cancel}}/{{en.cancel}}</el-button>
<el-button class="btn-A" @click="confirmDelete()">{{cn.confirm}}/{{en.confirm}}</el-button> <el-button class="btn-A" @click="confirmDelete()">{{cn.confirm}}/{{en.confirm}}</el-button>
</div> </div>
...@@ -500,7 +529,7 @@ ...@@ -500,7 +529,7 @@
</div> </div>
</template> </template>
<template #footer> <template #footer>
<div style="margin-top: 60px"> <div style="margin-top: 30px;margin-right: 10px">
<el-button class="btn-B" @click="adjustCompilationResponsiblePersonDialogVisible = false">{{cn.cancel}}/{{en.cancel}}</el-button> <el-button class="btn-B" @click="adjustCompilationResponsiblePersonDialogVisible = false">{{cn.cancel}}/{{en.cancel}}</el-button>
<el-button class="btn-A" type="primary" @click="adjustCompilationResponsiblePersonSubmitForm(row)">{{cn.confirm}}/{{en.confirm}}</el-button> <el-button class="btn-A" type="primary" @click="adjustCompilationResponsiblePersonSubmitForm(row)">{{cn.confirm}}/{{en.confirm}}</el-button>
</div> </div>
...@@ -511,19 +540,17 @@ ...@@ -511,19 +540,17 @@
<el-dialog <el-dialog
v-model="changeDialogVisible" v-model="changeDialogVisible"
title="变更" title="变更"
custom-class="my-dialog-style"
style="width: 950px;height: 500px;margin-top: 200px" :fullscreen="true" style="width: 950px;height: 500px;margin-top: 200px" :fullscreen="true"
> >
<template #header> <template #header>
<div style="color: #666666;font-size: 16px;font-weight: bold"><span>{{ cn.change }} </span><span>{{ cn.controlPlanNumberPrefix }} {{ currentRow.controlPlanNumber }} {{ cn.controlPlanNumberSuffix }}</span></div>
<div style="color: #666666;font-size: 16px;font-weight: bold"><span>{{ en.change }} </span><span>{{ en.controlPlanNumberPrefix }} {{ currentRow.controlPlanNumber }} {{ en.controlPlanNumberSuffix }}</span></div>
</template> </template>
<template #default> <template #default>
<el-alert <el-alert type="info" show-icon :closable="false">
type="info"
show-icon
>
<template #default> <template #default>
<span>请选择要做变更的表单,并确认对应的编制负责人</span> <span>请选择要做变更的表单,并确认对应的编制负责人</span>
</template> </template>
</el-alert> </el-alert>
<!-- 01.关键零部件清单--> <!-- 01.关键零部件清单-->
...@@ -531,10 +558,10 @@ ...@@ -531,10 +558,10 @@
<div class="tab-components" style="margin-bottom: 10px"> <div class="tab-components" style="margin-bottom: 10px">
<span class="components-span">01.{{cn.keyPartsList}}/{{en.keyPartsList}}</span> <span class="components-span">01.{{cn.keyPartsList}}/{{en.keyPartsList}}</span>
</div> </div>
<el-checkbox> <el-checkbox v-model="isChecked1">
{{cn.keyPartsList}}/{{en.keyPartsList}}: {{cn.keyPartsList}}/{{en.keyPartsList}}:
<el-input style="width: 200px;margin-right: 10px" /> <el-input v-model="personInCharge1" :disabled="!isChecked1" style="width: 200px;margin-right: 10px" />
<el-button type="primary" plain icon="user" >{{cn.selectPersonnel}}/{{en.selectPersonnel}}</el-button> <el-button type="primary" plain icon="user" :disabled="!isChecked1">{{cn.selectPersonnel}}/{{en.selectPersonnel}}</el-button>
</el-checkbox> </el-checkbox>
</div> </div>
<!-- 02.关键工序、装配、检验清单--> <!-- 02.关键工序、装配、检验清单-->
...@@ -542,10 +569,10 @@ ...@@ -542,10 +569,10 @@
<div class="tab-components" style="margin-bottom: 10px"> <div class="tab-components" style="margin-bottom: 10px">
<span class="components-span">02.{{cn.keyProcessAssemblyInspectionList}}/{{en.keyProcessAssemblyInspectionList}}</span> <span class="components-span">02.{{cn.keyProcessAssemblyInspectionList}}/{{en.keyProcessAssemblyInspectionList}}</span>
</div> </div>
<el-checkbox > <el-checkbox v-model="isChecked2">
{{cn.keyPartsList}}/{{en.keyPartsList}}: {{cn.keyPartsList}}/{{en.keyPartsList}}:
<el-input style="width: 200px;margin-right: 10px" /> <el-input v-model="personInCharge2" :disabled="!isChecked2" style="width: 200px;margin-right: 10px" />
<el-button type="primary" plain icon="user" >{{cn.selectPersonnel}}/{{en.selectPersonnel}}</el-button> <el-button type="primary" plain icon="user" :disabled="!isChecked2">{{cn.selectPersonnel}}/{{en.selectPersonnel}}</el-button>
</el-checkbox> </el-checkbox>
</div> </div>
<!-- 03.COP试验和检查表--> <!-- 03.COP试验和检查表-->
...@@ -553,22 +580,22 @@ ...@@ -553,22 +580,22 @@
<div class="tab-components" style="margin-bottom: 10px"> <div class="tab-components" style="margin-bottom: 10px">
<span class="components-span">03.{{cn.copTestAndChecklist}}/{{en.copTestAndChecklist}}</span> <span class="components-span">03.{{cn.copTestAndChecklist}}/{{en.copTestAndChecklist}}</span>
</div> </div>
<el-checkbox> <el-checkbox v-model="isChecked3">
{{cn.manufacturingCompilationResponsiblePerson}}/{{en.manufacturingCompilationResponsiblePerson}}: {{cn.manufacturingCompilationResponsiblePerson}}/{{en.manufacturingCompilationResponsiblePerson}}:
<el-input style="width: 200px;margin-right: 10px" /> <el-input v-model="manufacturingPersonInCharge" :disabled="!isChecked3" style="width: 200px;margin-right: 10px" />
<el-button type="primary" plain icon="user" >{{cn.selectPersonnel}}/{{en.selectPersonnel}}</el-button> <el-button type="primary" plain icon="user" :disabled="!isChecked3">{{cn.selectPersonnel}}/{{en.selectPersonnel}}</el-button>
</el-checkbox> </el-checkbox>
<el-checkbox> <el-checkbox v-model="isChecked4" style="margin-top: 15px">
{{cn.qualityControlCompilationResponsiblePerson}}/{{en.qualityControlCompilationResponsiblePerson}}: {{cn.qualityControlCompilationResponsiblePerson}}/{{en.qualityControlCompilationResponsiblePerson}}:
<el-input style="width: 200px;margin-right: 10px" /> <el-input v-model="qualityControlPersonInCharge" :disabled="!isChecked4" style="width: 200px;margin-right: 10px;" />
<el-button type="primary" plain icon="user" >{{cn.selectPersonnel}}/{{en.selectPersonnel}}</el-button> <el-button type="primary" plain icon="user" :disabled="!isChecked4">{{cn.selectPersonnel}}/{{en.selectPersonnel}}</el-button>
</el-checkbox> </el-checkbox>
</div> </div>
</template> </template>
<template #footer> <template #footer>
<div style="margin-top: 60px"> <div style="margin-right: 10px">
<el-button class="btn-B" @click="adjustCompilationResponsiblePersonDialogVisible = false">{{cn.cancel}}/{{en.cancel}}</el-button> <el-button class="btn-B" @click="changeDialogVisible = false">{{cn.cancel}}/{{en.cancel}}</el-button>
<el-button class="btn-A" type="primary" @click="adjustCompilationResponsiblePersonSubmitForm(row)">{{cn.confirm}}/{{en.confirm}}</el-button> <el-button class="btn-A" type="primary" @click="changeDialogVisible(row)">{{cn.confirm}}/{{en.confirm}}</el-button>
</div> </div>
</template> </template>
</el-dialog> </el-dialog>
...@@ -579,7 +606,7 @@ ...@@ -579,7 +606,7 @@
import { import {
getAllBusinessUnitName, getAllBusinessUnitName,
getCCAPPlanList, getCCAPPlanList,
deletePlan deletePlan, undoPlan, getAllvehicleModelCode,
} from '@/api/CCAPControlPlanManagement/CCAPControlPlanManagement.js' } from '@/api/CCAPControlPlanManagement/CCAPControlPlanManagement.js'
import { ref } from 'vue' import { ref } from 'vue'
import cn from '@/locales/controlPlan/CCAPControlPlan/CCAPControlPlanManagement/index/cn.json'; import cn from '@/locales/controlPlan/CCAPControlPlan/CCAPControlPlanManagement/index/cn.json';
...@@ -601,9 +628,9 @@ const queryParams = ref({ ...@@ -601,9 +628,9 @@ const queryParams = ref({
versionNumber:null, versionNumber:null,
controlPlanStatus:null, controlPlanStatus:null,
createBy:null, createBy:null,
xinzeng1:null, controlPlanNumber:null,
xinzeng2:null, productionAddress:null,
xinzeng3:null productionFactory:null
}); });
const remindDownloadForm = ref({ const remindDownloadForm = ref({
jieshouren:null, jieshouren:null,
...@@ -612,6 +639,7 @@ const remindDownloadForm = ref({ ...@@ -612,6 +639,7 @@ const remindDownloadForm = ref({
}) })
const businessList = ref([]); const businessList = ref([]);
const vehicleModelCodeList = ref([])
const tableList = ref([]); const tableList = ref([]);
const controlPlanStatusOptions = ref([]); const controlPlanStatusOptions = ref([]);
const currentRow = ref(null); const currentRow = ref(null);
...@@ -637,7 +665,12 @@ function getAllBusinessUnit() { ...@@ -637,7 +665,12 @@ function getAllBusinessUnit() {
businessList.value = res.rows businessList.value = res.rows
}) })
} }
function getAllVehicleModelCode() {
getAllvehicleModelCode().then(res => {
vehicleModelCodeList.value = res.data
console.log("车型代码",vehicleModelCodeList.value)
})
}
function getList() { function getList() {
getCCAPPlanList(queryParams.value).then(res => { getCCAPPlanList(queryParams.value).then(res => {
total.value = res.total total.value = res.total
...@@ -715,7 +748,17 @@ function handleUndo(row) { ...@@ -715,7 +748,17 @@ function handleUndo(row) {
} }
function confirmUndo() { function confirmUndo() {
if (undoData.value) { if (undoData.value) {
undoPlan(undoData.value)
.then(() => {
ElMessage.success('撤销成功');
getList();
undoDialogVisible.value = false;
undoData.value = null;
})
.catch((error) => {
console.error('撤销失败:', error);
ElMessage.error('撤销失败');
});
} }
} }
...@@ -796,6 +839,7 @@ function handleChange(row) { ...@@ -796,6 +839,7 @@ function handleChange(row) {
onMounted(()=>{ onMounted(()=>{
getList() getList()
getAllBusinessUnit() getAllBusinessUnit()
getAllVehicleModelCode()
}) })
</script> </script>
...@@ -804,7 +848,7 @@ onMounted(()=>{ ...@@ -804,7 +848,7 @@ onMounted(()=>{
.button-container { .button-container {
display: flex; display: flex;
justify-content: flex-end; justify-content: flex-end;
margin-bottom: 24px; margin-bottom: 20px;
} }
:deep(.el-pagination) { :deep(.el-pagination) {
display: flex; display: flex;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment