Delancey 6 ay önce
ebeveyn
işleme
15f5de7bdf

+ 4 - 1
travel-app/angular.json

@@ -126,7 +126,10 @@
     }
   },
   "cli": {
-    "schematicCollections": ["@ionic/angular-toolkit"]
+    "schematicCollections": [
+      "@ionic/angular-toolkit"
+    ],
+    "analytics": "123372fa-785a-478e-aa5e-c0262d6bd338"
   },
   "schematics": {
     "@ionic/angular-toolkit:component": {

+ 3 - 0
travel-app/src/lib/user/modal-user-edit/modal-user-edit.component.html

@@ -0,0 +1,3 @@
+<p>
+  modal-user-edit works!
+</p>

+ 0 - 0
travel-app/src/lib/user/modal-user-edit/modal-user-edit.component.scss


+ 22 - 0
travel-app/src/lib/user/modal-user-edit/modal-user-edit.component.spec.ts

@@ -0,0 +1,22 @@
+import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
+
+import { ModalUserEditComponent } from './modal-user-edit.component';
+
+describe('ModalUserEditComponent', () => {
+  let component: ModalUserEditComponent;
+  let fixture: ComponentFixture<ModalUserEditComponent>;
+
+  beforeEach(waitForAsync(() => {
+    TestBed.configureTestingModule({
+      imports: [ModalUserEditComponent],
+    }).compileComponents();
+
+    fixture = TestBed.createComponent(ModalUserEditComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  }));
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});

+ 15 - 0
travel-app/src/lib/user/modal-user-edit/modal-user-edit.component.ts

@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+  selector: 'app-modal-user-edit',
+  templateUrl: './modal-user-edit.component.html',
+  styleUrls: ['./modal-user-edit.component.scss'],
+  standalone: true,
+})
+export class ModalUserEditComponent  implements OnInit {
+
+  constructor() { }
+
+  ngOnInit() {}
+
+}

+ 3 - 0
travel-app/src/lib/user/modal-user-login/modal-user-login.component.html

@@ -0,0 +1,3 @@
+<p>
+  modal-user-login works!
+</p>

+ 0 - 0
travel-app/src/lib/user/modal-user-login/modal-user-login.component.scss


+ 22 - 0
travel-app/src/lib/user/modal-user-login/modal-user-login.component.spec.ts

@@ -0,0 +1,22 @@
+import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
+
+import { ModalUserLoginComponent } from './modal-user-login.component';
+
+describe('ModalUserLoginComponent', () => {
+  let component: ModalUserLoginComponent;
+  let fixture: ComponentFixture<ModalUserLoginComponent>;
+
+  beforeEach(waitForAsync(() => {
+    TestBed.configureTestingModule({
+      imports: [ModalUserLoginComponent],
+    }).compileComponents();
+
+    fixture = TestBed.createComponent(ModalUserLoginComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  }));
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});

+ 15 - 0
travel-app/src/lib/user/modal-user-login/modal-user-login.component.ts

@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+  selector: 'app-modal-user-login',
+  templateUrl: './modal-user-login.component.html',
+  styleUrls: ['./modal-user-login.component.scss'],
+  standalone: true,
+})
+export class ModalUserLoginComponent  implements OnInit {
+
+  constructor() { }
+
+  ngOnInit() {}
+
+}

+ 11 - 11
travel-server/migration/data.js

