Commit 023fd55b by 赵庆

gsb

parent a5e4def7
...@@ -4,6 +4,7 @@ class EntcontractApi { ...@@ -4,6 +4,7 @@ class EntcontractApi {
constructor() { constructor() {
this.entcontractSve = system.getObject("service.entcontractSve"); this.entcontractSve = system.getObject("service.entcontractSve");
this.ecompanybusiSve = system.getObject("service.ecompanybusiSve"); this.ecompanybusiSve = system.getObject("service.ecompanybusiSve");
this.idcardClient = system.getObject("util.idcardClient");
} }
async autoSign(pobj) { async autoSign(pobj) {
...@@ -68,7 +69,6 @@ class EntcontractApi { ...@@ -68,7 +69,6 @@ class EntcontractApi {
if (param.sign != sign) { if (param.sign != sign) {
return this.returnjson(1001001, "签名错误"); return this.returnjson(1001001, "签名错误");
} }
try { try {
var result = await this.entcontractSve.autoSign(param); var result = await this.entcontractSve.autoSign(param);
return result; return result;
...@@ -77,76 +77,75 @@ class EntcontractApi { ...@@ -77,76 +77,75 @@ class EntcontractApi {
} }
} }
async sinedUsers3rd(obj, req) { async autoSignToPer(pobj) {
// 验证合法性 // 处理参数
var appId = obj.appId; var param = {
var nonceStr = obj.nonceStr; ecid: this.trim(pobj.ecid),
var idNo = obj.idNo; appId: this.trim(pobj.appId),
var startId = obj.startId || 0; userId: this.trim(pobj.userId),
var userId = obj.userId || ""; idName: this.trim(pobj.idName),
var pageSize = 20; mobile: this.trim(pobj.mobile),
idNo: this.trim(pobj.idNo),
nonceStr: this.trim(pobj.nonceStr),
sign: this.trim(pobj.sign)
};
if (!param.ecid) {
return this.returnjson(-1, "请传入薪必果提供的ecid")
}
if (!param.appId) {
return this.returnjson(-1, "请传入薪必果提供的appId")
}
if (!param.userId) {
return this.returnjson(-1, "请提供该用户的userId")
}
if (!param.idName) {
return this.returnjson(-1, "请提供该用户姓名")
}
if (!param.idNo) {
return this.returnjson(-1, "请提供该用户身份证号")
}else {
if(!await this.idcardClient.checkIDCard(param.idNo)){
return this.returnjson(-1, "身份证格式不正确");
}
}
if (!param.nonceStr) {
return this.returnjson(-1, "请提供随机码")
}
// 查appId关联key
var busi = await this.ecompanybusiSve.findOne({ var busi = await this.ecompanybusiSve.findOne({
appId: appId appId: param.appId
}); });
if (!busi) { if (!busi || !busi.key) {
return { return this.returnjson(1001003, "配置信息错误,请联系薪必果人员进行配置");
code: 1001003,
msg: "配置信息错误,请联系薪必果人员进行配置"
};
} }
// 签名
var signArr = []; var signArr = [];
signArr.push("appId=" + appId); var keys = Object.keys(param).sort();
signArr.push("idNo=" + idNo); for (var i = 0; i < keys.length; i++) {
signArr.push("nonceStr=" + nonceStr); var k = keys[i];
signArr.push("startId=" + startId); var v = param[k];
signArr.push("userId=" + userId); if (!k || !v || k == 'sign') {
signArr.push("key=" + busi.key); continue;
}
var sign = md5(signArr.join("&")).toUpperCase(); signArr.push(k + "=" + v);
if (sign != obj.sign) { }
return { var signStr = signArr.join("&") + "&key=" + busi.key;
code: 1001001, var sign = md5(signStr).toUpperCase();
msg: "签名失败" if (param.sign != sign) {
}; return this.returnjson(1001001, "签名错误");
} }
var params = {
ecompanyId: busi.ecompany_id,
startId: startId,
idNo: idNo,
pageSize: pageSize,
userId3rd: userId,
};
try { try {
var userList = await this.entcontractSve.findSignedUses4Push(params); var result = await this.entcontractSve.autoSignToPer(param);
var result = {
code: 0,
msg: "success",
};
result.data = userList;
return result;
} catch (e) {
var result = {
code: 500,
msg: "接口异常"
};
console.log(e.stack);
//日志记录
logCtl.error({
optitle: "校验是否签约error",
op: "api/econtractApi/validContract",
content: e.stack,
clientIp: req.clientIp
});
return result; return result;
} catch (error) {
console.log(error);
} }
} }
trim(o) { trim(o) {
if (!o) { if (!o) {
return ""; return "";
...@@ -154,7 +153,6 @@ class EntcontractApi { ...@@ -154,7 +153,6 @@ class EntcontractApi {
return o.toString().trim(); return o.toString().trim();
} }
returnjson(code, msg, data) { returnjson(code, msg, data) {
return { return {
code: code, code: code,
......
const system = require("../../system");
const Dao = require("../dao.base");
class YzmerchantsignedDao extends Dao {
constructor() {
super(Dao.getModelName(YzmerchantsignedDao));
}
async getById(id) {
return await this.model.findOne({where: {id: id}, raw: true});
}
}
module.exports = YzmerchantsignedDao;
const system = require("../../system");
const settings = require("../../../config/settings");
const uiconfig = system.getUiConfig2(settings.wxconfig.appId);
module.exports = (db, DataTypes) => {
return db.define("yzmerchantsigned", {
companyName: DataTypes.STRING,
appId: DataTypes.STRING,
mchtId: DataTypes.STRING,
mainId: DataTypes.STRING,
secret: DataTypes.STRING,
}, {
paranoid: true, //假的删除
underscored: true,
version: true,
freezeTableName: true,
//freezeTableName: true,
// define the table's name
tableName: 'c_yzmerchant_signed',
validate: {
},
indexes: [
// Create a unique index on email
// {
// unique: true,
// fields: ['email']
// },
//
// // Creates a gin index on data with the jsonb_path_ops operator
// {
// fields: ['data'],
// using: 'gin',
// operator: 'jsonb_path_ops'
// },
//
// // By default index name will be [table]_[fields]
// // Creates a multi column partial index
// {
// name: 'public_by_author',
// fields: ['author', 'status'],
// where: {
// status: 'public'
// }
// },
//
// // A BTREE index with a ordered field
// {
// name: 'title_index',
// method: 'BTREE',
// fields: ['author', {attribute: 'title', collate: 'en_US', order: 'DESC', length: 5}]
// }
]
});
}
\ No newline at end of file
const system = require("../../system");
const ServiceBase = require("../sve.base")
class YzmerchantsignedService extends ServiceBase {
constructor() {
super(ServiceBase.getDaoName(YzmerchantsignedService));
}
}
module.exports = YzmerchantsignedService;
...@@ -859,11 +859,6 @@ ...@@ -859,11 +859,6 @@
"resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz",
"integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=" "integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs="
}, },
"crypto": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/crypto/-/crypto-1.0.1.tgz",
"integrity": "sha512-VxBKmeNcqQdiUQUW2Tzq0t377b54N2bMtXO/qiLa+6eRRmmC4qT3D4OnTGoT/U6O9aklQ/jTwbOtRMTTY8G0Ig=="
},
"crypto-js": { "crypto-js": {
"version": "3.1.9-1", "version": "3.1.9-1",
"resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-3.1.9-1.tgz", "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-3.1.9-1.tgz",
......
...@@ -19,7 +19,6 @@ ...@@ -19,7 +19,6 @@
"connect-redis": "^3.3.3", "connect-redis": "^3.3.3",
"continuation-local-storage": "^3.2.1", "continuation-local-storage": "^3.2.1",
"cookie-parser": "^1.4.3", "cookie-parser": "^1.4.3",
"crypto": "^1.0.1",
"crypto-js": "^3.1.9-1", "crypto-js": "^3.1.9-1",
"debug": "2.6.9", "debug": "2.6.9",
"easyimage": "^3.1.0", "easyimage": "^3.1.0",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment