fix:部分模块接口排序处理修改

This commit is contained in:
xjh 2023-05-12 17:28:51 +08:00
parent 86053de7e8
commit 1f0dde0748
35 changed files with 1493 additions and 1193 deletions

View File

@ -46,42 +46,6 @@ class CompanyProfile extends BaseController
return msg("获取公司简介列表成功!", $query); return msg("获取公司简介列表成功!", $query);
} }
/**
* 编辑公司简介接口
*
* @param Request request
* @return array
* @date 2023-04-19
* @author xjh
* @since 1.0.0
*/
public function editCompanyProfile(Request $request): array
{
Db::startTrans();
try {
$params = $request->param();
$this->validate($params, [
'company_profile_img|简介图片' => 'require',
'company_profile_content|简介内容' => 'require',
'company_profile_order|简介排序' => 'require'
]);
$model = ModelCompanyProfile::where('company_profile_guid', $params['company_profile_guid'])->find();
if (!$model) throwErrorMsg("该公司简介不存在", 1);
$model->allowField([
'company_profile_update_user_guid',
'company_profile_img',
'company_profile_color',
'company_profile_content',
'company_profile_order'
])->save($params);
Db::commit();
return msg('编辑成功!');
} catch (\Throwable $th) {
Db::rollback();
throw $th;
}
}
/** /**
* 添加公司简介接口 * 添加公司简介接口
* *
@ -94,6 +58,7 @@ class CompanyProfile extends BaseController
public function addCompanyProfile(Request $request): array public function addCompanyProfile(Request $request): array
{ {
Db::startTrans(); Db::startTrans();
Tool::adminLockTableWrite('company_profile');
try { try {
$params = $request->param(); $params = $request->param();
$this->validate($params, [ $this->validate($params, [
@ -111,9 +76,50 @@ class CompanyProfile extends BaseController
'company_profile_order' 'company_profile_order'
]); ]);
Db::commit(); Db::commit();
Tool::unlockTable();
return msg('添加成功!'); return msg('添加成功!');
} catch (\Throwable $th) { } catch (\Throwable $th) {
Db::rollback(); Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/**
* 编辑公司简介接口
*
* @param Request request
* @return array
* @date 2023-04-19
* @author xjh
* @since 1.0.0
*/
public function editCompanyProfile(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('company_profile');
try {
$params = $request->param();
$this->validate($params, [
'company_profile_img|简介图片' => 'require',
'company_profile_content|简介内容' => 'require',
'company_profile_order|简介排序' => 'require'
]);
$model = ModelCompanyProfile::where('company_profile_guid', $params['company_profile_guid'])->find();
if (!$model) throwErrorMsg("该公司简介不存在", 1);
$model->allowField([
'company_profile_update_user_guid',
'company_profile_img',
'company_profile_color',
'company_profile_content',
'company_profile_order'
])->save($params);
Db::commit();
Tool::unlockTable();
return msg('编辑成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th; throw $th;
} }
} }
@ -130,6 +136,7 @@ class CompanyProfile extends BaseController
public function deleteCompanyProfile(Request $request): array public function deleteCompanyProfile(Request $request): array
{ {
Db::startTrans(); Db::startTrans();
Tool::adminLockTableWrite('company_profile');
try { try {
$params = $request->param(); $params = $request->param();
$this->validate($params, [ $this->validate($params, [
@ -140,9 +147,11 @@ class CompanyProfile extends BaseController
])->select(); ])->select();
$company_profile->delete(); $company_profile->delete();
Db::commit(); Db::commit();
Tool::unlockTable();
return msg('删除成功!'); return msg('删除成功!');
} catch (\Throwable $th) { } catch (\Throwable $th) {
Db::rollback(); Db::rollback();
Tool::unlockTable();
throw $th; throw $th;
} }
} }

View File

@ -52,38 +52,6 @@ class TeachingEnvir extends BaseController
return msg("获取教学环境列表成功!", $query); return msg("获取教学环境列表成功!", $query);
} }
/**
* 编辑教学环境接口
*
* @param Request request
* @return array
* @date 2023-04-22
* @author xjh
* @since 1.0.0
*/
public function editTeachingEnvir(Request $request): array
{
$params = $request->param();
$this->validate($params, [
'teaching_envir_title|教学环境标题' => 'require',
'teaching_envir_img|教学环境图片' => 'require',
'teaching_envir_intro|教学环境简介' => 'require',
'teaching_envir_details|教学环境详情' => 'require',
'teaching_envir_type_guid|教学环境类型guid' => 'require',
]);
$model = ModelTeachingEnvir::where('teaching_envir_guid', $params['teaching_envir_guid'])->find();
if (!$model) throwErrorMsg("该教学环境不存在", 1);
$model->allowField([
'teaching_envir_update_user_guid',
'teaching_envir_title',
'teaching_envir_img',
'teaching_envir_intro',
'teaching_envir_type_guid',
'teaching_envir_details'
])->save($params);
return msg('编辑成功!');
}
/** /**
* 添加教学环境接口 * 添加教学环境接口
* *
@ -95,25 +63,77 @@ class TeachingEnvir extends BaseController
*/ */
public function addTeachingEnvir(Request $request): array public function addTeachingEnvir(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('teaching_envire');
'teaching_envir_title|教学环境标题' => 'require', try {
'teaching_envir_img|教学环境图片' => 'require', $params = $request->param();
'teaching_envir_intro|教学环境简介' => 'require', $this->validate($params, [
'teaching_envir_details|教学环境详情' => 'require', 'teaching_envir_title|教学环境标题' => 'require',
'teaching_envir_type_guid|教学环境类型guid' => 'require', 'teaching_envir_img|教学环境图片' => 'require',
]); 'teaching_envir_intro|教学环境简介' => 'require',
ModelTeachingEnvir::create($params, [ 'teaching_envir_details|教学环境详情' => 'require',
'teaching_envir_guid', 'teaching_envir_type_guid|教学环境类型guid' => 'require',
'teaching_envir_create_user_guid', ]);
'teaching_envir_update_user_guid', ModelTeachingEnvir::create($params, [
'teaching_envir_title', 'teaching_envir_guid',
'teaching_envir_img', 'teaching_envir_create_user_guid',
'teaching_envir_type_guid', 'teaching_envir_update_user_guid',
'teaching_envir_intro', 'teaching_envir_title',
'teaching_envir_details' 'teaching_envir_img',
]); 'teaching_envir_type_guid',
return msg('添加成功!'); 'teaching_envir_intro',
'teaching_envir_details'
]);
Db::commit();
Tool::unlockTable();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/**
* 编辑教学环境接口
*
* @param Request request
* @return array
* @date 2023-04-22
* @author xjh
* @since 1.0.0
*/
public function editTeachingEnvir(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('teaching_envire');
try {
$params = $request->param();
$this->validate($params, [
'teaching_envir_title|教学环境标题' => 'require',
'teaching_envir_img|教学环境图片' => 'require',
'teaching_envir_intro|教学环境简介' => 'require',
'teaching_envir_details|教学环境详情' => 'require',
'teaching_envir_type_guid|教学环境类型guid' => 'require',
]);
$model = ModelTeachingEnvir::where('teaching_envir_guid', $params['teaching_envir_guid'])->find();
if (!$model) throwErrorMsg("该教学环境不存在", 1);
$model->allowField([
'teaching_envir_update_user_guid',
'teaching_envir_title',
'teaching_envir_img',
'teaching_envir_intro',
'teaching_envir_type_guid',
'teaching_envir_details'
])->save($params);
Db::commit();
Tool::unlockTable();
return msg('编辑成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**
@ -127,14 +147,24 @@ class TeachingEnvir extends BaseController
*/ */
public function deleteTeachingEnvir(Request $request): array public function deleteTeachingEnvir(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('teaching_envire');
'teaching_envir_guid' => 'require', try {
]); $params = $request->param();
$teaching_envir = ModelTeachingEnvir::where([ $this->validate($params, [
'teaching_envir_guid' => explode(',', $params['teaching_envir_guid']) 'teaching_envir_guid' => 'require',
])->select(); ]);
$teaching_envir->delete(); $teaching_envir = ModelTeachingEnvir::where([
return msg('删除成功!'); 'teaching_envir_guid' => explode(',', $params['teaching_envir_guid'])
])->select();
$teaching_envir->delete();
Db::commit();
Tool::unlockTable();
return msg('删除成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
} }

View File

@ -74,35 +74,6 @@ class TeachingEnvirType extends BaseController
]); ]);
} }
/**
* 编辑教学环境类型接口
*
* @param Request request
* @return array
* @date 2023-04-22
* @author xjh
* @since 1.0.0
*/
public function editTeachingEnvirType(Request $request): array
{
$params = $request->param();
$this->validate($params, [
'teaching_envir_type_name|环境类型名称' => 'require',
'teaching_envir_type_order|环境类型排序' => 'require',
'teaching_envir_type_parent_guid|作品类型父级guid' => 'require',
]);
$model = ModelTeachingEnvirType::where('teaching_envir_type_guid', $params['teaching_envir_type_guid'])->find();
if (!$model) throwErrorMsg("该教学环境类型不存在", 1);
$model->allowField([
'teaching_envir_type_update_user_guid',
'teaching_envir_type_name',
'teaching_envir_type_order',
'teaching_envir_type_ancestors_guid',
'teaching_envir_type_parent_guid'
])->save($params);
return msg('编辑成功!');
}
/** /**
* 添加教学环境类型接口 * 添加教学环境类型接口
* *
@ -114,24 +85,74 @@ class TeachingEnvirType extends BaseController
*/ */
public function addTeachingEnvirType(Request $request): array public function addTeachingEnvirType(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('teaching_envir_type');
'teaching_envir_type_name|环境类型名称' => 'require', try {
'teaching_envir_type_order|环境类型排序' => 'require', $params = $request->param();
'teaching_envir_type_parent_guid|作品类型父级guid' => 'require', $this->validate($params, [
]); 'teaching_envir_type_name|环境类型名称' => 'require',
ModelTeachingEnvirType::create($params, [ 'teaching_envir_type_order|环境类型排序' => 'require',
'teaching_envir_type_guid', 'teaching_envir_type_parent_guid|作品类型父级guid' => 'require',
'teaching_envir_type_create_user_guid', ]);
'teaching_envir_type_update_user_guid', ModelTeachingEnvirType::create($params, [
'teaching_envir_type_name', 'teaching_envir_type_guid',
'teaching_envir_type_order', 'teaching_envir_type_create_user_guid',
'teaching_envir_type_ancestors_guid', 'teaching_envir_type_update_user_guid',
'teaching_envir_type_parent_guid' 'teaching_envir_type_name',
]); 'teaching_envir_type_order',
return msg('添加成功!'); 'teaching_envir_type_ancestors_guid',
'teaching_envir_type_parent_guid'
]);
Db::commit();
Tool::unlockTable();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/**
* 编辑教学环境类型接口
*
* @param Request request
* @return array
* @date 2023-04-22
* @author xjh
* @since 1.0.0
*/
public function editTeachingEnvirType(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('teaching_envir_type');
try {
$params = $request->param();
$this->validate($params, [
'teaching_envir_type_name|环境类型名称' => 'require',
'teaching_envir_type_order|环境类型排序' => 'require',
'teaching_envir_type_parent_guid|作品类型父级guid' => 'require',
]);
$model = ModelTeachingEnvirType::where('teaching_envir_type_guid', $params['teaching_envir_type_guid'])->find();
if (!$model) throwErrorMsg("该教学环境类型不存在", 1);
$model->allowField([
'teaching_envir_type_update_user_guid',
'teaching_envir_type_name',
'teaching_envir_type_order',
'teaching_envir_type_ancestors_guid',
'teaching_envir_type_parent_guid'
])->save($params);
Db::commit();
Tool::unlockTable();
return msg('编辑成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/** /**
* 删除教学环境类型接口 * 删除教学环境类型接口
* *
@ -143,15 +164,25 @@ class TeachingEnvirType extends BaseController
*/ */
public function deleteTeachingEnvirType(Request $request): array public function deleteTeachingEnvirType(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('teaching_envir_type');
'teaching_envir_type_guid' => 'require', try {
]); $params = $request->param();
$teaching_envir_type = ModelTeachingEnvirType::where([ $this->validate($params, [
'teaching_envir_type_guid' => explode(',', $params['teaching_envir_type_guid']) 'teaching_envir_type_guid' => 'require',
])->select(); ]);
$teaching_envir_type->delete(); $teaching_envir_type = ModelTeachingEnvirType::where([
return msg('删除成功!'); 'teaching_envir_type_guid' => explode(',', $params['teaching_envir_type_guid'])
])->select();
$teaching_envir_type->delete();
Db::commit();
Tool::unlockTable();
return msg('删除成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**
@ -165,23 +196,33 @@ class TeachingEnvirType extends BaseController
*/ */
public function exportExcel(Request $request) public function exportExcel(Request $request)
{ {
$params = $request->param(); Db::startTrans();
$con = []; Tool::adminLockTableWrite('teaching_envir_type');
if (isset($params['teaching_envir_type_guids']) && $params['teaching_envir_type_guids']) { try {
$con['a.teaching_envir_type_guid'] = explode(',', $params['teaching_envir_type_guids']); $params = $request->param();
$con = [];
if (isset($params['teaching_envir_type_guids']) && $params['teaching_envir_type_guids']) {
$con['a.teaching_envir_type_guid'] = explode(',', $params['teaching_envir_type_guids']);
}
$select = ModelTeachingEnvirType::field([
'a.teaching_envir_type_name',
'a.teaching_envir_type_order',
// 'a.teaching_envir_type_parent_guid',
// 'b.teaching_envir_type_name' => 'teaching_envir_type_parent_name',
])
->where($con)
->alias('a')
// ->leftjoin('teaching_envir_type b', 'a.teaching_envir_type_parent_guid = b.teaching_envir_type_guid')
->order('teaching_envir_type_order', 'asc')
->select();
Db::commit();
Tool::unlockTable();
return ModelTeachingEnvirType::exportExcel($select);
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
} }
$select = ModelTeachingEnvirType::field([
'a.teaching_envir_type_name',
'a.teaching_envir_type_order',
// 'a.teaching_envir_type_parent_guid',
// 'b.teaching_envir_type_name' => 'teaching_envir_type_parent_name',
])
->where($con)
->alias('a')
// ->leftjoin('teaching_envir_type b', 'a.teaching_envir_type_parent_guid = b.teaching_envir_type_guid')
->order('teaching_envir_type_order', 'asc')
->select();
return ModelTeachingEnvirType::exportExcel($select);
} }
/** /**
@ -215,13 +256,23 @@ class TeachingEnvirType extends BaseController
*/ */
public function importExcel(Request $request): array public function importExcel(Request $request): array
{ {
$file = new UploadFile('uploads', 'fileExt:xlsx'); Db::startTrans();
$file->putFile('teaching_envir_type'); Tool::adminLockTableWrite('teaching_envir_type');
try {
$file = new UploadFile('uploads', 'fileExt:xlsx');
$file->putFile('teaching_envir_type');
$msg = ModelTeachingEnvirType::importExcel($file); $msg = ModelTeachingEnvirType::importExcel($file);
return [ Db::commit();
'code' => 0, Tool::unlockTable();
'msg' => $msg return [
]; 'code' => 0,
'msg' => $msg
];
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
} }

View File

@ -37,44 +37,64 @@ class Banner extends BaseController
return msg("获取轮播图列表成功!", $query); return msg("获取轮播图列表成功!", $query);
} }
/**
* 编辑轮播图
*/
public function editBanner(Request $request): array
{
$params = $request->param();
$this->validate($params, [
'banner_img|轮播图图片' => 'require',
'banner_order|排序' => 'require'
]);
$model = ModelBanner::where('banner_guid', $params['banner_guid'])->find();
if (!$model) throwErrorMsg("该轮播图不存在", 1);
$model->allowField([
'banner_update_user_guid',
'banner_img',
'banner_order'
])->save($params);
return msg('编辑成功!');
}
/** /**
* 添加轮播图 * 添加轮播图
*/ */
public function addBanner(Request $request): array public function addBanner(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('banner');
'banner_img|轮播图图片' => 'require', try {
'banner_order|排序' => 'require' $params = $request->param();
]); $this->validate($params, [
ModelBanner::create($params, [ 'banner_img|轮播图图片' => 'require',
'banner_guid', 'banner_order|排序' => 'require'
'banner_create_user_guid', ]);
'banner_update_user_guid', ModelBanner::create($params, [
'banner_img', 'banner_guid',
'banner_order' 'banner_create_user_guid',
]); 'banner_update_user_guid',
return msg('添加成功!'); 'banner_img',
'banner_order'
]);
Db::commit();
Tool::unlockTable();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/**
* 编辑轮播图
*/
public function editBanner(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('banner');
try {
$params = $request->param();
$this->validate($params, [
'banner_img|轮播图图片' => 'require',
'banner_order|排序' => 'require'
]);
$model = ModelBanner::where('banner_guid', $params['banner_guid'])->find();
if (!$model) throwErrorMsg("该轮播图不存在", 1);
$model->allowField([
'banner_update_user_guid',
'banner_img',
'banner_order'
])->save($params);
Db::commit();
Tool::unlockTable();
return msg('编辑成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**
@ -82,14 +102,24 @@ class Banner extends BaseController
*/ */
public function deleteBanner(Request $request): array public function deleteBanner(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('banner');
'banner_guid' => 'require', try {
]); $params = $request->param();
$banner = ModelBanner::where([ $this->validate($params, [
'banner_guid' => explode(',', $params['banner_guid']) 'banner_guid' => 'require',
])->select(); ]);
$banner->delete(); $banner = ModelBanner::where([
return msg('删除成功!'); 'banner_guid' => explode(',', $params['banner_guid'])
])->select();
$banner->delete();
Db::commit();
Tool::unlockTable();
return msg('删除成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
} }

View File

@ -25,7 +25,7 @@ class ConsultingHotline extends BaseController
$params = $request->param(); $params = $request->param();
$con = []; $con = [];
$con = Tool::getOptionalQuery(['consulting_hotline_user', 'LIKE'], ['consulting_hotline_phone', 'LIKE'],['consulting_hotline_order','='],); $con = Tool::getOptionalQuery(['consulting_hotline_user', 'LIKE'], ['consulting_hotline_phone', 'LIKE'], ['consulting_hotline_order', '='],);
$query = ModelConsultingHotline::where($con) $query = ModelConsultingHotline::where($con)
->field([ ->field([
@ -40,48 +40,68 @@ class ConsultingHotline extends BaseController
return msg("获取咨询热线列表成功!", $query); return msg("获取咨询热线列表成功!", $query);
} }
/**
* 编辑咨询热线
*/
public function editConsultingHotline(Request $request): array
{
$params = $request->param();
$this->validate($params, [
'consulting_hotline_user|资讯留言人' => 'require',
'consulting_hotline_phone|资讯热线方式' => 'require',
'consulting_hotline_order|资讯热线排序'=>'require'
]);
$model = ModelConsultingHotline::where('consulting_hotline_guid', $params['consulting_hotline_guid'])->find();
if (!$model) throwErrorMsg("该咨询热线不存在", 1);
$model->allowField([
'consulting_hotline_update_user_guid',
'consulting_hotline_user',
'consulting_hotline_phone',
'consulting_hotline_order'
])->save($params);
return msg('编辑成功!');
}
/** /**
* 添加咨询热线 * 添加咨询热线
*/ */
public function addConsultingHotline(Request $request): array public function addConsultingHotline(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('consulting_hotline');
'consulting_hotline_user|资讯留言人' => 'require', try {
'consulting_hotline_phone|资讯热线方式' => 'require', $params = $request->param();
'consulting_hotline_order|资讯热线排序'=>'require' $this->validate($params, [
]); 'consulting_hotline_user|资讯留言人' => 'require',
$model = ModelConsultingHotline::create($params, [ 'consulting_hotline_phone|资讯热线方式' => 'require',
'consulting_hotline_guid', 'consulting_hotline_order|资讯热线排序' => 'require'
'consulting_hotline_create_user_guid', ]);
'consulting_hotline_update_user_guid', $model = ModelConsultingHotline::create($params, [
'consulting_hotline_user', 'consulting_hotline_guid',
'consulting_hotline_phone', 'consulting_hotline_create_user_guid',
'consulting_hotline_order' 'consulting_hotline_update_user_guid',
]); 'consulting_hotline_user',
return msg('添加成功!'); 'consulting_hotline_phone',
'consulting_hotline_order'
]);
Db::commit();
Tool::unlockTable();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/**
* 编辑咨询热线
*/
public function editConsultingHotline(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('consulting_hotline');
try {
$params = $request->param();
$this->validate($params, [
'consulting_hotline_user|资讯留言人' => 'require',
'consulting_hotline_phone|资讯热线方式' => 'require',
'consulting_hotline_order|资讯热线排序' => 'require'
]);
$model = ModelConsultingHotline::where('consulting_hotline_guid', $params['consulting_hotline_guid'])->find();
if (!$model) throwErrorMsg("该咨询热线不存在", 1);
$model->allowField([
'consulting_hotline_update_user_guid',
'consulting_hotline_user',
'consulting_hotline_phone',
'consulting_hotline_order'
])->save($params);
Db::commit();
Tool::unlockTable();
return msg('编辑成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**
@ -89,14 +109,24 @@ class ConsultingHotline extends BaseController
*/ */
public function deleteConsultingHotline(Request $request): array public function deleteConsultingHotline(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('consulting_hotline');
'consulting_hotline_guid' => 'require', try {
]); $params = $request->param();
$consulting_hotline = ModelConsultingHotline::where([ $this->validate($params, [
'consulting_hotline_guid' => explode(',', $params['consulting_hotline_guid']) 'consulting_hotline_guid' => 'require',
])->select(); ]);
$consulting_hotline->delete(); $consulting_hotline = ModelConsultingHotline::where([
return msg('删除成功!'); 'consulting_hotline_guid' => explode(',', $params['consulting_hotline_guid'])
])->select();
$consulting_hotline->delete();
Db::commit();
Tool::unlockTable();
return msg('删除成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
} }

View File

@ -42,50 +42,70 @@ class ContactScancode extends BaseController
return msg("获取联系扫码列表成功!", $query); return msg("获取联系扫码列表成功!", $query);
} }
/**
* 编辑联系扫码
*/
public function editContactScancode(Request $request): array
{
$params = $request->param();
$this->validate($params, [
'contact_scancode_title|联系扫码标题' => 'require'
]);
$model = ModelContactScancode::where('contact_scancode_guid', $params['contact_scancode_guid'])->find();
if (!$model) throwErrorMsg("该联系扫码不存在", 1);
$model->allowField([
'contact_scancode_update_user_guid',
'contact_scancode_title',
'contact_scancode_status',
'contact_scancode_icon',
'contact_scancode_img',
'contact_scancode_order'
])->save($params);
return msg('编辑成功!');
}
/** /**
* 添加联系扫码 * 添加联系扫码
*/ */
public function addContactScancode(Request $request): array public function addContactScancode(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('contact_scancode');
'contact_scancode_title|联系扫码标题' => 'require', try {
'contact_scancode_order|联系扫码排序' => 'require' $params = $request->param();
]); $this->validate($params, [
$model = ModelContactScancode::create($params, [ 'contact_scancode_title|联系扫码标题' => 'require',
'contact_scancode_guid', 'contact_scancode_order|联系扫码排序' => 'require'
'contact_scancode_create_user_guid', ]);
'contact_scancode_update_user_guid', $model = ModelContactScancode::create($params, [
'contact_scancode_title', 'contact_scancode_guid',
'contact_scancode_img', 'contact_scancode_create_user_guid',
'contact_scancode_status', 'contact_scancode_update_user_guid',
'contact_scancode_icon', 'contact_scancode_title',
'contact_scancode_order' 'contact_scancode_img',
]); 'contact_scancode_status',
return msg('添加成功!'); 'contact_scancode_icon',
'contact_scancode_order'
]);
Db::commit();
Tool::unlockTable();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/**
* 编辑联系扫码
*/
public function editContactScancode(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('contact_scancode');
try {
$params = $request->param();
$this->validate($params, [
'contact_scancode_title|联系扫码标题' => 'require'
]);
$model = ModelContactScancode::where('contact_scancode_guid', $params['contact_scancode_guid'])->find();
if (!$model) throwErrorMsg("该联系扫码不存在", 1);
$model->allowField([
'contact_scancode_update_user_guid',
'contact_scancode_title',
'contact_scancode_status',
'contact_scancode_icon',
'contact_scancode_img',
'contact_scancode_order'
])->save($params);
Db::commit();
Tool::unlockTable();
return msg('编辑成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**
@ -93,14 +113,24 @@ class ContactScancode extends BaseController
*/ */
public function deleteContactScancode(Request $request): array public function deleteContactScancode(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('contact_scancode');
'contact_scancode_guid' => 'require', try {
]); $params = $request->param();
$contact_scancode = ModelContactScancode::where([ $this->validate($params, [
'contact_scancode_guid' => explode(',', $params['contact_scancode_guid']) 'contact_scancode_guid' => 'require',
])->select(); ]);
$contact_scancode->delete(); $contact_scancode = ModelContactScancode::where([
return msg('删除成功!'); 'contact_scancode_guid' => explode(',', $params['contact_scancode_guid'])
])->select();
$contact_scancode->delete();
Db::commit();
Tool::unlockTable();
return msg('删除成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
} }

View File

@ -25,7 +25,7 @@ class Classes extends BaseController
$params = $request->param(); $params = $request->param();
$con = []; $con = [];
$con = Tool::getOptionalQuery(['classes_name', 'LIKE'],['classes_status', '='],); $con = Tool::getOptionalQuery(['classes_name', 'LIKE'], ['classes_status', '='],);
$query = ModelClasses::where($con) $query = ModelClasses::where($con)
->field([ ->field([
@ -43,52 +43,72 @@ class Classes extends BaseController
return msg("获取班型列表成功!", $query); return msg("获取班型列表成功!", $query);
} }
/**
* 编辑班型
*/
public function editClasses(Request $request): array
{
$params = $request->param();
$this->validate($params, [
'classes_name|名称' => 'require',
'classes_sort|排序' => 'require'
]);
$model = ModelClasses::where('classes_guid', $params['classes_guid'])->find();
if (!$model) throwErrorMsg("该班型不存在", 1);
$model->allowField([
'classes_update_user_guid',
'classes_name',
'classes_cover',
'classes_desc',
'classes_status',
'classes_sort',
'classes_content'
])->save($params);
return msg('编辑成功!');
}
/** /**
* 添加班型 * 添加班型
*/ */
public function addClasses(Request $request): array public function addClasses(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('classes');
'classes_name|名称' => 'require', try {
'classes_sort|排序' => 'require' $params = $request->param();
]); $this->validate($params, [
$model = ModelClasses::create($params, [ 'classes_name|名称' => 'require',
'classes_guid', 'classes_sort|排序' => 'require'
'classes_create_user_guid', ]);
'classes_update_user_guid', $model = ModelClasses::create($params, [
'classes_name', 'classes_guid',
'classes_cover', 'classes_create_user_guid',
'classes_desc', 'classes_update_user_guid',
'classes_status', 'classes_name',
'classes_sort', 'classes_cover',
'classes_content' 'classes_desc',
]); 'classes_status',
return msg('添加成功!'); 'classes_sort',
'classes_content'
]);
Db::commit();
Tool::unlockTable();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/**
* 编辑班型
*/
public function editClasses(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('classes');
try {
$params = $request->param();
$this->validate($params, [
'classes_name|名称' => 'require',
'classes_sort|排序' => 'require'
]);
$model = ModelClasses::where('classes_guid', $params['classes_guid'])->find();
if (!$model) throwErrorMsg("该班型不存在", 1);
$model->allowField([
'classes_update_user_guid',
'classes_name',
'classes_cover',
'classes_desc',
'classes_status',
'classes_sort',
'classes_content'
])->save($params);
Db::commit();
Tool::unlockTable();
return msg('编辑成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**
@ -96,15 +116,25 @@ class Classes extends BaseController
*/ */
public function deleteClasses(Request $request): array public function deleteClasses(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('classes');
'classes_guid' => 'require', try {
]); $params = $request->param();
$classes = ModelClasses::where([ $this->validate($params, [
'classes_guid' => explode(',', $params['classes_guid']) 'classes_guid' => 'require',
])->select(); ]);
$classes->delete(); $classes = ModelClasses::where([
return msg('删除成功!'); 'classes_guid' => explode(',', $params['classes_guid'])
])->select();
$classes->delete();
Db::commit();
Tool::unlockTable();
return msg('删除成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**
@ -134,13 +164,23 @@ class Classes extends BaseController
*/ */
public function importExcel(Request $request) public function importExcel(Request $request)
{ {
$file = new UploadFile('uploads', 'fileExt:xlsx'); Db::startTrans();
$file->putFile('classes'); Tool::adminLockTableWrite('classes');
try {
$file = new UploadFile('uploads', 'fileExt:xlsx');
$file->putFile('classes');
$msg = ModelClasses::importExcel($file); $msg = ModelClasses::importExcel($file);
return [ Db::commit();
'code' => 0, Tool::unlockTable();
'msg' => $msg return [
]; 'code' => 0,
'msg' => $msg
];
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
} }

View File

@ -52,12 +52,39 @@ class EnrolAq extends BaseController
return $isExport ? $query->select()->toArray() : msg("获取招生问答列表成功!", $query); return $isExport ? $query->select()->toArray() : msg("获取招生问答列表成功!", $query);
} }
/**
* 删除招生问答
*/
public function deleteEnrolAq(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('enrol_aq');
try {
$params = $request->param();
$this->validate($params, [
'enrol_aq_guid' => 'require',
]);
$enrol_aq = ModelEnrolAq::where([
'enrol_aq_guid' => explode(',', $params['enrol_aq_guid'])
])->select();
$enrol_aq->delete();
Db::commit();
Tool::unlockTable();
return msg('删除成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/** /**
* 编辑招生问答 * 编辑招生问答
*/ */
public function editEnrolAq(Request $request): array public function editEnrolAq(Request $request): array
{ {
Db::startTrans(); Db::startTrans();
Tool::adminLockTableWrite('enrol_aq');
try { try {
$params = $request->param(); $params = $request->param();
@ -84,33 +111,11 @@ class EnrolAq extends BaseController
])->save($params); ])->save($params);
Db::commit(); Db::commit();
Tool::unlockTable();
return msg('编辑成功!'); return msg('编辑成功!');
} catch (\Throwable $th) { } catch (\Throwable $th) {
Db::rollback(); Db::rollback();
throw $th; Tool::unlockTable();
}
}
/**
* 删除招生问答
*/
public function deleteEnrolAq(Request $request): array
{
Db::startTrans();
try {
$params = $request->param();
$this->validate($params, [
'enrol_aq_guid' => 'require',
]);
$enrol_aq = ModelEnrolAq::where([
'enrol_aq_guid' => explode(',', $params['enrol_aq_guid'])
])->select();
$enrol_aq->delete();
Db::commit();
return msg('删除成功!');
} catch (\Throwable $th) {
Db::rollback();
throw $th; throw $th;
} }
} }

View File

@ -41,48 +41,68 @@ class EnrolIntro extends BaseController
return msg("获取招生简介列表成功!", $query); return msg("获取招生简介列表成功!", $query);
} }
/**
* 编辑招生简介
*/
public function editEnrolIntro(Request $request): array
{
$params = $request->param();
$this->validate($params, [
'enrol_intro_title|标题' => 'require',
'enrol_intro_content|内容' => 'require'
]);
$model = ModelEnrolIntro::where('enrol_intro_guid', $params['enrol_intro_guid'])->find();
if (!$model) throwErrorMsg("该招生简介不存在", 1);
$model->allowField([
'enrol_intro_update_user_guid',
'enrol_intro_title',
'enrol_intro_cover',
'enrol_intro_content',
'enrol_intro_sort'
])->save($params);
return msg('编辑成功!');
}
/** /**
* 添加招生简介 * 添加招生简介
*/ */
public function addEnrolIntro(Request $request): array public function addEnrolIntro(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('enrol_intro');
'enrol_intro_title|标题' => 'require', try {
'enrol_intro_content|内容' => 'require' $params = $request->param();
]); $this->validate($params, [
$model = ModelEnrolIntro::create($params, [ 'enrol_intro_title|标题' => 'require',
'enrol_intro_guid', 'enrol_intro_content|内容' => 'require'
'enrol_intro_create_user_guid', ]);
'enrol_intro_update_user_guid', $model = ModelEnrolIntro::create($params, [
'enrol_intro_title', 'enrol_intro_guid',
'enrol_intro_cover', 'enrol_intro_create_user_guid',
'enrol_intro_content', 'enrol_intro_update_user_guid',
'enrol_intro_sort' 'enrol_intro_title',
]); 'enrol_intro_cover',
return msg('添加成功!'); 'enrol_intro_content',
'enrol_intro_sort'
]);
Db::commit();
Tool::unlockTable();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/**
* 编辑招生简介
*/
public function editEnrolIntro(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('enrol_intro');
try {
$params = $request->param();
$this->validate($params, [
'enrol_intro_title|标题' => 'require',
'enrol_intro_content|内容' => 'require'
]);
$model = ModelEnrolIntro::where('enrol_intro_guid', $params['enrol_intro_guid'])->find();
if (!$model) throwErrorMsg("该招生简介不存在", 1);
$model->allowField([
'enrol_intro_update_user_guid',
'enrol_intro_title',
'enrol_intro_cover',
'enrol_intro_content',
'enrol_intro_sort'
])->save($params);
Db::commit();
Tool::unlockTable();
return msg('编辑成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**
@ -90,14 +110,24 @@ class EnrolIntro extends BaseController
*/ */
public function deleteEnrolIntro(Request $request): array public function deleteEnrolIntro(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('enrol_intro');
'enrol_intro_guid' => 'require', try {
]); $params = $request->param();
$enrol_intro = ModelEnrolIntro::where([ $this->validate($params, [
'enrol_intro_guid' => explode(',', $params['enrol_intro_guid']) 'enrol_intro_guid' => 'require',
])->select(); ]);
$enrol_intro->delete(); $enrol_intro = ModelEnrolIntro::where([
return msg('删除成功!'); 'enrol_intro_guid' => explode(',', $params['enrol_intro_guid'])
])->select();
$enrol_intro->delete();
Db::commit();
Tool::unlockTable();
return msg('删除成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
} }

View File

@ -40,48 +40,69 @@ class EnterSchoolProcess extends BaseController
return msg("获取入学流程列表成功!", $query); return msg("获取入学流程列表成功!", $query);
} }
/**
* 编辑入学流程
*/
public function editEnterSchoolProcess(Request $request): array
{
$params = $request->param();
$this->validate($params, [
'enter_school_process_title|标题' => 'require',
'enter_school_process_intro|介绍' => 'require',
'enter_school_process_sort|排序' => 'require'
]);
$model = ModelEnterSchoolProcess::where('enter_school_process_guid', $params['enter_school_process_guid'])->find();
if (!$model) throwErrorMsg("该入学流程不存在", 1);
$model->allowField([
'enter_school_process_update_user_guid',
'enter_school_process_title',
'enter_school_process_intro',
'enter_school_process_sort'
])->save($params);
return msg('编辑成功!');
}
/** /**
* 添加入学流程 * 添加入学流程
*/ */
public function addEnterSchoolProcess(Request $request): array public function addEnterSchoolProcess(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('enter_school_process');
'enter_school_process_title|标题' => 'require', try {
'enter_school_process_intro|介绍' => 'require', $params = $request->param();
'enter_school_process_sort|排序' => 'require' $this->validate($params, [
]); 'enter_school_process_title|标题' => 'require',
$model = ModelEnterSchoolProcess::create($params, [ 'enter_school_process_intro|介绍' => 'require',
'enter_school_process_guid', 'enter_school_process_sort|排序' => 'require'
'enter_school_process_create_user_guid', ]);
'enter_school_process_update_user_guid', $model = ModelEnterSchoolProcess::create($params, [
'enter_school_process_title', 'enter_school_process_guid',
'enter_school_process_intro', 'enter_school_process_create_user_guid',
'enter_school_process_sort' 'enter_school_process_update_user_guid',
]); 'enter_school_process_title',
return msg('添加成功!'); 'enter_school_process_intro',
'enter_school_process_sort'
]);
Db::commit();
Tool::unlockTable();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/**
* 编辑入学流程
*/
public function editEnterSchoolProcess(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('enter_school_process');
try {
$params = $request->param();
$this->validate($params, [
'enter_school_process_title|标题' => 'require',
'enter_school_process_intro|介绍' => 'require',
'enter_school_process_sort|排序' => 'require'
]);
$model = ModelEnterSchoolProcess::where('enter_school_process_guid', $params['enter_school_process_guid'])->find();
if (!$model) throwErrorMsg("该入学流程不存在", 1);
$model->allowField([
'enter_school_process_update_user_guid',
'enter_school_process_title',
'enter_school_process_intro',
'enter_school_process_sort'
])->save($params);
Db::commit();
Tool::unlockTable();
return msg('编辑成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**
@ -89,15 +110,25 @@ class EnterSchoolProcess extends BaseController
*/ */
public function deleteEnterSchoolProcess(Request $request): array public function deleteEnterSchoolProcess(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('enter_school_process');
'enter_school_process_guid' => 'require', try {
]); $params = $request->param();
$enter_school_process = ModelEnterSchoolProcess::where([ $this->validate($params, [
'enter_school_process_guid' => explode(',', $params['enter_school_process_guid']) 'enter_school_process_guid' => 'require',
])->select(); ]);
$enter_school_process->delete(); $enter_school_process = ModelEnterSchoolProcess::where([
return msg('删除成功!'); 'enter_school_process_guid' => explode(',', $params['enter_school_process_guid'])
])->select();
$enter_school_process->delete();
return msg('删除成功!');
Db::commit();
Tool::unlockTable();
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**

View File

@ -41,52 +41,72 @@ class SignUpProcess extends BaseController
return msg("获取报名流程列表成功!", $query); return msg("获取报名流程列表成功!", $query);
} }
/**
* 编辑报名流程
*/
public function editSignUpProcess(Request $request): array
{
$params = $request->param();
$this->validate($params, [
'sign_up_process_title|标题' => 'require',
'sign_up_process_icon|图标' => 'require',
'sign_up_process_intro|介绍' => 'require',
'sign_up_process_sort|排序' => 'require'
]);
$model = ModelSignUpProcess::where('sign_up_process_guid', $params['sign_up_process_guid'])->find();
if (!$model) throwErrorMsg("该报名流程不存在", 1);
$model->allowField([
'sign_up_process_update_user_guid',
'sign_up_process_title',
'sign_up_process_icon',
'sign_up_process_intro',
'sign_up_process_sort'
])->save($params);
return msg('编辑成功!');
}
/** /**
* 添加报名流程 * 添加报名流程
*/ */
public function addSignUpProcess(Request $request): array public function addSignUpProcess(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('sign_up_process');
'sign_up_process_title|标题' => 'require', try {
'sign_up_process_icon|图标' => 'require', $params = $request->param();
'sign_up_process_intro|介绍' => 'require', $this->validate($params, [
'sign_up_process_sort|排序' => 'require' 'sign_up_process_title|标题' => 'require',
]); 'sign_up_process_icon|图标' => 'require',
$model = ModelSignUpProcess::create($params, [ 'sign_up_process_intro|介绍' => 'require',
'sign_up_process_guid', 'sign_up_process_sort|排序' => 'require'
'sign_up_process_create_user_guid', ]);
'sign_up_process_update_user_guid', $model = ModelSignUpProcess::create($params, [
'sign_up_process_title', 'sign_up_process_guid',
'sign_up_process_icon', 'sign_up_process_create_user_guid',
'sign_up_process_intro', 'sign_up_process_update_user_guid',
'sign_up_process_sort' 'sign_up_process_title',
]); 'sign_up_process_icon',
return msg('添加成功!'); 'sign_up_process_intro',
'sign_up_process_sort'
]);
Db::commit();
Tool::unlockTable();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/**
* 编辑报名流程
*/
public function editSignUpProcess(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('sign_up_process');
try {
$params = $request->param();
$this->validate($params, [
'sign_up_process_title|标题' => 'require',
'sign_up_process_icon|图标' => 'require',
'sign_up_process_intro|介绍' => 'require',
'sign_up_process_sort|排序' => 'require'
]);
$model = ModelSignUpProcess::where('sign_up_process_guid', $params['sign_up_process_guid'])->find();
if (!$model) throwErrorMsg("该报名流程不存在", 1);
$model->allowField([
'sign_up_process_update_user_guid',
'sign_up_process_title',
'sign_up_process_icon',
'sign_up_process_intro',
'sign_up_process_sort'
])->save($params);
Db::commit();
Tool::unlockTable();
return msg('编辑成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**
@ -94,15 +114,25 @@ class SignUpProcess extends BaseController
*/ */
public function deleteSignUpProcess(Request $request): array public function deleteSignUpProcess(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('sign_up_process');
'sign_up_process_guid' => 'require', try {
]); $params = $request->param();
$sign_up_process = ModelSignUpProcess::where([ $this->validate($params, [
'sign_up_process_guid' => explode(',', $params['sign_up_process_guid']) 'sign_up_process_guid' => 'require',
])->select(); ]);
$sign_up_process->delete(); $sign_up_process = ModelSignUpProcess::where([
return msg('删除成功!'); 'sign_up_process_guid' => explode(',', $params['sign_up_process_guid'])
])->select();
$sign_up_process->delete();
Db::commit();
Tool::unlockTable();
return msg('删除成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**

View File

@ -47,6 +47,42 @@ class InfoArticle extends BaseController
return $isExport ? $query->select()->toArray() : msg("获取资讯文章列表成功!", $query); return $isExport ? $query->select()->toArray() : msg("获取资讯文章列表成功!", $query);
} }
/**
* 添加资讯文章
*/
public function addinfoArticle(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('info_article');
try {
$params = $request->param();
$this->validate($params, [
'info_article_type_guid|文章类型' => 'require',
'info_article_title|文章标题' => 'require',
'info_article_cover|文章封面' => 'require',
'info_article_content|文章内容' => 'require',
]);
ModelinfoArticle::create($params, [
'info_article_guid',
'info_article_create_user_guid',
'info_article_update_user_guid',
'info_article_type_guid',
'info_article_title',
'info_article_cover',
'info_article_content',
'info_article_order',
'info_article_status',
]);
Db::commit();
Tool::unlockTable();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/** /**
* 编辑资讯文章 * 编辑资讯文章
*/ */
@ -85,42 +121,6 @@ class InfoArticle extends BaseController
} }
} }
/**
* 添加资讯文章
*/
public function addinfoArticle(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('info_article');
try {
$params = $request->param();
$this->validate($params, [
'info_article_type_guid|文章类型' => 'require',
'info_article_title|文章标题' => 'require',
'info_article_cover|文章封面' => 'require',
'info_article_content|文章内容' => 'require',
]);
$model = ModelinfoArticle::create($params, [
'info_article_guid',
'info_article_create_user_guid',
'info_article_update_user_guid',
'info_article_type_guid',
'info_article_title',
'info_article_cover',
'info_article_content',
'info_article_order',
'info_article_status',
]);
Db::commit();
Tool::unlockTable();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/** /**
* 删除资讯文章 * 删除资讯文章
*/ */
@ -181,13 +181,23 @@ class InfoArticle extends BaseController
*/ */
public function importExcel(Request $request) public function importExcel(Request $request)
{ {
$file = new UploadFile('uploads', 'fileExt:xlsx'); Db::startTrans();
$file->putFile('info_article'); Tool::adminLockTableWrite('info_article');
try {
$file = new UploadFile('uploads', 'fileExt:xlsx');
$file->putFile('info_article');
$msg = ModelinfoArticle::importExcel($file); $msg = ModelinfoArticle::importExcel($file);
return [ Db::commit();
'code' => 0, Tool::unlockTable();
'msg' => $msg return [
]; 'code' => 0,
'msg' => $msg
];
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
} }

View File

@ -39,12 +39,44 @@ class InfoArticleType extends BaseController
return msg("获取资讯文章类型列表成功!", $query); return msg("获取资讯文章类型列表成功!", $query);
} }
/**
* 添加资讯文章类型
*/
public function addinfoArticleType(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('info_article_type');
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();
Tool::unlockTable();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/** /**
* 编辑资讯文章类型 * 编辑资讯文章类型
*/ */
public function editinfoArticleType(Request $request): array public function editinfoArticleType(Request $request): array
{ {
Db::startTrans(); Db::startTrans();
Tool::adminLockTableWrite('info_article_type');
try { try {
$params = $request->param(); $params = $request->param();
$this->validate($params, [ $this->validate($params, [
@ -61,37 +93,11 @@ class InfoArticleType extends BaseController
'info_article_type_sort' 'info_article_type_sort'
])->save($params); ])->save($params);
Db::commit(); Db::commit();
Tool::unlockTable();
return msg('编辑成功!'); return msg('编辑成功!');
} catch (\Throwable $th) { } catch (\Throwable $th) {
Db::rollback(); Db::rollback();
throw $th; Tool::unlockTable();
}
}
/**
* 添加资讯文章类型
*/
public function addinfoArticleType(Request $request): array
{
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; throw $th;
} }
} }
@ -102,6 +108,7 @@ class InfoArticleType extends BaseController
public function deleteinfoArticleType(Request $request): array public function deleteinfoArticleType(Request $request): array
{ {
Db::startTrans(); Db::startTrans();
Tool::adminLockTableWrite('info_article_type');
try { try {
$params = $request->param(); $params = $request->param();
$this->validate($params, [ $this->validate($params, [
@ -114,9 +121,11 @@ class InfoArticleType extends BaseController
])->select(); ])->select();
$info_article_type->delete(); $info_article_type->delete();
Db::commit(); Db::commit();
Tool::unlockTable();
return msg('编辑成功!'); return msg('编辑成功!');
} catch (\Throwable $th) { } catch (\Throwable $th) {
Db::rollback(); Db::rollback();
Tool::unlockTable();
throw $th; throw $th;
} }
} }
@ -154,13 +163,23 @@ class InfoArticleType extends BaseController
*/ */
public function importExcel(Request $request) public function importExcel(Request $request)
{ {
$file = new UploadFile('uploads', 'fileExt:xlsx'); Db::startTrans();
$file->putFile('info_article_type'); Tool::adminLockTableWrite('info_article_type');
try {
$file = new UploadFile('uploads', 'fileExt:xlsx');
$file->putFile('info_article_type');
$msg = ModelinfoArticleType::importExcel($file); $msg = ModelinfoArticleType::importExcel($file);
return [ Db::commit();
'code' => 0, Tool::unlockTable();
'msg' => $msg return [
]; 'code' => 0,
'msg' => $msg
];
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
} }

View File

@ -39,62 +39,19 @@ class HomeEnv extends BaseController
return msg("获取首页环境列表成功!", $query); return msg("获取首页环境列表成功!", $query);
} }
/**
* 编辑首页环境
*/
public function editHomeEnv(Request $request): array
{
$params = $request->param();
$this->validate($params, [
// 'home_env_img|图片' => 'require',
'home_env_sort|排序' => 'require'
]);
$model = ModelHomeEnv::where('home_env_guid', $params['home_env_guid'])->find();
if (!$model) throwErrorMsg("该首页环境不存在", 1);
$model->allowField([
'home_env_update_user_guid',
'home_env_img',
'home_env_video',
'home_env_sort'
])->save($params);
return msg('编辑成功!');
}
/** /**
* 添加首页环境 * 添加首页环境
*/ */
public function addHomeEnv(Request $request): array public function addHomeEnv(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('home_env');
// 'home_env_img|图片' => 'require', try {
'home_env_sort|排序' => 'require' $params = $request->param();
]); $this->validate($params, [
$model = ModelHomeEnv::create($params, [ // 'home_env_img|图片' => 'require',
'home_env_guid', 'home_env_sort|排序' => 'require'
'home_env_create_user_guid', ]);
'home_env_update_user_guid',
'home_env_video',
'home_env_img',
'home_env_sort'
]);
return msg('添加成功!');
}
/**
* 批量添加首页环境
*/
public function batchAddHomeEnv(Request $request): array
{
$params = $request->param();
$this->validate($params, [
'home_env_img|图片' => 'require',
]);
$params['home_env_sort'] = 1;
$arr = explode(",", $params['home_env_img']);
// return $arr;
if (empty($arr)) {
$model = ModelHomeEnv::create($params, [ $model = ModelHomeEnv::create($params, [
'home_env_guid', 'home_env_guid',
'home_env_create_user_guid', 'home_env_create_user_guid',
@ -103,16 +60,88 @@ class HomeEnv extends BaseController
'home_env_img', 'home_env_img',
'home_env_sort' 'home_env_sort'
]); ]);
} else { Db::commit();
foreach ($arr as $key => $value) { Tool::unlockTable();
ModelHomeEnv::create([ return msg('添加成功!');
'home_env_img' => $value, } catch (\Throwable $th) {
// 'home_env_sort' => 1 Db::rollback();
]); Tool::unlockTable();
} throw $th;
} }
}
return msg('批量添加成功!'); /**
* 编辑首页环境
*/
public function editHomeEnv(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('home_env');
try {
$params = $request->param();
$this->validate($params, [
// 'home_env_img|图片' => 'require',
'home_env_sort|排序' => 'require'
]);
$model = ModelHomeEnv::where('home_env_guid', $params['home_env_guid'])->find();
if (!$model) throwErrorMsg("该首页环境不存在", 1);
$model->allowField([
'home_env_update_user_guid',
'home_env_img',
'home_env_video',
'home_env_sort'
])->save($params);
Db::commit();
Tool::unlockTable();
return msg('编辑成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/**
* 批量添加首页环境
*/
public function batchAddHomeEnv(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('home_env');
try {
$params = $request->param();
$this->validate($params, [
'home_env_img|图片' => 'require',
]);
$params['home_env_sort'] = 1;
$arr = explode(",", $params['home_env_img']);
// return $arr;
if (empty($arr)) {
$model = ModelHomeEnv::create($params, [
'home_env_guid',
'home_env_create_user_guid',
'home_env_update_user_guid',
'home_env_video',
'home_env_img',
'home_env_sort'
]);
} else {
foreach ($arr as $key => $value) {
ModelHomeEnv::create([
'home_env_img' => $value,
// 'home_env_sort' => 1
]);
}
}
Db::commit();
Tool::unlockTable();
return msg('批量添加成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**
@ -120,15 +149,25 @@ class HomeEnv extends BaseController
*/ */
public function deleteHomeEnv(Request $request): array public function deleteHomeEnv(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('home_env');
'home_env_guid' => 'require', try {
]); $params = $request->param();
$home_env = ModelHomeEnv::where([ $this->validate($params, [
'home_env_guid' => explode(',', $params['home_env_guid']) 'home_env_guid' => 'require',
])->select(); ]);
$home_env->delete(); $home_env = ModelHomeEnv::where([
return msg('删除成功!'); 'home_env_guid' => explode(',', $params['home_env_guid'])
])->select();
$home_env->delete();
Db::commit();
Tool::unlockTable();
return msg('删除成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**

View File

@ -41,50 +41,70 @@ class HomeWorks extends BaseController
return msg("获取首页作品列表成功!", $query); return msg("获取首页作品列表成功!", $query);
} }
/**
* 编辑首页作品
*/
public function editHomeWorks(Request $request): array
{
$params = $request->param();
$this->validate($params, [
'home_works_author_type|作者类型' => 'require',
'home_works_img|图片' => 'require',
'home_works_sort|排序' => 'require',
]);
$model = ModelHomeWorks::where('home_works_guid', $params['home_works_guid'])->find();
if (!$model) throwErrorMsg("该首页作品不存在", 1);
$model->allowField([
'home_works_update_user_guid',
'home_works_author_type',
'home_works_img',
'home_works_sort',
'home_works_intro'
])->save($params);
return msg('编辑成功!');
}
/** /**
* 添加首页作品 * 添加首页作品
*/ */
public function addHomeWorks(Request $request): array public function addHomeWorks(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('home_works');
'home_works_author_type|作者类型' => 'require', try {
'home_works_img|图片' => 'require', $params = $request->param();
'home_works_sort|排序' => 'require', $this->validate($params, [
]); 'home_works_author_type|作者类型' => 'require',
$model = ModelHomeWorks::create($params, [ 'home_works_img|图片' => 'require',
'home_works_guid', 'home_works_sort|排序' => 'require',
'home_works_create_user_guid', ]);
'home_works_update_user_guid', $model = ModelHomeWorks::create($params, [
'home_works_author_type', 'home_works_guid',
'home_works_img', 'home_works_create_user_guid',
'home_works_sort', 'home_works_update_user_guid',
'home_works_intro' 'home_works_author_type',
]); 'home_works_img',
return msg('添加成功!'); 'home_works_sort',
'home_works_intro'
]);
Db::commit();
Tool::unlockTable();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/**
* 编辑首页作品
*/
public function editHomeWorks(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('home_works');
try {
$params = $request->param();
$this->validate($params, [
'home_works_author_type|作者类型' => 'require',
'home_works_img|图片' => 'require',
'home_works_sort|排序' => 'require',
]);
$model = ModelHomeWorks::where('home_works_guid', $params['home_works_guid'])->find();
if (!$model) throwErrorMsg("该首页作品不存在", 1);
$model->allowField([
'home_works_update_user_guid',
'home_works_author_type',
'home_works_img',
'home_works_sort',
'home_works_intro'
])->save($params);
Db::commit();
Tool::unlockTable();
return msg('编辑成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**
@ -92,15 +112,25 @@ class HomeWorks extends BaseController
*/ */
public function deleteHomeWorks(Request $request): array public function deleteHomeWorks(Request $request): array
{ {
$params = $request->param(); Db::startTrans();
$this->validate($params, [ Tool::adminLockTableWrite('home_works');
'home_works_guid' => 'require', try {
]); $params = $request->param();
$home_works = ModelHomeWorks::where([ $this->validate($params, [
'home_works_guid' => explode(',', $params['home_works_guid']) 'home_works_guid' => 'require',
])->select(); ]);
$home_works->delete(); $home_works = ModelHomeWorks::where([
return msg('删除成功!'); 'home_works_guid' => explode(',', $params['home_works_guid'])
])->select();
$home_works->delete();
Db::commit();
Tool::unlockTable();
return msg('删除成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**

View File

@ -26,7 +26,7 @@ class Works extends BaseController
* @author xjh * @author xjh
* @since 1.0.0 * @since 1.0.0
*/ */
public function getWorksList(Request $request): array public function getWorksList(Request $request, bool $isExport = false): array
{ {
$query = ModelWorks::where( $query = ModelWorks::where(
Tool::getOptionalQuery( Tool::getOptionalQuery(
@ -46,7 +46,50 @@ class Works extends BaseController
])->leftJoin('works_type', 'works_type.works_type_guid = works.works_type_guid') ])->leftJoin('works_type', 'works_type.works_type_guid = works.works_type_guid')
->order('works_order', 'asc'); ->order('works_order', 'asc');
return msg("获取作品列表成功!", $query); return $isExport ? $query->select()->toArray() : msg("获取作品列表成功!", $query);
}
/**
* 添加作品接口
*
* @param Request request
* @return array
* @date 2023-04-18
* @author xjh
* @since 1.0.0
*/
public function addWorks(Request $request): array
{
Db::startTrans();
Tool::adminLockTableWrite('works');
try {
$params = $request->param();
$this->validate($params, [
'works_img|作品图片' => 'require',
'works_intro|作品介绍' => 'require',
'works_likes_count|作品点赞数' => 'require',
'works_order|排序' => 'require',
'works_type_guid|作品类型guid' => 'require',
]);
ModelWorks::create($params, [
'works_guid',
'works_create_user_guid',
'works_update_user_guid',
'works_author_type',
'works_img',
'works_intro',
'works_likes_count',
'works_type_guid',
'works_order',
]);
Db::commit();
Tool::unlockTable();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
/** /**
@ -61,6 +104,7 @@ class Works extends BaseController
public function editWorks(Request $request): array public function editWorks(Request $request): array
{ {
Db::startTrans(); Db::startTrans();
Tool::adminLockTableWrite('works');
try { try {
$params = $request->param(); $params = $request->param();
$this->validate($params, [ $this->validate($params, [
@ -83,49 +127,11 @@ class Works extends BaseController
'works_order', 'works_order',
])->save($params); ])->save($params);
Db::commit(); Db::commit();
Tool::unlockTable();
return msg('编辑成功!'); return msg('编辑成功!');
} catch (\Throwable $th) { } catch (\Throwable $th) {
Db::rollback(); Db::rollback();
throw $th; Tool::unlockTable();
}
}
/**
* 添加作品接口
*
* @param Request request
* @return array
* @date 2023-04-18
* @author xjh
* @since 1.0.0
*/
public function addWorks(Request $request): array
{
Db::startTrans();
try {
$params = $request->param();
$this->validate($params, [
'works_img|作品图片' => 'require',
'works_intro|作品介绍' => 'require',
'works_likes_count|作品点赞数' => 'require',
'works_order|排序' => 'require',
'works_type_guid|作品类型guid' => 'require',
]);
ModelWorks::create($params, [
'works_guid',
'works_create_user_guid',
'works_update_user_guid',
'works_author_type',
'works_img',
'works_intro',
'works_likes_count',
'works_type_guid',
'works_order',
]);
Db::commit();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
throw $th; throw $th;
} }
} }
@ -142,6 +148,7 @@ class Works extends BaseController
public function deleteWorks(Request $request): array public function deleteWorks(Request $request): array
{ {
Db::startTrans(); Db::startTrans();
Tool::adminLockTableWrite('works');
try { try {
$params = $request->param(); $params = $request->param();
$this->validate($params, [ $this->validate($params, [
@ -152,9 +159,11 @@ class Works extends BaseController
])->select(); ])->select();
$works->delete(); $works->delete();
Db::commit(); Db::commit();
Tool::unlockTable();
return msg('删除成功!'); return msg('删除成功!');
} catch (\Throwable $th) { } catch (\Throwable $th) {
Db::rollback(); Db::rollback();
Tool::unlockTable();
throw $th; throw $th;
} }
} }
@ -170,22 +179,7 @@ class Works extends BaseController
*/ */
public function exportExcel(Request $request): void public function exportExcel(Request $request): void
{ {
$params = $request->param(); ModelWorks::exportExcel($this->getWorksList($request, true));
$con = [
['works_type_delete_time', 'NULL', null],
['classes_delete_time', 'NULL', null],
];
if (isset($params['works_guids']) && $params['works_guids']) {
$con['works.works_guid'] = explode(',', $params['works_guids']);
}
$select = ModelWorks::where($con)
->leftJoin('works_type', 'works_type.works_type_guid = works.works_type_guid')
->leftJoin('classes', 'classes.classes_guid = works.classes_guid')
->order('works_order', 'asc')
->select()
->toArray();
ModelWorks::exportExcel($select);
} }
/** /**
@ -218,13 +212,23 @@ class Works extends BaseController
*/ */
public function importExcel(Request $request) public function importExcel(Request $request)
{ {
$file = new UploadFile('uploads', 'fileExt:xlsx'); Db::startTrans();
$file->putFile('works'); Tool::adminLockTableWrite('works');
try {
$file = new UploadFile('uploads', 'fileExt:xlsx');
$file->putFile('works');
$msg = ModelWorks::importExcel($file); $msg = ModelWorks::importExcel($file);
return [ Db::commit();
'code' => 0, Tool::unlockTable();
'msg' => $msg return [
]; 'code' => 0,
'msg' => $msg
];
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
} }

View File

@ -74,6 +74,46 @@ class WorksType extends BaseController
]); ]);
} }
/**
* 添加作品类型接口
*
* @param Request request
* @return array
* @date 2023-04-17
* @author xjh
* @since 1.0.0
*/
public function addWorksType(Request $request)
{
Db::startTrans();
Tool::adminLockTableWrite('works_type');
try {
$params = $request->param();
$this->validate($params, [
'works_type_name|作品类型名称' => 'require',
'works_type_order|作品类型排序' => 'require',
'works_type_parent_guid|作品类型父级guid' => 'require',
]);
ModelWorksType::create($params, [
'works_type_guid',
'works_type_create_user_guid',
'works_type_update_user_guid',
'works_type_name',
'works_type_order',
'works_type_ancestors_guid',
'works_type_parent_guid'
]);
Db::commit();
Tool::unlockTable();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
}
/** /**
* 编辑作品类型接口 * 编辑作品类型接口
* *
@ -86,6 +126,7 @@ class WorksType extends BaseController
public function editWorksType(Request $request): array public function editWorksType(Request $request): array
{ {
Db::startTrans(); Db::startTrans();
Tool::adminLockTableWrite('works_type');
try { try {
$params = $request->param(); $params = $request->param();
$this->validate($params, [ $this->validate($params, [
@ -106,46 +147,11 @@ class WorksType extends BaseController
'works_type_ancestors_guid', 'works_type_ancestors_guid',
])->save($params); ])->save($params);
Db::commit(); Db::commit();
Tool::unlockTable();
return msg('编辑成功!'); return msg('编辑成功!');
} catch (\Throwable $th) { } catch (\Throwable $th) {
Db::rollback(); Db::rollback();
throw $th; Tool::unlockTable();
}
}
/**
* 添加作品类型接口
*
* @param Request request
* @return array
* @date 2023-04-17
* @author xjh
* @since 1.0.0
*/
public function addWorksType(Request $request)
{
Db::startTrans();
try {
$params = $request->param();
$this->validate($params, [
'works_type_name|作品类型名称' => 'require',
'works_type_order|作品类型排序' => 'require',
'works_type_parent_guid|作品类型父级guid' => 'require',
]);
ModelWorksType::create($params, [
'works_type_guid',
'works_type_create_user_guid',
'works_type_update_user_guid',
'works_type_name',
'works_type_order',
'works_type_ancestors_guid',
'works_type_parent_guid'
]);
Db::commit();
return msg('添加成功!');
} catch (\Throwable $th) {
Db::rollback();
throw $th; throw $th;
} }
} }
@ -162,6 +168,7 @@ class WorksType extends BaseController
public function deleteWorksType(Request $request): array public function deleteWorksType(Request $request): array
{ {
Db::startTrans(); Db::startTrans();
Tool::adminLockTableWrite('works_type');
try { try {
$params = $request->param(); $params = $request->param();
$this->validate($params, [ $this->validate($params, [
@ -172,9 +179,11 @@ class WorksType extends BaseController
])->select(); ])->select();
$works_type->delete(); $works_type->delete();
Db::commit(); Db::commit();
Tool::unlockTable();
return msg('删除成功!'); return msg('删除成功!');
} catch (\Throwable $th) { } catch (\Throwable $th) {
Db::rollback(); Db::rollback();
Tool::unlockTable();
throw $th; throw $th;
} }
} }
@ -242,13 +251,23 @@ class WorksType extends BaseController
*/ */
public function importExcel(Request $request): array public function importExcel(Request $request): array
{ {
$file = new UploadFile('uploads', 'fileExt:xlsx'); Db::startTrans();
$file->putFile('works_type'); Tool::adminLockTableWrite('works_type');
try {
$file = new UploadFile('uploads', 'fileExt:xlsx');
$file->putFile('works_type');
$msg = ModelWorksType::importExcel($file); $msg = ModelWorksType::importExcel($file);
return [ Db::commit();
'code' => 0, Tool::unlockTable();
'msg' => $msg return [
]; 'code' => 0,
'msg' => $msg
];
} catch (\Throwable $th) {
Db::rollback();
Tool::unlockTable();
throw $th;
}
} }
} }

View File

@ -63,6 +63,14 @@ class Sort
return $this->sort_field; return $this->sort_field;
} }
/**
* 获取主键字段名
*/
public function getPk(): string
{
return $this->pk;
}
/** /**
* 排序号新增处理 * 排序号新增处理
* *

View File

@ -390,49 +390,46 @@ class Tool
} }
/** /**
* 排序数据修改前处理 * 数据修改前排序处理
* *
* 注意:(调用此类的方法需要进行事务与锁表操作) * 注意:(调用此类的方法需要进行事务与锁表操作)
* @param string $model_namespace 模型层命名空间地址 * @param \think\model &$model 模型实例引用
* @param string $guid 主键
* @param int $order 新排序号
* @param array $extra_wheres 关联类型 :["xxx_type" => 1] * @param array $extra_wheres 关联类型 :["xxx_type" => 1]
*/ */
public static function sortEditProc(string $model_namespace, string $guid, int $order, array $extra_wheres = []): void public static function dataEditSortProc(\think\model &$model, array $extra_wheres = []): void
{ {
(new Sort($model_namespace))->swap($guid, $order, $extra_wheres); $sort = new Sort(get_class($model));
$sort->swap($model[$sort->getPk()], $model[$sort->getSortField()], $extra_wheres);
} }
/** /**
* 排序数据新增前处理 * 数据新增前排序处理
* *
* 注意:(调用此类的方法需要进行事务与锁表操作) * 注意:(调用此类的方法需要进行事务与锁表操作)
* @param string $model_namespace 模型层命名空间地址
* @param \think\model &$model 模型实例引用 * @param \think\model &$model 模型实例引用
* @param int|null $order 当前排序号
* @param array $wheres 当前指定数据的额外查询条件(tp批量查询数组) :["xxx_type" => 1,...] * @param array $wheres 当前指定数据的额外查询条件(tp批量查询数组) :["xxx_type" => 1,...]
*/ */
public static function sortInsertProc(string $model_namespace, \think\model &$model, $order, array $wheres = []): void public static function dataAddSortProc(\think\model &$model, array $wheres = []): void
{ {
$sort = new Sort($model_namespace); $sort = new Sort(get_class($model));
if ($order) { if ($model[$sort->getSortField()]) {
$sort->vacate($order, $wheres); $sort->vacate($model[$sort->getSortField()], $wheres);
} else { } else {
$model[$sort->getSortField()] = $sort->add($wheres); $model[$sort->getSortField()] = $sort->add($wheres);
} }
} }
/** /**
* 排序删除前处理 * 数据删除前排序处理
* *
* 注意:(调用此类的方法需要进行事务与锁表操作) * 注意:(调用此类的方法需要进行事务与锁表操作)
* @param string $model_namespace 模型层命名空间地址 * @param \think\model &$model 模型实例引用
* @param string $guid 主键
* @param array $correl_fields 关联类型字段 :["xxx_guid",...] 代表删除排序号时会根据这些字段来关联(:所属xxx类型、所属xxx系列)来进行排序处理 * @param array $correl_fields 关联类型字段 :["xxx_guid",...] 代表删除排序号时会根据这些字段来关联(:所属xxx类型、所属xxx系列)来进行排序处理
*/ */
public static function sortDeleteProc(string $model_namespace, string $guid, array $correl_fields = []): void public static function dataDeleteSortProc(\think\model &$model, array $correl_fields = []): void
{ {
(new Sort($model_namespace))->back($guid, $correl_fields); $sort = new Sort(get_class($model));
$sort->back($model[$sort->getPk()], $correl_fields);
} }
/** /**

View File

@ -51,7 +51,7 @@ class CompanyProfile extends BaseModel
*/ */
public static function onBeforeInsert(self $model): void public static function onBeforeInsert(self $model): void
{ {
Tool::sortInsertProc(self::class, $model->company_profile_order); Tool::dataAddSortProc($model);
$model->completeCreateField(); $model->completeCreateField();
} }
@ -60,7 +60,7 @@ class CompanyProfile extends BaseModel
*/ */
public static function onBeforeUpdate(self $model): void public static function onBeforeUpdate(self $model): void
{ {
Tool::sortEditProc(self::class, $model->company_profile_guid, $model->company_profile_order); Tool::dataEditSortProc($model);
$model->completeUpdateField(); $model->completeUpdateField();
} }
@ -69,7 +69,7 @@ class CompanyProfile extends BaseModel
*/ */
public static function onBeforeDelete(self $model): void public static function onBeforeDelete(self $model): void
{ {
Tool::sortDeleteProc(self::class, $model->company_profile_guid); Tool::dataDeleteSortProc($model);
$model->completeDeleteField(); $model->completeDeleteField();
} }
} }

View File

@ -65,11 +65,7 @@ class TeachingEnvirType extends BaseModel
'teaching_envir_type_name' => '环境类型名称', 'teaching_envir_type_name' => '环境类型名称',
]); ]);
Tool::buildAncestorsGuid($model, true); Tool::buildAncestorsGuid($model, true);
Tool::sortInsertProc( Tool::dataAddSortProc($model);
self::class,
$model->teaching_envir_type_order,
// ['teaching_envir_type_parent_guid' => $model->teaching_envir_type_parent_guid]
);
$model->completeCreateField(); $model->completeCreateField();
} }
@ -83,12 +79,7 @@ class TeachingEnvirType extends BaseModel
]); ]);
// Tool::handleEthicalRel($model); // Tool::handleEthicalRel($model);
Tool::buildAncestorsGuid($model, true); Tool::buildAncestorsGuid($model, true);
Tool::sortEditProc( Tool::dataEditSortProc($model);
self::class,
$model->teaching_envir_type_guid,
$model->teaching_envir_type_order,
// ["teaching_envir_type_parent_guid" => $model->teaching_envir_type_parent_guid],
);
$model->completeUpdateField(); $model->completeUpdateField();
} }
@ -97,7 +88,7 @@ class TeachingEnvirType extends BaseModel
*/ */
public static function onBeforeDelete(self $model): void public static function onBeforeDelete(self $model): void
{ {
Tool::sortDeleteProc(self::class, $model->teaching_envir_type_guid, ["teaching_envir_type_parent_guid"]); Tool::dataDeleteSortProc($model);
$model->completeDeleteField(); $model->completeDeleteField();
} }
@ -132,35 +123,28 @@ class TeachingEnvirType extends BaseModel
{ {
$msg = []; $msg = [];
Db::startTrans(); $excel = new Excel($file);
try { $data = $excel->parseExcel(
$excel = new Excel($file); Tool::getExcelRule(self::EXCELFIELD),
$data = $excel->parseExcel( [
Tool::getExcelRule(self::EXCELFIELD), 'titleLine' => [1]
[ ]
'titleLine' => [1] );
] if (!$data) throwErrorMsg('excel无数据', 1);
); $msg = [];
if (!$data) throwErrorMsg('excel无数据', 1); foreach ($data as $line => $value) {
$msg = []; try {
foreach ($data as $line => $value) { $op = self::importExcelInit($value);
try { if ($op == 'create') {
$op = self::importExcelInit($value); $msg[] = "{$line} 环境类型名:【{$value['teaching_envir_type_name']}】 <span style='color:#27af49'>新增成功!</span><br>";
if ($op == 'create') { } else {
$msg[] = "{$line} 环境类型名:【{$value['teaching_envir_type_name']}】 <span style='color:#27af49'>新增成功!</span><br>"; $msg[] = "{$line} 环境类型名:【{$value['teaching_envir_type_name']}】 <span style='color:#ce723b'>修改成功!</span><br>";
} else {
$msg[] = "{$line} 环境类型名:【{$value['teaching_envir_type_name']}】 <span style='color:#ce723b'>修改成功!</span><br>";
}
} catch (\Throwable $th) {
$msg[] = "{$line} <span style='color:red'>{$th->getMessage()}</span><br>";
} }
} catch (\Throwable $th) {
$msg[] = "{$line} <span style='color:red'>{$th->getMessage()}</span><br>";
} }
Db::commit();
return implode(', ', $msg);
} catch (\Throwable $th) {
Db::rollback();
throw $th;
} }
return implode(', ', $msg);
} }
/** /**

View File

@ -50,7 +50,7 @@ class Banner extends BaseModel
*/ */
public static function onBeforeInsert(self $model): void public static function onBeforeInsert(self $model): void
{ {
Tool::sortInsertProc(self::class, $model->banner_order); Tool::dataAddSortProc($model);
$model->completeCreateField(); $model->completeCreateField();
} }
@ -59,7 +59,7 @@ class Banner extends BaseModel
*/ */
public static function onBeforeUpdate(self $model): void public static function onBeforeUpdate(self $model): void
{ {
Tool::sortEditProc(self::class, $model->banner_guid, $model->banner_order); Tool::dataEditSortProc($model);
$model->completeUpdateField(); $model->completeUpdateField();
} }
@ -68,7 +68,7 @@ class Banner extends BaseModel
*/ */
public static function onBeforeDelete(self $model): void public static function onBeforeDelete(self $model): void
{ {
Tool::sortDeleteProc(self::class, $model->banner_guid); Tool::dataDeleteSortProc($model);
$model->completeDeleteField(); $model->completeDeleteField();
} }
} }

View File

@ -63,11 +63,7 @@ class ConsultingHotline extends BaseModel
*/ */
public static function onBeforeInsert(self $model): void public static function onBeforeInsert(self $model): void
{ {
Tool::sortInsertProc( Tool::dataAddSortProc($model);
self::class,
$model->consulting_hotline_order,
);
// self::checkRepeatData($model);
$model->completeCreateField(); $model->completeCreateField();
} }
@ -76,12 +72,7 @@ class ConsultingHotline extends BaseModel
*/ */
public static function onBeforeUpdate(self $model): void public static function onBeforeUpdate(self $model): void
{ {
Tool::sortEditProc( Tool::dataEditSortProc($model);
self::class,
$model->consulting_hotline_guid,
$model->consulting_hotline_order,
);
// self::checkRepeatData($model);
$model->completeUpdateField(); $model->completeUpdateField();
} }
@ -90,7 +81,7 @@ class ConsultingHotline extends BaseModel
*/ */
public static function onBeforeDelete(self $model): void public static function onBeforeDelete(self $model): void
{ {
Tool::sortDeleteProc(self::class, $model->consulting_hotline_guid); Tool::dataDeleteSortProc($model);
$model->completeDeleteField(); $model->completeDeleteField();
} }
} }

View File

@ -69,11 +69,7 @@ class ContactScancode extends BaseModel
*/ */
public static function onBeforeInsert(self $model): void public static function onBeforeInsert(self $model): void
{ {
Tool::sortInsertProc( Tool::dataAddSortProc($model);
self::class,
$model->contact_scancode_order,
);
// self::checkRepeatData($model);
$model->completeCreateField(); $model->completeCreateField();
} }
@ -82,12 +78,7 @@ class ContactScancode extends BaseModel
*/ */
public static function onBeforeUpdate(self $model): void public static function onBeforeUpdate(self $model): void
{ {
Tool::sortEditProc( Tool::dataEditSortProc($model);
self::class,
$model->contact_scancode_guid,
$model->contact_scancode_order,
);
// self::checkRepeatData($model);
$model->completeUpdateField(); $model->completeUpdateField();
} }
@ -96,7 +87,7 @@ class ContactScancode extends BaseModel
*/ */
public static function onBeforeDelete(self $model): void public static function onBeforeDelete(self $model): void
{ {
Tool::sortDeleteProc(self::class, $model->contact_scancode_guid); Tool::dataDeleteSortProc($model);
$model->completeDeleteField(); $model->completeDeleteField();
} }
} }

