fix: 添加报名流程模块
This commit is contained in:
parent
4e9f893f09
commit
3e546b2798
123
app/admin/controller/Enrol/SignUpProcess.php
Normal file
123
app/admin/controller/Enrol/SignUpProcess.php
Normal file
@ -0,0 +1,123 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace app\admin\controller\Enrol;
|
||||||
|
|
||||||
|
use app\BaseController;
|
||||||
|
use app\common\model\Enrol\SignUpProcess as ModelSignUpProcess;
|
||||||
|
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 app\common\exception\Tool;
|
||||||
|
use think\facade\Db;
|
||||||
|
use think\facade\Env;
|
||||||
|
|
||||||
|
|
||||||
|
class SignUpProcess extends BaseController
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* 获取报名流程列表
|
||||||
|
*/
|
||||||
|
public function getSignUpProcessList(Request $request): array
|
||||||
|
{
|
||||||
|
$params = $request->param();
|
||||||
|
$con = [];
|
||||||
|
|
||||||
|
$con = Tool::getOptionalQuery(['sign_up_process_title', 'LIKE'],);
|
||||||
|
|
||||||
|
$query = ModelSignUpProcess::where($con)
|
||||||
|
->field([
|
||||||
|
'sign_up_process_id',
|
||||||
|
'sign_up_process_guid',
|
||||||
|
'sign_up_process_title',
|
||||||
|
'sign_up_process_icon',
|
||||||
|
'sign_up_process_intro',
|
||||||
|
'sign_up_process_sort'
|
||||||
|
])
|
||||||
|
->order('sign_up_process_sort', 'desc');
|
||||||
|
|
||||||
|
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
|
||||||
|
{
|
||||||
|
$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::create($params, [
|
||||||
|
'sign_up_process_guid',
|
||||||
|
'sign_up_process_create_user_guid',
|
||||||
|
'sign_up_process_update_user_guid',
|
||||||
|
'sign_up_process_title',
|
||||||
|
'sign_up_process_icon',
|
||||||
|
'sign_up_process_intro',
|
||||||
|
'sign_up_process_sort'
|
||||||
|
]);
|
||||||
|
return msg('添加成功!');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除报名流程
|
||||||
|
*/
|
||||||
|
public function deleteSignUpProcess(Request $request): array
|
||||||
|
{
|
||||||
|
$params = $request->param();
|
||||||
|
$this->validate($params, [
|
||||||
|
'sign_up_process_guid' => 'require',
|
||||||
|
]);
|
||||||
|
$sign_up_process = ModelSignUpProcess::where([
|
||||||
|
'sign_up_process_guid' => explode(',', $params['sign_up_process_guid'])
|
||||||
|
])->select();
|
||||||
|
$sign_up_process->delete();
|
||||||
|
return msg('删除成功!');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 导出Excel
|
||||||
|
*/
|
||||||
|
public function exportExcel(Request $request)
|
||||||
|
{
|
||||||
|
$params = $request->param();
|
||||||
|
$select = ModelSignUpProcess::field([
|
||||||
|
'sign_up_process_title',
|
||||||
|
'sign_up_process_intro',
|
||||||
|
'sign_up_process_sort'
|
||||||
|
])
|
||||||
|
->order('sign_up_process_sort', 'asc')
|
||||||
|
->select();
|
||||||
|
return ModelSignUpProcess::exportExcel($select);
|
||||||
|
}
|
||||||
|
}
|
@ -1674,7 +1674,7 @@ class Gen extends BaseController
|
|||||||
}
|
}
|
||||||
if ($value['htmlType'] == "textarea") {
|
if ($value['htmlType'] == "textarea") {
|
||||||
$col .= '
|
$col .= '
|
||||||
<el-col :span="12">
|
<el-col :span="24">
|
||||||
<el-form-item :label-width="labelWidth" label="' . $value['columnComment'] . '" prop="' . $value['columnName'] . '">' . '
|
<el-form-item :label-width="labelWidth" label="' . $value['columnComment'] . '" prop="' . $value['columnName'] . '">' . '
|
||||||
' . " <el-input v-model='formData." . $value['columnName'] . "' " . 'type="textarea" :rows="5" ' . "placeholder=" . "'请输入" . $value['columnComment'] . "'></el-input>
|
' . " <el-input v-model='formData." . $value['columnName'] . "' " . 'type="textarea" :rows="5" ' . "placeholder=" . "'请输入" . $value['columnComment'] . "'></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -1734,7 +1734,7 @@ class Gen extends BaseController
|
|||||||
}
|
}
|
||||||
if ($value['htmlType'] == "editor") {
|
if ($value['htmlType'] == "editor") {
|
||||||
$col .= '
|
$col .= '
|
||||||
<el-col :span="12">
|
<el-col :span="24">
|
||||||
<el-form-item :label-width="labelWidth" label="' . $value['columnComment'] . '" prop="' . $value['columnName'] . '">' . '
|
<el-form-item :label-width="labelWidth" label="' . $value['columnComment'] . '" prop="' . $value['columnName'] . '">' . '
|
||||||
' . " <RichText v-model='formData." . $value['columnName'] . "' :min-height='196'></RichText>
|
' . " <RichText v-model='formData." . $value['columnName'] . "' :min-height='196'></RichText>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
@ -32,7 +32,7 @@ class Classes extends BaseModel
|
|||||||
|
|
||||||
"classes_content" => "string",
|
"classes_content" => "string",
|
||||||
|
|
||||||
"classes_sort" => "string",
|
"classes_sort" => "int",
|
||||||
|
|
||||||
"classes_create_time" => "datetime",
|
"classes_create_time" => "datetime",
|
||||||
|
|
||||||
|
124
app/common/model/Enrol/SignUpProcess.php
Normal file
124
app/common/model/Enrol/SignUpProcess.php
Normal file
@ -0,0 +1,124 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace app\common\model\Enrol;
|
||||||
|
|
||||||
|
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\exception\Tool;
|
||||||
|
use think\facade\Db;
|
||||||
|
|
||||||
|
class SignUpProcess extends BaseModel
|
||||||
|
{
|
||||||
|
use SoftDelete;
|
||||||
|
// 删除字段
|
||||||
|
protected $deleteTime = 'sign_up_process_delete_time';
|
||||||
|
// 设置主键名
|
||||||
|
protected $pk = 'sign_up_process_guid';
|
||||||
|
// 设置废弃字段
|
||||||
|
protected $disuse = [];
|
||||||
|
// 设置字段信息
|
||||||
|
protected $schema = [
|
||||||
|
|
||||||
|
"sign_up_process_id" => "int",
|
||||||
|
|
||||||
|
"sign_up_process_guid" => "string",
|
||||||
|
|
||||||
|
"sign_up_process_title" => "string",
|
||||||
|
|
||||||
|
"sign_up_process_icon" => "string",
|
||||||
|
|
||||||
|
"sign_up_process_intro" => "string",
|
||||||
|
|
||||||
|
"sign_up_process_sort" => "int",
|
||||||
|
|
||||||
|
"sign_up_process_create_time" => "datetime",
|
||||||
|
|
||||||
|
"sign_up_process_create_user_guid" => "string",
|
||||||
|
|
||||||
|
"sign_up_process_update_time" => "datetime",
|
||||||
|
|
||||||
|
"sign_up_process_update_user_guid" => "string",
|
||||||
|
|
||||||
|
"sign_up_process_delete_time" => "datetime",
|
||||||
|
|
||||||
|
"sign_up_process_delete_user_guid" => "string",
|
||||||
|
|
||||||
|
];
|
||||||
|
// 设置json类型字段
|
||||||
|
protected $json = [''];
|
||||||
|
// 开启自动写入时间戳字段
|
||||||
|
protected $autoWriteTimestamp = 'datetime';
|
||||||
|
// 创建时间
|
||||||
|
protected $createTime = 'sign_up_process_create_time';
|
||||||
|
// 修改时间
|
||||||
|
protected $updateTime = 'sign_up_process_update_time';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增前
|
||||||
|
*/
|
||||||
|
public static function onBeforeInsert(self $model): void
|
||||||
|
{
|
||||||
|
Validate::unique(self::class, $model->sign_up_process_guid, $model->getData(), [
|
||||||
|
'sign_up_process_title' => '报名流程标题',
|
||||||
|
]);
|
||||||
|
Tool::sortInsertProc(
|
||||||
|
self::class,
|
||||||
|
$model->sign_up_process_sort,
|
||||||
|
);
|
||||||
|
$model->completeCreateField();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新前
|
||||||
|
*/
|
||||||
|
public static function onBeforeUpdate(self $model): void
|
||||||
|
{
|
||||||
|
Validate::unique(self::class, $model->sign_up_process_guid, $model->getData(), [
|
||||||
|
'sign_up_process_title' => '报名流程标题',
|
||||||
|
]);
|
||||||
|
Tool::sortEditProc(
|
||||||
|
self::class,
|
||||||
|
$model->sign_up_process_guid,
|
||||||
|
$model->sign_up_process_sort,
|
||||||
|
);
|
||||||
|
$model->completeUpdateField();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除前
|
||||||
|
*/
|
||||||
|
public static function onBeforeDelete(self $model): void
|
||||||
|
{
|
||||||
|
Tool::sortDeleteProc(self::class, $model->sign_up_process_guid);
|
||||||
|
$model->completeDeleteField();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 导出Excel
|
||||||
|
*/
|
||||||
|
public static function exportExcel($select)
|
||||||
|
{
|
||||||
|
$data = [[
|
||||||
|
'报名流程标题',
|
||||||
|
'报名流程标题介绍',
|
||||||
|
]];
|
||||||
|
foreach ($select as $key => $val) {
|
||||||
|
$data[] = [
|
||||||
|
$val['sign_up_process_title'],
|
||||||
|
$val['sign_up_process_intro'],
|
||||||
|
];
|
||||||
|
}
|
||||||
|
$excel = (new Excel())->exporTsheet($data);
|
||||||
|
$excel->save('报名流程.xlsx');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -81,7 +81,7 @@
|
|||||||
</template>
|
</template>
|
||||||
<script setup>
|
<script setup>
|
||||||
import { ArrowDown } from '@element-plus/icons-vue';
|
import { ArrowDown } from '@element-plus/icons-vue';
|
||||||
import { ref, reactive } from 'vue';
|
import { ref, reactive,watch } from 'vue';
|
||||||
import { useLoginStore } from "~/store";
|
import { useLoginStore } from "~/store";
|
||||||
import { get${className}List, delete${className} ${dictFun} ${btnFunName} } from '~/service/${businessName}';
|
import { get${className}List, delete${className} ${dictFun} ${btnFunName} } from '~/service/${businessName}';
|
||||||
import Add${className}Dialog from './components/Add${className}Dialog.vue';
|
import Add${className}Dialog from './components/Add${className}Dialog.vue';
|
||||||
|
Loading…
Reference in New Issue
Block a user