|
@@ -21,8 +21,8 @@ class GoodGroupLogic extends BaseLogic
|
|
|
->where('a.is_del', CommonModel::$del_normal);
|
|
|
|
|
|
if ($data['status'] != '') $db->where('a.status', $data['status']);
|
|
|
- if ($data['company_id'] != '') $db->where('a.company_id', $data['company_id']);
|
|
|
- if ($data['card_id'] != '') $db->where('a.card_id', $data['card_id']);
|
|
|
+ if ($data['company_title'] != '') $db->whereLike('b.title', '%' . $data['company_title'] . '%');
|
|
|
+ if ($data['card_title'] != '') $db->whereLike('c.title', '%' . $data['card_title'] . '%');
|
|
|
|
|
|
$count = $db->count('a.id');
|
|
|
|
|
@@ -38,57 +38,31 @@ class GoodGroupLogic extends BaseLogic
|
|
|
//添加商品分组
|
|
|
public static function add(array $data = []): Json
|
|
|
{
|
|
|
- Db::startTrans();
|
|
|
- try {
|
|
|
-
|
|
|
- $rs = GoodGroupModel::field('id')
|
|
|
- ->where([
|
|
|
- 'is_del' => CommonModel::$del_normal,
|
|
|
- 'company_id' => $data['company_id'],
|
|
|
- 'card_id' => $data['card_id']
|
|
|
- ])
|
|
|
- ->findOrEmpty()
|
|
|
- ->isEmpty();
|
|
|
- if (!$rs) throw new Exception('该分组已存在');
|
|
|
-
|
|
|
- $date = date('Y-m-d H:i:s');
|
|
|
-
|
|
|
- $good_group_id = Db::name('good_group')
|
|
|
- ->strict(false)
|
|
|
- ->insertGetId(array_merge($data, [
|
|
|
- 'num' => count($data['good_list']),
|
|
|
- 'status' => CommonModel::$status_normal,
|
|
|
- 'is_del' => CommonModel::$del_normal,
|
|
|
- 'createrid' => self::$uid,
|
|
|
- 'creater' => self::$uname,
|
|
|
- 'addtime' => $date,
|
|
|
- 'updaterid' => self::$uid,
|
|
|
- 'updater' => self::$uname,
|
|
|
- 'updatetime' => $date,
|
|
|
- ]));
|
|
|
-
|
|
|
- $da = [];
|
|
|
- foreach ($data['good_list'] as $item) {
|
|
|
- $da[] = [
|
|
|
- 'good_group_id' => $good_group_id,
|
|
|
- 'good_id' => $item['good_id'],
|
|
|
- 'weight' => $item['weight'],
|
|
|
- 'is_del' => CommonModel::$del_normal,
|
|
|
- 'addtime' => $date,
|
|
|
- 'updatetime' => $date,
|
|
|
- ];
|
|
|
- }
|
|
|
+ $rs = GoodGroupModel::field('id')
|
|
|
+ ->where([
|
|
|
+ 'is_del' => CommonModel::$del_normal,
|
|
|
+ 'company_id' => $data['company_id'],
|
|
|
+ 'card_id' => $data['card_id']
|
|
|
+ ])
|
|
|
+ ->findOrEmpty()
|
|
|
+ ->isEmpty();
|
|
|
+ if (!$rs) return json_show(CommonModel::$error_param, '该商品分组已存在');
|
|
|
|
|
|
- Db::name('good_group_item')->insertAll($da);
|
|
|
+ $date = date('Y-m-d H:i:s');
|
|
|
|
|
|
- Db::commit();
|
|
|
+ $res = GoodGroupModel::create(array_merge($data, [
|
|
|
+ 'num' => 0,
|
|
|
+ 'status' => CommonModel::$status_normal,
|
|
|
+ 'is_del' => CommonModel::$del_normal,
|
|
|
+ 'createrid' => self::$uid,
|
|
|
+ 'creater' => self::$uname,
|
|
|
+ 'addtime' => $date,
|
|
|
+ 'updaterid' => self::$uid,
|
|
|
+ 'updater' => self::$uname,
|
|
|
+ 'updatetime' => $date,
|
|
|
+ ]))->save();
|
|
|
|
|
|
- return json_show(CommonModel::$success, '添加商品分组成功');
|
|
|
-
|
|
|
- } catch (Exception $exception) {
|
|
|
- Db::rollback();
|
|
|
- return json_show(CommonModel::$error_param, '添加商品分组失败,' . $exception->getMessage());
|
|
|
- }
|
|
|
+ return $res ? json_show(CommonModel::$success, '添加商品分组成功') : json_show(CommonModel::$error_param, '添加商品分组失败');
|
|
|
|
|
|
}
|
|
|
|
|
@@ -100,88 +74,38 @@ class GoodGroupLogic extends BaseLogic
|
|
|
->findOrEmpty()
|
|
|
->toArray();
|
|
|
|
|
|
- if (empty($res)) throw new ValidateException('该商品分组为空');
|
|
|
-
|
|
|
- $res['child'] = Db::name('good_group_item')
|
|
|
- ->alias('a')
|
|
|
- ->field('a.id,a.good_id,a.weight,b.good_name,b.good_code')
|
|
|
- ->leftJoin('good b','b.id=a.good_id AND b.is_del='.CommonModel::$del_normal)
|
|
|
- ->where(['a.is_del' => CommonModel::$del_normal, 'a.good_group_id' => $id])
|
|
|
- ->order(['a.weight' => 'desc', 'a.id' => 'desc'])
|
|
|
- ->select()
|
|
|
- ->toArray();
|
|
|
-
|
|
|
- return json_show(CommonModel::$success, '获取商品分组详情成功', $res);
|
|
|
+ return empty($res) ? json_show(CommonModel::$error_param, '该商品分组为空') : json_show(CommonModel::$success, '获取商品分组详情成功', $res);
|
|
|
}
|
|
|
|
|
|
//编辑商品分组
|
|
|
public static function edit(array $data = []): Json
|
|
|
{
|
|
|
- Db::startTrans();
|
|
|
- try {
|
|
|
-
|
|
|
- $rs = GoodGroupModel::field('id,company_id,card_id')
|
|
|
+ $rs = GoodGroupModel::field('id,company_id,card_id')
|
|
|
+ ->where([
|
|
|
+ 'id' => $data['id'],
|
|
|
+ 'is_del' => CommonModel::$del_normal
|
|
|
+ ])
|
|
|
+ ->findOrEmpty();
|
|
|
+ if ($rs->isEmpty()) return json_show(CommonModel::$error_param, '该商品分组不存在');
|
|
|
+
|
|
|
+ if (($rs->company_id != $data['company_id']) || ($rs->card_id != $data['card_id'])) {
|
|
|
+ $temp = GoodGroupModel::field('id')
|
|
|
->where([
|
|
|
'is_del' => CommonModel::$del_normal,
|
|
|
- 'id' => $data['id']
|
|
|
+ 'company_id' => $data['company_id'],
|
|
|
+ 'card_id' => $data['card_id']
|
|
|
])
|
|
|
- ->findOrEmpty();
|
|
|
- if ($rs->isEmpty()) throw new Exception('该商品分组不存在');
|
|
|
-
|
|
|
- if (($rs->company_id != $data['company_id']) || ($rs->card_id != $data['card_id'])) {
|
|
|
-
|
|
|
- $temp = GoodGroupModel::field('id')
|
|
|
- ->where([
|
|
|
- 'is_del' => CommonModel::$del_normal,
|
|
|
- 'company_id' => $data['company_id'],
|
|
|
- 'card_id' => $data['card_id']
|
|
|
- ])
|
|
|
- ->findOrEmpty()
|
|
|
- ->isEmpty();
|
|
|
- if (!$temp) throw new Exception('该分组已存在');
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- $date = date('Y-m-d H:i:s');
|
|
|
-
|
|
|
- GoodGroupModel::where(['id' => $data['id'], 'is_del' => CommonModel::$del_normal])
|
|
|
- ->strict(false)
|
|
|
- ->save(array_merge($data, ['updatetime' => $date,'updaterid'=>self::$uid,'updater'=>self::$uid]));
|
|
|
-
|
|
|
- $del = $ins = [];
|
|
|
-
|
|
|
- foreach ($data['good_list'] as $item) {
|
|
|
- if (isset($item['id']) && $item['id'] != 0) {
|
|
|
- if ($item['is_del'] == CommonModel::$del_deleted) $del[] = $item['id'];
|
|
|
- else Db::name('good_group_item')->where('is_del', CommonModel::$del_normal)->where('id', $item['id'])->save(array_merge($item, ['updatetime' => $date]));
|
|
|
- } else $ins[] = [
|
|
|
- 'good_group_id' => $data['id'],
|
|
|
- 'good_id' => $item['good_id'],
|
|
|
- 'weight' => $item['weight'],
|
|
|
- 'is_del' => CommonModel::$del_normal,
|
|
|
- 'addtime' => $date,
|
|
|
- 'updatetime' => $date,
|
|
|
- ];
|
|
|
- }
|
|
|
-
|
|
|
- if ($del) Db::name('good_group_item')
|
|
|
- ->whereIn('id', $del)
|
|
|
- ->where('is_del', CommonModel::$del_normal)
|
|
|
- ->update([
|
|
|
- 'is_del' => CommonModel::$del_deleted,
|
|
|
- 'updatetime' => $date,
|
|
|
- ]);
|
|
|
+ ->findOrEmpty()
|
|
|
+ ->isEmpty();
|
|
|
+ if (!$temp) return json_show(CommonModel::$error_param, '该分组已存在');
|
|
|
+ }
|
|
|
|
|
|
- if ($ins) Db::name('good_group_item')->insertAll($ins);
|
|
|
+ $date = date('Y-m-d H:i:s');
|
|
|
|
|
|
- Db::commit();
|
|
|
+ $res = GoodGroupModel::where(['id' => $data['id'], 'is_del' => CommonModel::$del_normal])
|
|
|
+ ->save(array_merge($data, ['updatetime' => $date, 'updaterid' => self::$uid, 'updater' => self::$uid]));
|
|
|
|
|
|
- return json_show(CommonModel::$success, '编辑商品分组成功');
|
|
|
-
|
|
|
- } catch (Exception $exception) {
|
|
|
- Db::rollback();
|
|
|
- return json_show(CommonModel::$error_param, '编辑商品分组失败,' . $exception->getMessage());
|
|
|
- }
|
|
|
+ return $res ? json_show(CommonModel::$success, '编辑商品分组成功') : json_show(CommonModel::$success, '编辑商品分组失败');
|
|
|
|
|
|
}
|
|
|
|
|
@@ -193,6 +117,8 @@ class GoodGroupLogic extends BaseLogic
|
|
|
->save([
|
|
|
'status' => $data['status'],
|
|
|
'updatetime' => date('Y-m-d H:i:s'),
|
|
|
+ 'updaterid' => self::$uid,
|
|
|
+ 'updater' => self::$uid
|
|
|
]);
|
|
|
|
|
|
return $res ? json_show(CommonModel::$success, '操作成功') : json_show(CommonModel::$success, '操作失败');
|
|
@@ -200,17 +126,39 @@ class GoodGroupLogic extends BaseLogic
|
|
|
}
|
|
|
|
|
|
//删除商品分组
|
|
|
- public static function delete(int $id = 0): Json
|
|
|
+ public static function delete(array $ids = []): Json
|
|
|
{
|
|
|
- $res = GoodGroupModel::where('id', $id)
|
|
|
- ->where('is_del', CommonModel::$del_normal)
|
|
|
- ->save([
|
|
|
- 'is_del' => CommonModel::$del_deleted,
|
|
|
- 'updatetime' => date('Y-m-d H:i:s'),
|
|
|
- ]);
|
|
|
|
|
|
- return $res ? json_show(CommonModel::$success, '删除成功') : json_show(CommonModel::$error_param, '删除失败');
|
|
|
+ Db::startTrans();
|
|
|
+ try {
|
|
|
|
|
|
+ $res = GoodGroupModel::whereIn('id', $ids)
|
|
|
+ ->where('is_del', CommonModel::$del_normal)
|
|
|
+ ->save([
|
|
|
+ 'is_del' => CommonModel::$del_deleted,
|
|
|
+ 'updatetime' => date('Y-m-d H:i:s'),
|
|
|
+ 'updaterid' => self::$uid,
|
|
|
+ 'updater' => self::$uid
|
|
|
+ ]);
|
|
|
+
|
|
|
+ if (!$res) throw new Exception('该商品分组不存在');
|
|
|
+
|
|
|
+ Db::name('good_group_item')
|
|
|
+ ->whereIn('good_group_id', $ids)
|
|
|
+ ->where('is_del', CommonModel::$del_normal)
|
|
|
+ ->update([
|
|
|
+ 'is_del' => CommonModel::$del_deleted,
|
|
|
+ 'updatetime' => date('Y-m-d H:i:s')
|
|
|
+ ]);
|
|
|
+
|
|
|
+ Db::commit();
|
|
|
+ return json_show(CommonModel::$success, '删除成功');
|
|
|
+
|
|
|
+ } catch (Exception $exception) {
|
|
|
+ Db::rollback();
|
|
|
+ return json_show(CommonModel::$error_param, '删除失败,' . $exception->getMessage());
|
|
|
+
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
|