View File

@ -79,10 +79,7 @@ class Classes extends BaseModel
Validate::unique(self::class, $model->classes_guid, $model->getData(), [ Validate::unique(self::class, $model->classes_guid, $model->getData(), [
'classes_name' => '班型名称', 'classes_name' => '班型名称',
]); ]);
Tool::sortInsertProc( Tool::dataAddSortProc($model);
self::class,
$model->classes_sort,
);
$model->completeCreateField(); $model->completeCreateField();
} }
@ -94,11 +91,7 @@ class Classes extends BaseModel
Validate::unique(self::class, $model->classes_guid, $model->getData(), [ Validate::unique(self::class, $model->classes_guid, $model->getData(), [
'classes_name' => '班型名称', 'classes_name' => '班型名称',
]); ]);
Tool::sortEditProc( Tool::dataEditSortProc($model);
self::class,
$model->classes_guid,
$model->classes_sort,
);
$model->completeUpdateField(); $model->completeUpdateField();
} }
@ -107,7 +100,7 @@ class Classes extends BaseModel
*/ */
public static function onBeforeDelete(self $model): void public static function onBeforeDelete(self $model): void
{ {
Tool::sortDeleteProc(self::class, $model->classes_guid); Tool::dataDeleteSortProc($model);
$model->completeDeleteField(); $model->completeDeleteField();
} }
@ -140,33 +133,25 @@ class Classes extends BaseModel
public static function importExcel($file) public static function importExcel($file)
{ {
$msg = []; $msg = [];
$excel = new Excel($file);
Db::startTrans(); $data = $excel->parseExcel(
try { Tool::getExcelRule(self::EXCELFIELD),
$excel = new Excel($file); [
$data = $excel->parseExcel( 'titleLine' => [1]
Tool::getExcelRule(self::EXCELFIELD), ]
[ );
'titleLine' => [1] if (!$data) throwErrorMsg('excel无数据', 1);
] $msg = [];
); foreach ($data as $line => $value) {
if (!$data) throwErrorMsg('excel无数据', 1); $classes_name = $value['classes_name'];
$msg = []; try {
foreach ($data as $line => $value) { $model = self::importExcelInit($value);
$classes_name = $value['classes_name']; $msg[] = "{$line} <span style='color:#27af49'>{$classes_name} 新增成功!</span><br>";
try { } catch (\Throwable $th) {
$model = self::importExcelInit($value); $msg[] = "{$line} <span style='color:red'>{$classes_name} {$th->getMessage()}</span><br>";
$msg[] = "{$line} <span style='color:#27af49'>{$classes_name} 新增成功!</span><br>";
} catch (\Throwable $th) {
$msg[] = "{$line} <span style='color:red'>{$classes_name} {$th->getMessage()}</span><br>";
}
} }
Db::commit();
return implode(', ', $msg);
} catch (\Throwable $th) {
Db::rollback();
throw $th;
} }
return implode(', ', $msg);
} }
/** /**

View File

@ -74,10 +74,7 @@ class EnrolAq extends BaseModel
'enrol_aq_status' => 1, 'enrol_aq_status' => 1,
'enrol_aq_answer_status' => 1, 'enrol_aq_answer_status' => 1,
]); ]);
Tool::sortInsertProc( Tool::dataAddSortProc($model);
self::class,
$model->enrol_aq_sort,
);
$model->completeCreateField(); $model->completeCreateField();
} }
@ -86,11 +83,7 @@ class EnrolAq extends BaseModel
*/ */
public static function onBeforeUpdate(self $model): void public static function onBeforeUpdate(self $model): void
{ {
Tool::sortEditProc( Tool::dataEditSortProc($model);
self::class,
$model->enrol_aq_guid,
$model->enrol_aq_sort,
);
$model->completeUpdateField(); $model->completeUpdateField();
} }
@ -99,7 +92,7 @@ class EnrolAq extends BaseModel
*/ */
public static function onBeforeDelete(self $model): void public static function onBeforeDelete(self $model): void
{ {
Tool::sortDeleteProc(self::class, $model->enrol_aq_guid); Tool::dataDeleteSortProc($model);
$model->completeDeleteField(); $model->completeDeleteField();
} }
@ -134,5 +127,4 @@ class EnrolAq extends BaseModel
$excel = (new Excel())->exporTsheet($data); $excel = (new Excel())->exporTsheet($data);
$excel->save('招生问答.xlsx'); $excel->save('招生问答.xlsx');
} }
} }

