fix: 完成第一版

This commit is contained in:
lwh 2023-05-01 21:24:57 +08:00
parent b6e386ad1b
commit e152abb8af
14 changed files with 384 additions and 122 deletions

View File

@ -45,7 +45,6 @@ class Banner extends BaseController
$params = $request->param();
$this->validate($params, [
'banner_img|轮播图图片' => 'require',
'banner_location|轮播图片位置(字典)' => 'require',
'banner_order|排序' => 'require'
]);
$model = ModelBanner::where('banner_guid', $params['banner_guid'])->find();
@ -53,7 +52,6 @@ class Banner extends BaseController
$model->allowField([
'banner_update_user_guid',
'banner_img',
'banner_location',
'banner_order'
])->save($params);
return msg('编辑成功!');
@ -67,7 +65,6 @@ class Banner extends BaseController
$params = $request->param();
$this->validate($params, [
'banner_img|轮播图图片' => 'require',
'banner_location|轮播图片位置(字典)' => 'require',
'banner_order|排序' => 'require'
]);
ModelBanner::create($params, [
@ -75,7 +72,6 @@ class Banner extends BaseController
'banner_create_user_guid',
'banner_update_user_guid',
'banner_img',
'banner_location',
'banner_order'
]);
return msg('添加成功!');

View File

@ -35,7 +35,7 @@ class Poster extends BaseController
'poster_describe',
'poster_sort'
])
->order('poster_update_time', 'desc');
->order('poster_sort', 'asc');
return msg("获取海报列表成功!", $query);
}

View File

@ -10,6 +10,7 @@ use think\exception\ValidateException;
use think\facade\Filesystem;
use app\common\arw\adjfut\src\Excel;
use app\common\arw\adjfut\src\UploadFile;
use app\common\exception\Tool;
use think\facade\Db;
use think\facade\Env;
@ -24,15 +25,9 @@ class Tdk extends BaseController
$params = $request->param();
$con = [];
if (isset($params['tdk_type']) && $params['tdk_type']) {
$con[] = ['tdk_type', '=', $params['tdk_type']];
};
if (isset($params['tdk_title']) && $params['tdk_title']) {
$con[] = ['tdk_title', 'LIKE', '%' . $params['tdk_title'] . '%'];
};
$con = Tool::getOptionalQuery(['tdk_type', '='], ['tdk_title', 'LIKE'],);
$query = ModelTdk::where($con);
$select = self::pageWrapper($query)
$query = ModelTdk::where($con)
->field([
'tdk_id',
'tdk_guid',
@ -41,17 +36,9 @@ class Tdk extends BaseController
'tdk_description',
'tdk_keyword'
])
->order('tdk_update_time', 'desc')
->select();
->order('tdk_update_time', 'desc');
$count = $query->count();
return [
'code' => 0,
'data' => $select,
'count' => $count,
'msg' => 'ok'
];
return msg("获取网站tdk列表成功!", $query);
}
/**
@ -75,10 +62,7 @@ class Tdk extends BaseController
'tdk_description',
'tdk_keyword'
])->save($params);
return [
'code' => 0,
'msg' => '编辑成功'
];
return msg('编辑成功!');
}
/**
@ -93,10 +77,6 @@ class Tdk extends BaseController
'tdk_description|网页简介' => 'require',
'tdk_keyword|网页关键词' => 'require'
]);
$type = ModelTdk::where('tdk_type',$params['tdk_type'])->find();
if($type) throwErrorMsg("{$type->title} 已设置,请勿重复设置!");
$model = ModelTdk::create($params, [
'tdk_guid',
'tdk_create_user_guid',
@ -106,10 +86,7 @@ class Tdk extends BaseController
'tdk_description',
'tdk_keyword'
]);
return [
'code' => 0,
'msg' => '添加成功'
];
return msg('添加成功!');
}
/**
@ -125,9 +102,49 @@ class Tdk extends BaseController
'tdk_guid' => explode(',', $params['tdk_guid'])
])->select();
$tdk->delete();
return msg('删除成功!');
}
/**
* 导出Excel
*/
public function exportExcel(Request $request)
{
$params = $request->param();
$select = ModelTdk::field([
'tdk_type',
'tdk_title',
'tdk_description',
'tdk_keyword'
])
->order('tdk_update_time', 'desc')
->select();
return ModelTdk::exportExcel($select);
}
/**
* 下载导入模板
*/
public function downloadTemplate(Request $request)
{
$params = $request->param();
$data = array_values(ModelTdk::EXCELFIELD);
$excel = (new Excel())->exporTsheet($data);
$excel->save('网站tdk导入模板.xlsx');
}
/**
* 导入excel
*/
public function importExcel(Request $request)
{
$file = new UploadFile('uploads', 'fileExt:xlsx');
$file->putFile('tdk');
$msg = ModelTdk::importExcel($file);
return [
'code' => 0,
'msg' => "删除成功"
'msg' => $msg
];
}
}

View File

@ -0,0 +1,42 @@
<?php
namespace app\api\controller\ContactUs;
use app\BaseController;
use app\common\model\ContactUs\LeaveMessage as ModelLeaveMessage;
use app\Request;
use think\Validate;
use think\exception\ValidateException;
use think\facade\Filesystem;
use app\common\arw\adjfut\src\Excel;
use app\common\arw\adjfut\src\UploadFile;
use think\facade\Db;
use app\common\exception\Tool;
use think\facade\Env;
class LeaveMessage extends BaseController
{
/**
* 添加用户留言
*/
public function addLeaveMessage(Request $request): array
{
$params = $request->param();
$this->validate($params, [
'leave_message_content|留言内容' => 'require',
'leave_message_user_name|留言人名称' => 'require',
'leave_message_user_phone|留言人手机号码' => 'require'
]);
$model = ModelLeaveMessage::create($params, [
'leave_message_guid',
'leave_message_create_user_guid',
'leave_message_update_user_guid',
'leave_message_content',
'leave_message_status',
'leave_message_user_name',
'leave_message_user_phone'
]);
return msg('提交成功!');
}
}

View File

@ -5,6 +5,7 @@ namespace app\api\controller\ContactUs;
use app\BaseController;
use app\common\model\ContactUs\Signup as ModelSignup;
use app\common\model\Dictionary\Dictionary as ModelDictionary;
use app\common\model\Enrol\Classes as ModelClasses;
use app\Request;
use think\Validate;
use think\exception\ValidateException;
@ -46,7 +47,7 @@ class Signup extends BaseController
$params = $request->param();
$this->validate($params, [
'signup_user_name|报名用户名称' => 'require',
'captcha|验证码' => 'require|captcha',
// 'captcha|验证码' => 'require|captcha',
'signup_user_phone|报名用户电话' => 'require',
'signup_user_parents_phone|报名用户家长电话' => 'require',
'signup_user_home_address|报名用户家庭地址' => 'require',
@ -93,4 +94,28 @@ class Signup extends BaseController
);
return msg('获取毕业类型成功!', $data);
}
/**
* 获取班级类型接口
*
* @return array
* @date 2023-04-25
* @author xjh
* @since 1.0.0
*/
public function getClasses(): array
{
$data = ModelClasses::field([
'classes_guid',
'classes_name',
])
->select();
return [
'code' => 0,
'data' => $data,
'msg' => 'ok'
];
}
}

View File

@ -0,0 +1,39 @@
<?php
namespace app\api\controller\Poster;
use app\BaseController;
use app\common\model\Poster\Poster as ModelPoster;
use app\Request;
use think\Validate;
use think\exception\ValidateException;
use think\facade\Filesystem;
use app\common\arw\adjfut\src\Excel;
use app\common\arw\adjfut\src\UploadFile;
use think\facade\Db;
use app\common\exception\Tool;
use think\facade\Env;
class Poster extends BaseController
{
/**
* 获取海报详情
*/
public function getPoster(Request $request): array
{
$params = $request->param();
$this->validate($params, ['poster_location' => 'require']);
$find = ModelPoster::field([
'poster_img' => 'imgSrc',
'poster_title' => 'title',
'poster_describe' => 'text',
])
->where('poster_location', $params['poster_location'])
->find();
return msg(0, '获取海报详情成功!', ['data' => $find]);
}
}

View File

@ -0,0 +1,41 @@
<?php
namespace app\api\controller\Tdk;
use app\BaseController;
use app\common\model\Tdk\Tdk as ModelTdk;
use app\Request;
use think\Validate;
use think\exception\ValidateException;
use think\facade\Filesystem;
use app\common\arw\adjfut\src\Excel;
use app\common\arw\adjfut\src\UploadFile;
use think\facade\Db;
use app\common\exception\Tool;
use think\facade\Env;
class Tdk extends BaseController
{
/**
* 获取网站tdk详情
*/
public function getTdkInfo(Request $request): array
{
$params = $request->param();
$this->validate($params, ['tdk_type' => 'require']);
$find = ModelTdk::field([
'tdk_id',
'tdk_type',
'tdk_title',
'tdk_description',
'tdk_keyword'
])
->where('tdk_type', $params['tdk_type'])
->find();
return msg(0, '获取网站tdk详情成功!', ['data' => $find]);
}
}

View File

@ -4,6 +4,7 @@ namespace app\common\model\ContactUs;
use app\common\arw\adjfut\src\Validate;
use app\BaseModel;
use app\common\model\Dictionary\Dictionary as ModelDictionary;
use think\model\concern\SoftDelete;
use app\common\arw\adjfut\src\Excel;
use app\Request;
@ -21,32 +22,32 @@ class LeaveMessage extends BaseModel
protected $disuse = [];
// 设置字段信息
protected $schema = [
"leave_message_id" => "int",
"leave_message_guid" => "string",
"leave_message_content" => "string",
"leave_message_status" => "int",
"leave_message_user_name" => "string",
"leave_message_user_phone" => "int",
"leave_message_create_time" => "datetime",
"leave_message_create_user_guid" => "string",
"leave_message_update_time" => "datetime",
"leave_message_update_user_guid" => "string",
"leave_message_delete_time" => "datetime",
"leave_message_delete_user_guid" => "string",
];
"leave_message_id" => "int",
"leave_message_guid" => "string",
"leave_message_content" => "string",
"leave_message_status" => "int",
"leave_message_user_name" => "string",
"leave_message_user_phone" => "int",
"leave_message_create_time" => "datetime",
"leave_message_create_user_guid" => "string",
"leave_message_update_time" => "datetime",
"leave_message_update_user_guid" => "string",
"leave_message_delete_time" => "datetime",
"leave_message_delete_user_guid" => "string",
];
// 设置json类型字段
protected $json = [''];
// 开启自动写入时间戳字段
@ -56,7 +57,7 @@ class LeaveMessage extends BaseModel
// 修改时间
protected $updateTime = 'leave_message_update_time';
/**
@ -64,7 +65,8 @@ class LeaveMessage extends BaseModel
*/
public static function onBeforeInsert(self $model): void
{
// self::checkRepeatData($model);
BaseModel::setUserGuid(false);
Tool::initModelFieldValue($model, ['signup_status' => 2]);
$model->completeCreateField();
}
@ -73,7 +75,6 @@ class LeaveMessage extends BaseModel
*/
public static function onBeforeUpdate(self $model): void
{
// self::checkRepeatData($model);
$model->completeUpdateField();
}
@ -86,31 +87,29 @@ class LeaveMessage extends BaseModel
}
/**
* 导出Excel
*/
public static function exportExcel($select)
{
$data = [[
'留言内容',
'留言受理状态',
'留言人名称',
'留言人手机号码'
]];
foreach ($select as $key => $val) {
$data[] = [
$val['leave_message_content'],
$val['leave_message_status'],
$val['leave_message_user_name'],
$val['leave_message_user_phone'],
];
}
$excel = (new Excel())->exporTsheet($data);
$excel->save('用户留言.xlsx');
}
* 导出Excel
*/
public static function exportExcel($select)
{
$data = [[
'留言人名称',
'留言人手机号码',
'留言内容',
'留言受理状态',
]];
foreach ($select as $key => $val) {
// 字典取值
$processing_state = ModelDictionary::getDictionaryData('processing_state');
$val['leave_message_status'] = ModelDictionary::getDataDictionaryName($processing_state, $val['leave_message_status']);
$data[] = [
$val['leave_message_user_name'],
$val['leave_message_user_phone'],
$val['leave_message_content'],
$val['leave_message_status'],
];
}
$excel = (new Excel())->exporTsheet($data);
$excel->save('用户留言.xlsx');
}
}

View File

@ -119,9 +119,10 @@ class Flow extends BaseModel
'about-history-idx'=>'关于我们-发展历程',
'signUp-signUp_introduction-idx-page'=>'招生报名-招生简介',
'signUp-signUp_introduction-details-id'=>'招生报名-招生简介-详情页',
'signUp-classes_intro-idx-page'=>'招生报名-班型介绍',
'signUp-classes_intro-details-id'=>'招生报名-班型介绍-详情页',
'signUp-enrol_aq-idx'=>'招生报名-招生回答',
'signUp-classes_intro-idx-page'=>'招生报名-班型介绍',
'signUp-signup_way-idx'=>'招生报名-报名方式',
'teachers-idx'=>'师资力量',
@ -134,6 +135,7 @@ class Flow extends BaseModel
'works-idx'=>'作品欣赏',
'news-idx-page'=>'艺考咨询',
'news-details-id'=>'艺考咨询',
'contactUs-contact_info-idx'=>'联系我们-联系方式',
'contactUs-signup-idx'=>'联系我们-在线报名',

View File

@ -25,7 +25,7 @@ class SchoolLeaders extends BaseModel
"school_leaders_id" => "int",
"school_leaders_nameschool_leaders_nameschool_leaders_name" => "string",
"school_leaders_name" => "string",
"school_category_guid" => "string",

