import-data.js 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238
  1. // const { CloudQuery, CloudObject } = require("../ncloud");
  2. // const { UserList, PlanList, CoachList } = require("./data");
  3. // inportDapartAndDoctor()
  4. // DataMap = {
  5. // fitUser: {},
  6. // fitPlan: {},
  7. // Coach: {}
  8. // }
  9. // async function inportDapartAndDoctor() {
  10. // // 导入科室数据
  11. // let departList = CoachList
  12. // for (let index = 0; index < departList.length; index++) {
  13. // let depart = departList[index];
  14. // depart = await importObject("Coach", depart)
  15. // }
  16. // // 导入医生数据
  17. // // let doctorList = PlanList
  18. // // for (let index = 0; index < doctorList.length; index++) {
  19. // // let doctor = doctorList[index];
  20. // // doctor = await importObject("fitPlan", doctor)
  21. // // }
  22. // // console.log(DataMap["Doctor"])
  23. // }
  24. // async function importObject(className, data) {
  25. // // 查重 srcId 数据源列表中的objectId并非数据库生成的唯一ID,因此需要有一个srcId字段进行记录,并查重
  26. // let query = new CloudQuery(className)
  27. // let srcId = data.objectId
  28. // query.equalTo("srcId", srcId)
  29. // let importObj = await query.first()
  30. // console.log(importObj)
  31. // // 导入
  32. // // 导入前批量处理Pointer类型数据,进行重定向
  33. // Object.keys(data)?.forEach(key => {
  34. // let field = data[key]
  35. // let srcId = field?.objectId
  36. // if (srcId) { // 是数组字段
  37. // if (key == "depart") {
  38. // data[key] = DataMap?.["Department"]?.[srcId]?.toPointer();
  39. // }
  40. // }
  41. // })
  42. // // 若未添加,则创建新对象并保存
  43. // if (!importObj?.id) {
  44. // importObj = new CloudObject(className)
  45. // }
  46. // // 保存或更新数据
  47. // data.srcId = srcId;
  48. // importObj.set(data);
  49. // importObj = await importObj.save();
  50. // DataMap[className][srcId] = importObj
  51. // }
  52. // const { CloudQuery, CloudObject } = require("../ncloud");
  53. // testCRUD()
  54. // testQuery()
  55. // async function testQuery(){
  56. // let query= new CloudQuery("Post")
  57. // // 把用户填写的内容传入对象
  58. // query.equalTo("content","ccc")
  59. // // 对象和数据库内容对比
  60. // let list=await query.find()
  61. // console.log(list);
  62. // }
  63. // async function testCRUD(){
  64. // // 增删查改测试
  65. // let query=new CloudQuery("Post")
  66. // let UserList=await query.find();
  67. // console.log(UserList?.length);
  68. // let newUser=new CloudObject("Post")
  69. // // 把数据传入对象的data
  70. // newUser.set({"content":"8888"});
  71. // // 数据保存到数据库
  72. // newUser= await newUser.save()
  73. // console.log(newUser);
  74. // // 数据库删除操作
  75. // await newUser.destroy()
  76. // console.log("shanchu",newUser);
  77. // }
  78. // // 得到数据
  79. // async function getUser(){
  80. // let response=await fetch("http://dev.fmode.cn:1337/parse/classes/Post?", {
  81. // "headers": {
  82. // "if-none-match": "W/\"ab-2gNtNZqRYX93fdbIaSj6z5h571k\"",
  83. // "x-parse-application-id": "dev"
  84. // },
  85. // "body": null,
  86. // "method": "GET",
  87. // "mode": "cors",
  88. // "credentials": "omit"
  89. // });
  90. // let json=await response?.json();
  91. // // console.log(json);
  92. // return json?.results || []
  93. // }
  94. // async function createUser(userInfo){
  95. // let body=JSON.stringify(userInfo)
  96. // let response=await fetch("http://dev.fmode.cn:1337/parse/classes/Post", {
  97. // "headers": {
  98. // "content-type": "application/json;charset=UTF-8",
  99. // "x-parse-application-id": "dev"
  100. // },
  101. // "body": body,
  102. // "method": "POST",
  103. // "mode": "cors",
  104. // "credentials": "omit"
  105. // });
  106. // let json= await response?.json();
  107. // return json?.objectId
  108. // }
  109. // async function updateUser(id,userInfo) {
  110. // let body=JSON.stringify(userInfo)
  111. // let response=await fetch("http://dev.fmode.cn:1337/parse/classes/Post/"+id, {
  112. // "headers": {
  113. // "content-type": "application/json;charset=UTF-8",
  114. // "x-parse-application-id": "dev"
  115. // },
  116. // "body": body,
  117. // "method": "PUT",
  118. // "mode": "cors",
  119. // "credentials": "omit"
  120. // });
  121. // return await response?.json();
  122. // }
  123. // async function deleteUser(id){
  124. // let response=await fetch("http://dev.fmode.cn:1337/parse/classes/Post/"+id, {
  125. // "headers": {
  126. // "x-parse-application-id": "dev"
  127. // },
  128. // "body": null,
  129. // "method": "DELETE",
  130. // "mode": "cors",
  131. // "credentials": "omit"
  132. // });
  133. // return await response?.json();
  134. // }
  135. const { CloudQuery, CloudObject } = require("../ncloud");
  136. const { User_exer, Post, Like, Comment } = require("./data");
  137. importFourList()
  138. async function importFourList(){
  139. // 导入用户数据
  140. let user=User_exer
  141. for (let index = 0; index < user.length; index++) {
  142. let u = user[index];
  143. u=await importObject("User_exer",u)
  144. }
  145. // 导入动态数据
  146. let post= Post
  147. for (let index = 0; index < post.length; index++) {
  148. let p = post[index];
  149. p=await importObject("Post",p)
  150. }
  151. console.log(map);
  152. // 导入点赞数据
  153. // let like=new Like
  154. // // 导入评论数据
  155. // let comment=new Comment
  156. }
  157. map={
  158. User_exer:{},
  159. Post:{},
  160. Like:{},
  161. Comment:{}
  162. }
  163. async function importObject(ClassName,data)
  164. {
  165. let query=new CloudQuery(ClassName)
  166. // 对象添加了一个属性srcId
  167. let srcId=data.objectId
  168. query.equalTo("srcId",srcId)
  169. let importObj=await query.first()
  170. // 导入
  171. // 若未添加,创建新对象并保存
  172. Object.keys(data)?.forEach(key=>{
  173. let field=data[key]
  174. let srcId=field?.objectId
  175. if(srcId)
  176. {
  177. if(key=="user_id")
  178. {
  179. data[key]=map["User_exer"]?.[srcId]?.toPointer();
  180. }
  181. }
  182. })
  183. if(!importObj?.id)
  184. {
  185. importObj=new CloudObject(ClassName)
  186. }
  187. // 保存或更新数据
  188. data.srcId=srcId;
  189. importObj.set(data)
  190. importObj=await importObj.save()
  191. map[ClassName][srcId]=importObj
  192. }