View File

@ -66,10 +66,7 @@ class EnrolIntro extends BaseModel
*/ */
public static function onBeforeInsert(self $model): void public static function onBeforeInsert(self $model): void
{ {
Tool::sortInsertProc( Tool::dataAddSortProc($model);
self::class,
$model->enrol_intro_sort,
);
$model->completeCreateField(); $model->completeCreateField();
} }
@ -78,11 +75,7 @@ class EnrolIntro extends BaseModel
*/ */
public static function onBeforeUpdate(self $model): void public static function onBeforeUpdate(self $model): void
{ {
Tool::sortEditProc( Tool::dataEditSortProc($model);
self::class,
$model->enrol_intro_guid,
$model->enrol_intro_sort,
);
$model->completeUpdateField(); $model->completeUpdateField();
} }
} }

View File

@ -65,10 +65,7 @@ class EnterSchoolProcess extends BaseModel
Validate::unique(self::class, $model->enter_school_process_guid, $model->getData(), [ Validate::unique(self::class, $model->enter_school_process_guid, $model->getData(), [
'enter_school_process_title' => '入学流程标题', 'enter_school_process_title' => '入学流程标题',
]); ]);
Tool::sortInsertProc( Tool::dataAddSortProc($model);
self::class,
$model->enter_school_process_sort,
);
$model->completeCreateField(); $model->completeCreateField();
} }
@ -80,11 +77,7 @@ class EnterSchoolProcess extends BaseModel
Validate::unique(self::class, $model->enter_school_process_guid, $model->getData(), [ Validate::unique(self::class, $model->enter_school_process_guid, $model->getData(), [
'enter_school_process_title' => '入学流程标题', 'enter_school_process_title' => '入学流程标题',
]); ]);
Tool::sortEditProc( Tool::dataEditSortProc($model);
self::class,
$model->enter_school_process_guid,
$model->enter_school_process_sort,
);
$model->completeUpdateField(); $model->completeUpdateField();
} }
@ -93,7 +86,7 @@ class EnterSchoolProcess extends BaseModel
*/ */
public static function onBeforeDelete(self $model): void public static function onBeforeDelete(self $model): void
{ {
Tool::sortDeleteProc(self::class, $model->enter_school_process_guid); Tool::dataDeleteSortProc($model);
$model->completeDeleteField(); $model->completeDeleteField();
} }

