产品生成信息表的数据迁移

来源:互联网 发布:js鼠标事件有哪些 编辑:程序博客网 时间:2024/06/06 02:36
 /**
     * 老数据迁移脚本 找到shorturl表中的类型产品的最大编号值 并且存入到产品生成信息表(shorturl_create)
     */
    public function getMaxNum() {      
        //找到每种产品的最大生产编号
        $lastNumArr = $this->shorturl_db->select('max(`key`) as maxKey ', '1', 1000, '', 'substring_index(`key`,"N",1)');
        foreach ($lastNumArr as $value) {
            //机型
            preg_match('/T(\w+)C/', $value['maxKey'], $brand);
            $brand = $brand[1];
            //颜色
            preg_match('/C(\w+)N/', $value['maxKey'], $color);
            $color = $color[1];
            //获得该产品对应的配图
            $img = $this->getThumb($brand, $color);
            //每种产品对应的最大生产num (N之后是生产编号)
            $node = strpos($value['maxKey'], 'N');
            $lastNum = substr($value['maxKey'], $node + 1);
            //拼接数组
            $data['type'] = $brand;
            $data['color'] = $color;
            $data['lastnum'] = $lastNum;
            $data['img'] = $img;


            if ($this->shorturl_create_db->insert($data)) {
                echo '数据迁移成功<br/>';
            } else {
                echo '数据迁移失败<br/>';
            }
        }
    }


   /**
    * 找到每种产品对应的配图
    */
     public function getThumb($brand, $color) {
        $brandName = $this->brand_db->get_one('name', array('code' => $brand));
        $colorName = $this->color_db->get_one('name', array('code' => $color));
        $brand = $brandName['name'];
        $color = $colorName['name'];
        $imgRes = $this->shorturl_plan_db->get_one('thumb', array('brand' => $brand, 'color' => $color));
        return $imgRes['thumb'];
    }
0 0
原创粉丝点击