CI AddOne ModifyOne

/**
     * 添加一个商品
     * @param $data
     * @return array
     */
    public function add_one($data)
    {
        $require = array('name', 'cid', 'sale_price', 'wholesale_price');
        foreach ($require as $field) {
            if (!isset($data[$field]) || !$data[$field]) {
                return result_error($field . ' 没有值');
            }
        }

        $this->load->model('category_model');
        $category_info = $this->category_model->get_one_by_id($data['cid']);
        $category_name = $category_info['name'];

        $info = array(
            'name' => $data['name'],
            'cid' => $data['cid'],
            'buying_price' => yuan_to_fen($data['buying_price']),
            'sale_price' => yuan_to_fen($data['sale_price']),
            'wholesale_price' => yuan_to_fen($data['wholesale_price']),
            'wholesale_start_num' => $data['wholesale_start_num'],
            'incoming_batch' => $data['incoming_batch'] ? $data['incoming_batch'] : date('Ymd'),
            'buying_num' => $data['buying_num'],
            'buying_total_price' => yuan_to_fen($data['buying_total_price']),
            'is_used' => $data['is_used'] ? $data['is_used'] : self::IS_USED_YES,
            'search_title' => $data['name'] . '_' . $category_name,
            'create_time' => time(),
            'update_time' => time(),
        );

        /**
         * extend
         * note 备注
         */
        $extend = array();
        foreach ($data as $key => $value) {
            if (!isset($info[$key])) {
                $extend[$key] = $value;
            }
        }
        $info['extend'] = json_encode($extend);

        if ($data['buying_total_price'] && $data['buying_num'] && !$data['buying_price']) {
            $info['buying_price'] = yuan_to_fen($data['buying_total_price'] / $data['buying_num']);
        }

        $res = $this->db->insert('goods', $info);
        if ($res) {
            $insert_id = $this->db->insert_id();
            return result_success($insert_id);
        } else {
            return result_error('添加失败');
        }
    }

    /**
     * 修改一个商品
     * @param $data
     * @return array
     */
    public function update_one($data)
    {
        $require = array('id', 'name', 'cid', 'sale_price', 'wholesale_price');
        foreach ($require as $field) {
            if (!isset($data[$field]) || !$data[$field]) {
                return result_error($field . ' 没有值');
            }
        }
        $row = $this->get_one_by_id($data['id']);
        unset($data['id']);
        if (empty($row)) {
            return result_error('产品记录不存在');
        }

        $this->load->model('category_model');
        $category_info = $this->category_model->get_one_by_id($data['cid']);
        $category_name = $category_info['name'];

        $info = array(
            'name' => $data['name'],
            'cid' => $data['cid'],
            'buying_price' => yuan_to_fen($data['buying_price']),
            'sale_price' => yuan_to_fen($data['sale_price']),
            'wholesale_price' => yuan_to_fen($data['wholesale_price']),
            'wholesale_start_num' => $data['wholesale_start_num'],
            'buying_num' => $data['buying_num'],
            'buying_total_price' => yuan_to_fen($data['buying_total_price']),
            'is_used' => $data['is_used'],
            'search_title' => $data['name'] . '_' . $category_name,
            'update_time' => time(),
        );
        $extend = array();
        foreach ($data as $key => $value) {
            if (!isset($info[$key])) {
                $extend[$key] = $value;
            }
        }
        $info['extend'] = json_encode($extend);

        if ($data['buying_total_price'] && $data['buying_num'] && !$data['buying_price']) {
            $info['buying_price'] = yuan_to_fen($data['buying_total_price'] / $data['buying_num']);
        }

        $where = array('id' => $row['id']);
        $res = $this->db->update('goods', $info, $where);
        if ($res) {
            return result_success($row['id']);
        } else {
            return result_error('更新失败');
        }

    }
原文地址:https://www.cnblogs.com/bandbandme/p/12883615.html