View File

@ -21,32 +21,32 @@ class SignUpProcess extends BaseModel
protected $disuse = []; protected $disuse = [];
// 设置字段信息 // 设置字段信息
protected $schema = [ protected $schema = [
"sign_up_process_id" => "int", "sign_up_process_id" => "int",
"sign_up_process_guid" => "string", "sign_up_process_guid" => "string",
"sign_up_process_title" => "string", "sign_up_process_title" => "string",
"sign_up_process_icon" => "string", "sign_up_process_icon" => "string",
"sign_up_process_intro" => "string", "sign_up_process_intro" => "string",
"sign_up_process_sort" => "int", "sign_up_process_sort" => "int",
"sign_up_process_create_time" => "datetime", "sign_up_process_create_time" => "datetime",
"sign_up_process_create_user_guid" => "string", "sign_up_process_create_user_guid" => "string",
"sign_up_process_update_time" => "datetime", "sign_up_process_update_time" => "datetime",
"sign_up_process_update_user_guid" => "string", "sign_up_process_update_user_guid" => "string",
"sign_up_process_delete_time" => "datetime", "sign_up_process_delete_time" => "datetime",
"sign_up_process_delete_user_guid" => "string", "sign_up_process_delete_user_guid" => "string",
]; ];
// 设置json类型字段 // 设置json类型字段
protected $json = ['']; protected $json = [''];
// 开启自动写入时间戳字段 // 开启自动写入时间戳字段
@ -56,7 +56,7 @@ class SignUpProcess extends BaseModel
// 修改时间 // 修改时间
protected $updateTime = 'sign_up_process_update_time'; protected $updateTime = 'sign_up_process_update_time';
//排序字段 //排序字段
public $order_field = 'sign_up_process_sort'; public $order_field = 'sign_up_process_sort';
@ -68,10 +68,7 @@ class SignUpProcess extends BaseModel
Validate::unique(self::class, $model->sign_up_process_guid, $model->getData(), [ Validate::unique(self::class, $model->sign_up_process_guid, $model->getData(), [
'sign_up_process_title' => '报名流程标题', 'sign_up_process_title' => '报名流程标题',
]); ]);
Tool::sortInsertProc( Tool::dataAddSortProc($model);
self::class,
$model->sign_up_process_sort,
);
$model->completeCreateField(); $model->completeCreateField();
} }
@ -83,11 +80,7 @@ class SignUpProcess extends BaseModel
Validate::unique(self::class, $model->sign_up_process_guid, $model->getData(), [ Validate::unique(self::class, $model->sign_up_process_guid, $model->getData(), [
'sign_up_process_title' => '报名流程标题', 'sign_up_process_title' => '报名流程标题',
]); ]);
Tool::sortEditProc( Tool::dataEditSortProc($model);
self::class,
$model->sign_up_process_guid,
$model->sign_up_process_sort,
);
$model->completeUpdateField(); $model->completeUpdateField();
} }
@ -96,11 +89,11 @@ class SignUpProcess extends BaseModel
*/ */
public static function onBeforeDelete(self $model): void public static function onBeforeDelete(self $model): void
{ {
Tool::sortDeleteProc(self::class, $model->sign_up_process_guid); Tool::dataDeleteSortProc($model);
$model->completeDeleteField(); $model->completeDeleteField();
} }
/** /**
* 导出Excel * 导出Excel
*/ */
@ -119,7 +112,4 @@ class SignUpProcess extends BaseModel
$excel = (new Excel())->exporTsheet($data); $excel = (new Excel())->exporTsheet($data);
$excel->save('报名流程.xlsx'); $excel->save('报名流程.xlsx');
} }
} }

