Commit f427866e by v_vjyjiang

Merge branch 'center-manage' of gitlab.gongsibao.com:jiangyong/zhichan into center-manage

parents ba8d04e4 e7854f27
node_modules/ node_modules/
*_build.sh
\ No newline at end of file
#!/bin/bash #!/bin/bash
FROM registry.cn-beijing.aliyuncs.com/hantang2/node105:v2 FROM registry.cn-beijing.aliyuncs.com/hantang2/node105:v2
MAINTAINER jy "jiangyong@gongsibao.com" MAINTAINER jy "jiangyong@gongsibao.com"
ARG webenv
ADD center-manage /apps/center-manage/ ADD center-manage /apps/center-manage/
ADD web/$webenv /apps/center-manage/app/front/entry/public/
WORKDIR /apps/center-manage/ WORKDIR /apps/center-manage/
RUN cnpm install -S RUN cnpm install -S
CMD ["node","/apps/center-manage/main.js"] CMD ["node","/apps/center-manage/main.js"]
......
...@@ -9,11 +9,11 @@ class UserService extends ServiceBase { ...@@ -9,11 +9,11 @@ class UserService extends ServiceBase {
this.roleDao = system.getObject("db.auth.roleDao"); this.roleDao = system.getObject("db.auth.roleDao");
this.authS = system.getObject("service.auth.authSve"); this.authS = system.getObject("service.auth.authSve");
} }
async pmgetUserByCode (code) { async pmgetUserByCode(code) {
let ux = await this.cacheManager["CodeCache"].getCache(code); let ux = await this.cacheManager["CodeCache"].getCache(code);
return ux; return ux;
} }
async loginApp (appkey, uname) { async loginApp(appkey, uname) {
let rtn = {} let rtn = {}
let app = await this.cacheManager["AppCache"].cache(appkey); let app = await this.cacheManager["AppCache"].cache(appkey);
let userLogined = await this.cacheManager["UserCache"].cache(uname); let userLogined = await this.cacheManager["UserCache"].cache(uname);
...@@ -38,7 +38,7 @@ class UserService extends ServiceBase { ...@@ -38,7 +38,7 @@ class UserService extends ServiceBase {
//和租户绑定同一家公司 //和租户绑定同一家公司
//按照用户名和密码进行注册 //按照用户名和密码进行注册
//控制器端检查用户名和密码非空 //控制器端检查用户名和密码非空
async registerByTantent (p, q) { async registerByTantent(p, q) {
// 需要默认添加访客角色,为了控制单点从平台登录时看到的菜单和功能 // 需要默认添加访客角色,为了控制单点从平台登录时看到的菜单和功能
if (p.roles && p.roles.length > 0) { if (p.roles && p.roles.length > 0) {
if (p.roles.indexOf(settings.pmroleid["pr"]) < 0) { if (p.roles.indexOf(settings.pmroleid["pr"]) < 0) {
...@@ -51,7 +51,7 @@ class UserService extends ServiceBase { ...@@ -51,7 +51,7 @@ class UserService extends ServiceBase {
} }
//应用的自由用户注册,无需验证,需要前端头设置公司KEY //应用的自由用户注册,无需验证,需要前端头设置公司KEY
async pmregisterByFreeUser (p, q) { async pmregisterByFreeUser(p, q) {
p.rolecodes = [settings.pmroleid["pr"]]; p.rolecodes = [settings.pmroleid["pr"]];
let rtn = await this.pmregister(p, q) let rtn = await this.pmregister(p, q)
return rtn; return rtn;
...@@ -60,7 +60,7 @@ class UserService extends ServiceBase { ...@@ -60,7 +60,7 @@ class UserService extends ServiceBase {
//平台租户注册接口方法 //平台租户注册接口方法
//控制器端检查用户名和密码非空 //控制器端检查用户名和密码非空
async pmregister (p, q) { async pmregister(p, q) {
var self = this; var self = this;
let tmppwd = p.password; let tmppwd = p.password;
if (!tmppwd) { if (!tmppwd) {
...@@ -134,7 +134,7 @@ class UserService extends ServiceBase { ...@@ -134,7 +134,7 @@ class UserService extends ServiceBase {
} }
}); });
} }
async logout (pobj) { async logout(pobj) {
await this.cacheManager["UserCache"].invalidate(pobj.username); await this.cacheManager["UserCache"].invalidate(pobj.username);
return {} return {}
} }
...@@ -142,7 +142,7 @@ class UserService extends ServiceBase { ...@@ -142,7 +142,7 @@ class UserService extends ServiceBase {
//登录接口封装kong-url //登录接口封装kong-url
//登录路由放行 //登录路由放行
//p里面含有appkey,company_id,userName,password //p里面含有appkey,company_id,userName,password
async pmlogin (p, q, req) { async pmlogin(p, q, req) {
var self = this; var self = this;
//先要按照用户名,在统一账户中查找存在性 //先要按照用户名,在统一账户中查找存在性
//如果不存在 //如果不存在
...@@ -186,7 +186,7 @@ class UserService extends ServiceBase { ...@@ -186,7 +186,7 @@ class UserService extends ServiceBase {
} }
}) })
} }
async getUserInfo (uname) { async getUserInfo(uname) {
// let userfind = await this.dao.model.findOne({ // let userfind = await this.dao.model.findOne({
// where: { userName: uname, app_id: settings.pmappid }, // where: { userName: uname, app_id: settings.pmappid },
// attributes: ['userName', 'nickName',"headUrl",'isSuper','isAdmin'], // attributes: ['userName', 'nickName',"headUrl",'isSuper','isAdmin'],
...@@ -207,7 +207,7 @@ class UserService extends ServiceBase { ...@@ -207,7 +207,7 @@ class UserService extends ServiceBase {
//自由用户的电话登录和注册 //自由用户的电话登录和注册
//需要存在公司KEY //需要存在公司KEY
async pmloginByVCodeForFreeUser (p, q) { async pmloginByVCodeForFreeUser(p, q) {
p.rolecodes = [settings.pmroleid["pr"]]; p.rolecodes = [settings.pmroleid["pr"]];
let rtn = await this.pmloginByVCode(p, q, req) let rtn = await this.pmloginByVCode(p, q, req)
return system.getResult(rtn); return system.getResult(rtn);
...@@ -216,7 +216,7 @@ class UserService extends ServiceBase { ...@@ -216,7 +216,7 @@ class UserService extends ServiceBase {
//平台租户注册与登录 //平台租户注册与登录
//用户验证码登录 //用户验证码登录
// //
async pmloginByVCode (p, q, req) { async pmloginByVCode(p, q, req) {
var rtn = {} var rtn = {}
//检查传递过来的手机验证码是否与缓存的一致 //检查传递过来的手机验证码是否与缓存的一致
let mobile = p.mobile; let mobile = p.mobile;
...@@ -261,19 +261,19 @@ class UserService extends ServiceBase { ...@@ -261,19 +261,19 @@ class UserService extends ServiceBase {
//不一致那么就 //不一致那么就
} }
//发送手机验证码并缓存 //发送手机验证码并缓存
async sendVCode (p, q, req) { async sendVCode(p, q, req) {
let mobile = p.mobile; let mobile = p.mobile;
let vcodeobj = await this.cacheManager["VCodeCache"].cache(mobile, null, 60); let vcodeobj = await this.cacheManager["VCodeCache"].cache(mobile, null, 60);
return vcodeobj.vcode; return vcodeobj.vcode;
} }
async reSendVCode (p, q, req) { async reSendVCode(p, q, req) {
let mobile = p.mobile; let mobile = p.mobile;
await this.cacheManager["VCodeCache"].invalidate(mobile); await this.cacheManager["VCodeCache"].invalidate(mobile);
let vcodeobj = await this.cacheManager["VCodeCache"].cache(mobile, null, 60); let vcodeobj = await this.cacheManager["VCodeCache"].cache(mobile, null, 60);
return vcodeobj.vcode; return vcodeobj.vcode;
} }
//修改中心密码 //修改中心密码
async cmodifypwd (uname, newpwd, cmpid) { async cmodifypwd(uname, newpwd, cmpid) {
try { try {
let rtn = await system.postJsonTypeReq(UserService.consumerUrl(uname), { tags: ["cmp_" + cmpid, "pass_" + newpwd] }, "PATCH") let rtn = await system.postJsonTypeReq(UserService.consumerUrl(uname), { tags: ["cmp_" + cmpid, "pass_" + newpwd] }, "PATCH")
console.log(rtn) console.log(rtn)
...@@ -287,7 +287,7 @@ class UserService extends ServiceBase { ...@@ -287,7 +287,7 @@ class UserService extends ServiceBase {
} }
} }
//创建统一账号及jwt身份 //创建统一账号及jwt身份
async cregister (uname, cmpid, pass, uid) { async cregister(uname, cmpid, pass, uid) {
try { try {
var rtn2 = null; var rtn2 = null;
let rtn = await system.postJsonTypeReq(UserService.newConsumerUrl(), { username: uname, custom_id: uid, tags: ["cmp_" + cmpid, "pass_" + pass] }) let rtn = await system.postJsonTypeReq(UserService.newConsumerUrl(), { username: uname, custom_id: uid, tags: ["cmp_" + cmpid, "pass_" + pass] })
...@@ -309,7 +309,7 @@ class UserService extends ServiceBase { ...@@ -309,7 +309,7 @@ class UserService extends ServiceBase {
} }
//plkey--对应消费者jwt身份的key,插件解码token后,获取iss-key,查询出身份,利用 //plkey--对应消费者jwt身份的key,插件解码token后,获取iss-key,查询出身份,利用
//身份中的secret验证签名 //身份中的secret验证签名
async jwtsign (plkey, secretstr, opts) { async jwtsign(plkey, secretstr, opts) {
let promise = new Promise(function (resv, rej) { let promise = new Promise(function (resv, rej) {
jwt.sign({ exp: Math.floor(Date.now() / 1000) + (60 * 60), iss: plkey }, secretstr, opts, function (err, rtn) { jwt.sign({ exp: Math.floor(Date.now() / 1000) + (60 * 60), iss: plkey }, secretstr, opts, function (err, rtn) {
if (err) { if (err) {
...@@ -322,13 +322,13 @@ class UserService extends ServiceBase { ...@@ -322,13 +322,13 @@ class UserService extends ServiceBase {
return promise; return promise;
} }
//只要登录 生成新的访问jwttoken //只要登录 生成新的访问jwttoken
async cmakejwt (key, secret, opts) { async cmakejwt(key, secret, opts) {
var token = await this.jwtsign(key, secret, opts); var token = await this.jwtsign(key, secret, opts);
return token; return token;
} }
//删除统一账号 //删除统一账号
async cunregister (uname) { async cunregister(uname) {
try { try {
let rtn = await system.delReq(UserService.consumerUrl(uname)) let rtn = await system.delReq(UserService.consumerUrl(uname))
if (rtn.statusCode == 204) { if (rtn.statusCode == 204) {
...@@ -342,15 +342,15 @@ class UserService extends ServiceBase { ...@@ -342,15 +342,15 @@ class UserService extends ServiceBase {
//登录统一账号 //登录统一账号
async clogin (uname) { async clogin(uname) {
//检查是否存在重名 //检查是否存在重名
} }
//按用户名查询统一用户 //按用户名查询统一用户
async findCUser (uname) { async findCUser(uname) {
} }
async resetPassword (uname, pwd) { async resetPassword(uname, pwd) {
let inpassword = this.getEncryptStr(pwd, true); let inpassword = this.getEncryptStr(pwd, true);
var self = this; var self = this;
return this.db.transaction(async function (t) { return this.db.transaction(async function (t) {
...@@ -368,7 +368,7 @@ class UserService extends ServiceBase { ...@@ -368,7 +368,7 @@ class UserService extends ServiceBase {
}); });
} }
//修改 //修改
async update (qobj, tm = null) { async update(qobj, tm = null) {
var self = this; var self = this;
return this.db.transaction(async function (t) { return this.db.transaction(async function (t) {
delete qobj['company_id'] delete qobj['company_id']
...@@ -390,7 +390,7 @@ class UserService extends ServiceBase { ...@@ -390,7 +390,7 @@ class UserService extends ServiceBase {
* @param {*} productCatName 产品类型名称 * @param {*} productCatName 产品类型名称
* @param {*} regionName 区域 * @param {*} regionName 区域
*/ */
async getBizUserForBizChance (clientMobile, spName, productCatName, regionName) { async getBizUserForBizChance(clientMobile, spName, productCatName, regionName) {
var self = this var self = this
clientMobile = clientMobile + "_" + spName + "_" + regionName + "_" + productCatName clientMobile = clientMobile + "_" + spName + "_" + regionName + "_" + productCatName
//按照服务商名字查询到公司,按照公司查询出users,条件是可以接受派单任务,并且技能标签含有,产品类别名称 //按照服务商名字查询到公司,按照公司查询出users,条件是可以接受派单任务,并且技能标签含有,产品类别名称
...@@ -467,7 +467,7 @@ class UserService extends ServiceBase { ...@@ -467,7 +467,7 @@ class UserService extends ServiceBase {
}) })
} }
async findCostBySkuCode (skucode) { async findCostBySkuCode(skucode) {
let productpricetmp = await this.db.models.productprice.findOne({ let productpricetmp = await this.db.models.productprice.findOne({
where: { skucode: skucode, isEnabled: true }, where: { skucode: skucode, isEnabled: true },
include: [ include: [
...@@ -493,7 +493,7 @@ class UserService extends ServiceBase { ...@@ -493,7 +493,7 @@ class UserService extends ServiceBase {
* @param {*} skucode 最小销售货品编码,来自渠道上架的码 * @param {*} skucode 最小销售货品编码,来自渠道上架的码
* @param {*} regionName 区域 * @param {*} regionName 区域
*/ */
async getBizUserForDelivery (xclientMobile, spName, productCatName, skucode, regionName) { async getBizUserForDelivery(xclientMobile, spName, productCatName, skucode, regionName) {
let clientMobile = 'fordeliver' + xclientMobile + "_" + spName + "_" + regionName + "_" + productCatName let clientMobile = 'fordeliver' + xclientMobile + "_" + spName + "_" + regionName + "_" + productCatName
var self = this var self = this
//按照服务商名字查询到公司,按照公司查询出users,条件是可以接受派单任务,并且技能标签含有,产品类别名称 //按照服务商名字查询到公司,按照公司查询出users,条件是可以接受派单任务,并且技能标签含有,产品类别名称
...@@ -512,7 +512,6 @@ class UserService extends ServiceBase { ...@@ -512,7 +512,6 @@ class UserService extends ServiceBase {
await self.cacheManager["ClientBindBizUserCache"].invalidate(clientMobile) await self.cacheManager["ClientBindBizUserCache"].invalidate(clientMobile)
} }
} }
if (isGoExec) {
let companyFind = await self.companyDao.model.findOne({ let companyFind = await self.companyDao.model.findOne({
where: { name: spName }, include: [ where: { name: spName }, include: [
{ {
...@@ -520,7 +519,9 @@ class UserService extends ServiceBase { ...@@ -520,7 +519,9 @@ class UserService extends ServiceBase {
} }
], excludes: ['orgJson'], transaction: t ], excludes: ['orgJson'], transaction: t
}); });
console.log("getBizUserForDelivery获取服务商信息:" + JSON.stringify(companyFind)); console.log("getBizUserForDelivery获取服务商信息:" + companyFind);
if (companyFind) {
if (isGoExec) {
let users = companyFind.us let users = companyFind.us
let cansels = users.filter(u => { let cansels = users.filter(u => {
if (regionName && regionName != "" && u.regiontags) { if (regionName && regionName != "" && u.regiontags) {
...@@ -558,7 +559,7 @@ class UserService extends ServiceBase { ...@@ -558,7 +559,7 @@ class UserService extends ServiceBase {
await self.cacheManager["ClientBindBizUserCache"].cache(clientMobile, tmp) await self.cacheManager["ClientBindBizUserCache"].cache(clientMobile, tmp)
return { userInfo: tmp, comInfo: { cost: tmp.cost, compId: tmp.compId } }; return { userInfo: tmp, comInfo: { cost: tmp.cost, compId: tmp.compId } };
} else { } else {
return { userInfo: null, comInfo: { cost: tmp.cost, compId: tmp.compId } }; return { userInfo: null, comInfo: { cost: costAmount, compId: companyFind.id } };
} }
} else { } else {
...@@ -569,12 +570,10 @@ class UserService extends ServiceBase { ...@@ -569,12 +570,10 @@ class UserService extends ServiceBase {
return { userInfo: null, comInfo: { cost: costAmount, compId: companyFind.id } }; return { userInfo: null, comInfo: { cost: costAmount, compId: companyFind.id } };
} }
} }
} else {
return { userInfo: null, comInfo: null }
}
}) })
} }
} }
module.exports = UserService; module.exports = UserService;
\ No newline at end of file
// let userS = new UserService()
// userS.findCosts().then(rtn => {
// console.log(rtn['costs.costamount'])
// })
\ No newline at end of file
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
This source diff could not be displayed because it is too large. You can view the blob instead.
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