123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- <?php
- /**
- * 封装一些转化为u9数据的操作
- */
- class Model_logic_u9tools extends Lin_Model {
- function __construct(){
- parent::__construct();
- $this->load->_model('Model_classid','classid');
- $this->load->_model('Model_typeclass','typeclass');
- }
- //获取u9的料号
- public function getU9bm(array $list,$sku_name){
- if(empty($list)){
- return [];
- }
- $tcjm = []; $typeclass = [];
- $classid = $this->classid->sku();
- $tcall = $this->typeclass->find_all();
- foreach ($tcall as $v)
- {
- $tcjm[$v['id']] = array($v['jm'],$v['classid']);
- $typeclass[$v['id']] = array('zh'=>$v['zh'],'classid'=>$v['classid'],'bm'=>$v['bm'],'title'=>$v['title'],'jm'=>$v['jm']);
- }
- foreach($list as $k=>$v){
-
- $r = $this->getOneU9bm($v[$sku_name],$classid,$typeclass);
- $list[$k]['jm'] = $r['jm'];
- $list[$k]['zh'] = $r['zh'];
- $list[$k]['bm'] = $r['bm'];
- }
- return $list;
- }
- public function getOneU9bm($sku,$classid,$typeclass){
- $bm = '03';
- $ret_arr = [
- 'jm'=>"",//料号,SKU
- 'zh'=>"",//产品名称
- 'bm'=>"",//主分类下的编码
- ];
- if(stripos($sku,'-131-') !== false)
- {
- return $ret_arr;
- }
- $pm = $classid;
- $jm = $classid;
- $bmpx = array(13=>'',16=>'',18=>'',25=>'',26=>'',41=>'');
- $features = str_replace(array('-163-','-164-','-165-','-166-'),'-',$sku);
- $features = explode("-",trim($sku,'-'));
- foreach($features as $k=>$v)
- {
- if(isset($typeclass[$v]) && isset($bmpx[$typeclass[$v]['classid']]))
- {
- if($typeclass[$v]['bm'] != '')
- {
- $bmpx[$typeclass[$v]['classid']] = $typeclass[$v]['bm'];
-
- }
- }
- if($v != 0)
- {
- if(isset($pm[$typeclass[$v]['classid']]))
- {
- if($typeclass[$v]['title'] == '9A')
- {
- $pm[$typeclass[$v]['classid']] = '9A';
- }
- else if($typeclass[$v]['title'] == '10A')
- {
- $pm[$typeclass[$v]['classid']] = '10A';
- }
- else
- {
- $clzh = $typeclass[$v]['zh'];
- if(stripos($typeclass[$v]['zh'],'|') !== false)
- {
- $clzh = explode('|',rtrim($typeclass[$v]['zh'],'|'));
- $clzh = $clzh[0];
- }
- $pm[$typeclass[$v]['classid']] = $clzh;
- }
- }
- if(isset($jm[$typeclass[$v]['classid']]))
- {
- if($typeclass[$v]['jm'])
- {
- $jm[$typeclass[$v]['classid']] = $typeclass[$v]['jm'];
- }
- }
- }
- }
- $jm = array_filter($jm);//去除空值
- $jm = implode("-",$jm);
- $pm = array_filter($pm);//去除空值
- $zh = implode(" ",$pm);
- $zh = preg_replace("/\r\n|\r|\n/",'',trim($zh,' '));
- return [
- 'jm'=>$jm,//料号,SKU
- 'zh'=>$zh,//产品名称
- 'bm'=>$bm.implode("",$bmpx),//主分类下的编码
- ];
- }
- }
|