Compare commits
2 Commits
ed18c6fd5f
...
63f8c4feca
Author | SHA1 | Date |
---|---|---|
陈宜阳 | 63f8c4feca | 7 months ago |
陈宜阳 | cad84ab304 | 7 months ago |
4 changed files with 281 additions and 61 deletions
@ -0,0 +1,59 @@ |
|||
import request from '@/config/axios' |
|||
|
|||
export interface HolidayCalendarVO { |
|||
id: number |
|||
holidayDate: Date |
|||
endTime: Date |
|||
textOne: string |
|||
textTwo: string |
|||
textThree: string |
|||
textFour: string |
|||
textFive: string |
|||
deleteTime: Date |
|||
status: string |
|||
concurrencyStamp: number |
|||
remark: string |
|||
deleter: string |
|||
siteId: number |
|||
} |
|||
|
|||
// 查询节假日设置日历列表
|
|||
export const getHolidayCalendarPage = async (params) => { |
|||
if (params.isSearch) { |
|||
delete params.isSearch |
|||
const data = {...params} |
|||
return await request.post({ url: '/mes/holidayCalendar/senior', data }) |
|||
} else { |
|||
return await request.get({ url: `/mes/holidayCalendar/page`, params }) |
|||
} |
|||
} |
|||
|
|||
// 查询节假日设置日历详情
|
|||
export const getHolidayCalendar = async (id: number) => { |
|||
return await request.get({ url: `/mes/holidayCalendar/get?id=` + id }) |
|||
} |
|||
|
|||
// 新增节假日设置日历
|
|||
export const createHolidayCalendar = async (data: HolidayCalendarVO) => { |
|||
return await request.post({ url: `/mes/holidayCalendar/create`, data }) |
|||
} |
|||
|
|||
// 修改节假日设置日历
|
|||
export const updateHolidayCalendar = async (data: HolidayCalendarVO) => { |
|||
return await request.put({ url: `/mes/holidayCalendar/update`, data }) |
|||
} |
|||
|
|||
// 删除节假日设置日历
|
|||
export const deleteHolidayCalendar = async (id: number) => { |
|||
return await request.delete({ url: `/mes/holidayCalendar/delete?id=` + id }) |
|||
} |
|||
|
|||
// 导出节假日设置日历 Excel
|
|||
export const exportHolidayCalendar = async (params) => { |
|||
return await request.download({ url: `/mes/holidayCalendar/export-excel`, params }) |
|||
} |
|||
|
|||
// 下载用户导入模板
|
|||
export const importTemplate = () => { |
|||
return request.download({ url: '/mes/holidayCalendar/get-import-template' }) |
|||
} |
@ -1,61 +0,0 @@ |
|||
import request from '@/config/axios' |
|||
|
|||
export interface HolidaySettingVO { |
|||
id: number |
|||
textOne: string |
|||
textTwo: string |
|||
textThree: string |
|||
textFour: string |
|||
textFive: string |
|||
deleteTime: Date |
|||
status: string |
|||
concurrencyStamp: number |
|||
remark: string |
|||
deleter: string |
|||
siteId: number |
|||
changeEmplId: number |
|||
holidayDate: Date |
|||
holidayFlag: string |
|||
holidayName: string |
|||
} |
|||
|
|||
// 查询节假日设置列表
|
|||
export const getHolidaySettingPage = async (params) => { |
|||
if (params.isSearch) { |
|||
delete params.isSearch |
|||
const data = {...params} |
|||
return await request.post({ url: '/mes/holidaySetting/senior', data }) |
|||
} else { |
|||
return await request.get({ url: `/mes/holidaySetting/page`, params }) |
|||
} |
|||
} |
|||
|
|||
// 查询节假日设置详情
|
|||
export const getHolidaySetting = async (id: number) => { |
|||
return await request.get({ url: `/mes/holidaySetting/get?id=` + id }) |
|||
} |
|||
|
|||
// 新增节假日设置
|
|||
export const createHolidaySetting = async (data: HolidaySettingVO) => { |
|||
return await request.post({ url: `/mes/holidaySetting/create`, data }) |
|||
} |
|||
|
|||
// 修改节假日设置
|
|||
export const updateHolidaySetting = async (data: HolidaySettingVO) => { |
|||
return await request.put({ url: `/mes/holidaySetting/update`, data }) |
|||
} |
|||
|
|||
// 删除节假日设置
|
|||
export const deleteHolidaySetting = async (id: number) => { |
|||
return await request.delete({ url: `/mes/holidaySetting/delete?id=` + id }) |
|||
} |
|||
|
|||
// 导出节假日设置 Excel
|
|||
export const exportHolidaySetting = async (params) => { |
|||
return await request.download({ url: `/mes/holidaySetting/export-excel`, params }) |
|||
} |
|||
|
|||
// 下载用户导入模板
|
|||
export const importTemplate = () => { |
|||
return request.download({ url: '/mes/holidaySetting/get-import-template' }) |
|||
} |
@ -0,0 +1,179 @@ |
|||
import type { CrudSchema } from '@/hooks/web/useCrudSchemas' |
|||
import { dateFormatter } from '@/utils/formatTime' |
|||
|
|||
// 表单校验
|
|||
export const HolidayCalendarRules = reactive({ |
|||
endTime: [required], |
|||
concurrencyStamp: [required], |
|||
}) |
|||
|
|||
export const HolidayCalendar = useCrudSchemas(reactive<CrudSchema[]>([ |
|||
{ |
|||
label: 'ID', |
|||
field: 'id', |
|||
sort: 'custom', |
|||
isForm: false, |
|||
}, |
|||
{ |
|||
label: '日期', |
|||
field: 'holidayDate', |
|||
sort: 'custom', |
|||
formatter: dateFormatter, |
|||
isSearch: true, |
|||
search: { |
|||
component: 'DatePicker', |
|||
componentProps: { |
|||
valueFormat: 'YYYY-MM-DD HH:mm:ss', |
|||
type: 'daterange', |
|||
defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] |
|||
} |
|||
}, |
|||
form: { |
|||
component: 'DatePicker', |
|||
componentProps: { |
|||
type: 'datetime', |
|||
valueFormat: 'x' |
|||
} |
|||
}, |
|||
}, |
|||
{ |
|||
label: '结束时间', |
|||
field: 'endTime', |
|||
sort: 'custom', |
|||
formatter: dateFormatter, |
|||
isSearch: true, |
|||
search: { |
|||
component: 'DatePicker', |
|||
componentProps: { |
|||
valueFormat: 'YYYY-MM-DD HH:mm:ss', |
|||
type: 'daterange', |
|||
defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] |
|||
} |
|||
}, |
|||
form: { |
|||
component: 'DatePicker', |
|||
componentProps: { |
|||
type: 'datetime', |
|||
valueFormat: 'x' |
|||
} |
|||
}, |
|||
}, |
|||
{ |
|||
label: '备用字段一', |
|||
field: 'textOne', |
|||
sort: 'custom', |
|||
isSearch: true, |
|||
}, |
|||
{ |
|||
label: '备用字段二', |
|||
field: 'textTwo', |
|||
sort: 'custom', |
|||
isSearch: true, |
|||
}, |
|||
{ |
|||
label: '备用字段三', |
|||
field: 'textThree', |
|||
sort: 'custom', |
|||
isSearch: true, |
|||
}, |
|||
{ |
|||
label: '备用字段四', |
|||
field: 'textFour', |
|||
sort: 'custom', |
|||
isSearch: true, |
|||
}, |
|||
{ |
|||
label: '备用字段五', |
|||
field: 'textFive', |
|||
sort: 'custom', |
|||
isSearch: true, |
|||
}, |
|||
{ |
|||
label: '删除时间', |
|||
field: 'deleteTime', |
|||
sort: 'custom', |
|||
formatter: dateFormatter, |
|||
isSearch: true, |
|||
search: { |
|||
component: 'DatePicker', |
|||
componentProps: { |
|||
valueFormat: 'YYYY-MM-DD HH:mm:ss', |
|||
type: 'daterange', |
|||
defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] |
|||
} |
|||
}, |
|||
form: { |
|||
component: 'DatePicker', |
|||
componentProps: { |
|||
type: 'datetime', |
|||
valueFormat: 'x' |
|||
} |
|||
}, |
|||
}, |
|||
{ |
|||
label: '状态', |
|||
field: 'status', |
|||
sort: 'custom', |
|||
isSearch: true, |
|||
form: { |
|||
component: 'Radio' |
|||
}, |
|||
}, |
|||
{ |
|||
label: '并发乐观锁', |
|||
field: 'concurrencyStamp', |
|||
sort: 'custom', |
|||
isSearch: true, |
|||
form: { |
|||
component: 'InputNumber', |
|||
value: 0 |
|||
}, |
|||
}, |
|||
{ |
|||
label: '备注', |
|||
field: 'remark', |
|||
sort: 'custom', |
|||
isSearch: true, |
|||
}, |
|||
{ |
|||
label: '创建时间', |
|||
field: 'createTime', |
|||
sort: 'custom', |
|||
formatter: dateFormatter, |
|||
isSearch: true, |
|||
search: { |
|||
component: 'DatePicker', |
|||
componentProps: { |
|||
valueFormat: 'YYYY-MM-DD HH:mm:ss', |
|||
type: 'daterange', |
|||
defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] |
|||
} |
|||
}, |
|||
isForm: false, |
|||
}, |
|||
{ |
|||
label: '删除用户名', |
|||
field: 'deleter', |
|||
sort: 'custom', |
|||
isSearch: true, |
|||
}, |
|||
{ |
|||
label: '位置ID', |
|||
field: 'siteId', |
|||
sort: 'custom', |
|||
isSearch: true, |
|||
form: { |
|||
component: 'InputNumber', |
|||
value: 0 |
|||
}, |
|||
}, |
|||
{ |
|||
label: '操作', |
|||
field: 'action', |
|||
isForm: false, |
|||
table: { |
|||
width: 150, |
|||
fixed: 'right' |
|||
} |
|||
} |
|||
])) |
@ -0,0 +1,43 @@ |
|||
<template> |
|||
<div> |
|||
<el-calendar> |
|||
<template #date-cell="{ data }"> |
|||
<div |
|||
style="height: 100" |
|||
:class="data.isSelected ? 'is-selected' : ''" |
|||
@click="handleClick(data.day)"> |
|||
<div>{{ data.day.split('-').slice(1).join('-') }}</div> |
|||
<div v-if="arr.find((v) => v.date === data.day)">{{ arr.find((v) => v.date === data.day).content }} |
|||
</div> |
|||
<!-- <div>{{ data.isSelected ? '打羽毛球' : '' }}</div> --> |
|||
</div> |
|||
</template> |
|||
</el-calendar> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
export default { |
|||
name: 'Calendar', |
|||
data() { |
|||
return { |
|||
value: new Date(), |
|||
arr: [ |
|||
{ date: '2024-04-01', content: '打球' }, |
|||
{ date: '2024-04-02', content: '打台球' }, |
|||
{ date: '2024-04-03', content: '打篮球' }, |
|||
{ date: '2024-04-04', content: '踢足球' } |
|||
] |
|||
} |
|||
}, |
|||
methods: { |
|||
handleClick(date) { |
|||
alert(date) |
|||
} |
|||
} |
|||
} |
|||
</script> |
|||
|
|||
<style scoped> |
|||
|
|||
</style> |
Loading…
Reference in new issue