19136808282 3 сар өмнө
parent
commit
aa6917455b
51 өөрчлөгдсөн 3279 нэмэгдсэн , 266 устгасан
  1. 148 0
      .history/soul-app/angular_20241221201127.json
  2. 148 0
      .history/soul-app/angular_20241223231307.json
  3. 148 0
      .history/soul-app/angular_20241223231643.json
  4. 69 0
      .history/soul-app/package_20241223220848.json
  5. 69 0
      .history/soul-app/package_20241223225228.json
  6. 69 0
      .history/soul-app/package_20241223225256.json
  7. 69 0
      .history/soul-app/package_20241223225311.json
  8. 69 0
      .history/soul-app/package_20241223225330.json
  9. 69 0
      .history/soul-app/package_20241223225505.json
  10. 69 0
      .history/soul-app/package_20241223225522.json
  11. 69 0
      .history/soul-app/package_20241223225535.json
  12. 69 0
      .history/soul-app/package_20241223225726.json
  13. 69 0
      .history/soul-app/package_20241223225943.json
  14. 69 0
      .history/soul-app/package_20241223230048.json
  15. 69 0
      .history/soul-app/package_20241223230317.json
  16. 66 0
      .history/soul-app/src/app/page-psysurvey/page-psysurvey.component_20241223232115.ts
  17. 66 0
      .history/soul-app/src/app/page-psysurvey/page-psysurvey.component_20241223232614.ts
  18. 67 0
      .history/soul-app/src/app/page-psysurvey/page-psysurvey.component_20241223233228.ts
  19. 67 0
      .history/soul-app/src/app/page-psysurvey/page-psysurvey.component_20241223235522.ts
  20. 67 0
      .history/soul-app/src/app/page-psysurvey/page-psysurvey.component_20241223235734.ts
  21. 36 0
      .history/soul-app/src/app/page-psysurvey/page-psysurvey.component_20241224003203.html
  22. 35 0
      .history/soul-app/src/app/page-psysurvey/page-psysurvey.component_20241224003220.html
  23. 76 0
      .history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223230330.ts
  24. 75 0
      .history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223232332.ts
  25. 75 0
      .history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223232613.ts
  26. 75 0
      .history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223233904.ts
  27. 75 0
      .history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223234415.ts
  28. 65 0
      .history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223234722.html
  29. 65 0
      .history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223234846.html
  30. 65 0
      .history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223234902.html
  31. 75 0
      .history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223235756.ts
  32. 65 0
      .history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241224000226.html
  33. 75 0
      .history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241224000227.ts
  34. 74 0
      .history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241224000825.ts
  35. 74 0
      .history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241224002925.ts
  36. 74 0
      .history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241224002949.ts
  37. 34 0
      .history/soul-app/src/main_20241218212656.ts
  38. 35 0
      .history/soul-app/src/main_20241223235743.ts
  39. 3 0
      .idea/.gitignore
  40. 35 0
      .idea/gradle.xml
  41. 7 0
      .idea/misc.xml
  42. 8 0
      .idea/modules.xml
  43. 6 0
      .idea/vcs.xml
  44. 9 0
      .idea/workspace.iml
  45. 2 2
      soul-app/angular.json
  46. 419 227
      soul-app/package-lock.json
  47. 14 14
      soul-app/package.json
  48. 6 7
      soul-app/src/app/page-psysurvey/page-psysurvey.component.ts
  49. 2 0
      soul-app/src/app/page-publishsurvey/page-publishsurvey.component.html
  50. 14 16
      soul-app/src/app/page-publishsurvey/page-publishsurvey.component.ts
  51. 1 0
      soul-app/src/main.ts

+ 148 - 0
.history/soul-app/angular_20241221201127.json

@@ -0,0 +1,148 @@
+{
+  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
+  "version": 1,
+  "newProjectRoot": "projects",
+  "projects": {
+    "app": {
+      "projectType": "application",
+      "schematics": {
+        "@ionic/angular-toolkit:page": {
+          "styleext": "scss",
+          "standalone": true
+        }
+      },
+      "root": "",
+      "sourceRoot": "src",
+      "prefix": "app",
+      "architect": {
+        "build": {
+          "builder": "@angular-devkit/build-angular:browser",
+          "options": {
+            "outputPath": "www",
+            "index": "src/index.html",
+            "main": "src/main.ts",
+            "polyfills": "src/polyfills.ts",
+            "tsConfig": "tsconfig.app.json",
+            "inlineStyleLanguage": "scss",
+            "assets": [
+              {
+                "glob": "**/*",
+                "input": "src/assets",
+                "output": "assets",
+              }
+            ],
+            "styles": ["src/global.scss", "src/theme/variables.scss"],
+            "scripts": []
+          },
+          "configurations": {
+            "production": {
+              "budgets": [
+                {
+                  "type": "initial",
+                  "maximumWarning": "2mb",
+                  "maximumError": "5mb"
+                },
+                {
+                  "type": "anyComponentStyle",
+                  "maximumWarning": "2kb",
+                  "maximumError": "4kb"
+                }
+              ],
+              "fileReplacements": [
+                {
+                  "replace": "src/environments/environment.ts",
+                  "with": "src/environments/environment.prod.ts"
+                }
+              ],
+              "outputHashing": "all"
+            },
+            "development": {
+              "buildOptimizer": false,
+              "optimization": false,
+              "vendorChunk": true,
+              "extractLicenses": false,
+              "sourceMap": true,
+              "namedChunks": true
+            },
+            "ci": {
+              "progress": false
+            }
+          },
+          "defaultConfiguration": "production"
+        },
+        "serve": {
+          "builder": "@angular-devkit/build-angular:dev-server",
+          "configurations": {
+            "production": {
+              "buildTarget": "app:build:production"
+            },
+            "development": {
+              "buildTarget": "app:build:development"
+            },
+            "ci": {
+              "progress": false
+            }
+          },
+          "defaultConfiguration": "development"
+        },
+        "extract-i18n": {
+          "builder": "@angular-devkit/build-angular:extract-i18n",
+          "options": {
+            "buildTarget": "app:build"
+          }
+        },
+        "test": {
+          "builder": "@angular-devkit/build-angular:karma",
+          "options": {
+            "main": "src/test.ts",
+            "polyfills": "src/polyfills.ts",
+            "tsConfig": "tsconfig.spec.json",
+            "karmaConfig": "karma.conf.js",
+            "inlineStyleLanguage": "scss",
+            "assets": [
+              {
+                "glob": "**/*",
+                "input": "src/assets",
+                "output": "assets"
+              }
+            ],
+            "styles": ["src/global.scss", "src/theme/variables.scss"],
+            "scripts": []
+          },
+          "configurations": {
+            "ci": {
+              "progress": false,
+              "watch": false
+            }
+          }
+        },
+        "lint": {
+          "builder": "@angular-eslint/builder:lint",
+          "options": {
+            "lintFilePatterns": ["src/**/*.ts", "src/**/*.html"]
+          }
+        }
+      }
+    }
+  },
+  "cli": {
+    "schematicCollections": [
+      "@ionic/angular-toolkit"
+    ],
+    "analytics": false
+  },
+  "schematics": {
+    "@ionic/angular-toolkit:component": {
+      "styleext": "scss"
+    },
+    "@ionic/angular-toolkit:page": {
+      "styleext": "scss"
+    },
+    "@angular-eslint/schematics:application": {
+      "setParserOptionsProject": true
+    },
+    "@angular-eslint/schematics:library": {
+      "setParserOptionsProject": true
+    }
+  }
+}

+ 148 - 0
.history/soul-app/angular_20241223231307.json

@@ -0,0 +1,148 @@
+{
+  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
+  "version": 1,
+  "newProjectRoot": "projects",
+  "projects": {
+    "app": {
+      "projectType": "application",
+      "schematics": {
+        "@ionic/angular-toolkit:page": {
+          "styleext": "scss",
+          "standalone": true
+        }
+      },
+      "root": "",
+      "sourceRoot": "src",
+      "prefix": "app",
+      "architect": {
+        "build": {
+          "builder": "@angular-devkit/build-angular:browser",
+          "options": {
+            "outputPath": "www",
+            "index": "src/index.html",
+            "main": "src/main.ts",
+            "polyfills": "src/polyfills.ts",
+            "tsConfig": "tsconfig.app.json",
+            "inlineStyleLanguage": "scss",
+            "assets": [
+              {
+                "glob": "**/*",
+                "input": "src/assets",
+                "output": "assets"
+              }
+            ],
+            "styles": ["src/global.scss", "src/theme/variables.scss"],
+            "scripts": []
+          },
+          "configurations": {
+            "production": {
+              "budgets": [
+                {
+                  "type": "initial",
+                  "maximumWarning": "2mb",
+                  "maximumError": "5mb"
+                },
+                {
+                  "type": "anyComponentStyle",
+                  "maximumWarning": "2kb",
+                  "maximumError": "4kb"
+                }
+              ],
+              "fileReplacements": [
+                {
+                  "replace": "src/environments/environment.ts",
+                  "with": "src/environments/environment.prod.ts"
+                }
+              ],
+              "outputHashing": "all"
+            },
+            "development": {
+              "buildOptimizer": false,
+              "optimization": false,
+              "vendorChunk": true,
+              "extractLicenses": false,
+              "sourceMap": true,
+              "namedChunks": true
+            },
+            "ci": {
+              "progress": false
+            }
+          },
+          "defaultConfiguration": "production"
+        },
+        "serve": {
+          "builder": "@angular-devkit/build-angular:dev-server",
+          "configurations": {
+            "production": {
+              "buildTarget": "app:build:production"
+            },
+            "development": {
+              "buildTarget": "app:build:development"
+            },
+            "ci": {
+              "progress": false
+            }
+          },
+          "defaultConfiguration": "development"
+        },
+        "extract-i18n": {
+          "builder": "@angular-devkit/build-angular:extract-i18n",
+          "options": {
+            "buildTarget": "app:build"
+          }
+        },
+        "test": {
+          "builder": "@angular-devkit/build-angular:karma",
+          "options": {
+            "main": "src/test.ts",
+            "polyfills": "src/polyfills.ts",
+            "tsConfig": "tsconfig.spec.json",
+            "karmaConfig": "karma.conf.js",
+            "inlineStyleLanguage": "scss",
+            "assets": [
+              {
+                "glob": "**/*",
+                "input": "src/assets",
+                "output": "assets"
+              }
+            ],
+            "styles": ["src/global.scss", "src/theme/variables.scss"],
+            "scripts": []
+          },
+          "configurations": {
+            "ci": {
+              "progress": false,
+              "watch": false
+            }
+          }
+        },
+        "lint": {
+          "builder": "@angular-eslint/builder:lint",
+          "options": {
+            "lintFilePatterns": ["src/**/*.ts", "src/**/*.html"]
+          }
+        }
+      }
+    }
+  },
+  "cli": {
+    "schematicCollections": [
+      "@ionic/angular-toolkit"
+    ],
+    "analytics": false
+  },
+  "schematics": {
+    "@ionic/angular-toolkit:component": {
+      "styleext": "scss"
+    },
+    "@ionic/angular-toolkit:page": {
+      "styleext": "scss"
+    },
+    "@angular-eslint/schematics:application": {
+      "setParserOptionsProject": true
+    },
+    "@angular-eslint/schematics:library": {
+      "setParserOptionsProject": true
+    }
+  }
+}

+ 148 - 0
.history/soul-app/angular_20241223231643.json

@@ -0,0 +1,148 @@
+{
+  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
+  "version": 1,
+  "newProjectRoot": "projects",
+  "projects": {
+    "app": {
+      "projectType": "application",
+      "schematics": {
+        "@ionic/angular-toolkit:page": {
+          "styleext": "scss",
+          "standalone": true
+        }
+      },
+      "root": "",
+      "sourceRoot": "src",
+      "prefix": "app",
+      "architect": {
+        "build": {
+          "builder": "@angular-devkit/build-angular:browser",
+          "options": {
+            "outputPath": "www",
+            "index": "src/index.html",
+            "main": "src/main.ts",
+            "polyfills": "src/polyfills.ts",
+            "tsConfig": "tsconfig.app.json",
+            "inlineStyleLanguage": "scss",
+            "assets": [
+              {
+                "glob": "**/*",
+                "input": "src/assets",
+                "output": "assets"
+              }
+            ],
+            "styles": ["src/global.scss", "src/theme/variables.scss"],
+            "scripts": []
+          },
+          "configurations": {
+            "production": {
+              "budgets": [
+                {
+                  "type": "initial",
+                  "maximumWarning": "2mb",
+                  "maximumError": "5mb"
+                },
+                {
+                  "type": "anyComponentStyle",
+                  "maximumWarning": "2kb",
+                  "maximumError": "4kb"
+                }
+              ],
+              "fileReplacements": [
+                {
+                  "replace": "src/environments/environment.ts",
+                  "with": "src/environments/environment.prod.ts"
+                }
+              ],
+              "outputHashing": "all"
+            },
+            "development": {
+              "buildOptimizer": false,
+              "optimization": false,
+              "vendorChunk": true,
+              "extractLicenses": false,
+              "sourceMap": true,
+              "namedChunks": true
+            },
+            "ci": {
+              "progress": false
+            }
+          },
+          "defaultConfiguration": "production"
+        },
+        "serve": {
+          "builder": "@angular-devkit/build-angular:dev-server",
+          "configurations": {
+            "production": {
+              "buildTarget": "app:build:production"
+            },
+            "development": {
+              "buildTarget": "app:build:development"
+            },
+            "ci": {
+              
+            }
+          },
+          "defaultConfiguration": "development"
+        },
+        "extract-i18n": {
+          "builder": "@angular-devkit/build-angular:extract-i18n",
+          "options": {
+            "buildTarget": "app:build"
+          }
+        },
+        "test": {
+          "builder": "@angular-devkit/build-angular:karma",
+          "options": {
+            "main": "src/test.ts",
+            "polyfills": "src/polyfills.ts",
+            "tsConfig": "tsconfig.spec.json",
+            "karmaConfig": "karma.conf.js",
+            "inlineStyleLanguage": "scss",
+            "assets": [
+              {
+                "glob": "**/*",
+                "input": "src/assets",
+                "output": "assets"
+              }
+            ],
+            "styles": ["src/global.scss", "src/theme/variables.scss"],
+            "scripts": []
+          },
+          "configurations": {
+            "ci": {
+              "progress": false,
+              "watch": false
+            }
+          }
+        },
+        "lint": {
+          "builder": "@angular-eslint/builder:lint",
+          "options": {
+            "lintFilePatterns": ["src/**/*.ts", "src/**/*.html"]
+          }
+        }
+      }
+    }
+  },
+  "cli": {
+    "schematicCollections": [
+      "@ionic/angular-toolkit"
+    ],
+    "analytics": false
+  },
+  "schematics": {
+    "@ionic/angular-toolkit:component": {
+      "styleext": "scss"
+    },
+    "@ionic/angular-toolkit:page": {
+      "styleext": "scss"
+    },
+    "@angular-eslint/schematics:application": {
+      "setParserOptionsProject": true
+    },
+    "@angular-eslint/schematics:library": {
+      "setParserOptionsProject": true
+    }
+  }
+}

+ 69 - 0
.history/soul-app/package_20241223220848.json

