user registration for qc
This commit is contained in:
@@ -13,3 +13,7 @@ Repo for all data related work.
|
|||||||
- microsoft excel
|
- microsoft excel
|
||||||
|
|
||||||
|
|
||||||
|
### functions
|
||||||
|
|
||||||
|
https://asia-south1-hpos-af3cc.cloudfunctions.net/registerUser
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,10 @@
|
|||||||
import firebase_admin
|
import firebase_admin
|
||||||
from firebase_admin import credentials, firestore
|
from firebase_admin import credentials, firestore
|
||||||
|
import os
|
||||||
|
|
||||||
|
key_path = os.getcwd() + '/scripts/keys/hpos-af3cc-firebase-adminsdk-n261k-2bfd463ec0.json'
|
||||||
# Replace 'path/to/your/serviceAccountKey.json' with the actual path to your service account JSON file
|
# Replace 'path/to/your/serviceAccountKey.json' with the actual path to your service account JSON file
|
||||||
cred = credentials.Certificate(r'C:\Users\smila\PycharmProjects\pythonqueries\hpos-af3cc-firebase-adminsdk-n261k-6ff4a63c54.json')
|
cred = credentials.Certificate(key_path)
|
||||||
firebase_admin.initialize_app(cred)
|
firebase_admin.initialize_app(cred)
|
||||||
def move_documents(source_collection):
|
def move_documents(source_collection):
|
||||||
db = firestore.client()
|
db = firestore.client()
|
||||||
@@ -19,7 +21,7 @@ def move_documents(source_collection):
|
|||||||
|
|
||||||
try:
|
try:
|
||||||
# Delete the document from the source collection
|
# Delete the document from the source collection
|
||||||
db.collection(source_collection).document(doc_id).update({"testStatus": False})
|
db.collection(source_collection).document(doc_id).update({"testStatus": True})
|
||||||
print(f"Document with ID '{doc_id}' updated")
|
print(f"Document with ID '{doc_id}' updated")
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"Error deleting document with ID '{doc_id}' from the source collection: {e}")
|
print(f"Error deleting document with ID '{doc_id}' from the source collection: {e}")
|
||||||
|
|||||||
5
cloud-functions/nodejs/.firebaserc
Normal file
5
cloud-functions/nodejs/.firebaserc
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"projects": {
|
||||||
|
"default": "hpos-af3cc"
|
||||||
|
}
|
||||||
|
}
|
||||||
66
cloud-functions/nodejs/.gitignore
vendored
Normal file
66
cloud-functions/nodejs/.gitignore
vendored
Normal file
@@ -0,0 +1,66 @@
|
|||||||
|
# Logs
|
||||||
|
logs
|
||||||
|
*.log
|
||||||
|
npm-debug.log*
|
||||||
|
yarn-debug.log*
|
||||||
|
yarn-error.log*
|
||||||
|
firebase-debug.log*
|
||||||
|
firebase-debug.*.log*
|
||||||
|
|
||||||
|
# Firebase cache
|
||||||
|
.firebase/
|
||||||
|
|
||||||
|
# Firebase config
|
||||||
|
|
||||||
|
# Uncomment this if you'd like others to create their own Firebase project.
|
||||||
|
# For a team working on the same Firebase project(s), it is recommended to leave
|
||||||
|
# it commented so all members can deploy to the same project(s) in .firebaserc.
|
||||||
|
# .firebaserc
|
||||||
|
|
||||||
|
# Runtime data
|
||||||
|
pids
|
||||||
|
*.pid
|
||||||
|
*.seed
|
||||||
|
*.pid.lock
|
||||||
|
|
||||||
|
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||||
|
lib-cov
|
||||||
|
|
||||||
|
# Coverage directory used by tools like istanbul
|
||||||
|
coverage
|
||||||
|
|
||||||
|
# nyc test coverage
|
||||||
|
.nyc_output
|
||||||
|
|
||||||
|
# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
|
||||||
|
.grunt
|
||||||
|
|
||||||
|
# Bower dependency directory (https://bower.io/)
|
||||||
|
bower_components
|
||||||
|
|
||||||
|
# node-waf configuration
|
||||||
|
.lock-wscript
|
||||||
|
|
||||||
|
# Compiled binary addons (http://nodejs.org/api/addons.html)
|
||||||
|
build/Release
|
||||||
|
|
||||||
|
# Dependency directories
|
||||||
|
node_modules/
|
||||||
|
|
||||||
|
# Optional npm cache directory
|
||||||
|
.npm
|
||||||
|
|
||||||
|
# Optional eslint cache
|
||||||
|
.eslintcache
|
||||||
|
|
||||||
|
# Optional REPL history
|
||||||
|
.node_repl_history
|
||||||
|
|
||||||
|
# Output of 'npm pack'
|
||||||
|
*.tgz
|
||||||
|
|
||||||
|
# Yarn Integrity file
|
||||||
|
.yarn-integrity
|
||||||
|
|
||||||
|
# dotenv environment variables file
|
||||||
|
.env
|
||||||
1
cloud-functions/nodejs/functions/.gitignore
vendored
Normal file
1
cloud-functions/nodejs/functions/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
node_modules/
|
||||||
33
cloud-functions/nodejs/functions/index.js
Normal file
33
cloud-functions/nodejs/functions/index.js
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
const { onRequest } = require("firebase-functions/v2/https");
|
||||||
|
const logger = require("firebase-functions/logger");
|
||||||
|
const functions = require("firebase-functions");
|
||||||
|
const admin = require("firebase-admin");
|
||||||
|
const moment = require('moment');
|
||||||
|
|
||||||
|
admin.initializeApp();
|
||||||
|
|
||||||
|
|
||||||
|
exports.registerUser = functions.region("asia-south1").https.onRequest(async (req, res) => {
|
||||||
|
try {
|
||||||
|
const token = "e16a1bd15af2ee640f5a7a18c8d8333f5f01f7c66e003bbc21ee52870f1bce27";
|
||||||
|
logger.info(`User-Agent ${req.get("User-Agent")}`);
|
||||||
|
logger.info(`token ${req.get("x-client")}`);
|
||||||
|
if (req.get("x-client") !== token) {
|
||||||
|
res.json({ status: "403", message: "auth error", result: "true" });
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
const { body } = req;
|
||||||
|
const { _id } = body;
|
||||||
|
logger.info(`_id ${_id}`);
|
||||||
|
await admin
|
||||||
|
.firestore()
|
||||||
|
.collection("patientData")
|
||||||
|
.add(Object.assign(Object.assign({}, body), { createdAt: moment().utcOffset("+05:30").format("YYYY-MM-DD HH:mm:ss") }))
|
||||||
|
res.json({ status: "200" });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (err) {
|
||||||
|
logger.info(`error ${err}`);
|
||||||
|
res.json({ status: "400", message: "some error.", result: "true" });
|
||||||
|
}
|
||||||
|
});
|
||||||
Reference in New Issue
Block a user