param(); $model = $model->scope('where', $param); if (isset($param['export_data']) && $param['export_data'] == 1) { $header = ['ID', 'CDK', '类型', '金额', '项目', '数量', '是否使用', '创建时间', '使用时间']; $body = []; $data = $model->select(); foreach ($data as $item) { $record = []; $record['id'] = $item->id; $record['cdk_code'] = $item->cdk_code; $record['type'] = $item->type_text; $record['money'] = $item->money; $record['item_name'] = $item->item_name; $record['num'] = $item->num; $record['status'] = $item->status_text; $record['create_time'] = $item->create_time; $record['update_time'] = $item->update_time; $body[] = $record; } return $this->exportData($header, $body, 'CDK兑换码-' . date('Y-m-d-H-i-s')); } $data = $model->paginate($this->admin['per_page'], false, ['query' => $request->get()]); $this->assign($request->get()); $this->assign([ 'data' => $data, 'page' => $data->render(), 'total' => $data->total(), ]); return $this->fetch(); } public function add(Request $request, CdkCode $model, CdkValidate $validate) { if ($request->isPost()) { $param = $request->param(); if ($param['type'] == 'charge') { $validate->scene('charge')->check($param) or admin_error($validate->getError()); $cdk = $model::get_production_cdk((int)$param['charge_cdk_num']); for ($i=0; $i $cdk[$i], 'type' => 1, 'money' => $param['charge_money'], 'item_name' => $param['charge_text'], 'item_id' => $param['charge_id'], 'num' => 1, ]; } for ($i=0; $isaveAll($inset); $result ? admin_success(lang('success'), URL_BACK) : admin_error(); } if ($param['type'] == 'item') { $validate ->scene('item')->check($param) or admin_error($validate->getError()); $cdk = $model::get_production_cdk((int)$param['item_cdk_num']); for ($i=0; $i $cdk[$i], 'type' => 2, 'money' => $param['item_money'], 'item_name' => $param['item_text'], 'item_id' => $param['item_id'], 'num' => $param['item_num'], ]; } $result = $model->saveAll($inset); $result ? admin_success(lang('success'), URL_BACK) : admin_error(); } if ($param['type'] == 'mail') { $validate ->scene('mail')->check($param) or admin_error($validate->getError()); $cdk = $model::get_production_cdk((int)$param['mail_cdk_num']); for ($i=0; $i $cdk[$i], 'type' => 3, 'money' => $param['mail_money'], 'item_name' => $param['title'], 'mail' => $param['gets'], 'num' => 1, ]; } $result = $model->saveAll($inset); $result ? admin_success(lang('success'), URL_BACK) : admin_error(); } } $gameGm = new GameGm(); $this->assign([ 'item_list' => $gameGm::get_item_list(), 'charge_list' => $gameGm::get_charge_list(), ]); return $this->fetch(); } //删除 public function del($id, CdkCode $model) { if (count($model->noDeletionId) > 0) { if (is_array($id)) { if (array_intersect($model->noDeletionId, $id)) { return admin_error('ID为' . implode(',', $model->noDeletionId) . '的数据无法删除'); } } else if (in_array($id, $model->noDeletionId)) { return admin_error('ID为' . $id . '的数据无法删除'); } } if ($model->softDelete) { $result = $model->whereIn('id', $id)->useSoftDelete('delete_time', time())->delete(); } else { $result = $model->whereIn('id', $id)->delete(); } return $result ? admin_success(lang('delete_success'), URL_RELOAD) : admin_error(lang('delete_error')); } public function enable($id, CdkCode $model) { $result = $model->whereIn('id', $id)->update(['status' => 1]); return $result ? admin_success(lang('status_update_success'), URL_RELOAD) : admin_error(lang('status_update_error')); } }