@@ -0,0 +1,69 @@
+{
+  "name": "soul-app",
+  "version": "0.0.1",
+  "author": "Ionic Framework",
+  "homepage": "https://ionicframework.com/",
+  "scripts": {
+    "ng": "ng",
+    "start": "ng serve",
+    "build": "ng build",
+    "watch": "ng build --watch --configuration development",
+    "test": "ng test",
+    "lint": "ng lint"
+  },
+  "private": true,
+  "dependencies": {
+    "@angular/animations": "^19.0.5",
+    "@angular/common": "^19.0.5",
+    "@angular/compiler": "^19.0.5",
+    "@angular/core": "^19.0.5",
+    "@angular/forms": "^19.0.5",
+    "@angular/platform-browser": "^19.0.5",
+    "@angular/platform-browser-dynamic": "^19.0.5",
+    "@angular/router": "^19.0.5",
+    "@capacitor/app": "6.0.2",
+    "@capacitor/core": "6.2.0",
+    "@capacitor/haptics": "6.0.2",
+    "@capacitor/keyboard": "6.0.3",
+    "@capacitor/status-bar": "6.0.2",
+    "@ionic/angular": "^8.0.0",
+    "@tensorflow-models/universal-sentence-encoder": "^1.3.3",
+    "@tensorflow/tfjs-backend-cpu": "^4.22.0",
+    "@tensorflow/tfjs-converter": "^4.22.0",
+    "@tensorflow/tfjs-core": "^4.22.0",
+    "fmode-ng": "^0.0.63",
+    "ionicons": "^7.2.1",
+    "rxjs": "~7.8.0",
+    "tslib": "^2.3.0",
+    "zone.js": "~0.15.0"
+  },
+  "devDependencies": {
+    "@angular-devkit/build-angular": "^19.0.6",
+    "@angular-eslint/builder": "^18.0.0",
+    "@angular-eslint/eslint-plugin": "^18.0.0",
+    "@angular-eslint/eslint-plugin-template": "^18.0.0",
+    "@angular-eslint/schematics": "^18.0.0",
+    "@angular-eslint/template-parser": "^18.0.0",
+    "@angular/cli": "^19.0.6",
+    "@angular/compiler-cli": "^19.0.5",
+    "@angular/language-service": "^19.0.5",
+    "@capacitor/cli": "6.2.0",
+    "@ionic/angular-toolkit": "^11.0.1",
+    "@types/jasmine": "~5.1.0",
+    "@typescript-eslint/eslint-plugin": "^6.0.0",
+    "@typescript-eslint/parser": "^6.0.0",
+    "eslint": "^8.57.0",
+    "eslint-plugin-import": "^2.29.1",
+    "eslint-plugin-jsdoc": "^48.2.1",
+    "eslint-plugin-prefer-arrow": "1.2.2",
+    "jasmine-core": "~5.1.0",
+    "jasmine-spec-reporter": "~5.0.0",
+    "karma": "~6.4.0",
+    "karma-chrome-launcher": "~3.2.0",
+    "karma-coverage": "~2.2.0",
+    "karma-jasmine": "~5.1.0",
+    "karma-jasmine-html-reporter": "~2.1.0",
+    "typescript": "~5.6.3"
+  },
+  "description": "An Ionic project"
+}

+ 69 - 0
.history/soul-app/package_20241223225228.json

@@ -0,0 +1,69 @@
+{
+  "name": "soul-app",
+  "version": "0.0.1",
+  "author": "Ionic Framework",
+  "homepage": "https://ionicframework.com/",
+  "scripts": {
+    "ng": "ng",
+    "start": "ng serve",
+    "build": "ng build",
+    "watch": "ng build --watch --configuration development",
+    "test": "ng test",
+    "lint": "ng lint"
+  },
+  "private": true,
+  "dependencies": {
+    "@angular/animations": "^19.0.5",
+    "@angular/common": "^19.0.5",
+    "@angular/compiler": "^19.0.5",
+    "@angular/core": "^19.0.5",
+    "@angular/forms": "^18.0.5",
+    "@angular/platform-browser": "^19.0.5",
+    "@angular/platform-browser-dynamic": "^19.0.5",
+    "@angular/router": "^19.0.5",
+    "@capacitor/app": "6.0.2",
+    "@capacitor/core": "6.2.0",
+    "@capacitor/haptics": "6.0.2",
+    "@capacitor/keyboard": "6.0.3",
+    "@capacitor/status-bar": "6.0.2",
+    "@ionic/angular": "^8.0.0",
+    "@tensorflow-models/universal-sentence-encoder": "^1.3.3",
+    "@tensorflow/tfjs-backend-cpu": "^4.22.0",
+    "@tensorflow/tfjs-converter": "^4.22.0",
+    "@tensorflow/tfjs-core": "^4.22.0",
+    "fmode-ng": "^0.0.63",
+    "ionicons": "^7.2.1",
+    "rxjs": "~7.8.0",
+    "tslib": "^2.3.0",
+    "zone.js": "~0.15.0"
+  },
+  "devDependencies": {
+    "@angular-devkit/build-angular": "^19.0.6",
+    "@angular-eslint/builder": "^18.0.0",
+    "@angular-eslint/eslint-plugin": "^18.0.0",
+    "@angular-eslint/eslint-plugin-template": "^18.0.0",
+    "@angular-eslint/schematics": "^18.0.0",
+    "@angular-eslint/template-parser": "^18.0.0",
+    "@angular/cli": "^19.0.6",
+    "@angular/compiler-cli": "^19.0.5",
+    "@angular/language-service": "^19.0.5",
+    "@capacitor/cli": "6.2.0",
+    "@ionic/angular-toolkit": "^11.0.1",
+    "@types/jasmine": "~5.1.0",
+    "@typescript-eslint/eslint-plugin": "^6.0.0",
+    "@typescript-eslint/parser": "^6.0.0",
+    "eslint": "^8.57.0",
+    "eslint-plugin-import": "^2.29.1",
+    "eslint-plugin-jsdoc": "^48.2.1",
+    "eslint-plugin-prefer-arrow": "1.2.2",
+    "jasmine-core": "~5.1.0",
+    "jasmine-spec-reporter": "~5.0.0",
+    "karma": "~6.4.0",
+    "karma-chrome-launcher": "~3.2.0",
+    "karma-coverage": "~2.2.0",
+    "karma-jasmine": "~5.1.0",
+    "karma-jasmine-html-reporter": "~2.1.0",
+    "typescript": "~5.6.3"
+  },
+  "description": "An Ionic project"
+}

+ 69 - 0
.history/soul-app/package_20241223225256.json

@@ -0,0 +1,69 @@
+{
+  "name": "soul-app",
+  "version": "0.0.1",
+  "author": "Ionic Framework",
+  "homepage": "https://ionicframework.com/",
+  "scripts": {
+    "ng": "ng",
+    "start": "ng serve",
+    "build": "ng build",
+    "watch": "ng build --watch --configuration development",
+    "test": "ng test",
+    "lint": "ng lint"
+  },
+  "private": true,
+  "dependencies": {
+    "@angular/animations": "^19.0.5",
+    "@angular/common": "^19.0.5",
+    "@angular/compiler": "^19.0.5",
+    "@angular/core": "^19.0.5",
+    "@angular/forms": "^18.0.0",
+    "@angular/platform-browser": "^19.0.5",
+    "@angular/platform-browser-dynamic": "^19.0.5",
+    "@angular/router": "^19.0.5",
+    "@capacitor/app": "6.0.2",
+    "@capacitor/core": "6.2.0",
+    "@capacitor/haptics": "6.0.2",
+    "@capacitor/keyboard": "6.0.3",
+    "@capacitor/status-bar": "6.0.2",
+    "@ionic/angular": "^8.0.0",
+    "@tensorflow-models/universal-sentence-encoder": "^1.3.3",
+    "@tensorflow/tfjs-backend-cpu": "^4.22.0",
+    "@tensorflow/tfjs-converter": "^4.22.0",
+    "@tensorflow/tfjs-core": "^4.22.0",
+    "fmode-ng": "^0.0.63",
+    "ionicons": "^7.2.1",
+    "rxjs": "~7.8.0",
+    "tslib": "^2.3.0",
+    "zone.js": "~0.15.0"
+  },
+  "devDependencies": {
+    "@angular-devkit/build-angular": "^19.0.6",
+    "@angular-eslint/builder": "^18.0.0",
+    "@angular-eslint/eslint-plugin": "^18.0.0",
+    "@angular-eslint/eslint-plugin-template": "^18.0.0",
+    "@angular-eslint/schematics": "^18.0.0",
+    "@angular-eslint/template-parser": "^18.0.0",
+    "@angular/cli": "^19.0.6",
+    "@angular/compiler-cli": "^19.0.5",
+    "@angular/language-service": "^19.0.5",
+    "@capacitor/cli": "6.2.0",
+    "@ionic/angular-toolkit": "^11.0.1",
+    "@types/jasmine": "~5.1.0",
+    "@typescript-eslint/eslint-plugin": "^6.0.0",
+    "@typescript-eslint/parser": "^6.0.0",
+    "eslint": "^8.57.0",
+    "eslint-plugin-import": "^2.29.1",
+    "eslint-plugin-jsdoc": "^48.2.1",
+    "eslint-plugin-prefer-arrow": "1.2.2",
+    "jasmine-core": "~5.1.0",
+    "jasmine-spec-reporter": "~5.0.0",
+    "karma": "~6.4.0",
+    "karma-chrome-launcher": "~3.2.0",
+    "karma-coverage": "~2.2.0",
+    "karma-jasmine": "~5.1.0",
+    "karma-jasmine-html-reporter": "~2.1.0",
+    "typescript": "~5.6.3"
+  },
+  "description": "An Ionic project"
+}

+ 69 - 0
.history/soul-app/package_20241223225311.json

@@ -0,0 +1,69 @@
+{
+  "name": "soul-app",
+  "version": "0.0.1",
+  "author": "Ionic Framework",
+  "homepage": "https://ionicframework.com/",
+  "scripts": {
+    "ng": "ng",
+    "start": "ng serve",
+    "build": "ng build",
+    "watch": "ng build --watch --configuration development",
+    "test": "ng test",
+    "lint": "ng lint"
+  },
+  "private": true,
+  "dependencies": {
+    "@angular/animations": "^19.0.5",
+    "@angular/common": "^19.0.5",
+    "@angular/compiler": "^19.0.5",
+    "@angular/core": "^19.0.5",
+    "@angular/forms": "^18.0.5",
+    "@angular/platform-browser": "^19.0.5",
+    "@angular/platform-browser-dynamic": "^19.0.5",
+    "@angular/router": "^19.0.5",
+    "@capacitor/app": "6.0.2",
+    "@capacitor/core": "6.2.0",
+    "@capacitor/haptics": "6.0.2",
+    "@capacitor/keyboard": "6.0.3",
+    "@capacitor/status-bar": "6.0.2",
+    "@ionic/angular": "^8.0.0",
+    "@tensorflow-models/universal-sentence-encoder": "^1.3.3",
+    "@tensorflow/tfjs-backend-cpu": "^4.22.0",
+    "@tensorflow/tfjs-converter": "^4.22.0",
+    "@tensorflow/tfjs-core": "^4.22.0",
+    "fmode-ng": "^0.0.63",
+    "ionicons": "^7.2.1",
+    "rxjs": "~7.8.0",
+    "tslib": "^2.3.0",
+    "zone.js": "~0.15.0"
+  },
+  "devDependencies": {
+    "@angular-devkit/build-angular": "^19.0.6",
+    "@angular-eslint/builder": "^18.0.0",
+    "@angular-eslint/eslint-plugin": "^18.0.0",
+    "@angular-eslint/eslint-plugin-template": "^18.0.0",
+    "@angular-eslint/schematics": "^18.0.0",
+    "@angular-eslint/template-parser": "^18.0.0",
+    "@angular/cli": "^19.0.6",
+    "@angular/compiler-cli": "^19.0.5",
+    "@angular/language-service": "^19.0.5",
+    "@capacitor/cli": "6.2.0",
+    "@ionic/angular-toolkit": "^11.0.1",
+    "@types/jasmine": "~5.1.0",
+    "@typescript-eslint/eslint-plugin": "^6.0.0",
+    "@typescript-eslint/parser": "^6.0.0",
+    "eslint": "^8.57.0",
+    "eslint-plugin-import": "^2.29.1",
+    "eslint-plugin-jsdoc": "^48.2.1",
+    "eslint-plugin-prefer-arrow": "1.2.2",
+    "jasmine-core": "~5.1.0",
+    "jasmine-spec-reporter": "~5.0.0",
+    "karma": "~6.4.0",
+    "karma-chrome-launcher": "~3.2.0",
+    "karma-coverage": "~2.2.0",
+    "karma-jasmine": "~5.1.0",
+    "karma-jasmine-html-reporter": "~2.1.0",
+    "typescript": "~5.6.3"
+  },
+  "description": "An Ionic project"
+}

+ 69 - 0
.history/soul-app/package_20241223225330.json

@@ -0,0 +1,69 @@
+{
+  "name": "soul-app",
+  "version": "0.0.1",
+  "author": "Ionic Framework",
+  "homepage": "https://ionicframework.com/",
+  "scripts": {
+    "ng": "ng",
+    "start": "ng serve",
+    "build": "ng build",
+    "watch": "ng build --watch --configuration development",
+    "test": "ng test",
+    "lint": "ng lint"
+  },
+  "private": true,
+  "dependencies": {
+    "@angular/animations": "^19.0.5",
+    "@angular/common": "^19.0.5",
+    "@angular/compiler": "^19.0.5",
+    "@angular/core": "^19.0.5",
+    "@angular/forms": "^18.2.13",
+    "@angular/platform-browser": "^19.0.5",
+    "@angular/platform-browser-dynamic": "^19.0.5",
+    "@angular/router": "^19.0.5",
+    "@capacitor/app": "6.0.2",
+    "@capacitor/core": "6.2.0",
+    "@capacitor/haptics": "6.0.2",
+    "@capacitor/keyboard": "6.0.3",
+    "@capacitor/status-bar": "6.0.2",
+    "@ionic/angular": "^8.0.0",
+    "@tensorflow-models/universal-sentence-encoder": "^1.3.3",
+    "@tensorflow/tfjs-backend-cpu": "^4.22.0",
+    "@tensorflow/tfjs-converter": "^4.22.0",
+    "@tensorflow/tfjs-core": "^4.22.0",
+    "fmode-ng": "^0.0.63",
+    "ionicons": "^7.2.1",
+    "rxjs": "~7.8.0",
+    "tslib": "^2.3.0",
+    "zone.js": "~0.15.0"
+  },
+  "devDependencies": {
+    "@angular-devkit/build-angular": "^19.0.6",
+    "@angular-eslint/builder": "^18.0.0",
+    "@angular-eslint/eslint-plugin": "^18.0.0",
+    "@angular-eslint/eslint-plugin-template": "^18.0.0",
+    "@angular-eslint/schematics": "^18.0.0",
+    "@angular-eslint/template-parser": "^18.0.0",
+    "@angular/cli": "^19.0.6",
+    "@angular/compiler-cli": "^19.0.5",
+    "@angular/language-service": "^19.0.5",
+    "@capacitor/cli": "6.2.0",
+    "@ionic/angular-toolkit": "^11.0.1",
+    "@types/jasmine": "~5.1.0",
+    "@typescript-eslint/eslint-plugin": "^6.0.0",
+    "@typescript-eslint/parser": "^6.0.0",
+    "eslint": "^8.57.0",
+    "eslint-plugin-import": "^2.29.1",
+    "eslint-plugin-jsdoc": "^48.2.1",
+    "eslint-plugin-prefer-arrow": "1.2.2",
+    "jasmine-core": "~5.1.0",
+    "jasmine-spec-reporter": "~5.0.0",
+    "karma": "~6.4.0",
+    "karma-chrome-launcher": "~3.2.0",
+    "karma-coverage": "~2.2.0",
+    "karma-jasmine": "~5.1.0",
+    "karma-jasmine-html-reporter": "~2.1.0",
+    "typescript": "~5.6.3"
+  },
+  "description": "An Ionic project"
+}