View File

@ -75,17 +75,13 @@ class InfoArticle extends BaseModel
//排序字段 //排序字段
public $order_field = 'info_article_order'; public $order_field = 'info_article_order';
/** /**
* 新增前 * 新增前
*/ */
public static function onBeforeInsert(self $model): void public static function onBeforeInsert(self $model): void
{ {
Tool::sortInsertProc( Tool::dataAddSortProc($model, ['info_article_type_guid' => $model->info_article_type_guid]);
self::class,
$model,
$model->info_article_order,
['info_article_type_guid' => $model->info_article_type_guid]
);
$model->completeCreateField(); $model->completeCreateField();
} }
@ -94,13 +90,7 @@ class InfoArticle extends BaseModel
*/ */
public static function onBeforeUpdate(self $model): void public static function onBeforeUpdate(self $model): void
{ {
Tool::sortEditProc( Tool::dataEditSortProc($model, ['info_article_type_guid' => $model->info_article_type_guid]);
self::class,
$model->info_article_guid,
$model->info_article_order,
['info_article_type_guid' => $model->info_article_type_guid]
);
// self::checkRepeatData($model);
$model->completeUpdateField(); $model->completeUpdateField();
} }
@ -109,7 +99,7 @@ class InfoArticle extends BaseModel
*/ */
public static function onBeforeDelete(self $model): void public static function onBeforeDelete(self $model): void
{ {
Tool::sortDeleteProc(self::class, $model->info_article_guid); Tool::dataDeleteSortProc($model);
$model->completeDeleteField(); $model->completeDeleteField();
} }
@ -149,32 +139,25 @@ class InfoArticle extends BaseModel
public static function importExcel($file) public static function importExcel($file)
{ {
$msg = []; $msg = [];
$excel = new Excel($file);
Db::startTrans(); $data = $excel->parseExcel(
try { Tool::getExcelRule(self::EXCELFIELD),
$excel = new Excel($file); [
$data = $excel->parseExcel( 'titleLine' => [1]
Tool::getExcelRule(self::EXCELFIELD), ]
[ );
'titleLine' => [1] if (!$data) throwErrorMsg('excel无数据', 1);
] $msg = [];
); foreach ($data as $line => $value) {
if (!$data) throwErrorMsg('excel无数据', 1); try {
$msg = []; $model = self::importExcelInit($value);
foreach ($data as $line => $value) { $msg[] = "{$line} <span style='color:#27af49'>{$model->info_article_title}新增成功!</span><br>";
try { } catch (\Throwable $th) {
$model = self::importExcelInit($value); $msg[] = "{$line} <span style='color:red'>{$th->getMessage()}</span><br>";
$msg[] = "{$line} <span style='color:#27af49'>{$model->info_article_title}新增成功!</span><br>";
} catch (\Throwable $th) {
$msg[] = "{$line} <span style='color:red'>{$th->getMessage()}</span><br>";
}
} }
Db::commit();
return implode(', ', $msg);
} catch (\Throwable $th) {
Db::rollback();
throw $th;
} }
return implode(', ', $msg);
} }
/** /**

View File

@ -67,10 +67,7 @@ class InfoArticleType extends BaseModel
*/ */
public static function onBeforeInsert(self $model): void public static function onBeforeInsert(self $model): void
{ {
Tool::sortInsertProc( Tool::dataAddSortProc($model);
self::class,
$model->info_article_type_sort,
);
$model->completeCreateField(); $model->completeCreateField();
} }
@ -79,12 +76,7 @@ class InfoArticleType extends BaseModel
*/ */
public static function onBeforeUpdate(self $model): void public static function onBeforeUpdate(self $model): void
{ {
Tool::sortEditProc( Tool::dataEditSortProc($model);
self::class,
$model->info_article_type_guid,
$model->info_article_type_sort,
);
// self::checkRepeatData($model);
$model->completeUpdateField(); $model->completeUpdateField();
} }
@ -93,7 +85,7 @@ class InfoArticleType extends BaseModel
*/ */
public static function onBeforeDelete(self $model): void public static function onBeforeDelete(self $model): void
{ {
Tool::sortDeleteProc(self::class, $model->info_article_type_guid); Tool::dataDeleteSortProc($model);
$model->completeDeleteField(); $model->completeDeleteField();
} }
@ -122,32 +114,24 @@ class InfoArticleType extends BaseModel
public static function importExcel($file) public static function importExcel($file)
{ {
$msg = []; $msg = [];
$excel = new Excel($file);
Db::startTrans(); $data = $excel->parseExcel(
try { Tool::getExcelRule(self::EXCELFIELD),
$excel = new Excel($file); [
$data = $excel->parseExcel( 'titleLine' => [1]
Tool::getExcelRule(self::EXCELFIELD), ]
[ );
'titleLine' => [1] if (!$data) throwErrorMsg('excel无数据', 1);
] $msg = [];
); foreach ($data as $line => $value) {
if (!$data) throwErrorMsg('excel无数据', 1); try {
$msg = []; $model = self::importExcelInit($value);
foreach ($data as $line => $value) { $msg[] = "{$line} <span style='color:#27af49'>【{$value->info_article_type_name}】新增成功!</span><br>";
try { } catch (\Throwable $th) {
$model = self::importExcelInit($value); $msg[] = "{$line} <span style='color:red'>{$th->getMessage()}</span><br>";
$msg[] = "{$line} <span style='color:#27af49'>【{$value->info_article_type_name}】新增成功!</span><br>";
} catch (\Throwable $th) {
$msg[] = "{$line} <span style='color:red'>{$th->getMessage()}</span><br>";
}
} }
Db::commit();
return implode(', ', $msg);
} catch (\Throwable $th) {
Db::rollback();
throw $th;
} }
return implode(', ', $msg);
} }
/** /**

View File

@ -51,10 +51,7 @@ class HomeEnv extends BaseModel
*/ */
public static function onBeforeInsert(self $model): void public static function onBeforeInsert(self $model): void
{ {
Tool::sortInsertProc( Tool::dataAddSortProc($model);
self::class,
$model->home_env_sort,
);
$model->completeCreateField(); $model->completeCreateField();
} }
@ -63,11 +60,7 @@ class HomeEnv extends BaseModel
*/ */
public static function onBeforeUpdate(self $model): void public static function onBeforeUpdate(self $model): void
{ {
Tool::sortEditProc( Tool::dataEditSortProc($model);
self::class,
$model->home_env_guid,
$model->home_env_sort,
);
$model->completeUpdateField(); $model->completeUpdateField();
} }
@ -76,7 +69,7 @@ class HomeEnv extends BaseModel
*/ */
public static function onBeforeDelete(self $model): void public static function onBeforeDelete(self $model): void
{ {
Tool::sortDeleteProc(self::class, $model->home_env_guid); Tool::dataDeleteSortProc($model);
$model->completeDeleteField(); $model->completeDeleteField();
} }

