|
@@ -3,7 +3,7 @@
|
|
|
namespace app\admin\controller\gift;
|
|
|
|
|
|
use app\common\controller\Backend;
|
|
|
-
|
|
|
+use think\Db;
|
|
|
|
|
|
* 礼物背包
|
|
|
*
|
|
@@ -77,4 +77,66 @@ class Back extends Backend
|
|
|
return $this->view->fetch();
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ * 添加
|
|
|
+ */
|
|
|
+ public function add()
|
|
|
+ {
|
|
|
+ if ($this->request->isPost()) {
|
|
|
+ $params = $this->request->post("row/a");
|
|
|
+ if ($params) {
|
|
|
+ $params = $this->preExcludeFields($params);
|
|
|
+
|
|
|
+ if ($this->dataLimit && $this->dataLimitFieldAutoFill) {
|
|
|
+ $params[$this->dataLimitField] = $this->auth->id;
|
|
|
+ }
|
|
|
+ $result = false;
|
|
|
+ Db::startTrans();
|
|
|
+ try {
|
|
|
+
|
|
|
+ if ($this->modelValidate) {
|
|
|
+ $name = str_replace("\\model\\", "\\validate\\", get_class($this->model));
|
|
|
+ $validate = is_bool($this->modelValidate) ? ($this->modelSceneValidate ? $name . '.add' : $name) : $this->modelValidate;
|
|
|
+ $this->model->validateFailException(true)->validate($validate);
|
|
|
+ }
|
|
|
+
|
|
|
+ $number = intval(input('number',1));
|
|
|
+ if($number < 1) {$number = 1;}
|
|
|
+
|
|
|
+ $gift = Db::name('gift')->where('id',$params['gift_id'])->find();
|
|
|
+ $params['name'] = $gift['name'];
|
|
|
+ $params['image'] = $gift['image'];
|
|
|
+ $params['gif_image'] = $gift['special'];
|
|
|
+ $params['value'] = $gift['price'];
|
|
|
+ $params['number'] = 1;
|
|
|
+ $params['is_use'] = 0;
|
|
|
+
|
|
|
+ $saveall = [];
|
|
|
+ for($i=1;$i<=$number;$i++){
|
|
|
+ $saveall[] = $params;
|
|
|
+ }
|
|
|
+ $result = Db::name('gift_back')->insertAll($saveall);
|
|
|
+
|
|
|
+ Db::commit();
|
|
|
+ } catch (ValidateException $e) {
|
|
|
+ Db::rollback();
|
|
|
+ $this->error($e->getMessage());
|
|
|
+ } catch (PDOException $e) {
|
|
|
+ Db::rollback();
|
|
|
+ $this->error($e->getMessage());
|
|
|
+ } catch (Exception $e) {
|
|
|
+ Db::rollback();
|
|
|
+ $this->error($e->getMessage());
|
|
|
+ }
|
|
|
+ if ($result !== false) {
|
|
|
+ $this->success();
|
|
|
+ } else {
|
|
|
+ $this->error(__('No rows were inserted'));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $this->error(__('Parameter %s can not be empty', ''));
|
|
|
+ }
|
|
|
+ return $this->view->fetch();
|
|
|
+ }
|
|
|
+
|
|
|
}
|