+ 69 - 0
.history/soul-app/package_20241223225505.json

@@ -0,0 +1,69 @@
+{
+  "name": "soul-app",
+  "version": "0.0.1",
+  "author": "Ionic Framework",
+  "homepage": "https://ionicframework.com/",
+  "scripts": {
+    "ng": "ng",
+    "start": "ng serve",
+    "build": "ng build",
+    "watch": "ng build --watch --configuration development",
+    "test": "ng test",
+    "lint": "ng lint"
+  },
+  "private": true,
+  "dependencies": {
+    "@angular/animations": "^19.0.5",
+    "@angular/common": "^19.0.5",
+    "@angular/compiler": "^19.0.5",
+    "@angular/core": "^19.0.5",
+    "@angular/forms": "^19.0.0",
+    "@angular/platform-browser": "^19.0.5",
+    "@angular/platform-browser-dynamic": "^19.0.5",
+    "@angular/router": "^19.0.5",
+    "@capacitor/app": "6.0.2",
+    "@capacitor/core": "6.2.0",
+    "@capacitor/haptics": "6.0.2",
+    "@capacitor/keyboard": "6.0.3",
+    "@capacitor/status-bar": "6.0.2",
+    "@ionic/angular": "^8.0.0",
+    "@tensorflow-models/universal-sentence-encoder": "^1.3.3",
+    "@tensorflow/tfjs-backend-cpu": "^4.22.0",
+    "@tensorflow/tfjs-converter": "^4.22.0",
+    "@tensorflow/tfjs-core": "^4.22.0",
+    "fmode-ng": "^0.0.63",
+    "ionicons": "^7.2.1",
+    "rxjs": "~7.8.0",
+    "tslib": "^2.3.0",
+    "zone.js": "~0.15.0"
+  },
+  "devDependencies": {
+    "@angular-devkit/build-angular": "^19.0.6",
+    "@angular-eslint/builder": "^18.0.0",
+    "@angular-eslint/eslint-plugin": "^18.0.0",
+    "@angular-eslint/eslint-plugin-template": "^18.0.0",
+    "@angular-eslint/schematics": "^18.0.0",
+    "@angular-eslint/template-parser": "^18.0.0",
+    "@angular/cli": "^19.0.6",
+    "@angular/compiler-cli": "^19.0.5",
+    "@angular/language-service": "^19.0.5",
+    "@capacitor/cli": "6.2.0",
+    "@ionic/angular-toolkit": "^11.0.1",
+    "@types/jasmine": "~5.1.0",
+    "@typescript-eslint/eslint-plugin": "^6.0.0",
+    "@typescript-eslint/parser": "^6.0.0",
+    "eslint": "^8.57.0",
+    "eslint-plugin-import": "^2.29.1",
+    "eslint-plugin-jsdoc": "^48.2.1",
+    "eslint-plugin-prefer-arrow": "1.2.2",
+    "jasmine-core": "~5.1.0",
+    "jasmine-spec-reporter": "~5.0.0",
+    "karma": "~6.4.0",
+    "karma-chrome-launcher": "~3.2.0",
+    "karma-coverage": "~2.2.0",
+    "karma-jasmine": "~5.1.0",
+    "karma-jasmine-html-reporter": "~2.1.0",
+    "typescript": "~5.6.3"
+  },
+  "description": "An Ionic project"
+}

+ 69 - 0
.history/soul-app/package_20241223225522.json

@@ -0,0 +1,69 @@
+{
+  "name": "soul-app",
+  "version": "0.0.1",
+  "author": "Ionic Framework",
+  "homepage": "https://ionicframework.com/",
+  "scripts": {
+    "ng": "ng",
+    "start": "ng serve",
+    "build": "ng build",
+    "watch": "ng build --watch --configuration development",
+    "test": "ng test",
+    "lint": "ng lint"
+  },
+  "private": true,
+  "dependencies": {
+    "@angular/animations": "^19.0.5",
+    "@angular/common": "^19.0.5",
+    "@angular/compiler": "^19.0.5",
+    "@angular/core": "^19.0.5",
+    "@angular/forms": "^20.0.0",
+    "@angular/platform-browser": "^19.0.5",
+    "@angular/platform-browser-dynamic": "^19.0.5",
+    "@angular/router": "^19.0.5",
+    "@capacitor/app": "6.0.2",
+    "@capacitor/core": "6.2.0",
+    "@capacitor/haptics": "6.0.2",
+    "@capacitor/keyboard": "6.0.3",
+    "@capacitor/status-bar": "6.0.2",
+    "@ionic/angular": "^8.0.0",
+    "@tensorflow-models/universal-sentence-encoder": "^1.3.3",
+    "@tensorflow/tfjs-backend-cpu": "^4.22.0",
+    "@tensorflow/tfjs-converter": "^4.22.0",
+    "@tensorflow/tfjs-core": "^4.22.0",
+    "fmode-ng": "^0.0.63",
+    "ionicons": "^7.2.1",
+    "rxjs": "~7.8.0",
+    "tslib": "^2.3.0",
+    "zone.js": "~0.15.0"
+  },
+  "devDependencies": {
+    "@angular-devkit/build-angular": "^19.0.6",
+    "@angular-eslint/builder": "^18.0.0",
+    "@angular-eslint/eslint-plugin": "^18.0.0",
+    "@angular-eslint/eslint-plugin-template": "^18.0.0",
+    "@angular-eslint/schematics": "^18.0.0",
+    "@angular-eslint/template-parser": "^18.0.0",
+    "@angular/cli": "^19.0.6",
+    "@angular/compiler-cli": "^19.0.5",
+    "@angular/language-service": "^19.0.5",
+    "@capacitor/cli": "6.2.0",
+    "@ionic/angular-toolkit": "^11.0.1",
+    "@types/jasmine": "~5.1.0",
+    "@typescript-eslint/eslint-plugin": "^6.0.0",
+    "@typescript-eslint/parser": "^6.0.0",
+    "eslint": "^8.57.0",
+    "eslint-plugin-import": "^2.29.1",
+    "eslint-plugin-jsdoc": "^48.2.1",
+    "eslint-plugin-prefer-arrow": "1.2.2",
+    "jasmine-core": "~5.1.0",
+    "jasmine-spec-reporter": "~5.0.0",
+    "karma": "~6.4.0",
+    "karma-chrome-launcher": "~3.2.0",
+    "karma-coverage": "~2.2.0",
+    "karma-jasmine": "~5.1.0",
+    "karma-jasmine-html-reporter": "~2.1.0",
+    "typescript": "~5.6.3"
+  },
+  "description": "An Ionic project"
+}

+ 69 - 0
.history/soul-app/package_20241223225535.json

@@ -0,0 +1,69 @@
+{
+  "name": "soul-app",
+  "version": "0.0.1",
+  "author": "Ionic Framework",
+  "homepage": "https://ionicframework.com/",
+  "scripts": {
+    "ng": "ng",
+    "start": "ng serve",
+    "build": "ng build",
+    "watch": "ng build --watch --configuration development",
+    "test": "ng test",
+    "lint": "ng lint"
+  },
+  "private": true,
+  "dependencies": {
+    "@angular/animations": "^19.0.5",
+    "@angular/common": "^19.0.5",
+    "@angular/compiler": "^19.0.5",
+    "@angular/core": "^19.0.5",
+    "@angular/forms": "^19.0.5",
+    "@angular/platform-browser": "^19.0.5",
+    "@angular/platform-browser-dynamic": "^19.0.5",
+    "@angular/router": "^19.0.5",
+    "@capacitor/app": "6.0.2",
+    "@capacitor/core": "6.2.0",
+    "@capacitor/haptics": "6.0.2",
+    "@capacitor/keyboard": "6.0.3",
+    "@capacitor/status-bar": "6.0.2",
+    "@ionic/angular": "^8.0.0",
+    "@tensorflow-models/universal-sentence-encoder": "^1.3.3",
+    "@tensorflow/tfjs-backend-cpu": "^4.22.0",
+    "@tensorflow/tfjs-converter": "^4.22.0",
+    "@tensorflow/tfjs-core": "^4.22.0",
+    "fmode-ng": "^0.0.63",
+    "ionicons": "^7.2.1",
+    "rxjs": "~7.8.0",
+    "tslib": "^2.3.0",
+    "zone.js": "~0.15.0"
+  },
+  "devDependencies": {
+    "@angular-devkit/build-angular": "^19.0.6",
+    "@angular-eslint/builder": "^18.0.0",
+    "@angular-eslint/eslint-plugin": "^18.0.0",
+    "@angular-eslint/eslint-plugin-template": "^18.0.0",
+    "@angular-eslint/schematics": "^18.0.0",
+    "@angular-eslint/template-parser": "^18.0.0",
+    "@angular/cli": "^19.0.6",
+    "@angular/compiler-cli": "^19.0.5",
+    "@angular/language-service": "^19.0.5",
+    "@capacitor/cli": "6.2.0",
+    "@ionic/angular-toolkit": "^11.0.1",
+    "@types/jasmine": "~5.1.0",
+    "@typescript-eslint/eslint-plugin": "^6.0.0",
+    "@typescript-eslint/parser": "^6.0.0",
+    "eslint": "^8.57.0",
+    "eslint-plugin-import": "^2.29.1",
+    "eslint-plugin-jsdoc": "^48.2.1",
+    "eslint-plugin-prefer-arrow": "1.2.2",
+    "jasmine-core": "~5.1.0",
+    "jasmine-spec-reporter": "~5.0.0",
+    "karma": "~6.4.0",
+    "karma-chrome-launcher": "~3.2.0",
+    "karma-coverage": "~2.2.0",
+    "karma-jasmine": "~5.1.0",
+    "karma-jasmine-html-reporter": "~2.1.0",
+    "typescript": "~5.6.3"
+  },
+  "description": "An Ionic project"
+}

+ 69 - 0
.history/soul-app/package_20241223225726.json

@@ -0,0 +1,69 @@
+{
+  "name": "soul-app",
+  "version": "0.0.1",
+  "author": "Ionic Framework",
+  "homepage": "https://ionicframework.com/",
+  "scripts": {
+    "ng": "ng",
+    "start": "ng serve",
+    "build": "ng build",
+    "watch": "ng build --watch --configuration development",
+    "test": "ng test",
+    "lint": "ng lint"
+  },
+  "private": true,
+  "dependencies": {
+    "@angular/animations": "^19.0.5",
+    "@angular/common": "^19.0.5",
+    "@angular/compiler": "^19.0.5",
+    "@angular/core": "^19.0.5",
+    "@angular/forms": "^18.0.0",
+    "@angular/platform-browser": "^19.0.5",
+    "@angular/platform-browser-dynamic": "^19.0.5",
+    "@angular/router": "^19.0.5",
+    "@capacitor/app": "6.0.2",
+    "@capacitor/core": "6.2.0",
+    "@capacitor/haptics": "6.0.2",
+    "@capacitor/keyboard": "6.0.3",
+    "@capacitor/status-bar": "6.0.2",
+    "@ionic/angular": "^8.0.0",
+    "@tensorflow-models/universal-sentence-encoder": "^1.3.3",
+    "@tensorflow/tfjs-backend-cpu": "^4.22.0",
+    "@tensorflow/tfjs-converter": "^4.22.0",
+    "@tensorflow/tfjs-core": "^4.22.0",
+    "fmode-ng": "^0.0.63",
+    "ionicons": "^7.2.1",
+    "rxjs": "~7.8.0",
+    "tslib": "^2.3.0",
+    "zone.js": "~0.15.0"
+  },
+  "devDependencies": {
+    "@angular-devkit/build-angular": "^19.0.6",
+    "@angular-eslint/builder": "^18.0.0",
+    "@angular-eslint/eslint-plugin": "^18.0.0",
+    "@angular-eslint/eslint-plugin-template": "^18.0.0",
+    "@angular-eslint/schematics": "^18.0.0",
+    "@angular-eslint/template-parser": "^18.0.0",
+    "@angular/cli": "^19.0.6",
+    "@angular/compiler-cli": "^19.0.5",
+    "@angular/language-service": "^19.0.5",
+    "@capacitor/cli": "6.2.0",
+    "@ionic/angular-toolkit": "^11.0.1",
+    "@types/jasmine": "~5.1.0",
+    "@typescript-eslint/eslint-plugin": "^6.0.0",
+    "@typescript-eslint/parser": "^6.0.0",
+    "eslint": "^8.57.0",
+    "eslint-plugin-import": "^2.29.1",
+    "eslint-plugin-jsdoc": "^48.2.1",
+    "eslint-plugin-prefer-arrow": "1.2.2",
+    "jasmine-core": "~5.1.0",
+    "jasmine-spec-reporter": "~5.0.0",
+    "karma": "~6.4.0",
+    "karma-chrome-launcher": "~3.2.0",
+    "karma-coverage": "~2.2.0",
+    "karma-jasmine": "~5.1.0",
+    "karma-jasmine-html-reporter": "~2.1.0",
+    "typescript": "~5.6.3"
+  },
+  "description": "An Ionic project"
+}

+ 69 - 0
.history/soul-app/package_20241223225943.json

