Log_service/start/routes.ts

253 lines
6.5 KiB
TypeScript

import axios from "axios";
/*
|--------------------------------------------------------------------------
| Routes
|--------------------------------------------------------------------------
|
| This file is dedicated for defining HTTP routes. A single file is enough
| for majority of projects, however you can define routes in different
| files and just make sure to import them inside this file. For example
|
| Define routes in following two files
| ├── start/routes/cart.ts
| ├── start/routes/customer.ts
|
| and then import them inside `start/routes.ts` as follows
|
| import './routes/cart'
| import './routes/customer'
|
*/
import Route from "@ioc:Adonis/Core/Route";
import { runtimeCheckLogs } from "App/utils/runtimeCheckLogs";
import Env from "@ioc:Adonis/Core/Env";
import { sendMessToZulip } from "App/utils/sendMessToZulip";
import moment from "moment";
import Product from "App/Models/Product";
runtimeCheckLogs(Env.get("FOLDER_LOGS"));
// setTimeout(async() => {
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// LogDetectFile.all()
// console.log("first")
// }, 2000);
//ERP get index serial number
Route.post(
"/api/getIndexSerialNumber",
"ErpsController.getIndexSerialNumber"
).middleware("checkToken");
Route.post("/api/getParagraph", "ErpsController.getParagraph").middleware(
"checkToken"
);
//Users
Route.post("/api/account/createUser", "UsersController.create");
Route.post("/api/account/checkLogin", "UsersController.checkLogin");
//Log
Route.get("/api/log/showLog/:name?", "LogsController.showLog");
Route.get("/api/getAllLogDetect", "LogsController.getAllLogDetect");
//Key-Value
Route.post("/api/getKeyValue", "ValuesController.getKeyValue");
Route.post("/api/deleteValue", "ValuesController.destroy");
Route.post("/api/addValue", "ValuesController.create");
Route.post("/api/backupProduct", async ({ request, response }) => {
try {
const date = moment(Date.now()).format("YYYYMMDD");
const res = await axios.post(
"https://logs.danielvu.com/api/getIndexSerialNumber",
{ from: date, to: date },
{ headers: { Authorization: request.headers().authorization?.replace(/"/g, "") } }
);
res.data.map((obj, index)=>{
res.data[index] = {
PID:res.data[index].PID,
SN:res.data[index].SN,
VID:res.data[index].VID,
line:res.data[index].line.join(","),
file:res.data[index].fileName,
warehouse:res.data[index].warehouse
}
})
const addProduct = await Product.createMany(res.data)
// console.log(addProduct)
response.status(200).send("Add "+res.data.length+" success!");
await sendMessToZulip("stream", "networkToolBot", "Log service", "Backup product "+date+" success with "+res.data.length+" products")
} catch (error) {
response.status(500).send(error);
await sendMessToZulip("stream", "networkToolBot", "Log service", "Backup product fail. Please check!")
}
});