workload.js 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. import request from "./request";
  2. import moment from "moment";
  3. export async function queryWorkType(params) {
  4. return request(`v2/workload/type/info`, "GET", params, true);
  5. }
  6. export async function queryAllWorkType() {
  7. uni.showLoading();
  8. try {
  9. const { data } = await queryWorkType({ parent_id: -1 });
  10. let typeList = [];
  11. let allType = {};
  12. for (let i = 0; i < data.length; i++) {
  13. let item = data[i];
  14. allType[item.id] = item;
  15. if (item.parent_id == 0) {
  16. typeList.push(item);
  17. }
  18. }
  19. return { typeList, allType };
  20. } catch (error) {
  21. console.log(error);
  22. // return { typeList: [], allType: [] };
  23. } finally {
  24. uni.hideLoading();
  25. }
  26. }
  27. /**
  28. *
  29. + pageSize:每页记录数
  30. + currentPage:当前页
  31. + project_id:项目id
  32. + user_id:用户id
  33. + dep_id:部门id
  34. + type_id:工作分项id
  35. + audit_status:审核状态
  36. + s_time:开始时间
  37. + e_time:结束时间
  38. */
  39. // 查询本人工时列表
  40. export async function queryWorkHours(params = {}) {
  41. params.pageSize = 9999;
  42. const res = await request(`v2/workload/record`, "GET", params);
  43. const { list } = res.data;
  44. var data = {};
  45. list.forEach((item) => {
  46. var day = moment(item.ts).format("YYYY-MM-DD");
  47. item.day = day;
  48. if (!data[day]) data[day] = [];
  49. data[day].push(item);
  50. });
  51. return data;
  52. }
  53. // 查询可审核工时
  54. export async function queryAuthWorkHours(params = {}) {
  55. params.pageSize = 9999;
  56. const res = await request(`v2/workload/list/auth`, "GET", params);
  57. const { list } = res.data;
  58. var data = {};
  59. list.forEach((item) => {
  60. var day = moment(item.ts).format("YYYY-MM-DD");
  61. item.day = day;
  62. if (!data[day]) data[day] = [];
  63. data[day].push(item);
  64. });
  65. return data;
  66. }
  67. export async function queryProject(data) {
  68. const res = await request(`v2/workload/project`, "GET", data);
  69. return res.data.list.map((item) => ({
  70. ...item,
  71. fullName: `${item.Name}(${item.Code})`,
  72. }));
  73. }
  74. /** id,status,desc */
  75. export async function authWorkload(data) {
  76. return await request(`v2/workload/auths`, "POST", data);
  77. }
  78. export async function addWorkHours(data) {
  79. return await request(`v2/workload/record`, "POST", data);
  80. }
  81. export async function addAuthWorkHours(data) {
  82. return await request(`v2/workload/records`, "POST", data);
  83. }