153 lines
5.5 KiB
JavaScript
153 lines
5.5 KiB
JavaScript
'use strict';
|
||
const { url } = require('inspector');
|
||
const path = require('path');
|
||
module.exports = appInfo => {
|
||
const config = exports = {};
|
||
config.moveScu = {
|
||
lock: false
|
||
}
|
||
config.upload = {
|
||
// url: 'http://192.168.1.66:7002'
|
||
url: 'http://127.0.0.1:7002'
|
||
}
|
||
config.site = {
|
||
debug: true,
|
||
SALT_STRENGTH: 10, // 密码加密强度
|
||
ROOT_PATH: path.join(__dirname, '..'), //定义根路径
|
||
APP_PATH: path.join(__dirname, '../app'), //定义app路径
|
||
PUBLIC: path.join(__dirname, '../app/public'), //定义PUBLIC目录
|
||
COOKIEMAXAGE: 7 * 24 * 60 * 60 * 1000, //cookie存储maxage
|
||
TYPES: ['CT', 'MR', 'DR'],
|
||
CACHE_SAVE_PATH: path.join(__dirname, '../app/public/DICOM'), //文件存储地址
|
||
CACHE_SHOW_PATH: `/public/DICOM/`, //文件展示地址
|
||
GETLIMIT: 8,
|
||
MOVE_PORT: 7100,
|
||
STORYESCPPATH: path.join(__dirname, '../app/python/storescp.py'),
|
||
MOVE: {
|
||
PATH: path.join(__dirname, '../app/python/getFirstImageFromStudy.py'),
|
||
IP: '172.17.1.131',
|
||
PORT: 104,
|
||
AEC: "SERVER",
|
||
WORKPORT: 7010,
|
||
MAXWORKPORTNUM: 5,
|
||
LOCKTIME: 1 * 60 * 60 * 1000
|
||
},
|
||
PACS_QR_CFG: path.join(__dirname, "../app/python/patqry.txt"), //pacs查询配置文件
|
||
PACS_QR_FILE: path.join(__dirname, "../app/python/patqry.dcm"), //pacs查询dcm
|
||
PACS_SCP_STORE: path.join(__dirname, "../app/public/SCP_STORE"), //pacs store存储地址
|
||
PACS_SCP_PORT: 3030, //pacs store存储端口
|
||
// PACS_SCP_AET: 'RAYPLUSAE', //pacs store aet
|
||
PACS_SCP_AET: 'xiongfei2', //pacs store aet
|
||
PACS_JOB_QUREY_DAY: 3,
|
||
DICOM_SAVE_PATH: path.join(__dirname, "../app/public/DICOM"), //DICOM保存地址
|
||
PNG_SAVE_PATH: path.join(__dirname, "../app/public/IMAGE"), //PNG保存地址
|
||
PNG_SHOW_PATH: `/public/IMAGE`, //PNG展示地址
|
||
DICOM_SHOW_PATH: "/public/DICOM", //DICOM展示地址
|
||
};
|
||
|
||
// use for cookie sign key, should change to your own and keep security
|
||
config.keys = appInfo.name + 'v1';
|
||
|
||
// add your config here
|
||
config.middleware = ["error"];
|
||
|
||
config.gzip = {
|
||
threshold: 1024 // 小于 1k 的响应体不压缩
|
||
};
|
||
|
||
config.security = {
|
||
csrf: {
|
||
enable: false
|
||
}
|
||
};
|
||
|
||
|
||
/**
|
||
* 客户端请求如果需要保存本地凭条(cookie),则会带有特别的请求字段 withCredentials
|
||
* 服务端需要同样开启这个字段才能响应这些请求
|
||
* 本质上应该是在响应头里增加了这个字段: Access-Control-Allow-Credentials: true
|
||
* 这里应该是全局设置,单独在响应头里加这个字段好像不行。应该是这个框架问题
|
||
*/
|
||
config.cors = {
|
||
origin: "*",
|
||
allowMethods: "GET,HEAD,PUT,POST,DELETE,PATCH,OPTIONS",
|
||
credentials: false
|
||
};
|
||
|
||
config.logger = {
|
||
// level: 'ERROR',
|
||
consoleLevel: 'DEBUG',
|
||
appLogName: `${appInfo.name}-api.log`, //应用相关日志,
|
||
coreLogName: "web.log", //框架内核、插件日志。
|
||
agentLogName: "agent.log", //agent 进程日志
|
||
errorLogName: "error.log" //error 异常日志
|
||
};
|
||
|
||
// mongoose
|
||
config.mongoose = {
|
||
client: {
|
||
// url: `mongodb://rayplus_admin:rayplus1234@192.168.1.50:27017/rayplus`,
|
||
// url: `mongodb://mongouser:mongo123456@192.168.3.69:27017/rayplus`,
|
||
// url: `mongodb://mongouser:mongo123456@47.117.164.182:27017/rayplus?authSource=admin`,
|
||
url: `mongodb://mongouser:mongo123456@192.168.3.68:27017/?authSource=admin`,
|
||
// url: `mongodb://rayplus_admin:rayplus1234@192.168.1.25:27017/rayplus`,
|
||
// url: `mongodb://rayplus_admin:rayplus1234@127.0.0.1:27017/rayplus`,
|
||
options: {
|
||
socketTimeoutMS: 0,
|
||
keepAlive: true,
|
||
useNewUrlParser: true,
|
||
}
|
||
}
|
||
};
|
||
|
||
|
||
|
||
config.httpclient = {
|
||
// 是否开启本地 DNS 缓存,默认关闭,开启后有两个特性
|
||
// 1. 所有的 DNS 查询都会默认优先使用缓存的,即使 DNS 查询错误也不影响应用
|
||
// 2. 对同一个域名,在 dnsCacheLookupInterval 的间隔内(默认 10s)只会查询一次
|
||
enableDNSCache: false,
|
||
// 对同一个域名进行 DNS 查询的最小间隔时间
|
||
dnsCacheLookupInterval: 10000,
|
||
// DNS 同时缓存的最大域名数量,默认 1000
|
||
dnsCacheMaxLength: 1000,
|
||
|
||
request: {
|
||
// 默认 request 超时时间
|
||
timeout: 3 * 60 * 1000,
|
||
}
|
||
};
|
||
|
||
config.clusterClient = {
|
||
maxWaitTime: 60000 * 3,
|
||
responseTimeout: 60000 * 3,
|
||
};
|
||
|
||
|
||
config.jwt = {
|
||
secret: "6YPhrbCSKLejwZ5F",
|
||
exp:1000*24*60*60 //存在时间 单位位秒
|
||
};
|
||
|
||
config.regexp = {
|
||
username: /^[a-zA-Z0-9_-]{4,16}$/, //用户名正则,4到16位(字母,数字,下划线,减号)
|
||
password: /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,21}$/, //6-21字母和数字组成,不能是纯数字或纯英文
|
||
email: /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/, //Email正则
|
||
phone: /^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(18[0,2,5-9]))\d{8}$/, //手机号正则
|
||
// name: /^[\u4E00-\u9FA5]{2,5}(?:·[\u4E00-\u9FA5]{2,5})*$/, //姓名正则
|
||
name: /^[A-Za-z0-9_\-\u4e00-\u9fa5]{1,10}$/, //名字正则
|
||
idcard: /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/, //18位身份证
|
||
url: /^(?:([A-Za-z]+):)?(\/{0,3})([0-9.\-A-Za-z]+)(?::(\d+))?(?:\/([^?#]*))?(?:\?([^#]*))?(?:#(.*))?$/, // url验证
|
||
money: /^(([1-9][0-9]*)|(([0]\.\d{1,2}|[1-9][0-9]*\.\d{1,2})))$/, //金额
|
||
imageCode: /^[a-zA-Z0-9]{6}$/, //图形验证码
|
||
msgCode: /^[0-9]{6}$/, //手机验证码
|
||
objectId: /^[a-zA-Z0-9]{24}$/, //mongodb ObjectId正则
|
||
};
|
||
|
||
config.initData = {}
|
||
|
||
config.png16 = {
|
||
};
|
||
return config;
|
||
};
|