service.ts 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224
  1. /*
  2. * @Author: code4eat awesomedema@gmail.com
  3. * @Date: 2022-12-21 11:13:51
  4. * @LastEditors: code4eat awesomedema@gmail.com
  5. * @LastEditTime: 2023-08-03 15:33:31
  6. * @FilePath: /BudgetManaSystem/src/pages/budgetMana/monthlyInfoCheck/service.ts
  7. * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
  8. */
  9. import { request } from '@@/plugin-request';
  10. import axios from 'axios';
  11. //获取树结构单元数据
  12. export type getTreeDataRespType = {
  13. code: number,
  14. name: string,
  15. map:boolean,
  16. parentCode:string,
  17. unitType?:string,
  18. child: getTreeDataRespType[]
  19. }
  20. export const getTreeData = (computeDate: string,type:string) => {
  21. return request<getTreeDataRespType[]>('/performance/secondSetting/getSecondDataUnitList', {
  22. method: 'GET',
  23. params: { computeDate,type }
  24. })
  25. }
  26. //获取人员数据核定
  27. export type GetSecondaryDistriComputeParams = {
  28. computeDate: string; //核算年月
  29. unitCode: string; //核算单元代码
  30. current: number;
  31. pageSize: number;
  32. }
  33. export const getSecondaryDistriComputeTableData = (params: GetSecondaryDistriComputeParams) => {
  34. return request('/performance/secondSetting/getSecondDataList', {
  35. method: 'GET',
  36. params: { ...params }
  37. })
  38. }
  39. //保存编辑后结果
  40. export const save = (data:any) => {
  41. return request('/performance/secondSetting/saveSecondData', {
  42. method: 'POST',
  43. data
  44. })
  45. }
  46. //获取当前提交状态
  47. export const getCurrentCommitStatusReq = (params:{
  48. computeDate:string,
  49. unitCode:string
  50. }) => {
  51. return request('/performance/second/getSubmitStatus', {
  52. method: 'GET',
  53. params: params
  54. })
  55. }
  56. //获取当前审核状态
  57. export const getCurrentCheckStatusReq = (computeDate:string) => {
  58. return request('/performance/second/getAuditStatus', {
  59. method: 'GET',
  60. params: {computeDate}
  61. })
  62. }
  63. //获取当前核算单元审核状态
  64. export const getCurrentUnitCheckStatusReq = (computeDate:string,unitCode:string) => {
  65. return request('/performance/second/getUnitAuditStatus', {
  66. method: 'GET',
  67. params: {computeDate,unitCode}
  68. })
  69. }
  70. // //生成数据
  71. // export type GenerateDataRequestParamsType = {
  72. // computeDate: string,
  73. // unitCode: string,
  74. // }
  75. // export const generateDataRequest = (data: GenerateDataRequestParamsType) => {
  76. // return request('/performance/secondSetting/generateEmployee', {
  77. // method: 'POST',
  78. // params:data
  79. // })
  80. // }
  81. //提交请求
  82. export type CommitRequestParamsType = {
  83. computeDate:string,
  84. unitCode:string,
  85. type:string
  86. }
  87. export const commitRequest = (data:CommitRequestParamsType) => {
  88. return request('/performance/second/submit', {
  89. method: 'POST',
  90. params:data
  91. })
  92. }
  93. //审核请求
  94. export type CheckRequestParamsType = {
  95. computeDate:string,
  96. auditType:string,
  97. type:string //是否跳过提交状态验证 1跳过提交状态 不验证是否已提交 0或不传 验证是否已提交
  98. }
  99. export const checkRequest = (data:CheckRequestParamsType) => {
  100. return request('/performance/second/audit', {
  101. method: 'POST',
  102. params:data
  103. })
  104. }
  105. //只审核当前
  106. export type CheckCurrentRequestParamsType = {
  107. computeDate:string,
  108. auditType:string,
  109. unitCode:string,
  110. type:string //是否跳过提交状态验证 1跳过提交状态 不验证是否已提交 0或不传 验证是否已提交
  111. }
  112. export const checkCurrentRequest = (data:CheckCurrentRequestParamsType) => {
  113. return request('/performance/second/auditUnit', {
  114. method: 'POST',
  115. params:data
  116. })
  117. }
  118. //获取数据
  119. export const getData = (computeDate:string,unitCode:string) => {
  120. return request('/performance/secondSetting/getAutoSecondData', {
  121. method: 'GET',
  122. params:{computeDate,unitCode}
  123. })
  124. }
  125. //导出excel模板
  126. export const downloadTemplateReq = (computeDate:string,unitCode:string) => {
  127. let path = '/gateway/performance/secondSetting/exportSecondData';
  128. const userData = localStorage.getItem('userData');
  129. const { token = '' } = JSON.parse(userData as any);
  130. axios({
  131. method: 'get',
  132. url: path,
  133. responseType: 'blob',
  134. headers: { token },
  135. params:{computeDate,unitCode}
  136. })
  137. .then(function (response) {
  138. //console.log({ 'chunk': response });
  139. const filename = decodeURI(response.headers["content-disposition"]);
  140. const objectUrl = URL.createObjectURL(
  141. new Blob([response.data], {
  142. type: 'application/vnd.ms-excel',
  143. })
  144. )
  145. const link = document.createElement('a')
  146. // 设置导出的文件名称
  147. link.download = `${filename}` + '.xls'
  148. link.style.display = 'none'
  149. link.href = objectUrl
  150. link.click()
  151. document.body.appendChild(link)
  152. });
  153. }
  154. //导入数据
  155. export const importExcelData = (data:any) => {
  156. return request('/performance/secondSetting/importSecondData', {
  157. method: 'POST',
  158. data:data
  159. })
  160. }