添加排班类型

This commit is contained in:
JinLu.Yin 2022-06-08 20:16:02 +08:00
parent 9c3923120d
commit 3852491b83
4 changed files with 82 additions and 14 deletions

View File

@ -58,9 +58,11 @@ export default {
/**本月农历设置为灰色*/ /**本月农历设置为灰色*/
.el-calendar-table .current .lunar { .el-calendar-table .current .lunar {
color: #606266; color: #606266;
font-size: small;
} }
/**本月农历节日设置为红色*/ /**本月农历节日设置为红色*/
.el-calendar-table .current .lunar.festival { .el-calendar-table .current .lunar.festival {
color: green; color: green;
font-size: small;
} }
</style> </style>

View File

@ -1,6 +1,16 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="班组类型" prop="calendarType">
<el-select v-model="queryParams.calendarType" placeholder="请选择班组类型">
<el-option
v-for="dict in dict.type.mes_calendar_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="计划编号" prop="planCode"> <el-form-item label="计划编号" prop="planCode">
<el-input <el-input
v-model="queryParams.planCode" v-model="queryParams.planCode"
@ -97,6 +107,11 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="计划名称" width="200px" align="center" prop="planName" :show-overflow-tooltip="true"/> <el-table-column label="计划名称" width="200px" align="center" prop="planName" :show-overflow-tooltip="true"/>
<el-table-column label="班组类型" align="center" prop="calendarType">
<template slot-scope="scope">
<dict-tag :options="dict.type.mes_calendar_type" :value="scope.row.calendarType"/>
</template>
</el-table-column>
<el-table-column label="开始日期" align="center" prop="startDate" width="120"> <el-table-column label="开始日期" align="center" prop="startDate" width="120">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.startDate, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.startDate, '{y}-{m}-{d}') }}</span>
@ -117,22 +132,22 @@
<dict-tag :options="dict.type.mes_shift_method" :value="scope.row.shiftMethod"/> <dict-tag :options="dict.type.mes_shift_method" :value="scope.row.shiftMethod"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="备注" align="center" prop="remark" /> <el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip="true"/>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" :show-overflow-tooltip="true"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-edit" icon="el-icon-edit"
@click="handleUpdate(scope.row)" @click="handleUpdate(scope.row)"
v-hasPermi="['cal:calplan:edit']" v-hasPermi="['mes:cal:calplan:edit']"
>修改</el-button> >修改</el-button>
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-delete" icon="el-icon-delete"
@click="handleDelete(scope.row)" @click="handleDelete(scope.row)"
v-hasPermi="['cal:calplan:remove']" v-hasPermi="['mes:cal:calplan:remove']"
>删除</el-button> >删除</el-button>
</template> </template>
</el-table-column> </el-table-column>
@ -171,7 +186,7 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="8">
<el-form-item label="开始日期" prop="startDate"> <el-form-item label="开始日期" prop="startDate">
<el-date-picker clearable <el-date-picker clearable
v-model="form.startDate" v-model="form.startDate"
@ -181,7 +196,7 @@
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="8">
<el-form-item label="结束日期" prop="endDate"> <el-form-item label="结束日期" prop="endDate">
<el-date-picker clearable <el-date-picker clearable
v-model="form.endDate" v-model="form.endDate"
@ -191,6 +206,18 @@
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8">
<el-form-item label="班组类型" prop="calendarType">
<el-select v-model="form.calendarType" placeholder="请选择班组类型">
<el-option
v-for="dict in dict.type.mes_calendar_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
@ -236,7 +263,7 @@
<Shift ref="shiftTab" :planId="form.planId" :optType="optType"></Shift> <Shift ref="shiftTab" :planId="form.planId" :optType="optType"></Shift>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="班组"> <el-tab-pane label="班组">
<Team ref="teamTab" :planId="form.planId" :optType="optType"></Team> <Team ref="teamTab" :planId="form.planId" :calendarType="form.calendarType" :optType="optType"></Team>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
@ -255,7 +282,7 @@ import Team from "./team";
import {genCode} from "@/api/system/autocode/rule" import {genCode} from "@/api/system/autocode/rule"
export default { export default {
name: "Calplan", name: "Calplan",
dicts: ['mes_shift_method','mes_shift_type'], dicts: ['mes_shift_method','mes_shift_type','mes_calendar_type'],
components: {Shift,Team}, components: {Shift,Team},
data() { data() {
return { return {
@ -286,6 +313,7 @@ export default {
pageSize: 10, pageSize: 10,
planCode: null, planCode: null,
planName: null, planName: null,
calendarType:null,
startDate: null, startDate: null,
endDate: null, endDate: null,
shiftType: null, shiftType: null,
@ -301,6 +329,9 @@ export default {
planName: [ planName: [
{ required: true, message: "计划名称不能为空", trigger: "blur" } { required: true, message: "计划名称不能为空", trigger: "blur" }
], ],
calendarType:[
{ required: true, message: "请选择班组类型", trigger: "blur" }
],
startDate: [ startDate: [
{ required: true, message: "开始日期不能为空", trigger: "blur" } { required: true, message: "开始日期不能为空", trigger: "blur" }
], ],
@ -334,6 +365,7 @@ export default {
planId: null, planId: null,
planCode: null, planCode: null,
planName: null, planName: null,
calendarType:null,
startDate: null, startDate: null,
endDate: null, endDate: null,
shiftType: 'SHIFT_TWO', shiftType: 'SHIFT_TWO',

View File

@ -51,7 +51,8 @@ export default {
components:{TeamSelect}, components:{TeamSelect},
props:{ props:{
planId:null, planId:null,
optType:null optType:null,
calendarType:null
}, },
data(){ data(){
return { return {
@ -69,12 +70,12 @@ export default {
teamId: null, teamId: null,
teamCode: null, teamCode: null,
teamName: null, teamName: null,
calendarType:this.calendarType
}, },
} }
}, },
created() { created() {
this.getTeamList(); this.getTeamList();
this.getMemberList(null);
}, },
methods:{ methods:{
getTeamList(){ getTeamList(){
@ -107,9 +108,9 @@ export default {
this.form.teamCode = team.teamCode; this.form.teamCode = team.teamCode;
this.form.teamName = team.teamName; this.form.teamName = team.teamName;
this.form.planId = this.planId; this.form.planId = this.planId;
this.form.calendarType = this.calendarType;
addPlanteam(this.form).then(response => { addPlanteam(this.form).then(response => {
this.getTeamList(); this.getTeamList();
this.getMemberList(null);
}); });
}); });
}, },

View File

@ -1,6 +1,16 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="班组类型" prop="calendarType">
<el-select v-model="queryParams.calendarType" placeholder="请选择班组类型">
<el-option
v-for="dict in dict.type.mes_calendar_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="班组编号" prop="teamCode"> <el-form-item label="班组编号" prop="teamCode">
<el-input <el-input
v-model="queryParams.teamCode" v-model="queryParams.teamCode"
@ -81,6 +91,11 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="班组名称" align="center" prop="teamName" /> <el-table-column label="班组名称" align="center" prop="teamName" />
<el-table-column label="班组类型" align="center" prop="calendarType">
<template slot-scope="scope">
<dict-tag :options="dict.type.mes_calendar_type" :value="scope.row.calendarType"/>
</template>
</el-table-column>
<el-table-column label="备注" align="center" prop="remark" /> <el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
@ -119,7 +134,7 @@
<el-input v-model="form.teamCode" placeholder="请输入班组编号" /> <el-input v-model="form.teamCode" placeholder="请输入班组编号" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="3">
<el-form-item label-width="80"> <el-form-item label-width="80">
<el-switch v-model="autoGenFlag" <el-switch v-model="autoGenFlag"
active-color="#13ce66" active-color="#13ce66"
@ -128,11 +143,23 @@
</el-switch> </el-switch>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="8">
<el-form-item label="班组名称" prop="teamName"> <el-form-item label="班组名称" prop="teamName">
<el-input v-model="form.teamName" placeholder="请输入班组名称" /> <el-input v-model="form.teamName" placeholder="请输入班组名称" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5">
<el-form-item label="班组类型" prop="calendarType">
<el-select v-model="form.calendarType" placeholder="请选择班组类型">
<el-option
v-for="dict in dict.type.mes_calendar_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
@ -160,6 +187,7 @@ import {genCode} from "@/api/system/autocode/rule"
export default { export default {
name: "Team", name: "Team",
components: {Teammember}, components: {Teammember},
dicts:['mes_calendar_type'],
data() { data() {
return { return {
// //
@ -189,6 +217,7 @@ export default {
pageSize: 10, pageSize: 10,
teamCode: null, teamCode: null,
teamName: null, teamName: null,
calendarType:null
}, },
// //
form: {}, form: {},
@ -200,6 +229,9 @@ export default {
teamName: [ teamName: [
{ required: true, message: "班组名称不能为空", trigger: "blur" } { required: true, message: "班组名称不能为空", trigger: "blur" }
], ],
calendarType:[
{ required: true, message: "清选择班组类型", trigger: "blur" }
]
} }
}; };
}, },
@ -227,6 +259,7 @@ export default {
teamId: null, teamId: null,
teamCode: null, teamCode: null,
teamName: null, teamName: null,
calendarType:null,
remark: null, remark: null,
attr1: null, attr1: null,
attr2: null, attr2: null,