View File

@ -5,7 +5,11 @@ namespace app\common\model\Tdk;
use app\common\arw\adjfut\src\Validate;
use app\BaseModel;
use think\model\concern\SoftDelete;
use app\common\arw\adjfut\src\Excel;
use app\Request;
use app\common\model\Dictionary\Dictionary as ModelDictionary;
use app\common\exception\Tool;
use think\facade\Db;
class Tdk extends BaseModel
{
@ -18,32 +22,32 @@ class Tdk extends BaseModel
protected $disuse = [];
// 设置字段信息
protected $schema = [
"tdk_id" => "int",
"tdk_guid" => "string",
"tdk_type" => "int",
"tdk_title" => "string",
"tdk_description" => "string",
"tdk_keyword" => "string",
"tdk_create_time" => "datetime",
"tdk_create_user_guid" => "string",
"tdk_update_time" => "datetime",
"tdk_update_user_guid" => "string",
"tdk_delete_time" => "datetime",
"tdk_delete_user_guid" => "string",
];
"tdk_id" => "int",
"tdk_guid" => "string",
"tdk_type" => "string",
"tdk_title" => "string",
"tdk_description" => "string",
"tdk_keyword" => "string",
"tdk_create_time" => "datetime",
"tdk_create_user_guid" => "string",
"tdk_update_time" => "datetime",
"tdk_update_user_guid" => "string",
"tdk_delete_time" => "datetime",
"tdk_delete_user_guid" => "string",
];
// 设置json类型字段
protected $json = [''];
// 开启自动写入时间戳字段
@ -53,12 +57,29 @@ class Tdk extends BaseModel
// 修改时间
protected $updateTime = 'tdk_update_time';
// excel导入/下载模板表头
public const EXCELFIELD = [
'tdk_type' => 'tdk所属模块',
'tdk_title' => '网页标题',
'tdk_description' => '网页简介',
'tdk_keyword' => '网页关键词',
];
/**
* 新增前
*/
public static function onBeforeInsert(self $model): void
{
// self::checkRepeatData($model);
Validate::unique(
self::class,
$model->tdk_guid,
$model->getData(),
['tdk_type' => 'tdk模块',],
['tdk_type' => '一个tdk模块只能拥有一个tdk数据']
);
$model->completeCreateField();
}
@ -67,7 +88,6 @@ class Tdk extends BaseModel
*/
public static function onBeforeUpdate(self $model): void
{
// self::checkRepeatData($model);
$model->completeUpdateField();
}
@ -79,5 +99,86 @@ class Tdk extends BaseModel
$model->completeDeleteField();
}
/**
* 导出Excel
*/
public static function exportExcel($select)
{
$data = [[
'tdk所属模块',
'网页标题',
'网页简介',
'网页关键词'
]];
foreach ($select as $key => $val) {
// 字典取值
$tdk_type = ModelDictionary::getDictionaryData('tdk_type');
$val['tdk_type'] = ModelDictionary::getDataDictionaryName($tdk_type, $val['tdk_type']);
$data[] = [
$val['tdk_type'],
$val['tdk_title'],
$val['tdk_description'],
$val['tdk_keyword'],
];
}
$excel = (new Excel())->exporTsheet($data);
$excel->save('网站tdk.xlsx');
}
/**
* 导入excel
*/
public static function importExcel($file)
{
$msg = [];
Db::startTrans();
try {
$excel = new Excel($file);
$data = $excel->parseExcel(
Tool::getExcelRule(self::EXCELFIELD),
[
'titleLine' => [1]
]
);
if (!$data) throwErrorMsg('excel无数据', 1);
$msg = [];
foreach ($data as $line => $value) {
try {
$model = self::importExcelInit($value);
$msg[] = "{$line} <span style='color:#27af49'>新增成功!</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;
}
}
/**
* 导入excel初始化
*/
public static function importExcelInit($value)
{
$tdk_type = $value['tdk_type'];
$tdk_title = $value['tdk_title'];
$tdk_description = $value['tdk_description'];
$tdk_keyword = $value['tdk_keyword'];
// 字典设值
$dic_tdk_type = ModelDictionary::getDictionaryData('tdk_type');
$tdk_type = ModelDictionary::getDataDictionaryValue($dic_tdk_type, $value['tdk_type']);
return self::create([
'tdk_type' => $tdk_type,
'tdk_title' => $tdk_title,
'tdk_description' => $tdk_description,
'tdk_keyword' => $tdk_keyword,
]);
}
}

Binary file not shown.

Binary file not shown.