View File

@ -55,11 +55,7 @@ class HomeWorks extends BaseModel
*/ */
public static function onBeforeInsert(self $model): void public static function onBeforeInsert(self $model): void
{ {
Tool::sortInsertProc( Tool::dataAddSortProc($model, ['home_works_author_type' => $model->home_works_author_type]);
self::class,
$model->home_works_sort,
['home_works_author_type' => $model->home_works_author_type]
);
$model->completeCreateField(); $model->completeCreateField();
} }
@ -68,12 +64,7 @@ class HomeWorks extends BaseModel
*/ */
public static function onBeforeUpdate(self $model): void public static function onBeforeUpdate(self $model): void
{ {
Tool::sortEditProc( Tool::dataEditSortProc($model, ['home_works_author_type' => $model->home_works_author_type]);
self::class,
$model->home_works_guid,
$model->home_works_sort,
['home_works_author_type' => $model->home_works_author_type]
);
$model->completeUpdateField(); $model->completeUpdateField();
} }
@ -82,7 +73,7 @@ class HomeWorks extends BaseModel
*/ */
public static function onBeforeDelete(self $model): void public static function onBeforeDelete(self $model): void
{ {
Tool::sortDeleteProc(self::class, $model->home_works_guid); Tool::dataDeleteSortProc($model);
$model->completeDeleteField(); $model->completeDeleteField();
} }
@ -114,10 +105,10 @@ class HomeWorks extends BaseModel
/** /**
* 作品作者类型字典获取器 * 作品作者类型字典获取器
*/ */
public function getHomeWorksAuthorTypeNameAttr($value,$data) public function getHomeWorksAuthorTypeNameAttr($value, $data)
{ {
$home_works_author_type = $data['home_works_author_type']; $home_works_author_type = $data['home_works_author_type'];
$works_author_type = ModelDictionary::getDictionaryData('works_author_type'); $works_author_type = ModelDictionary::getDictionaryData('works_author_type');
$home_works_author_type = ModelDictionary::getDataDictionaryName($works_author_type, $home_works_author_type); $home_works_author_type = ModelDictionary::getDataDictionaryName($works_author_type, $home_works_author_type);
return $home_works_author_type; return $home_works_author_type;
} }

View File

@ -13,6 +13,7 @@ use app\common\model\Works\WorksType as ModelWorksType;
use app\common\model\Enrol\Classes as ModelClasses; use app\common\model\Enrol\Classes as ModelClasses;
use app\common\model\Dictionary\Dictionary as ModelDictionary; use app\common\model\Dictionary\Dictionary as ModelDictionary;
class Works extends BaseModel class Works extends BaseModel
{ {
use SoftDelete; use SoftDelete;
@ -55,10 +56,9 @@ class Works extends BaseModel
public const EXPORT_EXCEL_FIELD = [ public const EXPORT_EXCEL_FIELD = [
'works_type_name' => '作品类型', 'works_type_name' => '作品类型',
'works_img' => '作品图片', 'works_img' => '作品图片',
'works_name' => '作品名称', 'works_author_type' => '作品作者类型',
'works_author' => '作品作者',
'classes_name' => '班型名称',
'works_likes_count' => '点赞数', 'works_likes_count' => '点赞数',
'works_intro' => '作品介绍',
]; ];
// excel导入/下载模板表头 // excel导入/下载模板表头
public const IMPORT_EXCEL_FIELD = [ public const IMPORT_EXCEL_FIELD = [
@ -75,7 +75,7 @@ class Works extends BaseModel
*/ */
public static function onBeforeInsert(self $model): void public static function onBeforeInsert(self $model): void
{ {
Tool::sortInsertProc(self::class, $model->works_order, ['works_type_guid' => $model->works_type_guid]); Tool::dataAddSortProc($model, ['works_type_guid' => $model->works_type_guid]);
$model->completeCreateField(); $model->completeCreateField();
} }
@ -84,8 +84,7 @@ class Works extends BaseModel
*/ */
public static function onBeforeUpdate(self $model): void public static function onBeforeUpdate(self $model): void
{ {
BaseModel::setUserGuid(false); Tool::dataEditSortProc($model, ['works_type_guid' => $model->works_type_guid]);
Tool::sortEditProc(self::class, $model->works_guid, $model->works_order, ['works_type_guid' => $model->works_type_guid]);
$model->completeUpdateField(); $model->completeUpdateField();
} }
@ -94,7 +93,7 @@ class Works extends BaseModel
*/ */
public static function onBeforeDelete(self $model): void public static function onBeforeDelete(self $model): void
{ {
Tool::sortDeleteProc(self::class, $model->works_guid); Tool::dataDeleteSortProc($model);
$model->completeDeleteField(); $model->completeDeleteField();
} }
@ -109,8 +108,19 @@ class Works extends BaseModel
foreach ($select as $key => $val) { foreach ($select as $key => $val) {
foreach (array_keys(self::EXPORT_EXCEL_FIELD) as $field_name) { foreach (array_keys(self::EXPORT_EXCEL_FIELD) as $field_name) {
$value = $val[$field_name]; $value = $val[$field_name];
if ($field_name == 'works_img') $value = Excel::ExportImgFiled($value); //业务内容处理
if ($field_name == 'works_likes_count') $value = strval($value); //作品图片
if ($field_name == 'works_img') {
$value = Excel::ExportImgFiled($value);
}
//作品点赞数
if ($field_name == 'works_likes_count') {
$value = strval($value);
}
//作品作者类型
if ($field_name == 'works_author_type') {
$value = ModelDictionary::getDataDictionaryName(ModelDictionary::getDictionaryData('works_author_type'), $value);
}
$data[$key + 1][$field_name] = $value; $data[$key + 1][$field_name] = $value;
} }
} }
@ -127,29 +137,23 @@ class Works extends BaseModel
{ {
$msg = []; $msg = [];
Db::startTrans(); $excel = new Excel($file);
try { $data = $excel->parseExcel(
$excel = new Excel($file); Tool::getExcelRule(self::IMPORT_EXCEL_FIELD),
$data = $excel->parseExcel( ['titleLine' => [1]]
Tool::getExcelRule(self::IMPORT_EXCEL_FIELD), );
['titleLine' => [1]] if (!$data) throwErrorMsg('excel无数据', 1);
); $msg = [];
if (!$data) throwErrorMsg('excel无数据', 1); foreach ($data as $line => $value) {
$msg = []; try {
foreach ($data as $line => $value) { self::importExcelInit($value);
try { $msg[] = "{$line} <span style='color:#27af49'>新增成功!</span><br>";
self::importExcelInit($value); } catch (\Throwable $th) {
$msg[] = "{$line} <span style='color:#27af49'>新增成功!</span><br>"; $msg[] = "{$line} <span style='color:red'>{$th->getMessage()}</span><br>";
} catch (\Throwable $th) {
$msg[] = "{$line} <span style='color:red'>{$th->getMessage()}</span><br>";
}
} }
Db::commit();
return implode(', ', $msg);
} catch (\Throwable $th) {
Db::rollback();
throw $th;
} }
return implode(', ', $msg);
} }
/** /**

View File

@ -67,11 +67,7 @@ class WorksType extends BaseModel
'works_type_name' => '作品类型名称', 'works_type_name' => '作品类型名称',
]); ]);
Tool::buildAncestorsGuid($model, true); Tool::buildAncestorsGuid($model, true);
Tool::sortInsertProc( Tool::dataAddSortProc($model);
self::class,
$model->works_type_order,
// ['works_type_parent_guid' => $model->works_type_parent_guid]
);
$model->completeCreateField(); $model->completeCreateField();
} }
@ -85,12 +81,7 @@ class WorksType extends BaseModel
]); ]);
// Tool::handleEthicalRel($model); // Tool::handleEthicalRel($model);
Tool::buildAncestorsGuid($model, true); Tool::buildAncestorsGuid($model, true);
Tool::sortEditProc( Tool::dataEditSortProc($model);
self::class,
$model->works_type_guid,
$model->works_type_order,
// ["works_type_parent_guid" => $model->works_type_parent_guid],
);
$model->completeUpdateField(); $model->completeUpdateField();
} }
@ -99,7 +90,7 @@ class WorksType extends BaseModel
*/ */
public static function onBeforeDelete(self $model): void public static function onBeforeDelete(self $model): void
{ {
Tool::sortDeleteProc(self::class, $model->works_type_guid, ["works_type_parent_guid"]); Tool::dataDeleteSortProc($model);
$model->completeDeleteField(); $model->completeDeleteField();
} }
@ -134,39 +125,32 @@ class WorksType extends BaseModel
{ {
$msg = []; $msg = [];
Db::startTrans(); $excel = new Excel($file);
try { $data = $excel->parseExcel(
$excel = new Excel($file); Tool::getExcelRule(self::IMPORT_EXCEL_FIELD),
$data = $excel->parseExcel( ['titleLine' => [1]]
Tool::getExcelRule(self::IMPORT_EXCEL_FIELD), );
['titleLine' => [1]] if (!$data) throwErrorMsg('excel无数据', 1);
); $msg = [];
if (!$data) throwErrorMsg('excel无数据', 1); foreach ($data as $line => $value) {
$msg = []; try {
foreach ($data as $line => $value) { $op = self::importExcelInit($value);
try { if ($op == 'create') {
$op = self::importExcelInit($value); $msg[] = "{$line} <span style='color:#27af49'>新增成功!</span><br>";
if ($op == 'create') { } else {
$msg[] = "{$line} <span style='color:#27af49'>新增成功!</span><br>"; $msg[] = "{$line} <span style='color:#ce723b'>修改成功!</span><br>";
} else {
$msg[] = "{$line} <span style='color:#ce723b'>修改成功!</span><br>";
}
} catch (\Throwable $th) {
$msg[] = "{$line} <span style='color:red'>{$th->getMessage()}</span><br>";
} }
} catch (\Throwable $th) {
$msg[] = "{$line} <span style='color:red'>{$th->getMessage()}</span><br>";
} }
Db::commit();
return implode(', ', $msg);
} catch (\Throwable $th) {
Db::rollback();
throw $th;
} }
return implode(', ', $msg);
} }
/** /**
* 导入excel初始化 * 导入excel初始化
* *
* @param array $value 每行数据 * @param array $value excel每行数据
*/ */
public static function importExcelInit(array $value): string public static function importExcelInit(array $value): string
{ {