@@ -1,28 +1,28 @@
-module.exports.UserList = [
+module.exports.TravelUserList = [
     {
         "objectId": "user1",
         "createdAt": "2024-01-01T10:00:00.000Z",
-        "username": "traveler_01",
-        "email": "traveler01@example.com",
+        "username": "Delancey",
+        "email": "789@example.com",
         "profilePicture": {"__type": "Pointer", "className": "Image", "objectId": "img1"}
     },
     {
         "objectId": "user2",
         "createdAt": "2024-01-02T11:00:00.000Z",
-        "username": "nature_lover",
-        "email": "naturelover@example.com",
+        "username": "John",
+        "email": "456@example.com",
         "profilePicture": {"__type": "Pointer", "className": "Image", "objectId": "img2"}
     },
     {
         "objectId": "user3",
         "createdAt": "2024-01-03T12:00:00.000Z",
-        "username": "foodie_explorer",
-        "email": "foodieexplorer@example.com",
+        "username": "jiang",
+        "email": "123@example.com",
         "profilePicture": {"__type": "Pointer", "className": "Image", "objectId": "img3"}
     }
 ];
 
-module.exports.PostList = [
+module.exports.TravelPostList = [
     {
         "objectId": "post1",
         "createdAt": "2024-01-05T09:00:00.000Z",
@@ -30,7 +30,7 @@ module.exports.PostList = [
         "content": "南昌的米粉真的非常好吃,推荐大家去尝试!",
         "location": {"__type": "GeoPoint", "latitude": 28.682, "longitude": 115.857},
         "privacy": "公开",
-        "user": {"__type": "Pointer", "className": "User", "objectId": "user1"},
+        "user": {"__type": "Pointer", "className": "TravelUser", "objectId": "user1"},
         "tags": [
             {"__type": "Pointer", "className": "Tag", "objectId": "tag1"},
             {"__type": "Pointer", "className": "Tag", "objectId": "tag2"}
@@ -47,7 +47,7 @@ module.exports.PostList = [
         "content": "推荐大家去八一起义纪念馆,了解南昌的历史。",
         "location": {"__type": "GeoPoint", "latitude": 28.678, "longitude": 115.866},
         "privacy": "公开",
-        "user": {"__type": "Pointer", "className": "User", "objectId": "user2"},
+        "user": {"__type": "Pointer", "className": "TravelUser", "objectId": "user2"},
         "tags": [
             {"__type": "Pointer", "className": "Tag", "objectId": "tag3"}
         ],
@@ -62,7 +62,7 @@ module.exports.PostList = [
         "content": "南昌的滕王阁风景如画,适合拍照留念。",
         "location": {"__type": "GeoPoint", "latitude": 28.685, "longitude": 115.892},
         "privacy": "私密",
-        "user": {"__type": "Pointer", "className": "User", "objectId": "user3"},
+        "user": {"__type": "Pointer", "className": "TravelUser", "objectId": "user3"},
         "tags": [
             {"__type": "Pointer", "className": "Tag", "objectId": "tag4"},
             {"__type": "Pointer", "className": "Tag", "objectId": "tag5"}

+ 16 - 15
travel-server/migration/import-data.js

@@ -1,26 +1,27 @@
 const { CloudQuery, CloudObject } = require("../lib/ncloud");
-const { UserList, PostList } = require("./data");
-inportTravelPostAndTravelUser()
+const { TravelUserList, TravelPostList } = require("./data.js");
+importTravelPostAndTravelUser()
 
 DataMap = {
-    User:{},
-    Post:{}
+    TravelUser:{},
+    TravelPost:{}
 }
 
-async function inportTravelPostAndTravelUser(){
+async function importTravelPostAndTravelUser(){
     // 导入用户数据
-    let userList = UserList
-    for (let index = 0; index < userList.length; index++) {
-        let user = userList[index];
-        user = await importObject("User",user)
+    let traveluserList = TravelUserList
+    for (let index = 0; index < traveluserList.length; index++) {
+        let traveluser = traveluserList[index];
+        traveluser = await importObject("TravelUser",traveluser)
     }
+    console.log(DataMap["TravelUser"])
     // 导入帖子数据
-    let postList = PostList
-    for (let index = 0; index < postList.length; index++) {
-        let post = postList[index];
-        post = await importObject("Post",post)
+    let travelpostList = TravelPostList
+    for (let index = 0; index < travelpostList.length; index++) {
+        let travelpost = travelpostList[index];
+        travelpost = await importObject("TravelPost",travelpost)
     }
-    // console.log(DataMap["Post"])
+    console.log(DataMap["TravelPost"])
 }
 
 async function importObject(className,data){
@@ -39,7 +40,7 @@ async function importObject(className,data){
         let srcId = field?.objectId
         if(srcId){ // 是数组字段
             if(key=="user"){
-                data[key] = DataMap?.["User"]?.[srcId]?.toPointer();
+                data[key] = DataMap?.["TravelUser"]?.[srcId]?.toPointer();
             }
         }
     })