@@ -0,0 +1,69 @@
+{
+  "name": "soul-app",
+  "version": "0.0.1",
+  "author": "Ionic Framework",
+  "homepage": "https://ionicframework.com/",
+  "scripts": {
+    "ng": "ng",
+    "start": "ng serve",
+    "build": "ng build",
+    "watch": "ng build --watch --configuration development",
+    "test": "ng test",
+    "lint": "ng lint"
+  },
+  "private": true,
+  "dependencies": {
+    "@angular/animations": "^19.0.5",
+    "@angular/common": "^19.0.5",
+    "@angular/compiler": "^19.0.5",
+    "@angular/core": "^19.0.5",
+    "@angular/forms": "^19.0.5",
+    "@angular/platform-browser": "^19.0.5",
+    "@angular/platform-browser-dynamic": "^19.0.5",
+    "@angular/router": "^19.0.5",
+    "@capacitor/app": "6.0.2",
+    "@capacitor/core": "6.2.0",
+    "@capacitor/haptics": "6.0.2",
+    "@capacitor/keyboard": "6.0.3",
+    "@capacitor/status-bar": "6.0.2",
+    "@ionic/angular": "^8.0.0",
+    "@tensorflow-models/universal-sentence-encoder": "^1.3.3",
+    "@tensorflow/tfjs-backend-cpu": "^4.22.0",
+    "@tensorflow/tfjs-converter": "^4.22.0",
+    "@tensorflow/tfjs-core": "^4.22.0",
+    "fmode-ng": "^0.0.63",
+    "ionicons": "^7.2.1",
+    "rxjs": "~7.8.0",
+    "tslib": "^2.3.0",
+    "zone.js": "~0.15.0"
+  },
+  "devDependencies": {
+    "@angular-devkit/build-angular": "^19.0.6",
+    "@angular-eslint/builder": "^18.0.0",
+    "@angular-eslint/eslint-plugin": "^18.0.0",
+    "@angular-eslint/eslint-plugin-template": "^18.0.0",
+    "@angular-eslint/schematics": "^18.0.0",
+    "@angular-eslint/template-parser": "^18.0.0",
+    "@angular/cli": "^19.0.6",
+    "@angular/compiler-cli": "^19.0.5",
+    "@angular/language-service": "^19.0.5",
+    "@capacitor/cli": "6.2.0",
+    "@ionic/angular-toolkit": "^11.0.1",
+    "@types/jasmine": "~5.1.0",
+    "@typescript-eslint/eslint-plugin": "^6.0.0",
+    "@typescript-eslint/parser": "^6.0.0",
+    "eslint": "^8.57.0",
+    "eslint-plugin-import": "^2.29.1",
+    "eslint-plugin-jsdoc": "^48.2.1",
+    "eslint-plugin-prefer-arrow": "1.2.2",
+    "jasmine-core": "~5.1.0",
+    "jasmine-spec-reporter": "~5.0.0",
+    "karma": "~6.4.0",
+    "karma-chrome-launcher": "~3.2.0",
+    "karma-coverage": "~2.2.0",
+    "karma-jasmine": "~5.1.0",
+    "karma-jasmine-html-reporter": "~2.1.0",
+    "typescript": "~5.6.3"
+  },
+  "description": "An Ionic project"
+}

+ 69 - 0
.history/soul-app/package_20241223230048.json

@@ -0,0 +1,69 @@
+{
+  "name": "soul-app",
+  "version": "0.0.1",
+  "author": "Ionic Framework",
+  "homepage": "https://ionicframework.com/",
+  "scripts": {
+    "ng": "ng",
+    "start": "ng serve",
+    "build": "ng build",
+    "watch": "ng build --watch --configuration development",
+    "test": "ng test",
+    "lint": "ng lint"
+  },
+  "private": true,
+  "dependencies": {
+    "@angular/animations": "^19.0.5",
+    "@angular/common": "^19.0.5",
+    "@angular/compiler": "^19.0.5",
+    "@angular/core": "^19.0.5",
+    "@angular/forms": "^18.0.0",
+    "@angular/platform-browser": "^19.0.5",
+    "@angular/platform-browser-dynamic": "^19.0.5",
+    "@angular/router": "^19.0.5",
+    "@capacitor/app": "6.0.2",
+    "@capacitor/core": "6.2.0",
+    "@capacitor/haptics": "6.0.2",
+    "@capacitor/keyboard": "6.0.3",
+    "@capacitor/status-bar": "6.0.2",
+    "@ionic/angular": "^8.0.0",
+    "@tensorflow-models/universal-sentence-encoder": "^1.3.3",
+    "@tensorflow/tfjs-backend-cpu": "^4.22.0",
+    "@tensorflow/tfjs-converter": "^4.22.0",
+    "@tensorflow/tfjs-core": "^4.22.0",
+    "fmode-ng": "^0.0.63",
+    "ionicons": "^7.2.1",
+    "rxjs": "~7.8.0",
+    "tslib": "^2.3.0",
+    "zone.js": "~0.15.0"
+  },
+  "devDependencies": {
+    "@angular-devkit/build-angular": "^19.0.6",
+    "@angular-eslint/builder": "^18.0.0",
+    "@angular-eslint/eslint-plugin": "^18.0.0",
+    "@angular-eslint/eslint-plugin-template": "^18.0.0",
+    "@angular-eslint/schematics": "^18.0.0",
+    "@angular-eslint/template-parser": "^18.0.0",
+    "@angular/cli": "^19.0.6",
+    "@angular/compiler-cli": "^19.0.5",
+    "@angular/language-service": "^19.0.5",
+    "@capacitor/cli": "6.2.0",
+    "@ionic/angular-toolkit": "^11.0.1",
+    "@types/jasmine": "~5.1.0",
+    "@typescript-eslint/eslint-plugin": "^6.0.0",
+    "@typescript-eslint/parser": "^6.0.0",
+    "eslint": "^8.57.0",
+    "eslint-plugin-import": "^2.29.1",
+    "eslint-plugin-jsdoc": "^48.2.1",
+    "eslint-plugin-prefer-arrow": "1.2.2",
+    "jasmine-core": "~5.1.0",
+    "jasmine-spec-reporter": "~5.0.0",
+    "karma": "~6.4.0",
+    "karma-chrome-launcher": "~3.2.0",
+    "karma-coverage": "~2.2.0",
+    "karma-jasmine": "~5.1.0",
+    "karma-jasmine-html-reporter": "~2.1.0",
+    "typescript": "~5.6.3"
+  },
+  "description": "An Ionic project"
+}

+ 69 - 0
.history/soul-app/package_20241223230317.json

@@ -0,0 +1,69 @@
+{
+  "name": "soul-app",
+  "version": "0.0.1",
+  "author": "Ionic Framework",
+  "homepage": "https://ionicframework.com/",
+  "scripts": {
+    "ng": "ng",
+    "start": "ng serve",
+    "build": "ng build",
+    "watch": "ng build --watch --configuration development",
+    "test": "ng test",
+    "lint": "ng lint"
+  },
+  "private": true,
+  "dependencies": {
+    "@angular/animations": "^19.0.5",
+    "@angular/common": "^19.0.5",
+    "@angular/compiler": "^19.0.5",
+    "@angular/core": "^19.0.5",
+    "@angular/forms": "^19.0.5",
+    "@angular/platform-browser": "^19.0.5",
+    "@angular/platform-browser-dynamic": "^19.0.5",
+    "@angular/router": "^19.0.5",
+    "@capacitor/app": "6.0.2",
+    "@capacitor/core": "6.2.0",
+    "@capacitor/haptics": "6.0.2",
+    "@capacitor/keyboard": "6.0.3",
+    "@capacitor/status-bar": "6.0.2",
+    "@ionic/angular": "^8.0.0",
+    "@tensorflow-models/universal-sentence-encoder": "^1.3.3",
+    "@tensorflow/tfjs-backend-cpu": "^4.22.0",
+    "@tensorflow/tfjs-converter": "^4.22.0",
+    "@tensorflow/tfjs-core": "^4.22.0",
+    "fmode-ng": "^0.0.63",
+    "ionicons": "^7.2.1",
+    "rxjs": "~7.8.0",
+    "tslib": "^2.3.0",
+    "zone.js": "~0.15.0"
+  },
+  "devDependencies": {
+    "@angular-devkit/build-angular": "^19.0.6",
+    "@angular-eslint/builder": "^18.0.0",
+    "@angular-eslint/eslint-plugin": "^18.0.0",
+    "@angular-eslint/eslint-plugin-template": "^18.0.0",
+    "@angular-eslint/schematics": "^18.0.0",
+    "@angular-eslint/template-parser": "^18.0.0",
+    "@angular/cli": "^19.0.6",
+    "@angular/compiler-cli": "^19.0.5",
+    "@angular/language-service": "^19.0.5",
+    "@capacitor/cli": "6.2.0",
+    "@ionic/angular-toolkit": "^11.0.1",
+    "@types/jasmine": "~5.1.0",
+    "@typescript-eslint/eslint-plugin": "^6.0.0",
+    "@typescript-eslint/parser": "^6.0.0",
+    "eslint": "^8.57.0",
+    "eslint-plugin-import": "^2.29.1",
+    "eslint-plugin-jsdoc": "^48.2.1",
+    "eslint-plugin-prefer-arrow": "1.2.2",
+    "jasmine-core": "~5.1.0",
+    "jasmine-spec-reporter": "~5.0.0",
+    "karma": "~6.4.0",
+    "karma-chrome-launcher": "~3.2.0",
+    "karma-coverage": "~2.2.0",
+    "karma-jasmine": "~5.1.0",
+    "karma-jasmine-html-reporter": "~2.1.0",
+    "typescript": "~5.6.3"
+  },
+  "description": "An Ionic project"
+}

+ 66 - 0
.history/soul-app/src/app/page-psysurvey/page-psysurvey.component_20241223232115.ts

@@ -0,0 +1,66 @@
+import { CommonModule } from '@angular/common';
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+import { IonHeader,IonButton, IonContent, IonIcon, IonItem, IonLabel, IonList, 
+  IonListHeader,IonCardHeader,IonCardTitle,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar } from '@ionic/angular/standalone';
+  import { HttpClient } from '@angular/common/http';
+  import { UserService } from '../user.service'; // 确保路径正确
+
+
+  
+
+@Component({
+  selector: 'app-page-psysurvey',
+  templateUrl: './page-psysurvey.component.html',
+  styleUrls: ['./page-psysurvey.component.scss'],
+  standalone: true,
+  imports: [IonHeader,IonToolbar,IonTitle,IonContent,
+      IonList,IonListHeader,IonItem,IonCardTitle,
+      IonLabel,IonIcon,IonButton,IonCardContent,
+      IonInput,IonSearchbar,IonCard,IonCardHeader,
+      CommonModule,HttpClient
+    ]
+})
+export class PagePsysurveyComponent  implements OnInit {
+  surveys: any[] = []; // 存储问卷通知
+  filteredSurveys: any[] = []; // 存储过滤后的问卷
+  userApartment: string = '' ; // 当前用户的学院
+
+  constructor(private router: Router,private http: HttpClient,private userService: UserService) { }
+  goTab1(){
+    this.router.navigate(['tabs/tab1']);
+   }
+   goPublishSurvey(){
+    this.router.navigate(['tabs/page-publishsurvey'])
+   }
+
+   ngOnInit() {
+    // 动态获取当前用户的学院信息
+    this.userService.getCurrentUser().subscribe(user => {
+      this.userApartment = user.apartment; // 从用户数据中获取学院
+      this.getSurveys(); // 在获取到用户信息后获取问卷
+    }, error => {
+      console.error('获取用户信息时出错:', error);
+      // 可以设置一个默认值或处理错误
+    });
+  }
+
+  getSurveys() {
+    this.http.get('http://127.0.0.1:4040/apps/DevServer/browser/survey').subscribe(
+      (response: any) => {
+        this.surveys = response; // 假设响应是问卷数组
+        this.filterSurveys(); // 过滤问卷
+      },
+      error => {
+        console.error('获取问卷时出错:', error);
+      }
+    );
+  }
+  filterSurveys() {
+    this.filteredSurveys = this.surveys.filter(survey => {
+      return survey.audience === this.userApartment || survey.audience === 'all';
+    });
+  }
+  
+  
+}

+ 66 - 0
.history/soul-app/src/app/page-psysurvey/page-psysurvey.component_20241223232614.ts

@@ -0,0 +1,66 @@
+import { CommonModule } from '@angular/common';
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+import { IonHeader,IonButton, IonContent, IonIcon, IonItem, IonLabel, IonList, 
+  IonListHeader,IonCardHeader,IonCardTitle,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar } from '@ionic/angular/standalone';
+  import { HttpClient } from '@angular/common/http';
+  import { UserService } from '../user.service'; // 确保路径正确
+
+
+  
+
+@Component({
+  selector: 'app-page-psysurvey',
+  templateUrl: './page-psysurvey.component.html',
+  styleUrls: ['./page-psysurvey.component.scss'],
+  standalone: true,
+  imports: [IonHeader,IonToolbar,IonTitle,IonContent,
+      IonList,IonListHeader,IonItem,IonCardTitle,
+      IonLabel,IonIcon,IonButton,IonCardContent,
+      IonInput,IonSearchbar,IonCard,IonCardHeader,
+      CommonModule
+    ]
+})
+export class PagePsysurveyComponent  implements OnInit {
+  surveys: any[] = []; // 存储问卷通知
+  filteredSurveys: any[] = []; // 存储过滤后的问卷
+  userApartment: string = '' ; // 当前用户的学院
+
+  constructor(private router: Router,private http: HttpClient,private userService: UserService) { }
+  goTab1(){
+    this.router.navigate(['tabs/tab1']);
+   }
+   goPublishSurvey(){
+    this.router.navigate(['tabs/page-publishsurvey'])
+   }
+
+   ngOnInit() {
+    // 动态获取当前用户的学院信息
+    this.userService.getCurrentUser().subscribe(user => {
+      this.userApartment = user.apartment; // 从用户数据中获取学院
+      this.getSurveys(); // 在获取到用户信息后获取问卷
+    }, error => {
+      console.error('获取用户信息时出错:', error);
+      // 可以设置一个默认值或处理错误
+    });
+  }
+
+  getSurveys() {
+    this.http.get('http://127.0.0.1:4040/apps/DevServer/browser/survey').subscribe(
+      (response: any) => {
+        this.surveys = response; // 假设响应是问卷数组
+        this.filterSurveys(); // 过滤问卷
+      },
+      error => {
+        console.error('获取问卷时出错:', error);
+      }
+    );
+  }
+  filterSurveys() {
+    this.filteredSurveys = this.surveys.filter(survey => {
+      return survey.audience === this.userApartment || survey.audience === 'all';
+    });
+  }
+  
+  
+}

+ 67 - 0
.history/soul-app/src/app/page-psysurvey/page-psysurvey.component_20241223233228.ts

@@ -0,0 +1,67 @@
+import { CommonModule } from '@angular/common';
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+import { IonHeader,IonButton, IonContent, IonIcon, IonItem, IonLabel, IonList, 
+  IonListHeader,IonCardHeader,IonCardTitle,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar } from '@ionic/angular/standalone';
+  import { HttpClient } from '@angular/common/http';
+  import { UserService } from '../user.service'; // 确保路径正确
+  import { FormsModule } from '@angular/forms'; // 导入 FormsModule
+
+
+  
+
+@Component({
+  selector: 'app-page-psysurvey',
+  templateUrl: './page-psysurvey.component.html',
+  styleUrls: ['./page-psysurvey.component.scss'],
+  standalone: true,
+  imports: [IonHeader,IonToolbar,IonTitle,IonContent,
+      IonList,IonListHeader,IonItem,IonCardTitle,FormsModule,
+      IonLabel,IonIcon,IonButton,IonCardContent,
+      IonInput,IonSearchbar,IonCard,IonCardHeader,
+      CommonModule
+    ]
+})
+export class PagePsysurveyComponent  implements OnInit {
+  surveys: any[] = []; // 存储问卷通知
+  filteredSurveys: any[] = []; // 存储过滤后的问卷
+  userApartment: string = '' ; // 当前用户的学院
+
+  constructor(private router: Router,private http: HttpClient,private userService: UserService) { }
+  goTab1(){
+    this.router.navigate(['tabs/tab1']);
+   }
+   goPublishSurvey(){
+    this.router.navigate(['tabs/page-publishsurvey'])
+   }
+
+   ngOnInit() {
+    // 动态获取当前用户的学院信息
+    this.userService.getCurrentUser().subscribe(user => {
+      this.userApartment = user.apartment; // 从用户数据中获取学院
+      this.getSurveys(); // 在获取到用户信息后获取问卷
+    }, error => {
+      console.error('获取用户信息时出错:', error);
+      // 可以设置一个默认值或处理错误
+    });
+  }
+
+  getSurveys() {
+    this.http.get('http://127.0.0.1:4040/apps/DevServer/browser/survey').subscribe(
+      (response: any) => {
+        this.surveys = response; // 假设响应是问卷数组
+        this.filterSurveys(); // 过滤问卷
+      },
+      error => {
+        console.error('获取问卷时出错:', error);
+      }
+    );
+  }
+  filterSurveys() {
+    this.filteredSurveys = this.surveys.filter(survey => {
+      return survey.audience === this.userApartment || survey.audience === 'all';
+    });
+  }
+  
+  
+}

