From ac3520f826bb2123ee283b6f38abfbbcebb7428b Mon Sep 17 00:00:00 2001 From: ll <2149573631@qq.com> Date: Thu, 27 Apr 2023 19:52:58 +0800 Subject: [PATCH] int --- .../infoArticleType/infoArticleType.php | 125 +++++++----- .../controller/Teachers_strength/Teacher.php | 4 +- .../controller/Teachers_strength/subject.php | 4 +- app/api/controller/Teachers/Teachers.php | 2 +- app/api/controller/subject/subject.php | 2 +- .../infoArticle/infoArticle.php | 4 +- .../infoArticleType/infoArticleType.php | 191 ++++++++++-------- .../model/Teachers_strength/Teacher.php | 2 +- .../model/Teachers_strength/subject.php | 2 +- 9 files changed, 187 insertions(+), 149 deletions(-) diff --git a/app/admin/controller/ExaminationInformation/infoArticleType/infoArticleType.php b/app/admin/controller/ExaminationInformation/infoArticleType/infoArticleType.php index 76d8d31..abc2b7e 100644 --- a/app/admin/controller/ExaminationInformation/infoArticleType/infoArticleType.php +++ b/app/admin/controller/ExaminationInformation/infoArticleType/infoArticleType.php @@ -3,7 +3,7 @@ namespace app\admin\controller\ExaminationInformation\infoArticleType; use app\BaseController; -use app\common\model\ExaminationInformation\infoArticleType as ModelinfoArticleType; +use app\common\model\ExaminationInformation\infoArticleType\infoArticleType as ModelinfoArticleType; use app\Request; use think\Validate; use think\exception\ValidateException; @@ -47,21 +47,28 @@ class infoArticleType extends BaseController */ public function editinfoArticleType(Request $request): array { - $params = $request->param(); - $this->validate($params, [ - 'info_article_type_name|资讯类型名称' => 'require', - 'info_article_type_sort|资讯类型排序' => 'require' - ]); - $model = ModelinfoArticleType::where('info_article_type_guid', $params['info_article_type_guid'])->find(); + Db::startTrans(); + try { + $params = $request->param(); + $this->validate($params, [ + 'info_article_type_name|资讯类型名称' => 'require', + 'info_article_type_sort|资讯类型排序' => 'require' + ]); + $model = ModelinfoArticleType::where('info_article_type_guid', $params['info_article_type_guid'])->find(); - if (!$model) throwErrorMsg("该资讯文章类型不存在", 1); - $model->allowField([ - 'info_article_type_update_user_guid', - 'info_article_type_name', - 'info_article_type_sort' - ])->save($params); - return msg('编辑成功!'); + if (!$model) throwErrorMsg("该资讯文章类型不存在", 1); + $model->allowField([ + 'info_article_type_update_user_guid', + 'info_article_type_name', + 'info_article_type_sort' + ])->save($params); + Db::commit(); + return msg('编辑成功!'); + } catch (\Throwable $th) { + Db::rollback(); + throw $th; + } } /** @@ -69,55 +76,73 @@ class infoArticleType extends BaseController */ public function addinfoArticleType(Request $request): array { - $params = $request->param(); - $this->validate($params, [ - 'info_article_type_name|资讯类型名称' => 'require', - 'info_article_type_sort|资讯类型排序' => 'require' - ]); - - $model = ModelinfoArticleType::create($params, [ - 'info_article_type_guid', - 'info_article_type_create_user_guid', - 'info_article_type_update_user_guid', - 'info_article_type_name', - 'info_article_type_sort' - ]); - return msg('添加成功!'); - } + Db::startTrans(); + try { + $params = $request->param(); + $this->validate($params, [ + 'info_article_type_name|资讯类型名称' => 'require', + 'info_article_type_sort|资讯类型排序' => 'require' + ]); + $model = ModelinfoArticleType::create($params, [ + 'info_article_type_guid', + 'info_article_type_create_user_guid', + 'info_article_type_update_user_guid', + 'info_article_type_name', + 'info_article_type_sort' + ]); + Db::commit(); + return msg('编辑成功!'); + } catch (\Throwable $th) { + Db::rollback(); + throw $th; + } + } /** * 删除资讯文章类型 */ public function deleteinfoArticleType(Request $request): array { - $params = $request->param(); - $this->validate($params, [ - 'info_article_type_guid' => 'require', - ]); - $guids = explode(',', $params['info_article_type_guid']); - - $info_article_type = ModelinfoArticleType::where([ - 'info_article_type_guid' => explode(',', $params['info_article_type_guid']) - ])->select(); - $info_article_type->delete(); - return msg('删除成功!'); - } + Db::startTrans(); + try { + $params = $request->param(); + $this->validate($params, [ + 'info_article_type_guid' => 'require', + ]); + $guids = explode(',', $params['info_article_type_guid']); + $info_article_type = ModelinfoArticleType::where([ + 'info_article_type_guid' => explode(',', $params['info_article_type_guid']) + ])->select(); + $info_article_type->delete(); + Db::commit(); + return msg('编辑成功!'); + } catch (\Throwable $th) { + Db::rollback(); + throw $th; + } + } /** * 导出Excel */ public function exportExcel(Request $request) { - $params = $request->param(); - $select = ModelinfoArticleType::field([ - 'info_article_type_name', - 'info_article_type_sort' - ]) - ->order('info_article_type_update_time', 'desc') - ->select(); - return ModelinfoArticleType::exportExcel($select); + Db::startTrans(); + try { + $params = $request->param(); + $select = ModelinfoArticleType::field([ + 'info_article_type_name', + 'info_article_type_sort' + ]) + ->order('info_article_type_update_time', 'desc') + ->select(); + Db::commit(); + return msg('编辑成功!'); + } catch (\Throwable $th) { + Db::rollback(); + throw $th; + } } - /** * 下载导入模板 */ diff --git a/app/admin/controller/Teachers_strength/Teacher.php b/app/admin/controller/Teachers_strength/Teacher.php index c1a711e..1de1d8e 100644 --- a/app/admin/controller/Teachers_strength/Teacher.php +++ b/app/admin/controller/Teachers_strength/Teacher.php @@ -1,9 +1,9 @@ "int", - - "info_article_type_guid" => "string", - - "info_article_type_name" => "string", - - "info_article_type_sort" => "int", - - "info_article_type_create_time" => "datetime", - - "info_article_type_create_user_guid" => "string", - - "info_article_type_update_time" => "datetime", - - "info_article_type_update_user_guid" => "string", - - "info_article_type_delete_time" => "datetime", - - "info_article_type_delete_user_guid" => "string", - - ]; + + "info_article_type_id" => "int", + + "info_article_type_guid" => "string", + + "info_article_type_name" => "string", + + "info_article_type_sort" => "int", + + "info_article_type_create_time" => "datetime", + + "info_article_type_create_user_guid" => "string", + + "info_article_type_update_time" => "datetime", + + "info_article_type_update_user_guid" => "string", + + "info_article_type_delete_time" => "datetime", + + "info_article_type_delete_user_guid" => "string", + + ]; // 设置json类型字段 protected $json = ['']; // 开启自动写入时间戳字段 @@ -52,20 +52,26 @@ class infoArticleType extends BaseModel // 修改时间 protected $updateTime = 'info_article_type_update_time'; - - // excel导入/下载模板表头 - public const EXCELFIELD = [ -'info_article_type_name' => '资讯类型名称', -'info_article_type_sort' => '资讯类型排序', -]; - + + // excel导入/下载模板表头 + public const EXCELFIELD = [ + 'info_article_type_name' => '资讯类型名称', + 'info_article_type_sort' => '资讯类型排序', + ]; + //排序字段 + public $order_field = 'info_article_type_sort'; /** * 新增前 */ public static function onBeforeInsert(self $model): void { + Tool::sortInsertProc( + self::class, + $model->info_article_type_order, + // ['subject_guid' => $model->subject_guid] + ); // self::checkRepeatData($model); $model->completeCreateField(); } @@ -75,6 +81,12 @@ class infoArticleType extends BaseModel */ public static function onBeforeUpdate(self $model): void { + Tool::sortEditProc( + self::class, + $model->info_article_type_guid, + $model->info_article_type_sort, + // ['subject_guid' => $model->info_article_type_guid] + ); // self::checkRepeatData($model); $model->completeUpdateField(); } @@ -84,72 +96,73 @@ class infoArticleType extends BaseModel */ public static function onBeforeDelete(self $model): void { + Tool::sortDeleteProc(self::class, $model->info_article_type_guid); $model->completeDeleteField(); } /** -* 导出Excel -*/ - public static function exportExcel($select) - { - $data = [[ -'资讯类型名称', -'资讯类型排序' -]]; - foreach ($select as $key => $val) { - $data[] = [ -$val['info_article_type_name'], -$val['info_article_type_sort'], -]; - } - $excel = (new Excel())->exporTsheet($data); - $excel->save('资讯文章类型.xlsx'); - } + * 导出Excel + */ + public static function exportExcel($select) + { + $data = [[ + '资讯类型名称', + '资讯类型排序' + ]]; + foreach ($select as $key => $val) { + $data[] = [ + $val['info_article_type_name'], + $val['info_article_type_sort'], + ]; + } + $excel = (new Excel())->exporTsheet($data); + $excel->save('资讯文章类型.xlsx'); + } /** -* 导入excel -*/ - public static function importExcel($file) - { - $msg = []; + * 导入excel + */ + public static function importExcel($file) + { + $msg = []; - Db::startTrans(); - try { - $excel = new Excel($file); - $data = $excel->parseExcel( - Tool::getExcelRule(self::EXCELFIELD), - [ - 'titleLine' => [1] - ]); - if (!$data) throwErrorMsg('excel无数据', 1); - $msg = []; - foreach ($data as $line => $value) { - try { - $model = self::importExcelInit($value); - $msg[] = "{$line} 新增成功!
"; - } catch (\Throwable $th) { - $msg[] = "{$line} {$th->getMessage()}
"; - } - } - Db::commit(); - return implode(', ', $msg); - } catch (\Throwable $th) { - Db::rollback(); - throw $th; - } + Db::startTrans(); + try { + $excel = new Excel($file); + $data = $excel->parseExcel( + Tool::getExcelRule(self::EXCELFIELD), + [ + 'titleLine' => [1] + ] + ); + if (!$data) throwErrorMsg('excel无数据', 1); + $msg = []; + foreach ($data as $line => $value) { + try { + $model = self::importExcelInit($value); + $msg[] = "{$line} 新增成功!
"; + } catch (\Throwable $th) { + $msg[] = "{$line} {$th->getMessage()}
"; } + } + Db::commit(); + return implode(', ', $msg); + } catch (\Throwable $th) { + Db::rollback(); + throw $th; + } + } /** -* 导入excel初始化 -*/ - public static function importExcelInit($value) - { - $info_article_type_name = $value['info_article_type_name'];$info_article_type_sort = $value['info_article_type_sort']; - return self::create([ -'info_article_type_name' => $info_article_type_name, -'info_article_type_sort' => $info_article_type_sort, -]); - } - - + * 导入excel初始化 + */ + public static function importExcelInit($value) + { + $info_article_type_name = $value['info_article_type_name']; + $info_article_type_sort = $value['info_article_type_sort']; + return self::create([ + 'info_article_type_name' => $info_article_type_name, + 'info_article_type_sort' => $info_article_type_sort, + ]); + } } diff --git a/app/common/model/Teachers_strength/Teacher.php b/app/common/model/Teachers_strength/Teacher.php index 866969a..ac7cabc 100644 --- a/app/common/model/Teachers_strength/Teacher.php +++ b/app/common/model/Teachers_strength/Teacher.php @@ -1,6 +1,6 @@