diff --git a/gear-ui3/src/api/oa/attendanceRecord.js b/gear-ui3/src/api/oa/attendanceRecord.js index 5b1ccc7..0ee3fa8 100644 --- a/gear-ui3/src/api/oa/attendanceRecord.js +++ b/gear-ui3/src/api/oa/attendanceRecord.js @@ -42,3 +42,17 @@ export function delAttendanceRecord(recordId) { method: 'delete' }) } + +// /** +// * +// * @param {*} params.startTime 开始时间 +// * @param {*} params.endTime 结束时间 +// * @returns +// */ +// export function getMonthlyAttendance(params) { +// return request({ +// url: '/oa/attendance/monthly', +// method: 'get', +// params +// }) +// } diff --git a/gear-ui3/src/api/oa/projectReport.js b/gear-ui3/src/api/oa/projectReport.js new file mode 100644 index 0000000..9d55863 --- /dev/null +++ b/gear-ui3/src/api/oa/projectReport.js @@ -0,0 +1,130 @@ +import request from '@/utils/request'; + +// 查询项目报工列表 +export function listProjectReport(query) { + return request({ + url: '/oa/projectReport/list', + method: 'get', + params: query + }) +} + +// 查询项目报工详细 +export function getProjectReport(reportId) { + return request({ + url: '/oa/projectReport/' + reportId, + method: 'get' + }) +} + +// 查询项目报工详细 +export function getCardData() { + return request({ + url: '/oa/projectReport/card', + method: 'get' + }) +} + +// 查询项目报工详细 +export function getTrendData(start,end) { + return request({ + url: '/oa/projectReport/trend', + method: 'get', + params: { + start:start, + end:end + } + }) +} + +// 查询项目报工详细 +export function getRankData(start,end) { + return request({ + url: '/oa/projectReport/rank', + method: 'get', + params: { + start:start, + end:end + } + }) +}// 查询项目报工详细 +export function getSummaryList(start,end) { + return request({ + url: '/oa/projectReport/summary', + method: 'get', + params: { + start:start, + end:end + } + }) +} + +// 查询项目报工详细 +export function getProjectData(start,end) { + return request({ + url: '/oa/projectReport/projects', + method: 'get', + params: { + start:start, + end:end + } + }) +} +// 查询项目报工详细 +export function listClearProjectReport(start,end) { + return request({ + url: '/oa/projectReport/report', + method: 'get', + params: { + start:start, + end:end + } + }) +} +// 查询项目报工详细 +export function getPieData(start,end) { + return request({ + url: '/oa/projectReport/distribution', + method: 'get', + params: { + start:start, + end:end + } + }) +} + +// 新增项目报工 +export function addProjectReport(data) { + return request({ + url: '/oa/projectReport', + method: 'post', + data: data + }) +} + +// 修改项目报工 +export function updateProjectReport(data) { + return request({ + url: '/oa/projectReport', + method: 'put', + data: data + }) +} + +// 删除项目报工 +export function delProjectReport(reportId) { + return request({ + url: '/oa/projectReport/' + reportId, + method: 'delete' + }) +} + +// 导出项目报工数据 +export function exportProjectReport(params) { + return request({ + url: '/oa/projectReport/export', + method: 'post', + data: params, + responseType: 'blob' + }) +} diff --git a/gear-ui3/src/components/UserSelect/index.vue b/gear-ui3/src/components/UserSelect/index.vue index 5bbe4fb..2decde4 100644 --- a/gear-ui3/src/components/UserSelect/index.vue +++ b/gear-ui3/src/components/UserSelect/index.vue @@ -64,7 +64,7 @@ const loadData = async () => { // 转换用户数据 const transformedUserList = userList.map(user => ({ - id: `user_${user.userId}`, + id: `${user.userId}`, label: user.nickName || user.userName, parentId: `dept_${user.deptId}`, type: 'user' diff --git a/gear-ui3/src/utils/index.js b/gear-ui3/src/utils/index.js index 9329fe2..046b5bc 100644 --- a/gear-ui3/src/utils/index.js +++ b/gear-ui3/src/utils/index.js @@ -1,4 +1,4 @@ -import { parseTime } from './ruoyi' +import { parseTime } from './gear' /** * 表格时间格式化 diff --git a/gear-ui3/src/views/info/report/components/ProjectReportDetail.vue b/gear-ui3/src/views/info/report/components/ProjectReportDetail.vue new file mode 100644 index 0000000..52dacfb --- /dev/null +++ b/gear-ui3/src/views/info/report/components/ProjectReportDetail.vue @@ -0,0 +1,148 @@ + + + + + diff --git a/gear-ui3/src/views/info/report/index.vue b/gear-ui3/src/views/info/report/index.vue new file mode 100644 index 0000000..105099d --- /dev/null +++ b/gear-ui3/src/views/info/report/index.vue @@ -0,0 +1,457 @@ + + + diff --git a/gear-ui3/src/views/peoples/attendance/index.vue b/gear-ui3/src/views/peoples/attendance/attendance.vue similarity index 97% rename from gear-ui3/src/views/peoples/attendance/index.vue rename to gear-ui3/src/views/peoples/attendance/attendance.vue index 9cf761d..4ca67b0 100644 --- a/gear-ui3/src/views/peoples/attendance/index.vue +++ b/gear-ui3/src/views/peoples/attendance/attendance.vue @@ -151,7 +151,7 @@ - + @@ -192,9 +192,10 @@ const data = reactive({ userId: undefined, recordDate: undefined, recordType: 'attendance', // 默认考勤 + // 当天九点 startTime: undefined, endTime: undefined, - durationHour: undefined, + durationHour: 8, // 默认8小时 }, rules: { userId: [ @@ -244,9 +245,9 @@ function reset() { // 填入格式化的日期 YYYY-MM-DD HH:mm:ss recordDate: proxy.parseTime(new Date(), '{y}-{m}-{d} {h}:{i}:{s}'), recordType: 'attendance', // 默认考勤 - startTime: null, - endTime: null, - durationHour: null, + startTime: proxy.parseTime(new Date(), '{y}-{m}-{d} 09:00:00'), + endTime: proxy.parseTime(new Date(), '{y}-{m}-{d} 18:00:00'), + durationHour: 8, status: null, createTime: null, createBy: null, diff --git a/gear-ui3/src/views/peoples/attendance/calendar.vue b/gear-ui3/src/views/peoples/attendance/calendar.vue new file mode 100644 index 0000000..ac84779 --- /dev/null +++ b/gear-ui3/src/views/peoples/attendance/calendar.vue @@ -0,0 +1,286 @@ + + + + + diff --git a/gear-ui3/src/views/peoples/overtime/index.vue b/gear-ui3/src/views/peoples/attendance/overtime.vue similarity index 100% rename from gear-ui3/src/views/peoples/overtime/index.vue rename to gear-ui3/src/views/peoples/attendance/overtime.vue diff --git a/gear-ui3/src/views/peoples/attendance/snapshot.vue b/gear-ui3/src/views/peoples/attendance/snapshot.vue new file mode 100644 index 0000000..e69de29 diff --git a/gear-ui3/src/views/peoples/travel/index.vue b/gear-ui3/src/views/peoples/attendance/travel.vue similarity index 100% rename from gear-ui3/src/views/peoples/travel/index.vue rename to gear-ui3/src/views/peoples/attendance/travel.vue