/** * 添加一个商品 * @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('更新失败'); } }