const system = require("../../../system");
const ServiceBase = require("../../sve.base");
class XProductService extends ServiceBase {
  constructor() {
    super("xproduct", ServiceBase.getDaoName(XProductService));
  }
  async buildProductCat() {
    let ps = await this.dao.model.findAll({ raw: true })
    return ps
  }
}
module.exports = XProductService;
function findTitlePath(items,findstr,results){
  items.forEach(item=>{
    if(item.title.indexOf(findstr)<0){
      if(item.children && item.children.length>0){
        return findTitlePath(item.children,findstr,results)
      }
    }else{
      results.push(item.titlepath)
      return
    }
  })
}
let ps = new XProductService()
let ts=system.getObject("service.common.treearchSve") 
let products=[]
ps.buildProductCat().then(res => {
  // console.log(JSON.stringify(res))
  ts.getRegions().then(rs=>{
    res.forEach(xp=>{
      let product={}
      product.code=xp.path_code+xp.id
      results=[]
      findTitlePath(rs,xp.region_name,results)
      product.regionpath=results[0]
      product.productcatpath="产品分类"+xp.path_name
      product.name= product.productcatpath+"~"+ product.regionpath
      product.sptags=xp.servicer_name
      products.push(product)
    })
    console.log(JSON.stringify(products))
  })
  
  // { id: 128,
  //   path_code: '/ic/gsreg/'+id,----->code
  //   path_name: '/工商服务/公司注册/',+产品分类---->productcatpath
  //   region_id: '320400',
  //   region_name: '常州'}--->regionpath

  //通过region_name--解析出regionpath
  //path_name--添加“产品分类”
//code,regionpath,productcatpath,name






  // let treedata={}
  // res.forEach(item=>{
  //   let pathcodes=item.path_code.split("/")
  //   let pathnames=item.path_name.split("/")
  //   let pathcoderesults=pathcodes.slice(1,3)
  //   let pathnameresults=pathnames.slice(1,3)
  //   let codekey=pathcoderesults[0]
  //   if(!treedata[codekey]){
  //     let tmp={}
  //     tmp["code"]=pathcoderesults[0]
  //     tmp["title"]=pathnameresults[0]
  //     tmp["orgpath"]="/"+pathcoderesults[0]
  //     tmp["titlepath"]="/"+pathnameresults[0]
  //     tmp.children=[
  //       {
  //         code:pathcoderesults[1],
  //         title:pathnameresults[1],
  //         orgpath:item.path_code,
  //         titlepath:item.path_name
  //       }
  //     ]
  //   treedata[codekey]= tmp
  //   }else{
  //     let f=treedata[codekey].children.filter(it=>{
  //       if(it.code==pathcoderesults[1]){
  //         return true
  //       }else{
  //         return false
  //       }
  //     })
  //     if(f.length==0){
  //       let n={
  //         code:pathcoderesults[1],
  //         title:pathnameresults[1],
  //         orgpath:item.path_code,
  //         titlepath:item.path_name
  //       }
  //       treedata[codekey].children.push(n)
  //     }
  //   }
  // })
  // let root = {
  //   title: "产品分类",
  //   code: "root",
  //   orgpath: "root",
  //   children: [
  //   ]
  // }
  // Object.keys(treedata).forEach(k=>{
  //   root.children.push(treedata[k])
  // })
  // console.log(JSON.stringify(root))
})