|
@@ -0,0 +1,48 @@
|
|
|
+const fs = require('fs');
|
|
|
+const path = require('path');
|
|
|
+
|
|
|
+const measureType = require('../app/const/tender').measureType;
|
|
|
+
|
|
|
+const mysql = require('mysql');
|
|
|
+const oss = require('ali-oss');
|
|
|
+const config = process.argv.splice(2)[0];
|
|
|
+if (['local', 'uat', 'default'].indexOf(config) < 0) throw `参数错误: ${config}`;
|
|
|
+const options = require(`../config/config.${config}`)({ baseDir: __dirname + '/app', root: __dirname, name: 'calc' });
|
|
|
+
|
|
|
+const pool = mysql.createPool(options.mysql.client);
|
|
|
+const ossOption = {
|
|
|
+ bucket: options.oss.clients.his.bucket,
|
|
|
+ accessKeyId: options.oss.default.accessKeyId,
|
|
|
+ accessKeySecret: options.oss.default.accessKeySecret,
|
|
|
+ endpoint: options.oss.default.endpoint,
|
|
|
+ timeout: options.oss.default.timeout,
|
|
|
+};
|
|
|
+const ossClient = new oss(ossOption);
|
|
|
+
|
|
|
+const querySql = async function(sql, sqlParam) {
|
|
|
+ return new Promise(function(resolve, reject) {
|
|
|
+ pool.getConnection(function(err, conn) {
|
|
|
+ if (err) {
|
|
|
+ if (err) console.log(err);
|
|
|
+ reject(err);
|
|
|
+ } else {
|
|
|
+ conn.query(sql, sqlParam, function(err, rows, fields) {
|
|
|
+ if (err) console.log(err);
|
|
|
+ // 释放连接
|
|
|
+ conn.release();
|
|
|
+ // 传递Promise回调对象
|
|
|
+ resolve(rows);
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ });
|
|
|
+};
|
|
|
+
|
|
|
+const getTableName = function(tender, table) {
|
|
|
+ switch(table) {
|
|
|
+ case 'ledger': return 'zh_ledger_' + (tender.id % 10);
|
|
|
+ case 'pos': return 'zh_pos_' + (tender.id % 20);
|
|
|
+ case 'revise_bills': return 'zh_revise_bills_' + (tender.id % 10);
|
|
|
+ case 'revise_pos': return 'zh_revise_pos_' + (tender.id % 20);
|
|
|
+ }
|
|
|
+};
|