|
@@ -6,6 +6,53 @@ use Dever;
|
|
|
|
|
|
class Manage
|
|
|
{
|
|
|
+ public function search_api()
|
|
|
+ {
|
|
|
+ $table = 'goods/info';
|
|
|
+ $keyword = Dever::input('keyword');
|
|
|
+
|
|
|
+ $yes = Dever::input('yes');
|
|
|
+
|
|
|
+ $where = array();
|
|
|
+
|
|
|
+ $cate = Dever::input('cate');
|
|
|
+ if ($cate) {
|
|
|
+ $where['cate_id'] = $cate;
|
|
|
+ }
|
|
|
+
|
|
|
+ if ($yes) {
|
|
|
+ $yes = Dever::db($table)->search(array('ids' => $yes));
|
|
|
+ }
|
|
|
+ if (!$keyword) {
|
|
|
+ $where['limit'] = '0,50';
|
|
|
+ $data = Dever::db($table)->search($where);
|
|
|
+ } else {
|
|
|
+ $where['name'] = $keyword;
|
|
|
+ $data = Dever::db($table)->search($where);
|
|
|
+ }
|
|
|
+
|
|
|
+ $result = array();
|
|
|
+ if ($yes) {
|
|
|
+ foreach ($yes as $k => $v) {
|
|
|
+ if (isset($data[$k])) {
|
|
|
+ unset($data[$k]);
|
|
|
+ }
|
|
|
+ $yes[$k]['selected'] = 'selected';
|
|
|
+ }
|
|
|
+ $data = $yes + $data;
|
|
|
+
|
|
|
+ $data = array_merge($data, array());
|
|
|
+ } else {
|
|
|
+ $data = array_merge($data, array());
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!$data) {
|
|
|
+ Dever::alert('暂无数据');
|
|
|
+ }
|
|
|
+
|
|
|
+ return $data;
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
* 更新信息
|
|
|
*
|
|
@@ -152,27 +199,63 @@ class Manage
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ public function skuConfig()
|
|
|
+ {
|
|
|
+ $data['action'] = Dever::url('goods/lib/manage.skuUp');
|
|
|
+ $data['info_id'] = Dever::input('search_option_info_id');
|
|
|
+ return $data;
|
|
|
+ }
|
|
|
+
|
|
|
+ public function skuUp_api()
|
|
|
+ {
|
|
|
+ $info_id = Dever::input('info_id');
|
|
|
+ $attr = Dever::input('attr');
|
|
|
+ $key = Dever::input('key');
|
|
|
+ $price = Dever::input('price');
|
|
|
+ $s_price = Dever::input('s_price');
|
|
|
+ $num = Dever::input('num');
|
|
|
+
|
|
|
+ if ($key) {
|
|
|
+ foreach ($key as $k => $v) {
|
|
|
+ if (isset($price[$k]) && $price[$k]) {
|
|
|
+ $info = Dever::db('goods/info_sku')->one(array('key' => $v));
|
|
|
+ $data['info_id'] = $info_id;
|
|
|
+ $data['attr'] = $attr[$k];
|
|
|
+ $data['key'] = $v;
|
|
|
+ $data['price'] = $price[$k];
|
|
|
+ $data['s_price'] = $s_price[$k];
|
|
|
+ $data['num'] = $num[$k];
|
|
|
+ if (!$info) {
|
|
|
+ Dever::db('goods/info_sku')->insert($data);
|
|
|
+ } else {
|
|
|
+ $data['where_id'] = $info['id'];
|
|
|
+ Dever::db('goods/info_sku')->update($data);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ Dever::out('yes');
|
|
|
+ }
|
|
|
+
|
|
|
public function skuInput()
|
|
|
{
|
|
|
$id = Dever::input('search_option_info_id');
|
|
|
|
|
|
+ $sku = Dever::db('goods/info_sku')->getData(array('info_id' => $id));
|
|
|
+
|
|
|
$info = Dever::db('goods/info')->one($id);
|
|
|
|
|
|
- $info = Info::init(-1)->info($info, 'list_reorder', 2);
|
|
|
+ $info = Info::init(-1)->info($info, 'list_reorder');
|
|
|
|
|
|
- if ($info['attr']) {
|
|
|
+ if ($info['sell_attr']) {
|
|
|
$head = '<thead><tr>';
|
|
|
$body = '<tbody>';
|
|
|
$option = array();
|
|
|
- foreach ($info['attr'] as $k => $v) {
|
|
|
+ foreach ($info['sell_attr'] as $k => $v) {
|
|
|
$head .= '<th>'.$v['name'].'</th>';
|
|
|
- foreach($v['option'] as $k1 => $v1) {
|
|
|
- $option[$k][$k1] = array
|
|
|
- (
|
|
|
- 'id' => $v1['id'],
|
|
|
- 'attr_id' => $v1['info_id'],
|
|
|
- 'name' => $v1['name']
|
|
|
- );
|
|
|
+ if (isset($v['option_sku'])) {
|
|
|
+ $option[$k] = $v['option_sku'];
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -187,13 +270,27 @@ class Manage
|
|
|
foreach ($option as $k => $v) {
|
|
|
$body .= '<tr data-row="' .($k+1). '">';
|
|
|
|
|
|
+ $key = $id = array();
|
|
|
foreach ($v['name'] as $k1 => $v1) {
|
|
|
$rows = 1;
|
|
|
$body .= '<td width="50" rowspan="'.$rows.'">'.$v1.'</td>';
|
|
|
+ $id[] = array
|
|
|
+ (
|
|
|
+ 'id' => $v['id'][$k1],
|
|
|
+ 'attr_id' => $v['info_id'][$k1],
|
|
|
+ );
|
|
|
+ $key[] = $v['info_id'][$k1] . '-' . $v['id'][$k1];
|
|
|
+ }
|
|
|
+ $key = implode('_', $key);
|
|
|
+ $s_price = $price = $num = '';
|
|
|
+ if (isset($sku[$key])) {
|
|
|
+ $s_price = $sku[$key]['s_price'];
|
|
|
+ $price = $sku[$key]['price'];
|
|
|
+ $num = $sku[$key]['num'];
|
|
|
}
|
|
|
- $body .= '<td width="30"><input type="text" class="layui-input" name="price[]" /></td>';
|
|
|
- $body .= '<td width="30"><input type="text" class="layui-input" name="price[]" /></td>';
|
|
|
- $body .= '<td width="30"><input type="text" class="layui-input" name="price[]" /></td>';
|
|
|
+ $body .= '<td width="30"><input type="text" class="layui-input" name="s_price['.$k.']" value="'.$s_price.'"/></td>';
|
|
|
+ $body .= '<td width="30"><input type="text" class="layui-input" name="price['.$k.']" value="'.$price.'"/></td>';
|
|
|
+ $body .= '<td width="30"><input type="text" class="layui-input" name="num['.$k.']" value="'.$num.'"/><input type="hidden" name="key['.$k.']" value="'.$key.'"/><textarea style="display:none;" name="attr['.$k.']"/>'.json_encode($id).'</textarea></td>';
|
|
|
$body .= '</tr>';
|
|
|
}
|
|
|
}
|