request.ts 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  1. import { Get, Post } from "../../lib/request/method";
  2. export function getNotDealLists() {
  3. return Post(
  4. "/surplus/getPatientPendingWorks",
  5. {},
  6. {
  7. transform({ data }: AnyObject) {
  8. return Array.isArray(data)
  9. ? data.map((item) => ({
  10. ...item,
  11. }))
  12. : [];
  13. },
  14. }
  15. );
  16. }
  17. // 获取调养计划
  18. export function getCareList() {
  19. return Post(
  20. "/patientCrManage/getCurrentPcrs",
  21. {},
  22. {
  23. transform({ data }: AnyObject) {
  24. return data;
  25. },
  26. }
  27. );
  28. }
  29. export function getPatients(id?: string) {
  30. id ??= wx.getStorageSync("patientId");
  31. const transform = ({ data }: AnyObject) => {
  32. const patient =
  33. void 0 ??
  34. data.find((item: AnyObject) => item.patientId == id) ??
  35. data.find((item: AnyObject) => item.isDefault?.toUpperCase() === "Y") ??
  36. data[0];
  37. return { patient, patients: data };
  38. };
  39. return Post("/mobileAccountManage/getPatsByAid", {}, { transform });
  40. }
  41. export async function getPatientDescription(patient: {
  42. sex: "0" | "1";
  43. patientId: string;
  44. }) {
  45. if (patient.sex === "0") return "";
  46. try {
  47. const transform = ({ data }: any) => data;
  48. const dict = await Get("/dict/getDicts", { transform });
  49. const options = dict.find(
  50. (item: any) => item.dictType === "women_special_period"
  51. ).items;
  52. const { womenSpecialPeriod } = await Post(
  53. "/patientInfoManage/getPatientInfoDetail",
  54. {},
  55. { transform }
  56. );
  57. if (womenSpecialPeriod)
  58. return womenSpecialPeriod
  59. .split(",")
  60. .map((k: string) => {
  61. const [key, value] = k.split(":");
  62. const label = options.find(
  63. (option: any) => option.dictValue === key
  64. ).dictLabel;
  65. return value ?? label !== "无" ? label : "";
  66. })
  67. .filter(Boolean)
  68. .join(",");
  69. } catch (error) {
  70. return "";
  71. }
  72. }
  73. export function healthReportMethod() {
  74. const transform = ({ data }: AnyObject) => {
  75. if (Array.isArray(data?.conditProgram?.types)) {
  76. data.conditProgram.types = data.conditProgram.types.map(
  77. (item: AnyObject) => (
  78. (item.summary = item.summary?.replace(/null/g, "") || ""), item
  79. )
  80. );
  81. }
  82. return data;
  83. };
  84. return Post(`/analysisManage/getLastHealRepDetail`, {}, { transform });
  85. }
  86. export function healthIndexMethod() {
  87. const transform = ({ data }: AnyObject) => {
  88. return Array.isArray(data)
  89. ? data.map((item) => ({
  90. ...item,
  91. ...item.patientQuotaRecordDTOS?.slice(-1)[0],
  92. }))
  93. : [];
  94. };
  95. return Post(`/patientQuota/getCurQuoval`, {}, { transform });
  96. }
  97. export function getSolarTerms() {
  98. return Get(`/solarTerm/getCurSolarTerm`, {
  99. transform({ data }) {
  100. return { description: data };
  101. },
  102. });
  103. }
  104. export function getShortScienceList(page = 1, size = 3) {
  105. return Post(
  106. `/psarticle/pagePsarticle?pageNum=${page}&pageSize=${size}`,
  107. void 0,
  108. {
  109. transform({ data }: AnyObject) {
  110. return {
  111. total: data.total,
  112. page: data?.current ?? page,
  113. size: data?.size ?? size,
  114. data: data.data.map(
  115. (item: AnyObject) => (
  116. (item.id = item.popularScienceArticleId), item
  117. )
  118. ),
  119. };
  120. },
  121. }
  122. );
  123. }
  124. // 跳转聊天页面
  125. export function toChats(component: "guide" | "questionnaire") {
  126. const navigate = wx.navigateTo({
  127. url: `/module/chats/pages/index/index?component=${component}`,
  128. });
  129. return navigate;
  130. }
  131. export function getPatientPhone() {
  132. return Post(
  133. `/patientInfoManage/getPatientInfoDetail`,
  134. {},
  135. {
  136. transform({ data }: AnyObject) {
  137. return data;
  138. },
  139. }
  140. );
  141. }
  142. // 获取订单列表
  143. export function getOrderList(patientId: string | number, progress: string | number) {
  144. return Post(
  145. `/patientCrManage/pagePcrs`,
  146. { patientId, status: 0, progress },
  147. {
  148. transform({ data }: AnyObject) {
  149. return data;
  150. },
  151. }
  152. );
  153. }
  154. // 获取各状态调理记录数量
  155. export function getRecordCountMethod() {
  156. return Post(`/patientCrManage/getDiffProgressPcrCount`, {
  157. transform({ data }: AnyObject) {
  158. return data;
  159. },
  160. });
  161. }
  162. // 获取患者线上调理方案打卡记录
  163. export function getPatientOnlineRecord(id: string | number, startDate: string, endDate: string) {
  164. return Get(`/patientCrManage/ponlineCp/${id}`, {
  165. params: { startDate, endDate },
  166. transform({ data }: AnyObject) {
  167. return data;
  168. },
  169. });
  170. }
  171. // 线上调理方案补卡
  172. export function addPatientOnlineRecord(id: string | number) {
  173. return Post(`/patientCrManage/clockIn/repair/${id}`, {}, {
  174. transform({ data }: AnyObject) {
  175. return data;
  176. },
  177. });
  178. }