+ 67 - 0
.history/soul-app/src/app/page-psysurvey/page-psysurvey.component_20241223235522.ts

@@ -0,0 +1,67 @@
+import { CommonModule } from '@angular/common';
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+import { IonHeader,IonButton, IonContent, IonIcon, IonItem, IonLabel, IonList, 
+  IonListHeader,IonCardHeader,IonCardTitle,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar } from '@ionic/angular/standalone';
+  import { HttpClient } from '@angular/common/http';
+  import { UserService } from '../user.service'; // 确保路径正确
+  import { FormsModule } from '@angular/forms'; // 导入 FormsModule
+
+
+  
+
+@Component({
+  selector: 'app-page-psysurvey',
+  templateUrl: './page-psysurvey.component.html',
+  styleUrls: ['./page-psysurvey.component.scss'],
+  standalone: true,
+  imports: [IonHeader,IonToolbar,IonTitle,IonContent,
+      IonList,IonListHeader,IonItem,IonCardTitle,FormsModule,
+      IonLabel,IonIcon,IonButton,IonCardContent,
+      IonInput,IonSearchbar,IonCard,IonCardHeader,
+      CommonModule
+    ]
+})
+export class PagePsysurveyComponent  implements OnInit {
+  surveys: any[] = []; // 存储问卷通知
+  filteredSurveys: any[] = []; // 存储过滤后的问卷
+  userApartment: string = '' ; // 当前用户的学院
+
+  constructor(private router: Router,private http: HttpClient,private userService: UserService) { }
+  goTab1(){
+    this.router.navigate(['tabs/tab1']);
+   }
+   goPublishSurvey(){
+    this.router.navigate(['tabs/page-publishsurvey'])
+   }
+
+   ngOnInit() {
+    // 动态获取当前用户的学院信息
+    this.userService.getCurrentUser().subscribe(user => {
+      this.userApartment = user.apartment; // 从用户数据中获取学院
+      this.getSurveys(); // 在获取到用户信息后获取问卷
+    }, error => {
+      console.error('获取用户信息时出错:', error);
+      // 可以设置一个默认值或处理错误
+    });
+  }
+
+  getSurveys() {
+    this.http.get('http://127.0.0.1:4040/apps/DevServer/browser/survey').subscribe(
+      (response: any) => {
+        this.surveys = response; // 假设响应是问卷数组
+        this.filterSurveys(); // 过滤问卷
+      },
+      error => {
+        console.error('获取问卷时出错:', error);
+      }
+    );
+  }
+  filterSurveys() {
+    this.filteredSurveys = this.surveys.filter(survey => {
+      return survey.audience === this.userApartment || survey.audience === 'all';
+    });
+  }
+  
+  
+}

+ 67 - 0
.history/soul-app/src/app/page-psysurvey/page-psysurvey.component_20241223235734.ts

@@ -0,0 +1,67 @@
+import { CommonModule } from '@angular/common';
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+import { IonHeader,IonButton, IonContent, IonIcon, IonItem, IonLabel, IonList, 
+  IonListHeader,IonCardHeader,IonCardTitle,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar } from '@ionic/angular/standalone';
+  import { HttpClient } from '@angular/common/http';
+  import { UserService } from '../user.service'; // 确保路径正确
+  import { FormsModule } from '@angular/forms'; // 导入 FormsModule
+
+
+  
+
+@Component({
+  selector: 'app-page-psysurvey',
+  templateUrl: './page-psysurvey.component.html',
+  styleUrls: ['./page-psysurvey.component.scss'],
+  standalone: true,
+  imports: [IonHeader,IonToolbar,IonTitle,IonContent,
+      IonList,IonListHeader,IonItem,IonCardTitle,FormsModule,
+      IonLabel,IonIcon,IonButton,IonCardContent,
+      IonInput,IonSearchbar,IonCard,IonCardHeader,
+      CommonModule
+    ]
+})
+export class PagePsysurveyComponent  implements OnInit {
+  surveys: any[] = []; // 存储问卷通知
+  filteredSurveys: any[] = []; // 存储过滤后的问卷
+  userApartment: string = '' ; // 当前用户的学院
+
+  constructor(private router: Router,private http: HttpClient,private userService: UserService) { }
+  goTab1(){
+    this.router.navigate(['tabs/tab1']);
+   }
+   goPublishSurvey(){
+    this.router.navigate(['tabs/page-publishsurvey'])
+   }
+
+   ngOnInit() {
+    // 动态获取当前用户的学院信息
+    this.userService.getCurrentUser().subscribe(user => {
+      this.userApartment = user.apartment; // 从用户数据中获取学院
+      this.getSurveys(); // 在获取到用户信息后获取问卷
+    }, error => {
+      console.error('获取用户信息时出错:', error);
+      // 可以设置一个默认值或处理错误
+    });
+  }
+
+  getSurveys() {
+    this.http.get('http://127.0.0.1:4040/').subscribe(
+      (response: any) => {
+        this.surveys = response; // 假设响应是问卷数组
+        this.filterSurveys(); // 过滤问卷
+      },
+      error => {
+        console.error('获取问卷时出错:', error);
+      }
+    );
+  }
+  filterSurveys() {
+    this.filteredSurveys = this.surveys.filter(survey => {
+      return survey.audience === this.userApartment || survey.audience === 'all';
+    });
+  }
+  
+  
+}

+ 36 - 0
.history/soul-app/src/app/page-psysurvey/page-psysurvey.component_20241224003203.html

@@ -0,0 +1,36 @@
+<ion-header>
+  <ion-toolbar>
+    <div class="toolbar-content">
+      <div class="button-container">
+        <ion-button (click)="goTab1()" fill="clear">
+          <ion-icon name="chevron-back" slot="start"></ion-icon>返回
+        </ion-button>
+      </div>
+      <ion-title class="title-text">
+        心理普查
+      </ion-title>
+    </div>
+  </ion-toolbar>
+</ion-header>
+
+<ion-content [fullscreen]="true">
+<section *ngIf="filteredSurveys.length > 0">
+  <ion-card *ngFor="let survey of filteredSurveys">
+    <ion-card-header>
+      <ion-card-title>问卷通知</ion-card-title>
+      <ion-card-title>{{ survey.title }}</ion-card-title>
+    </ion-card-header>
+    <ion-card-content>
+      <p>链接: <a [href]="survey.link" target="_blank">{{ survey.link }}</a></p>
+    </ion-card-content>
+  </ion-card>
+</section>
+
+  <div  style="display: flex; justify-content: center; margin-top: auto;">
+    <ion-button (click)="goPublishSurvey()" expand="full">
+      发布问卷
+    </ion-button>
+  </div>
+
+
+</ion-content>

+ 35 - 0
.history/soul-app/src/app/page-psysurvey/page-psysurvey.component_20241224003220.html

@@ -0,0 +1,35 @@
+<ion-header>
+  <ion-toolbar>
+    <div class="toolbar-content">
+      <div class="button-container">
+        <ion-button (click)="goTab1()" fill="clear">
+          <ion-icon name="chevron-back" slot="start"></ion-icon>返回
+        </ion-button>
+      </div>
+      <ion-title class="title-text">
+        心理普查
+      </ion-title>
+    </div>
+  </ion-toolbar>
+</ion-header>
+
+<ion-content [fullscreen]="true">
+<section *ngIf="filteredSurveys.length > 0">
+  <ion-card *ngFor="let survey of filteredSurveys">
+    <ion-card-header>
+      <ion-card-title>{{ survey.title }}</ion-card-title>
+    </ion-card-header>
+    <ion-card-content>
+      <p>链接: <a [href]="survey.link" target="_blank">{{ survey.link }}</a></p>
+    </ion-card-content>
+  </ion-card>
+</section>
+
+  <div  style="display: flex; justify-content: center; margin-top: auto;">
+    <ion-button (click)="goPublishSurvey()" expand="full">
+      发布问卷
+    </ion-button>
+  </div>
+
+
+</ion-content>

+ 76 - 0
.history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223230330.ts

