Commit 29b8d137 by 蒋勇

d

parent 0ec526e9
...@@ -26,11 +26,11 @@ class AccessAuthAPI extends APIBase { ...@@ -26,11 +26,11 @@ class AccessAuthAPI extends APIBase {
} }
async getBizUserForBizChance(p,q,req){ async getBizUserForBizChance(p,q,req){
let s= await this.userSve.getBizUserForBizChance(p.clientMobile,p.spName,p.productCatName) let s= await this.userSve.getBizUserForBizChance(p.clientMobile,p.spName,p.productCatName,p.regionName)
return system.getResult(s) return system.getResult(s)
} }
async getBizUserForDelivery(p,q,req){ async getBizUserForDelivery(p,q,req){
let s= await this.userSve.getBizUserForDelivery(p.clientMobile,p.spName,p.productCatName,p.skucode) let s= await this.userSve.getBizUserForDelivery(p.clientMobile,p.spName,p.productCatName,p.skucode,,p.regionName)
return system.getResult(s) return system.getResult(s)
} }
classDesc() { classDesc() {
......
...@@ -52,6 +52,10 @@ module.exports = (db, DataTypes) => { ...@@ -52,6 +52,10 @@ module.exports = (db, DataTypes) => {
opath:DataTypes.STRING,//作业务时,需要在业务表冗余当前处理人的opath opath:DataTypes.STRING,//作业务时,需要在业务表冗余当前处理人的opath
ptags:DataTypes.STRING,//权限标签,逗号分隔,可以按照标签查看opath中含有标签的数据 ptags:DataTypes.STRING,//权限标签,逗号分隔,可以按照标签查看opath中含有标签的数据
skilltags:DataTypes.STRING,// 技能标签 skilltags:DataTypes.STRING,// 技能标签
regiontags:{
type: DataTypes.STRING,
allowNull: true,
}// 区域标签
},{ },{
paranoid: true,//假的删除 paranoid: true,//假的删除
underscored: true, underscored: true,
......
...@@ -20,6 +20,10 @@ module.exports = (db, DataTypes) => { ...@@ -20,6 +20,10 @@ module.exports = (db, DataTypes) => {
type: DataTypes.STRING, type: DataTypes.STRING,
allowNull: false, allowNull: false,
},//和user的from相同,在注册user时,去创建 },//和user的from相同,在注册user时,去创建
servicer_name:{
type: DataTypes.STRING,
allowNull: false,
}
}, { }, {
paranoid: true,//假的删除 paranoid: true,//假的删除
underscored: true, underscored: true,
...@@ -28,6 +32,11 @@ module.exports = (db, DataTypes) => { ...@@ -28,6 +32,11 @@ module.exports = (db, DataTypes) => {
//freezeTableName: true, //freezeTableName: true,
// define the table's name // define the table's name
tableName: 'x_product', tableName: 'x_product',
getterMethods: {
spName() {
return servicer_name
}
},
validate: { validate: {
}, },
......
...@@ -369,8 +369,9 @@ class UserService extends ServiceBase { ...@@ -369,8 +369,9 @@ class UserService extends ServiceBase {
* @param {*} clientMobile 客户电话 * @param {*} clientMobile 客户电话
* @param {*} spName 服务商名称 * @param {*} spName 服务商名称
* @param {*} productCatName 产品类型名称 * @param {*} productCatName 产品类型名称
* @param {*} regionName 区域
*/ */
async getBizUserForBizChance(clientMobile, spName, productCatName) { async getBizUserForBizChance(clientMobile, spName, productCatName,regionName) {
var self = this var self = this
//按照服务商名字查询到公司,按照公司查询出users,条件是可以接受派单任务,并且技能标签含有,产品类别名称 //按照服务商名字查询到公司,按照公司查询出users,条件是可以接受派单任务,并且技能标签含有,产品类别名称
return this.db.transaction(async function (t) { return this.db.transaction(async function (t) {
...@@ -398,11 +399,20 @@ class UserService extends ServiceBase { ...@@ -398,11 +399,20 @@ class UserService extends ServiceBase {
console.log(companyFind) console.log(companyFind)
let users = companyFind.us let users = companyFind.us
let cansels = users.filter(u => { let cansels = users.filter(u => {
if (u.isAllocated && u.skilltags.indexOf(productCatName) >= 0) { if(regionName && regionName!=""){
return true if (u.isAllocated && u.skilltags.indexOf(productCatName) >= 0 && u.regiontags.indexOf(regionName)>=0) {
} else { return true
return false } else {
return false
}
}else{
if (u.isAllocated && u.skilltags.indexOf(productCatName) >= 0) {
return true
} else {
return false
}
} }
}) })
let lngth = cansels.length let lngth = cansels.length
if (lngth > 0) { if (lngth > 0) {
...@@ -437,8 +447,9 @@ class UserService extends ServiceBase { ...@@ -437,8 +447,9 @@ class UserService extends ServiceBase {
* @param {*} spName 服务商名称 * @param {*} spName 服务商名称
* @param {*} productCatName 产品类型名称 * @param {*} productCatName 产品类型名称
* @param {*} skucode 最小销售货品编码,来自渠道上架的码 * @param {*} skucode 最小销售货品编码,来自渠道上架的码
* @param {*} regionName 区域
*/ */
async getBizUserForDelivery(xclientMobile, spName, productCatName, skucode) { async getBizUserForDelivery(xclientMobile, spName, productCatName, skucode,regionName) {
let clientMobile='fordeliver'+xclientMobile let clientMobile='fordeliver'+xclientMobile
var self = this var self = this
//按照服务商名字查询到公司,按照公司查询出users,条件是可以接受派单任务,并且技能标签含有,产品类别名称 //按照服务商名字查询到公司,按照公司查询出users,条件是可以接受派单任务,并且技能标签含有,产品类别名称
...@@ -486,10 +497,18 @@ class UserService extends ServiceBase { ...@@ -486,10 +497,18 @@ class UserService extends ServiceBase {
}); });
let users = companyFind.us let users = companyFind.us
let cansels = users.filter(u => { let cansels = users.filter(u => {
if (u.isAllocated && u.skilltags.indexOf(productCatName) >= 0) { if(regionName && regionName!=""){
return true if (u.isAllocated && u.skilltags.indexOf(productCatName) >= 0 && u.regiontags.indexOf(regionName)>=0) {
} else { return true
return false } else {
return false
}
}else{
if (u.isAllocated && u.skilltags.indexOf(productCatName) >= 0) {
return true
} else {
return false
}
} }
}) })
let lngth = cansels.length let lngth = cansels.length
......
...@@ -10,35 +10,37 @@ class XProductService extends ServiceBase { ...@@ -10,35 +10,37 @@ class XProductService extends ServiceBase {
} }
} }
module.exports = XProductService; module.exports = XProductService;
// function findTitlePath(items,findstr,results){ function findTitlePath(items,findstr,results){
// items.forEach(item=>{ items.forEach(item=>{
// if(item.title.indexOf(findstr)<0){ if(item.title.indexOf(findstr)<0){
// if(item.children && item.children.length>0){ if(item.children && item.children.length>0){
// return findTitlePath(item.children,findstr,results) return findTitlePath(item.children,findstr,results)
// } }
// }else{ }else{
// results.push(item.titlepath) results.push(item.titlepath)
// return return
// } }
// }) })
// } }
// let ps = new XProductService() let ps = new XProductService()
// let ts=system.getObject("service.common.treearchSve") let ts=system.getObject("service.common.treearchSve")
// let products=[] let products=[]
// ps.buildProductCat().then(res => { ps.buildProductCat().then(res => {
// ts.getRegions().then(rs=>{ // console.log(JSON.stringify(res))
// res.forEach(xp=>{ ts.getRegions().then(rs=>{
// let product={} res.forEach(xp=>{
// product.code=xp.path_code+xp.id let product={}
// results=[] product.code=xp.path_code+xp.id
// findTitlePath(rs,xp.region_name,results) results=[]
// product.regionpath=results[0] findTitlePath(rs,xp.region_name,results)
// product.productcatpath="产品分类"+xp.path_name product.regionpath=results[0]
// product.name= product.productcatpath+"~"+ product.regionpath product.productcatpath="产品分类"+xp.path_name
// products.push(product) product.name= product.productcatpath+"~"+ product.regionpath
// }) product.sptags=xp.servicer_name
// console.log(JSON.stringify(products)) products.push(product)
// }) })
console.log(JSON.stringify(products))
})
// { id: 128, // { id: 128,
// path_code: '/ic/gsreg/'+id,----->code // path_code: '/ic/gsreg/'+id,----->code
......
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