Browse Source

工作日历修改 2022年10月21日 sxm

master
[li_she] 3 years ago
parent
commit
015a413a17
  1. 5
      src/api/base.js
  2. 229
      src/views/modules/base/calendar.vue

5
src/api/base.js

@ -36,4 +36,9 @@ export const getCalendarExceptionShiftData = data => createAPI(`/base/getCalenda
export const updateCESShift = data => createAPI(`/base/updateCESShift`,'post',data)
export const getCalendarDatetypeInfo = data => createAPI(`/base/getCalendarDatetypeInfo`,'post',data)
export const updateWorkingCalendar = data => createAPI(`/base/updateWorkingCalendar`,'post',data)

229
src/views/modules/base/calendar.vue

@ -72,7 +72,8 @@
<el-input v-model="newCalendarData.site" :disabled="calendarModelDisableFlag" style="width: 130px"></el-input>
</el-form-item>
<el-form-item :label="'日历编号:'">
<el-input v-model="newCalendarData.calendarId" :disabled="calendarModelDisableFlag" style="width: 130px" ></el-input>
<el-input v-model="newCalendarData.calendarId" :disabled="calendarModelDisableFlag"
style="width: 130px"></el-input>
</el-form-item>
<el-form-item :label="'日历描述:'">
<el-input v-model="newCalendarData.calendarDesc" style="width: 130px"></el-input>
@ -123,10 +124,11 @@
<el-table-column
header-align="center"
align="center"
width="50"
width="80"
label="操作">
<template slot-scope="scope">
<a type="text" size="small" @click="shiftModal(scope.row)">班次</a>
<a type="text" size="small" @click="editShiftModal(scope.row)"> | 编辑</a>
</template>
</el-table-column>
<el-table-column
@ -150,7 +152,8 @@
<el-button type="primary" @click="CEFlag = false">关闭</el-button>
</el-footer>
</el-dialog>
<el-dialog title="批量维护工作日历" :close-on-click-modal="false" v-drag :visible.sync="maintainCalendarFlag" width="1200px" >
<el-dialog title="批量维护工作日历" :close-on-click-modal="false" v-drag :visible.sync="maintainCalendarFlag"
width="1200px">
<el-form :inline="true" label-position="top" label-width="100px" style="margin-top: -5px;">
<el-form-item :label="'日历编码:'">
<el-input v-model="maintainCalendarSearchData.calendarId" style="width: 130px"></el-input>
@ -241,7 +244,8 @@
align="left"
:label="this.timeArray[0]">
<template slot-scope="scope">
<el-select v-model="scope.row.val0" placeholder="请选择" style="height: 12px;padding: 0px " filterable allow-create>
<el-select v-model="scope.row.val0" placeholder="请选择" style="height: 12px;padding: 0px " filterable
allow-create>
<el-option v-for="item in selectList " :key="index" :label="item.label" :value="item.value">
</el-option>
@ -254,9 +258,12 @@
align="left"
:label="this.timeArray[1]">
<template slot-scope="scope">
<el-select v-model="scope.row.val1" placeholder="请选择" style="height: 12px;padding: 0px " filterable allow-create>
 <el-option v-for="item in selectList " :key="index" :label="item.label" :value="item.value">
 </el-option>
<el-select v-model="scope.row.val1" placeholder="请选择" style="height: 12px;padding: 0px " filterable
allow-create>
 
<el-option v-for="item in selectList " :key="index" :label="item.label" :value="item.value">
 
</el-option>
</el-select>
</template>
</el-table-column>
@ -266,9 +273,12 @@
align="left"
:label="this.timeArray[2]">
<template slot-scope="scope">
<el-select v-model="scope.row.val2" placeholder="请选择" style="height: 12px;padding: 0px " filterable allow-create>
 <el-option v-for="item in selectList " :key="index" :label="item.label" :value="item.value">
 </el-option>
<el-select v-model="scope.row.val2" placeholder="请选择" style="height: 12px;padding: 0px " filterable
allow-create>
 
<el-option v-for="item in selectList " :key="index" :label="item.label" :value="item.value">
 
</el-option>
</el-select>
</template>
</el-table-column>
@ -278,9 +288,12 @@
align="left"
:label="this.timeArray[3]">
<template slot-scope="scope">
<el-select v-model="scope.row.val3" placeholder="请选择" style="height: 12px;padding: 0px " filterable allow-create>
 <el-option v-for="item in selectList " :key="index" :label="item.label" :value="item.value">
 </el-option>
<el-select v-model="scope.row.val3" placeholder="请选择" style="height: 12px;padding: 0px " filterable
allow-create>
 
<el-option v-for="item in selectList " :key="index" :label="item.label" :value="item.value">
 
</el-option>
</el-select>
</template>
</el-table-column>
@ -290,9 +303,12 @@
align="left"
:label="this.timeArray[4]">
<template slot-scope="scope">
<el-select v-model="scope.row.val4" placeholder="请选择" style="height: 12px;padding: 0px " filterable allow-create>
 <el-option v-for="item in selectList " :key="index" :label="item.label" :value="item.value">
 </el-option>
<el-select v-model="scope.row.val4" placeholder="请选择" style="height: 12px;padding: 0px " filterable
allow-create>
 
<el-option v-for="item in selectList " :key="index" :label="item.label" :value="item.value">
 
</el-option>
</el-select>
</template>
</el-table-column>
@ -302,9 +318,12 @@
align="left"
:label="this.timeArray[5]">
<template slot-scope="scope">
<el-select v-model="scope.row.val5" placeholder="请选择" style="height: 12px;padding: 0px " filterable allow-create>
 <el-option v-for="item in selectList " :key="index" :label="item.label" :value="item.value">
 </el-option>
<el-select v-model="scope.row.val5" placeholder="请选择" style="height: 12px;padding: 0px " filterable
allow-create>
 
<el-option v-for="item in selectList " :key="index" :label="item.label" :value="item.value">
 
</el-option>
</el-select>
</template>
</el-table-column>
@ -314,9 +333,12 @@
align="left"
:label="this.timeArray[6]">
<template slot-scope="scope">
<el-select v-model="scope.row.val6" placeholder="请选择" style="height: 12px;padding: 0px " filterable allow-create>
 <el-option v-for="item in selectList " :key="index" :label="item.label" :value="item.value">
 </el-option>
<el-select v-model="scope.row.val6" placeholder="请选择" style="height: 12px;padding: 0px " filterable
allow-create>
 
<el-option v-for="item in selectList " :key="index" :label="item.label" :value="item.value">
 
</el-option>
</el-select>
</template>
</el-table-column>
@ -365,7 +387,8 @@
<el-dialog title="维护班次" :close-on-click-modal="false" v-drag :visible.sync="updateShiftFlag" width="341px">
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;">
<el-form-item :label="'班次编码:'">
<el-input v-model="newShiftData.shiftno" disabled style="width: 130px" onblur="this.value=this.value.toUpperCase()"></el-input>
<el-input v-model="newShiftData.shiftno" disabled style="width: 130px"
onblur="this.value=this.value.toUpperCase()"></el-input>
</el-form-item>
<el-form-item :label="'班次名称:'">
<el-input v-model="newShiftData.shiftdesc" disabled style="width: 130px"></el-input>
@ -394,6 +417,109 @@
<el-button type="primary" @click="updateShiftFlag = false">关闭</el-button>
</el-footer>
</el-dialog>
<el-dialog title="维护班次信息" :close-on-click-modal="false" v-drag :visible.sync="workDateDialog" width="341px">
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;">
<el-form-item label="日历编码">
<el-input v-model="workingCalendar.calendarId" :disabled="true" style="width: 130px;color: red"></el-input>
</el-form-item>
<el-form-item label="日期">
<el-input v-model="workingCalendar.scheduledate" :disabled="true" style="width: 130px;color: red"></el-input>
</el-form-item>
<el-form-item label="工厂编号">
<el-input v-model="workingCalendar.site" :disabled="true" style="width: 130px"></el-input>
</el-form-item>
<el-form-item :label="'工作日类型:'">
<el-select @change="selectDateType" v-model="workingCalendar.datetype" style="width: 130px">
<el-option v-for="(item,index) in calendarDatetype" :key="index"
:label="item.datetype" :value="item.datetype">
</el-option>
</el-select>
</el-form-item>
<el-form-item :label="'休息时间点1:'">
<el-time-picker
format="HH:mm"
style="width: 130px"
v-model="workingCalendar.exceptexacttime1"
placeholder="请选择"
value-format="HH:mm">
</el-time-picker>
</el-form-item>
<el-form-item :label="'休息时长1:'">
<el-input v-model="workingCalendar.exceptduration1" style="width: 130px"></el-input>
</el-form-item>
<el-form-item :label="'休息时间点2:'">
<el-time-picker
format="HH:mm"
style="width: 130px"
v-model="workingCalendar.exceptexacttime2"
placeholder="请选择"
value-format="HH:mm">
</el-time-picker>
</el-form-item>
<el-form-item :label="'休息时长2:'">
<el-input v-model="workingCalendar.exceptduration2" style="width: 130px"></el-input>
</el-form-item>
<el-form-item :label="'休息时间点3:'">
<el-time-picker
format="HH:mm"
style="width: 130px"
v-model="workingCalendar.exceptexacttime3"
placeholder="请选择"
value-format="HH:mm">
</el-time-picker>
</el-form-item>
<el-form-item :label="'休息时长3:'">
<el-input v-model="workingCalendar.exceptduration3" style="width: 130px"></el-input>
</el-form-item>
<el-form-item :label="'休息时间点4:'">
<el-time-picker
format="HH:mm"
style="width: 130px"
v-model="workingCalendar.exceptexacttime4"
placeholder="请选择"
value-format="HH:mm">
</el-time-picker>
</el-form-item>
<el-form-item :label="'休息时长4:'">
<el-input v-model="workingCalendar.exceptduration4" style="width: 130px"></el-input>
</el-form-item>
<el-form-item :label="'休息时间点5:'">
<el-time-picker
format="HH:mm"
style="width: 130px"
v-model="workingCalendar.exceptexacttime5"
placeholder="请选择"
value-format="HH:mm">
</el-time-picker>
</el-form-item>
<el-form-item :label="'休息时长5:'">
<el-input v-model="workingCalendar.exceptduration5" style="width: 130px"></el-input>
</el-form-item>
<el-form-item :label="'休息时间点6:'">
<el-time-picker
format="HH:mm"
style="width: 130px"
v-model="workingCalendar.exceptexacttime6"
placeholder="请选择"
value-format="HH:mm">
</el-time-picker>
</el-form-item>
<el-form-item :label="'休息时长6:'">
<el-input v-model="workingCalendar.exceptduration6" style="width: 130px"></el-input>
</el-form-item>
<el-form-item :label="'备注:'">
<el-input v-model="workingCalendar.remark" style="width: 275px"></el-input>
</el-form-item>
</el-form>
<el-footer style="height:40px;margin-top: 20px;text-align:center">
<el-button type="primary" @click="updateWorkingCalendar()">保存</el-button>
<el-button type="primary" @click="workDateDialog = false">关闭</el-button>
</el-footer>
</el-dialog>
</div>
</template>
@ -406,13 +532,19 @@
calendarDatetypeInfo,
batchSaveCDData,
getCalendarExceptionShiftData,
updateCESShift
updateCESShift,
getCalendarDatetypeInfo,
updateWorkingCalendar
} from "@/api/base.js"
export default {
name: "calendar",
data() {
return {
workDateDialog: false,
workingCalendar: {},
calendarDatetype: [],
newShiftData: {
shiftno: '',
shiftdesc: '',
@ -502,7 +634,7 @@
// start
exportData: [],
exportName: "工厂日历" + this.dayjs().format('YYYYMMDDHHmmss'),
exportHeader: ["工厂日历"],
exportHeader: '',
exportFooter: [],
// end
// start
@ -1332,6 +1464,53 @@
this.shiftFlag = true;
})
},
//
editShiftModal(row) {
this.workDateDialog = true
this.workingCalendar = JSON.parse(JSON.stringify(row))
this.getcalendarDatetype()
},
//
getcalendarDatetype() {
let dto = {
site: this.workingCalendar.site
}
calendarDatetypeInfo(dto).then(({data}) => {
this.calendarDatetype = data.rows
})
},
//
selectDateType() {
getCalendarDatetypeInfo(this.workingCalendar).then(({data}) =>{
if (data && data.code == 0){
this.workingCalendar.exceptexacttime1 = data.data.exceptexacttime1
this.workingCalendar.exceptduration1 = data.data.exceptduration1
this.workingCalendar.exceptexacttime2 = data.data.exceptexacttime2
this.workingCalendar.exceptduration2 = data.data.exceptduration2
this.workingCalendar.exceptexacttime3 = data.data.exceptexacttime3
this.workingCalendar.exceptduration3 = data.data.exceptduration3
this.workingCalendar.exceptexacttime4 = data.data.exceptexacttime4
this.workingCalendar.exceptduration4 = data.data.exceptduration4
this.workingCalendar.exceptexacttime5 = data.data.exceptexacttime5
this.workingCalendar.exceptduration5 = data.data.exceptduration5
this.workingCalendar.exceptexacttime6 = data.data.exceptexacttime6
this.workingCalendar.exceptduration6 = data.data.exceptduration6
}
})
},
//
updateWorkingCalendar(){
updateWorkingCalendar(this.workingCalendar).then(({data}) => {
if (data && data.code == 0){
this.$message.success(data.msg)
this.workDateDialog = false
this.getCEModel(this.workingCalendar)
}else {
this.$message.warning(data.msg)
}
})
},
editShift(row) {
this.newShiftData = row;
this.updateShiftFlag = true;

Loading…
Cancel
Save