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