@@ -0,0 +1,76 @@
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+import { IonHeader,IonButton, IonContent, IonIcon, IonItem, IonLabel, IonList, 
+  IonListHeader,IonCardHeader,IonCardTitle,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar, IonSegment, IonSegmentButton, IonSelect, IonSelectOption } from '@ionic/angular/standalone';
+  import { CommonModule } from '@angular/common';
+  
+  import { HttpClient } from '@angular/common/http';
+
+
+@Component({
+  selector: 'app-page-publishsurvey',
+  templateUrl: './page-publishsurvey.component.html',
+  styleUrls: ['./page-publishsurvey.component.scss'],
+  standalone: true,
+  imports: [
+    IonHeader,IonToolbar,IonTitle,IonContent,IonSegment,IonSegmentButton,IonSelect,IonSelectOption,
+    IonList,IonListHeader,IonItem,IonCardTitle,HttpClient,
+    IonLabel,IonIcon,IonButton,IonCardContent,
+    IonInput,IonSearchbar,IonCard,IonCardHeader,
+    CommonModule,
+  ]
+})
+
+
+export class PagePublishsurveyComponent  implements OnInit {
+  category: string = 'school'; // 默认类别
+  surveyTitle: string = '';
+  surveyLink: string = '';
+  targetAudience: string = 'all'; // 默认面向对象
+  // societySurveyTitle: string = '';
+  // societySurveyLink: string = '';
+
+  onCategoryChange() {
+    console.log(`当前选择的类别: ${this.category}`);
+  }
+
+  publishSurvey() {
+    console.log('发布学校问卷:');
+    console.log(`标题: ${this.surveyTitle}`);
+    console.log(`链接: ${this.surveyLink}`);
+    console.log(`面向对象: ${this.targetAudience}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+    const surveyData = {
+      title: this.surveyTitle,
+      link: this.surveyLink,
+      audience: this.targetAudience,
+    };
+
+    this.http.post('http://127.0.0.1:4040/apps/DevServer/browser/survey', surveyData).subscribe(
+      response => {
+        console.log('问卷已成功发布:', response);
+        // 发布成功后可以导航到心理普查页面
+        this.router.navigate(['tabs/psysurvey']);
+      },
+      error => {
+        console.error('发布问卷时出错:', error);
+      }
+    );
+  }
+
+  // publishSocietySurvey() {
+  //   console.log('发布社会问卷:');
+  //   console.log(`标题: ${this.societySurveyTitle}`);
+  //   console.log(`链接: ${this.societySurveyLink}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+  // }
+
+  constructor(private router: Router,private http: HttpClient) { }
+  goTab1(){
+    this.router.navigate(['tabs/tab1']);
+   }
+
+
+  ngOnInit() {}
+
+}

+ 75 - 0
.history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223232332.ts

@@ -0,0 +1,75 @@
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+import { IonHeader,IonButton, IonContent, IonIcon, IonLabel, IonCardHeader,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar, IonSegment, IonSegmentButton, IonSelect, IonSelectOption } from '@ionic/angular/standalone';
+  import { CommonModule } from '@angular/common';
+  
+  import { HttpClient } from '@angular/common/http';
+
+
+@Component({
+  selector: 'app-page-publishsurvey',
+  templateUrl: './page-publishsurvey.component.html',
+  styleUrls: ['./page-publishsurvey.component.scss'],
+  standalone: true,
+  imports: [
+    IonHeader,IonToolbar,IonTitle,IonContent,IonSegment,IonSegmentButton,IonSelect,IonSelectOption,
+    HttpClient,
+    IonLabel,IonIcon,IonButton,IonCardContent,
+    IonInput,IonSearchbar,IonCard,IonCardHeader,
+    CommonModule,
+  ]
+})
+
+
+export class PagePublishsurveyComponent  implements OnInit {
+  category: string = 'school'; // 默认类别
+  surveyTitle: string = '';
+  surveyLink: string = '';
+  targetAudience: string = 'all'; // 默认面向对象
+  // societySurveyTitle: string = '';
+  // societySurveyLink: string = '';
+
+  onCategoryChange() {
+    console.log(`当前选择的类别: ${this.category}`);
+  }
+
+  publishSurvey() {
+    console.log('发布学校问卷:');
+    console.log(`标题: ${this.surveyTitle}`);
+    console.log(`链接: ${this.surveyLink}`);
+    console.log(`面向对象: ${this.targetAudience}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+    const surveyData = {
+      title: this.surveyTitle,
+      link: this.surveyLink,
+      audience: this.targetAudience,
+    };
+
+    this.http.post('http://127.0.0.1:4040/apps/DevServer/browser/survey', surveyData).subscribe(
+      response => {
+        console.log('问卷已成功发布:', response);
+        // 发布成功后可以导航到心理普查页面
+        this.router.navigate(['tabs/psysurvey']);
+      },
+      error => {
+        console.error('发布问卷时出错:', error);
+      }
+    );
+  }
+
+  // publishSocietySurvey() {
+  //   console.log('发布社会问卷:');
+  //   console.log(`标题: ${this.societySurveyTitle}`);
+  //   console.log(`链接: ${this.societySurveyLink}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+  // }
+
+  constructor(private router: Router,private http: HttpClient) { }
+  goTab1(){
+    this.router.navigate(['tabs/tab1']);
+   }
+
+
+  ngOnInit() {}
+
+}

+ 75 - 0
.history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223232613.ts

@@ -0,0 +1,75 @@
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+import { IonHeader,IonButton, IonContent, IonIcon, IonLabel, IonCardHeader,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar, IonSegment, IonSegmentButton, IonSelect, IonSelectOption } from '@ionic/angular/standalone';
+  import { CommonModule } from '@angular/common';
+  
+  import { HttpClient } from '@angular/common/http';
+
+
+@Component({
+  selector: 'app-page-publishsurvey',
+  templateUrl: './page-publishsurvey.component.html',
+  styleUrls: ['./page-publishsurvey.component.scss'],
+  standalone: true,
+  imports: [
+    IonHeader,IonToolbar,IonTitle,IonContent,IonSegment,IonSegmentButton,IonSelect,IonSelectOption,
+    
+    IonLabel,IonIcon,IonButton,IonCardContent,
+    IonInput,IonSearchbar,IonCard,IonCardHeader,
+    CommonModule,
+  ]
+})
+
+
+export class PagePublishsurveyComponent  implements OnInit {
+  category: string = 'school'; // 默认类别
+  surveyTitle: string = '';
+  surveyLink: string = '';
+  targetAudience: string = 'all'; // 默认面向对象
+  // societySurveyTitle: string = '';
+  // societySurveyLink: string = '';
+
+  onCategoryChange() {
+    console.log(`当前选择的类别: ${this.category}`);
+  }
+
+  publishSurvey() {
+    console.log('发布学校问卷:');
+    console.log(`标题: ${this.surveyTitle}`);
+    console.log(`链接: ${this.surveyLink}`);
+    console.log(`面向对象: ${this.targetAudience}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+    const surveyData = {
+      title: this.surveyTitle,
+      link: this.surveyLink,
+      audience: this.targetAudience,
+    };
+
+    this.http.post('http://127.0.0.1:4040/apps/DevServer/browser/survey', surveyData).subscribe(
+      response => {
+        console.log('问卷已成功发布:', response);
+        // 发布成功后可以导航到心理普查页面
+        this.router.navigate(['tabs/psysurvey']);
+      },
+      error => {
+        console.error('发布问卷时出错:', error);
+      }
+    );
+  }
+
+  // publishSocietySurvey() {
+  //   console.log('发布社会问卷:');
+  //   console.log(`标题: ${this.societySurveyTitle}`);
+  //   console.log(`链接: ${this.societySurveyLink}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+  // }
+
+  constructor(private router: Router,private http: HttpClient) { }
+  goTab1(){
+    this.router.navigate(['tabs/tab1']);
+   }
+
+
+  ngOnInit() {}
+
+}

+ 75 - 0
.history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223233904.ts

@@ -0,0 +1,75 @@
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+import { IonHeader,IonButton, IonContent, IonIcon, IonLabel, IonCardHeader,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar, IonSegment, IonSegmentButton, IonSelect, IonSelectOption } from '@ionic/angular/standalone';
+  import { CommonModule } from '@angular/common';
+  import { FormsModule } from '@angular/forms'; // 导入 FormsModule
+  import { HttpClient } from '@angular/common/http';
+
+
+@Component({
+  selector: 'app-page-publishsurvey',
+  templateUrl: './page-publishsurvey.component.html',
+  styleUrls: ['./page-publishsurvey.component.scss'],
+  standalone: true,
+  imports: [
+    IonHeader,IonToolbar,IonTitle,IonContent,IonSegment,IonSegmentButton,IonSelect,IonSelectOption,
+    FormsModule,
+    IonLabel,IonIcon,IonButton,IonCardContent,
+    IonInput,IonSearchbar,IonCard,IonCardHeader,
+    CommonModule,
+  ]
+})
+
+
+export class PagePublishsurveyComponent  implements OnInit {
+  category: string = 'school'; // 默认类别
+  surveyTitle: string = '';
+  surveyLink: string = '';
+  targetAudience: string = 'all'; // 默认面向对象
+  // societySurveyTitle: string = '';
+  // societySurveyLink: string = '';
+
+  onCategoryChange() {
+    console.log(`当前选择的类别: ${this.category}`);
+  }
+
+  publishSurvey() {
+    console.log('发布学校问卷:');
+    console.log(`标题: ${this.surveyTitle}`);
+    console.log(`链接: ${this.surveyLink}`);
+    console.log(`面向对象: ${this.targetAudience}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+    const surveyData = {
+      title: this.surveyTitle,
+      link: this.surveyLink,
+      audience: this.targetAudience,
+    };
+
+    this.http.post('http://127.0.0.1:4040/apps/DevServer/browser/survey', surveyData).subscribe(
+      response => {
+        console.log('问卷已成功发布:', response);
+        // 发布成功后可以导航到心理普查页面
+        this.router.navigate(['tabs/psysurvey']);
+      },
+      error => {
+        console.error('发布问卷时出错:', error);
+      }
+    );
+  }
+
+  // publishSocietySurvey() {
+  //   console.log('发布社会问卷:');
+  //   console.log(`标题: ${this.societySurveyTitle}`);
+  //   console.log(`链接: ${this.societySurveyLink}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+  // }
+
+  constructor(private router: Router,private http: HttpClient) { }
+  goTab1(){
+    this.router.navigate(['tabs/tab1']);
+   }
+
+
+  ngOnInit() {}
+
+}

+ 75 - 0
.history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223234415.ts

@@ -0,0 +1,75 @@
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+import { IonHeader,IonButton, IonList, IonListHeader, IonItem,IonContent, IonIcon, IonLabel, IonCardHeader,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar, IonSegment, IonSegmentButton, IonSelect, IonSelectOption } from '@ionic/angular/standalone';
+  import { CommonModule } from '@angular/common';
+  import { FormsModule } from '@angular/forms'; // 导入 FormsModule
+  import { HttpClient } from '@angular/common/http';
+
+
+@Component({
+  selector: 'app-page-publishsurvey',
+  templateUrl: './page-publishsurvey.component.html',
+  styleUrls: ['./page-publishsurvey.component.scss'],
+  standalone: true,
+  imports: [
+    IonHeader,IonToolbar,IonTitle,IonContent,IonSegment,IonSegmentButton,IonSelect,IonSelectOption,
+    FormsModule,IonList, IonListHeader, IonItem,
+    IonLabel,IonIcon,IonButton,IonCardContent,
+    IonInput,IonSearchbar,IonCard,IonCardHeader,
+    CommonModule,
+  ]
+})
+
+
+export class PagePublishsurveyComponent  implements OnInit {
+  category: string = 'school'; // 默认类别
+  surveyTitle: string = '';
+  surveyLink: string = '';
+  targetAudience: string = 'all'; // 默认面向对象
+  // societySurveyTitle: string = '';
+  // societySurveyLink: string = '';
+
+  onCategoryChange() {
+    console.log(`当前选择的类别: ${this.category}`);
+  }
+
+  publishSurvey() {
+    console.log('发布学校问卷:');
+    console.log(`标题: ${this.surveyTitle}`);
+    console.log(`链接: ${this.surveyLink}`);
+    console.log(`面向对象: ${this.targetAudience}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+    const surveyData = {
+      title: this.surveyTitle,
+      link: this.surveyLink,
+      audience: this.targetAudience,
+    };
+
+    this.http.post('http://127.0.0.1:4040/apps/DevServer/browser/survey', surveyData).subscribe(
+      response => {
+        console.log('问卷已成功发布:', response);
+        // 发布成功后可以导航到心理普查页面
+        this.router.navigate(['tabs/psysurvey']);
+      },
+      error => {
+        console.error('发布问卷时出错:', error);
+      }
+    );
+  }
+
+  // publishSocietySurvey() {
+  //   console.log('发布社会问卷:');
+  //   console.log(`标题: ${this.societySurveyTitle}`);
+  //   console.log(`链接: ${this.societySurveyLink}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+  // }
+
+  constructor(private router: Router,private http: HttpClient) { }
+  goTab1(){
+    this.router.navigate(['tabs/tab1']);
+   }
+
+
+  ngOnInit() {}
+
+}

+ 65 - 0
.history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223234722.html

@@ -0,0 +1,65 @@
+<ion-header>
+  <ion-toolbar>
+    <div class="toolbar-content">
+      <div class="button-container">
+        <ion-button (click)="goTab1()" fill="clear">
+          <ion-icon name="chevron-back" slot="start"></ion-icon>返回
+        </ion-button>
+      </div>
+      <ion-title class="title-text">
+        发布问卷
+      </ion-title>
+    </div>
+  </ion-toolbar>
+</ion-header>
+
+<ion-content [fullscreen]="true">
+  <ion-segment [(ngModel)]="category" (ionChange)="onCategoryChange()">
+    <ion-segment-button value="school">
+      学校
+    </ion-segment-button>
+    <ion-segment-button value="society">
+      社会
+    </ion-segment-button>
+  </ion-segment>
+
+  <div *ngIf="category === 'school'">
+    <ion-list>
+    <ion-item>
+      <ion-label position="floating">问卷标题</ion-label>
+      <ion-input [(ngModel)]="surveyTitle"></ion-input>
+    </ion-item>
+
+    <ion-item>
+      <ion-label position="floating">问卷链接</ion-label>
+      <ion-input [(ngModel)]="surveyLink"></ion-input>
+    </ion-item>
+
+    <ion-item>
+      <ion-label>面向对象</ion-label>
+      <ion-select [(ngModel)]="targetAudience">
+        <ion-select-option value="all">全校学生</ion-select-option>
+        <ion-select-option value="软件学院">软件学院</ion-select-option>
+        <ion-select-option value="music">音乐学院</ion-select-option>
+      </ion-select>
+    </ion-item>
+  </ion-list>
+
+    <ion-button expand="full" (click)="publishSurvey()">发布问卷</ion-button>
+  </div>
+
+  <div *ngIf="category === 'society'">
+    <!-- 社会问卷设置格式 -->
+    <ion-item>
+      <ion-label position="floating">社会问卷标题</ion-label>
+      <ion-input [(ngModel)]="societySurveyTitle"></ion-input>
+    </ion-item>
+
+    <ion-item>
+      <ion-label position="floating">社会问卷链接</ion-label>
+      <ion-input [(ngModel)]="societySurveyLink"></ion-input>
+    </ion-item>
+
+    <ion-button expand="full" (click)="publishSocietySurvey()">发布社会问卷</ion-button>
+  </div>
+</ion-content>

+ 65 - 0
.history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223234846.html

@@ -0,0 +1,65 @@
+<ion-header>
+  <ion-toolbar>
+    <div class="toolbar-content">
+      <div class="button-container">
+        <ion-button (click)="goTab1()" fill="clear">
+          <ion-icon name="chevron-back" slot="start"></ion-icon>返回
+        </ion-button>
+      </div>
+      <ion-title class="title-text">
+        发布问卷
+      </ion-title>
+    </div>
+  </ion-toolbar>
+</ion-header>
+
+<ion-content [fullscreen]="true">
+  <ion-segment [(ngModel)]="category" (ionChange)="onCategoryChange()">
+    <ion-segment-button value="school">
+      学校
+    </ion-segment-button>
+    <ion-segment-button value="society">
+      社会
+    </ion-segment-button>
+  </ion-segment>
+
+  <div *ngIf="category === 'school'">
+    <ion-list>
+    <ion-item>
+      <ion-label position="floating">问卷标题</ion-label>
+      <ion-input [(ngModel)]="surveyTitle"></ion-input>
+    </ion-item>
+
+    <ion-item>
+      <ion-label position="floating">问卷链接</ion-label>
+      <ion-input [(ngModel)]="surveyLink"></ion-input>
+    </ion-item>
+
+    <ion-item>
+      <ion-label>面向对象</ion-label>
+      <ion-select [(ngModel)]="targetAudience">
+        <ion-select-option value="all">全校学生</ion-select-option>
+        <ion-select-option value="软件学院">软件学院</ion-select-option>
+        <ion-select-option value="music">音乐学院</ion-select-option>
+      </ion-select>
+    </ion-item>
+  </ion-list>
+
+    <ion-button expand="full" (click)="publishSurvey()">发布问卷</ion-button>
+  </div>
+
+  <div *ngIf="category === 'society'">
+    <!-- 社会问卷设置格式 -->
+    <ion-item>
+      <ion-label position="floating">社会问卷标题</ion-label>
+      
+    </ion-item>
+
+    <ion-item>
+      <ion-label position="floating">社会问卷链接</ion-label>
+      
+    </ion-item>
+
+    <ion-button expand="full" (click)="publishSocietySurvey()">发布社会问卷</ion-button>
+  </div>
+</ion-content>

+ 65 - 0
.history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223234902.html

@@ -0,0 +1,65 @@
+<ion-header>
+  <ion-toolbar>
+    <div class="toolbar-content">
+      <div class="button-container">
+        <ion-button (click)="goTab1()" fill="clear">
+          <ion-icon name="chevron-back" slot="start"></ion-icon>返回
+        </ion-button>
+      </div>
+      <ion-title class="title-text">
+        发布问卷
+      </ion-title>
+    </div>
+  </ion-toolbar>
+</ion-header>
+
+<ion-content [fullscreen]="true">
+  <ion-segment [(ngModel)]="category" (ionChange)="onCategoryChange()">
+    <ion-segment-button value="school">
+      学校
+    </ion-segment-button>
+    <ion-segment-button value="society">
+      社会
+    </ion-segment-button>
+  </ion-segment>
+
+  <div *ngIf="category === 'school'">
+    <ion-list>
+    <ion-item>
+      <ion-label position="floating">问卷标题</ion-label>
+      <ion-input [(ngModel)]="surveyTitle"></ion-input>
+    </ion-item>
+
+    <ion-item>
+      <ion-label position="floating">问卷链接</ion-label>
+      <ion-input [(ngModel)]="surveyLink"></ion-input>
+    </ion-item>
+
+    <ion-item>
+      <ion-label>面向对象</ion-label>
+      <ion-select [(ngModel)]="targetAudience">
+        <ion-select-option value="all">全校学生</ion-select-option>
+        <ion-select-option value="软件学院">软件学院</ion-select-option>
+        <ion-select-option value="music">音乐学院</ion-select-option>
+      </ion-select>
+    </ion-item>
+  </ion-list>
+
+    <ion-button expand="full" (click)="publishSurvey()">发布问卷</ion-button>
+  </div>
+
+  <div *ngIf="category === 'society'">
+    <!-- 社会问卷设置格式 -->
+    <ion-item>
+      <ion-label position="floating">社会问卷标题</ion-label>
+      
+    </ion-item>
+
+    <ion-item>
+      <ion-label position="floating">社会问卷链接</ion-label>
+      
+    </ion-item>
+
+    <ion-button expand="full" >发布社会问卷</ion-button>
+  </div>
+</ion-content>

+ 75 - 0
.history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241223235756.ts

@@ -0,0 +1,75 @@
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+import { IonHeader,IonButton, IonList, IonListHeader, IonItem,IonContent, IonIcon, IonLabel, IonCardHeader,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar, IonSegment, IonSegmentButton, IonSelect, IonSelectOption } from '@ionic/angular/standalone';
+  import { CommonModule } from '@angular/common';
+  import { FormsModule } from '@angular/forms'; // 导入 FormsModule
+  import { HttpClient } from '@angular/common/http';
+
+
+@Component({
+  selector: 'app-page-publishsurvey',
+  templateUrl: './page-publishsurvey.component.html',
+  styleUrls: ['./page-publishsurvey.component.scss'],
+  standalone: true,
+  imports: [
+    IonHeader,IonToolbar,IonTitle,IonContent,IonSegment,IonSegmentButton,IonSelect,IonSelectOption,
+    FormsModule,IonList, IonListHeader, IonItem,
+    IonLabel,IonIcon,IonButton,IonCardContent,
+    IonInput,IonSearchbar,IonCard,IonCardHeader,
+    CommonModule,
+  ]
+})
+
+
+export class PagePublishsurveyComponent  implements OnInit {
+  category: string = 'school'; // 默认类别
+  surveyTitle: string = '';
+  surveyLink: string = '';
+  targetAudience: string = 'all'; // 默认面向对象
+  // societySurveyTitle: string = '';
+  // societySurveyLink: string = '';
+
+  onCategoryChange() {
+    console.log(`当前选择的类别: ${this.category}`);
+  }
+
+  publishSurvey() {
+    console.log('发布学校问卷:');
+    console.log(`标题: ${this.surveyTitle}`);
+    console.log(`链接: ${this.surveyLink}`);
+    console.log(`面向对象: ${this.targetAudience}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+    const surveyData = {
+      title: this.surveyTitle,
+      link: this.surveyLink,
+      audience: this.targetAudience,
+    };
+
+    this.http.post('http://127.0.0.1:4040/', surveyData).subscribe(
+      response => {
+        console.log('问卷已成功发布:', response);
+        // 发布成功后可以导航到心理普查页面
+        this.router.navigate(['tabs/psysurvey']);
+      },
+      error => {
+        console.error('发布问卷时出错:', error);
+      }
+    );
+  }
+
+  // publishSocietySurvey() {
+  //   console.log('发布社会问卷:');
+  //   console.log(`标题: ${this.societySurveyTitle}`);
+  //   console.log(`链接: ${this.societySurveyLink}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+  // }
+
+  constructor(private router: Router,private http: HttpClient) { }
+  goTab1(){
+    this.router.navigate(['tabs/tab1']);
+   }
+
+
+  ngOnInit() {}
+
+}

+ 65 - 0
.history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241224000226.html

@@ -0,0 +1,65 @@
+<ion-header>
+  <ion-toolbar>
+    <div class="toolbar-content">
+      <div class="button-container">
+        <ion-button (click)="goTab1()" fill="clear">
+          <ion-icon name="chevron-back" slot="start"></ion-icon>返回
+        </ion-button>
+      </div>
+      <ion-title class="title-text">
+        发布问卷
+      </ion-title>
+    </div>
+  </ion-toolbar>
+</ion-header>
+
+<ion-content [fullscreen]="true">
+  <ion-segment [(ngModel)]="category" (ionChange)="onCategoryChange()">
+    <ion-segment-button value="school">
+      学校
+    </ion-segment-button>
+    <ion-segment-button value="society">
+      社会
+    </ion-segment-button>
+  </ion-segment>
+
+  <div *ngIf="category === 'school'">
+    <ion-list>
+    <ion-item>
+      <ion-label position="floating">问卷标题</ion-label>
+      <ion-input [(ngModel)]="surveyTitle"></ion-input>
+    </ion-item>
+
+    <ion-item>
+      <ion-label position="floating">问卷链接</ion-label>
+      <ion-input [(ngModel)]="surveyLink"></ion-input>
+    </ion-item>
+
+    <ion-item>
+      <ion-label>面向对象</ion-label>
+      <ion-select [(ngModel)]="targetAudience">
+        <ion-select-option value="all">全校学生</ion-select-option>
+        <ion-select-option value="软件学院">软件学院</ion-select-option>
+        <ion-select-option value="music">音乐学院</ion-select-option>
+      </ion-select>
+    </ion-item>
+  </ion-list>
+
+    <ion-button expand="full" (click)="publishSurvey()">发布问卷</ion-button>
+  </div>
+
+  <div *ngIf="category === 'society'">
+    <!-- 社会问卷设置格式 -->
+    <ion-item>
+      <ion-label position="floating">社会问卷标题</ion-label>
+      <ion-input [(ngModel)]="societySurveyTitle"></ion-input>
+    </ion-item>
+
+    <ion-item>
+      <ion-label position="floating">社会问卷链接</ion-label>
+      <ion-input [(ngModel)]="societySurveyLink"></ion-input>
+    </ion-item>
+
+    <ion-button expand="full" (click)="publishSocietySurvey()">发布社会问卷</ion-button>
+  </div>
+</ion-content>

+ 75 - 0
.history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241224000227.ts

@@ -0,0 +1,75 @@
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+import { IonHeader,IonButton, IonList, IonListHeader, IonItem,IonContent, IonIcon, IonLabel, IonCardHeader,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar, IonSegment, IonSegmentButton, IonSelect, IonSelectOption } from '@ionic/angular/standalone';
+  import { CommonModule } from '@angular/common';
+  import { FormsModule } from '@angular/forms'; // 导入 FormsModule
+  import { HttpClient } from '@angular/common/http';
+
+
+@Component({
+  selector: 'app-page-publishsurvey',
+  templateUrl: './page-publishsurvey.component.html',
+  styleUrls: ['./page-publishsurvey.component.scss'],
+  standalone: true,
+  imports: [
+    IonHeader,IonToolbar,IonTitle,IonContent,IonSegment,IonSegmentButton,IonSelect,IonSelectOption,
+    FormsModule,IonList, IonListHeader, IonItem,
+    IonLabel,IonIcon,IonButton,IonCardContent,
+    IonInput,IonSearchbar,IonCard,IonCardHeader,
+    CommonModule,
+  ]
+})
+
+
+export class PagePublishsurveyComponent  implements OnInit {
+  category: string = 'school'; // 默认类别
+  surveyTitle: string = '';
+  surveyLink: string = '';
+  targetAudience: string = 'all'; // 默认面向对象
+  societySurveyTitle: string = '';
+  societySurveyLink: string = '';
+
+  onCategoryChange() {
+    console.log(`当前选择的类别: ${this.category}`);
+  }
+
+  publishSurvey() {
+    console.log('发布学校问卷:');
+    console.log(`标题: ${this.surveyTitle}`);
+    console.log(`链接: ${this.surveyLink}`);
+    console.log(`面向对象: ${this.targetAudience}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+    const surveyData = {
+      title: this.surveyTitle,
+      link: this.surveyLink,
+      audience: this.targetAudience,
+    };
+
+    this.http.post('http://127.0.0.1:4040/', surveyData).subscribe(
+      response => {
+        console.log('问卷已成功发布:', response);
+        // 发布成功后可以导航到心理普查页面
+        this.router.navigate(['tabs/psysurvey']);
+      },
+      error => {
+        console.error('发布问卷时出错:', error);
+      }
+    );
+  }
+
+  publishSocietySurvey() {
+    console.log('发布社会问卷:');
+    console.log(`标题: ${this.societySurveyTitle}`);
+    console.log(`链接: ${this.societySurveyLink}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+  }
+
+  constructor(private router: Router,private http: HttpClient) { }
+  goTab1(){
+    this.router.navigate(['tabs/tab1']);
+   }
+
+
+  ngOnInit() {}
+
+}

+ 74 - 0
.history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241224000825.ts

@@ -0,0 +1,74 @@
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+import { IonHeader,IonButton, IonList, IonListHeader, IonItem,IonContent, IonIcon, IonLabel, IonCardHeader,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar, IonSegment, IonSegmentButton, IonSelect, IonSelectOption } from '@ionic/angular/standalone';
+  import { CommonModule } from '@angular/common';
+  import { FormsModule } from '@angular/forms'; // 导入 FormsModule
+  import { HttpClient } from '@angular/common/http';
+
+
+@Component({
+  selector: 'app-page-publishsurvey',
+  templateUrl: './page-publishsurvey.component.html',
+  styleUrls: ['./page-publishsurvey.component.scss'],
+  standalone: true,
+  imports: [
+    IonHeader,IonToolbar,IonTitle,IonContent,IonSegment,IonSegmentButton,IonSelect,IonSelectOption,
+    FormsModule,IonList, IonListHeader, IonItem,
+    IonLabel,IonIcon,IonButton,IonCardContent,
+    IonInput,IonSearchbar,IonCard,IonCardHeader,
+    CommonModule,
+  ]
+})
+
+
+export class PagePublishsurveyComponent  implements OnInit {
+  category: string = 'school'; // 默认类别
+  surveyTitle: string = '';
+  surveyLink: string = '';
+  targetAudience: string = 'all'; // 默认面向对象
+  societySurveyTitle: string = '';
+  societySurveyLink: string = '';
+
+  onCategoryChange() {
+    console.log(`当前选择的类别: ${this.category}`);
+  }
+
+  publishSurvey() {
+    console.log('发布学校问卷:');
+    console.log(`标题: ${this.surveyTitle}`);
+    console.log(`链接: ${this.surveyLink}`);
+    console.log(`面向对象: ${this.targetAudience}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+    const surveyData = {
+      title: this.surveyTitle,
+      link: this.surveyLink,
+      audience: this.targetAudience,
+    };
+
+    this.http.post('http://127.0.0.1:4040/', surveyData).subscribe(
+      response => {
+        console.log('问卷已成功发布:', response);
+        
+      },
+      error => {
+        console.error('发布问卷时出错:', error);
+      }
+    );
+  }
+
+  publishSocietySurvey() {
+    console.log('发布社会问卷:');
+    console.log(`标题: ${this.societySurveyTitle}`);
+    console.log(`链接: ${this.societySurveyLink}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+  }
+
+  constructor(private router: Router,private http: HttpClient) { }
+  goTab1(){
+    this.router.navigate(['tabs/tab1']);
+   }
+
+
+  ngOnInit() {}
+
+}

+ 74 - 0
.history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241224002925.ts

@@ -0,0 +1,74 @@
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+import { IonHeader,IonButton, IonList, IonListHeader, IonItem,IonContent, IonIcon, IonLabel, IonCardHeader,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar, IonSegment, IonSegmentButton, IonSelect, IonSelectOption } from '@ionic/angular/standalone';
+  import { CommonModule } from '@angular/common';
+  import { FormsModule } from '@angular/forms'; // 导入 FormsModule
+  import { HttpClient } from '@angular/common/http';
+
+
+@Component({
+  selector: 'app-page-publishsurvey',
+  templateUrl: './page-publishsurvey.component.html',
+  styleUrls: ['./page-publishsurvey.component.scss'],
+  standalone: true,
+  imports: [
+    IonHeader,IonToolbar,IonTitle,IonContent,IonSegment,IonSegmentButton,IonSelect,IonSelectOption,
+    FormsModule,IonList, IonListHeader, IonItem,
+    IonLabel,IonIcon,IonButton,IonCardContent,
+    IonInput,IonSearchbar,IonCard,IonCardHeader,
+    CommonModule,
+  ]
+})
+
+
+export class PagePublishsurveyComponent  implements OnInit {
+  category: string = 'school'; // 默认类别
+  surveyTitle: string = '';
+  surveyLink: string = '';
+  targetAudience: string = 'all'; // 默认面向对象
+  societySurveyTitle: string = '';
+  societySurveyLink: string = '';
+
+  onCategoryChange() {
+    console.log(`当前选择的类别: ${this.category}`);
+  }
+
+  publishSurvey() {
+    console.log('发布学校问卷:');
+    console.log(`标题: ${this.surveyTitle}`);
+    console.log(`链接: ${this.surveyLink}`);
+    console.log(`面向对象: ${this.targetAudience}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+    const surveyData = {
+      title: this.surveyTitle,
+      link: this.surveyLink,
+      audience: this.targetAudience,
+    };
+
+    this.http.post('http://127.0.0.1:4040/', surveyData).subscribe(
+      response => {
+        console.log('问卷已成功发布:', response);
+        
+      },
+      error => {
+        console.error('发布问卷时出错:', error);
+      }
+    );
+  }
+
+  publishSocietySurvey() {
+    console.log('发布社会问卷:');
+    console.log(`标题: ${this.societySurveyTitle}`);
+    console.log(`链接: ${this.societySurveyLink}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+  }
+
+  constructor(private router: Router,private http: HttpClient) { }
+  goTab1(){
+    this.router.navigate(['tabs/page-publishsurvey']);
+   }
+
+
+  ngOnInit() {}
+
+}

+ 74 - 0
.history/soul-app/src/app/page-publishsurvey/page-publishsurvey.component_20241224002949.ts

@@ -0,0 +1,74 @@
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+import { IonHeader,IonButton, IonList, IonListHeader, IonItem,IonContent, IonIcon, IonLabel, IonCardHeader,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar, IonSegment, IonSegmentButton, IonSelect, IonSelectOption } from '@ionic/angular/standalone';
+  import { CommonModule } from '@angular/common';
+  import { FormsModule } from '@angular/forms'; // 导入 FormsModule
+  import { HttpClient } from '@angular/common/http';
+
+
+@Component({
+  selector: 'app-page-publishsurvey',
+  templateUrl: './page-publishsurvey.component.html',
+  styleUrls: ['./page-publishsurvey.component.scss'],
+  standalone: true,
+  imports: [
+    IonHeader,IonToolbar,IonTitle,IonContent,IonSegment,IonSegmentButton,IonSelect,IonSelectOption,
+    FormsModule,IonList, IonListHeader, IonItem,
+    IonLabel,IonIcon,IonButton,IonCardContent,
+    IonInput,IonSearchbar,IonCard,IonCardHeader,
+    CommonModule,
+  ]
+})
+
+
+export class PagePublishsurveyComponent  implements OnInit {
+  category: string = 'school'; // 默认类别
+  surveyTitle: string = '';
+  surveyLink: string = '';
+  targetAudience: string = 'all'; // 默认面向对象
+  societySurveyTitle: string = '';
+  societySurveyLink: string = '';
+
+  onCategoryChange() {
+    console.log(`当前选择的类别: ${this.category}`);
+  }
+
+  publishSurvey() {
+    console.log('发布学校问卷:');
+    console.log(`标题: ${this.surveyTitle}`);
+    console.log(`链接: ${this.surveyLink}`);
+    console.log(`面向对象: ${this.targetAudience}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+    const surveyData = {
+      title: this.surveyTitle,
+      link: this.surveyLink,
+      audience: this.targetAudience,
+    };
+
+    this.http.post('http://127.0.0.1:4040/', surveyData).subscribe(
+      response => {
+        console.log('问卷已成功发布:', response);
+        
+      },
+      error => {
+        console.error('发布问卷时出错:', error);
+      }
+    );
+  }
+
+  publishSocietySurvey() {
+    console.log('发布社会问卷:');
+    console.log(`标题: ${this.societySurveyTitle}`);
+    console.log(`链接: ${this.societySurveyLink}`);
+    // 这里可以添加逻辑将问卷发布到后端或其他处理
+  }
+
+  constructor(private router: Router,private http: HttpClient) { }
+  goTab1(){
+    this.router.navigate(['tabs/page-psysurvey']);
+   }
+
+
+  ngOnInit() {}
+
+}

+ 34 - 0
.history/soul-app/src/main_20241218212656.ts

@@ -0,0 +1,34 @@
+import { bootstrapApplication } from '@angular/platform-browser';
+import { RouteReuseStrategy, provideRouter, withPreloading, PreloadAllModules } from '@angular/router';
+import { IonicRouteStrategy, provideIonicAngular } from '@ionic/angular/standalone';
+
+import { routes } from './app/app.routes';
+import { AppComponent } from './app/app.component';
+
+
+// 引用HttpClient方法
+import { provideHttpClient } from '@angular/common/http';
+// 引用移动端授权检测供应器
+import { Diagnostic } from '@awesome-cordova-plugins/diagnostic/ngx';
+// 设置Parse服务属性
+import Parse from "parse";
+Parse.initialize("ncloudmaster");
+Parse.serverURL = "https://server.fmode.cn/parse";
+localStorage.setItem("NOVA_APIG_SERVER", 'aHR0cHMlM0ElMkYlMkZzZXJ2ZXIuZm1vZGUuY24lMkZhcGklMkZhcGlnJTJG')
+
+// 注意:替换Token 根据Token设置Parse服务帐套权限
+Parse.User.become('r:86287c6e67fc4e6ea9c197cdd4f00c10')
+
+//'r:bf1dc433a0b48ca0937e559134e3e316'
+bootstrapApplication(AppComponent, {
+  providers: [
+    { provide: RouteReuseStrategy, useClass: IonicRouteStrategy },
+    provideIonicAngular(),
+    provideRouter(routes, withPreloading(PreloadAllModules)),
+
+    // 添加HttpClient供应器
+    provideHttpClient(),
+    // 添加Diagnostic
+    Diagnostic,
+  ],
+});

+ 35 - 0
.history/soul-app/src/main_20241223235743.ts

@@ -0,0 +1,35 @@
+import { bootstrapApplication } from '@angular/platform-browser';
+import { RouteReuseStrategy, provideRouter, withPreloading, PreloadAllModules } from '@angular/router';
+import { IonicRouteStrategy, provideIonicAngular } from '@ionic/angular/standalone';
+
+import { routes } from './app/app.routes';
+import { AppComponent } from './app/app.component';
+
+
+// 引用HttpClient方法
+import { provideHttpClient } from '@angular/common/http';
+// 引用移动端授权检测供应器
+import { Diagnostic } from '@awesome-cordova-plugins/diagnostic/ngx';
+// 设置Parse服务属性
+import Parse from "parse";
+Parse.initialize("ncloudmaster");
+Parse.serverURL = "https://server.fmode.cn/parse";
+localStorage.setItem("NOVA_APIG_SERVER", 'aHR0cHMlM0ElMkYlMkZzZXJ2ZXIuZm1vZGUuY24lMkZhcGklMkZhcGlnJTJG')
+
+// 注意:替换Token 根据Token设置Parse服务帐套权限
+Parse.User.become('r:86287c6e67fc4e6ea9c197cdd4f00c10')
+
+//'r:bf1dc433a0b48ca0937e559134e3e316'
+bootstrapApplication(AppComponent, {
+  providers: [
+    { provide: RouteReuseStrategy, useClass: IonicRouteStrategy },
+    provideIonicAngular(),
+    
+    provideRouter(routes, withPreloading(PreloadAllModules)),
+
+    // 添加HttpClient供应器
+    provideHttpClient(),
+    // 添加Diagnostic
+    Diagnostic,
+  ],
+});

+ 3 - 0
.idea/.gitignore

@@ -0,0 +1,3 @@
+# 默认忽略的文件
+/shelf/
+/workspace.xml

+ 35 - 0
.idea/gradle.xml

@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="GradleSettings">
+    <option name="linkedExternalProjectsSettings">
+      <GradleProjectSettings>
+        <option name="externalProjectPath" value="$PROJECT_DIR$/soul-app/node_modules/@capacitor/app/android" />
+        <option name="gradleJvm" value="corretto-21" />
+      </GradleProjectSettings>
+      <GradleProjectSettings>
+        <option name="externalProjectPath" value="$PROJECT_DIR$/soul-app/node_modules/@capacitor/camera/android" />
+        <option name="gradleJvm" value="corretto-21" />
+      </GradleProjectSettings>
+      <GradleProjectSettings>
+        <option name="externalProjectPath" value="$PROJECT_DIR$/soul-app/node_modules/@capacitor/clipboard/android" />
+        <option name="gradleJvm" value="corretto-21" />
+      </GradleProjectSettings>
+      <GradleProjectSettings>
+        <option name="externalProjectPath" value="$PROJECT_DIR$/soul-app/node_modules/@capacitor/filesystem/android" />
+        <option name="gradleJvm" value="corretto-21" />
+      </GradleProjectSettings>
+      <GradleProjectSettings>
+        <option name="externalProjectPath" value="$PROJECT_DIR$/soul-app/node_modules/@capacitor/haptics/android" />
+        <option name="gradleJvm" value="corretto-21" />
+      </GradleProjectSettings>
+      <GradleProjectSettings>
+        <option name="externalProjectPath" value="$PROJECT_DIR$/soul-app/node_modules/@capacitor/keyboard/android" />
+        <option name="gradleJvm" value="corretto-21" />
+      </GradleProjectSettings>
+      <GradleProjectSettings>
+        <option name="externalProjectPath" value="$PROJECT_DIR$/soul-app/node_modules/@capacitor/status-bar/android" />
+        <option name="gradleJvm" value="corretto-21" />
+      </GradleProjectSettings>
+    </option>
+  </component>
+</project>

+ 7 - 0
.idea/misc.xml

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="ExternalStorageConfigurationManager" enabled="true" />
+  <component name="ProjectRootManager">
+    <output url="file://$PROJECT_DIR$/out" />
+  </component>
+</project>

+ 8 - 0
.idea/modules.xml

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="ProjectModuleManager">
+    <modules>
+      <module fileurl="file://$PROJECT_DIR$/.idea/workspace.iml" filepath="$PROJECT_DIR$/.idea/workspace.iml" />
+    </modules>
+  </component>
+</project>

+ 6 - 0
.idea/vcs.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="VcsDirectoryMappings">
+    <mapping directory="" vcs="Git" />
+  </component>
+</project>

+ 9 - 0
.idea/workspace.iml

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module type="JAVA_MODULE" version="4">
+  <component name="NewModuleRootManager" inherit-compiler-output="true">
+    <exclude-output />
+    <content url="file://$MODULE_DIR$" />
+    <orderEntry type="inheritedJdk" />
+    <orderEntry type="sourceFolder" forTests="false" />
+  </component>
+</module>

+ 2 - 2
soul-app/angular.json

@@ -28,7 +28,7 @@
               {
                 "glob": "**/*",
                 "input": "src/assets",
-                "output": "assets",
+                "output": "assets"
               }
             ],
             "styles": ["src/global.scss", "src/theme/variables.scss"],
@@ -80,7 +80,7 @@
               "buildTarget": "app:build:development"
             },
             "ci": {
-              "progress": false
+              
             }
           },
           "defaultConfiguration": "development"

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 419 - 227
soul-app/package-lock.json


+ 14 - 14
soul-app/package.json

@@ -13,14 +13,14 @@
   },
   "private": true,
   "dependencies": {
-    "@angular/animations": "^18.0.0",
-    "@angular/common": "^18.0.0",
-    "@angular/compiler": "^18.0.0",
-    "@angular/core": "^18.0.0",
-    "@angular/forms": "^18.0.0",
-    "@angular/platform-browser": "^18.0.0",
-    "@angular/platform-browser-dynamic": "^18.0.0",
-    "@angular/router": "^18.0.0",
+    "@angular/animations": "^19.0.5",
+    "@angular/common": "^19.0.5",
+    "@angular/compiler": "^19.0.5",
+    "@angular/core": "^19.0.5",
+    "@angular/forms": "^19.0.5",
+    "@angular/platform-browser": "^19.0.5",
+    "@angular/platform-browser-dynamic": "^19.0.5",
+    "@angular/router": "^19.0.5",
     "@capacitor/app": "6.0.2",
     "@capacitor/core": "6.2.0",
     "@capacitor/haptics": "6.0.2",
@@ -35,18 +35,18 @@
     "ionicons": "^7.2.1",
     "rxjs": "~7.8.0",
     "tslib": "^2.3.0",
-    "zone.js": "~0.14.2"
+    "zone.js": "~0.15.0"
   },
   "devDependencies": {
-    "@angular-devkit/build-angular": "^18.0.0",
+    "@angular-devkit/build-angular": "^19.0.6",
     "@angular-eslint/builder": "^18.0.0",
     "@angular-eslint/eslint-plugin": "^18.0.0",
     "@angular-eslint/eslint-plugin-template": "^18.0.0",
     "@angular-eslint/schematics": "^18.0.0",
     "@angular-eslint/template-parser": "^18.0.0",
-    "@angular/cli": "^18.0.0",
-    "@angular/compiler-cli": "^18.0.0",
-    "@angular/language-service": "^18.0.0",
+    "@angular/cli": "^19.0.6",
+    "@angular/compiler-cli": "^19.0.5",
+    "@angular/language-service": "^19.0.5",
     "@capacitor/cli": "6.2.0",
     "@ionic/angular-toolkit": "^11.0.1",
     "@types/jasmine": "~5.1.0",
@@ -63,7 +63,7 @@
     "karma-coverage": "~2.2.0",
     "karma-jasmine": "~5.1.0",
     "karma-jasmine-html-reporter": "~2.1.0",
-    "typescript": "~5.4.0"
+    "typescript": "~5.6.3"
   },
   "description": "An Ionic project"
 }

+ 6 - 7
soul-app/src/app/page-psysurvey/page-psysurvey.component.ts

@@ -1,15 +1,14 @@
 import { CommonModule } from '@angular/common';
-import { Component, OnInit, Injectable } from '@angular/core';
+import { Component, OnInit } from '@angular/core';
 import { Router } from '@angular/router';
 import { IonHeader,IonButton, IonContent, IonIcon, IonItem, IonLabel, IonList, 
   IonListHeader,IonCardHeader,IonCardTitle,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar } from '@ionic/angular/standalone';
   import { HttpClient } from '@angular/common/http';
   import { UserService } from '../user.service'; // 确保路径正确
+  import { FormsModule } from '@angular/forms'; // 导入 FormsModule
 
 
-  @Injectable({
-    providedIn: 'root'
-  })
+  
 
 @Component({
   selector: 'app-page-psysurvey',
@@ -17,10 +16,10 @@ import { IonHeader,IonButton, IonContent, IonIcon, IonItem, IonLabel, IonList,
   styleUrls: ['./page-psysurvey.component.scss'],
   standalone: true,
   imports: [IonHeader,IonToolbar,IonTitle,IonContent,
-      IonList,IonListHeader,IonItem,IonCardTitle,
+      IonList,IonListHeader,IonItem,IonCardTitle,FormsModule,
       IonLabel,IonIcon,IonButton,IonCardContent,
       IonInput,IonSearchbar,IonCard,IonCardHeader,
-      CommonModule,HttpClient,Injectable
+      CommonModule
     ]
 })
 export class PagePsysurveyComponent  implements OnInit {
@@ -48,7 +47,7 @@ export class PagePsysurveyComponent  implements OnInit {
   }
 
   getSurveys() {
-    this.http.get('http://127.0.0.1:4040/apps/DevServer/browser/survey').subscribe(
+    this.http.get('http://127.0.0.1:4040/').subscribe(
       (response: any) => {
         this.surveys = response; // 假设响应是问卷数组
         this.filterSurveys(); // 过滤问卷

+ 2 - 0
soul-app/src/app/page-publishsurvey/page-publishsurvey.component.html

@@ -24,6 +24,7 @@
   </ion-segment>
 
   <div *ngIf="category === 'school'">
+    <ion-list>
     <ion-item>
       <ion-label position="floating">问卷标题</ion-label>
       <ion-input [(ngModel)]="surveyTitle"></ion-input>
@@ -42,6 +43,7 @@
         <ion-select-option value="music">音乐学院</ion-select-option>
       </ion-select>
     </ion-item>
+  </ion-list>
 
     <ion-button expand="full" (click)="publishSurvey()">发布问卷</ion-button>
   </div>

+ 14 - 16
soul-app/src/app/page-publishsurvey/page-publishsurvey.component.ts

@@ -1,9 +1,8 @@
 import { Component, OnInit } from '@angular/core';
 import { Router } from '@angular/router';
-import { IonHeader,IonButton, IonContent, IonIcon, IonItem, IonLabel, IonList, 
-  IonListHeader,IonCardHeader,IonCardTitle,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar, IonSegment, IonSegmentButton, IonSelect, IonSelectOption } from '@ionic/angular/standalone';
+import { IonHeader,IonButton, IonList, IonListHeader, IonItem,IonContent, IonIcon, IonLabel, IonCardHeader,IonCardContent, IonTitle,IonCard, IonToolbar,IonInput,IonSearchbar, IonSegment, IonSegmentButton, IonSelect, IonSelectOption } from '@ionic/angular/standalone';
   import { CommonModule } from '@angular/common';
-  import { FormsModule } from '@angular/forms';
+  import { FormsModule } from '@angular/forms'; // 导入 FormsModule
   import { HttpClient } from '@angular/common/http';
 
 
@@ -14,10 +13,10 @@ import { IonHeader,IonButton, IonContent, IonIcon, IonItem, IonLabel, IonList,
   standalone: true,
   imports: [
     IonHeader,IonToolbar,IonTitle,IonContent,IonSegment,IonSegmentButton,IonSelect,IonSelectOption,
-    IonList,IonListHeader,IonItem,IonCardTitle,HttpClient,
+    FormsModule,IonList, IonListHeader, IonItem,
     IonLabel,IonIcon,IonButton,IonCardContent,
     IonInput,IonSearchbar,IonCard,IonCardHeader,
-    CommonModule,FormsModule
+    CommonModule,
   ]
 })
 
@@ -27,8 +26,8 @@ export class PagePublishsurveyComponent  implements OnInit {
   surveyTitle: string = '';
   surveyLink: string = '';
   targetAudience: string = 'all'; // 默认面向对象
-  // societySurveyTitle: string = '';
-  // societySurveyLink: string = '';
+  societySurveyTitle: string = '';
+  societySurveyLink: string = '';
 
   onCategoryChange() {
     console.log(`当前选择的类别: ${this.category}`);
@@ -46,11 +45,10 @@ export class PagePublishsurveyComponent  implements OnInit {
       audience: this.targetAudience,
     };
 
-    this.http.post('http://127.0.0.1:4040/apps/DevServer/browser/survey', surveyData).subscribe(
+    this.http.post('http://127.0.0.1:4040/', surveyData).subscribe(
       response => {
         console.log('问卷已成功发布:', response);
-        // 发布成功后可以导航到心理普查页面
-        this.router.navigate(['tabs/psysurvey']);
+        
       },
       error => {
         console.error('发布问卷时出错:', error);
@@ -58,16 +56,16 @@ export class PagePublishsurveyComponent  implements OnInit {
     );
   }
 
-  // publishSocietySurvey() {
-  //   console.log('发布社会问卷:');
-  //   console.log(`标题: ${this.societySurveyTitle}`);
-  //   console.log(`链接: ${this.societySurveyLink}`);
+  publishSocietySurvey() {
+    console.log('发布社会问卷:');
+    console.log(`标题: ${this.societySurveyTitle}`);
+    console.log(`链接: ${this.societySurveyLink}`);
     // 这里可以添加逻辑将问卷发布到后端或其他处理
-  // }
+  }
 
   constructor(private router: Router,private http: HttpClient) { }
   goTab1(){
-    this.router.navigate(['tabs/tab1']);
+    this.router.navigate(['tabs/page-psysurvey']);
    }
 
 

+ 1 - 0
soul-app/src/main.ts

@@ -24,6 +24,7 @@ bootstrapApplication(AppComponent, {
   providers: [
     { provide: RouteReuseStrategy, useClass: IonicRouteStrategy },
     provideIonicAngular(),
+    
     provideRouter(routes, withPreloading(PreloadAllModules)),
 
     // 添加HttpClient供应器

Энэ ялгаанд хэт олон файл өөрчлөгдсөн тул зарим файлыг харуулаагүй болно