This commit is contained in:
mkm 2024-03-26 11:32:17 +08:00
parent 4880420620
commit 8c2cb05cff

View File

@ -1,11 +1,15 @@
<?php
/**
* @copyright Copyright (c) 2021 勾股工作室
* @license https://opensource.org/licenses/GPL-3.0
* @link https://www.gougucms.com
*/
declare(strict_types=1);
namespace app\api\controller;
use app\project\model\ProjectTask as TaskList;
use app\api\BaseController;
use think\facade\Db;
@ -26,12 +30,10 @@ class Index extends BaseController
if ($sourse == 'file' || $sourse == 'tinymce') {
if (request()->file('file')) {
$file = request()->file('file');
}
else{
} else {
return to_assign(1, '没有选择上传文件');
}
}
else{
} else {
if (request()->file('editormd-image-file')) {
$file = request()->file('editormd-image-file');
} else {
@ -103,12 +105,10 @@ class Index extends BaseController
if ($sourse == 'editormd') {
//editormd编辑器上传返回
return json(['success' => 1, 'message' => '上传成功', 'url' => $data['filepath']]);
}
else if($sourse == 'tinymce'){
} else if ($sourse == 'tinymce') {
//tinymce编辑器上传返回
return json(['success' => 1, 'message' => '上传成功', 'location' => $data['filepath']]);
}
else{
} else {
//普通上传返回
return to_assign(0, '上传成功', $res);
}
@ -183,8 +183,7 @@ class Index extends BaseController
$did = get_params('did');
if ($did == 1) {
$department = $did;
}
else{
} else {
$department = get_department_son($did);
}
$employee = Db::name('admin')
@ -339,20 +338,17 @@ class Index extends BaseController
$detail = Db::name('Approve')->where(['id' => $id])->find();
$subject = '一个日常审批';
$msg_title_type = $detail['type'];
}
else if($type==2){
} else if ($type == 2) {
//报销审核
$detail = Db::name('Expense')->where(['id' => $id])->find();
$subject = '一个报销审批';
$msg_title_type = 22;
}
else if($type==3){
} else if ($type == 3) {
//发票审核
$detail = Db::name('Invoice')->where(['id' => $id])->find();
$subject = '一个发票审批';
$msg_title_type = 23;
}
else if($type==4){
} else if ($type == 4) {
//合同审核
$detail = Db::name('Contract')->where(['id' => $id])->find();
$subject = '一个合同审批';
@ -383,28 +379,23 @@ class Index extends BaseController
//存在下一步审核
if ($next_step['flow_type'] == 1) {
$param['check_admin_ids'] = get_department_leader($detail['admin_id']);
}
else if($next_step['flow_type'] == 2){
} else if ($next_step['flow_type'] == 2) {
$param['check_admin_ids'] = get_department_leader($detail['admin_id'], 1);
}
else{
} else {
$param['check_admin_ids'] = $next_step['flow_uids'];
}
$param['check_step_sort'] = $detail['check_step_sort'] + 1;
$param['check_status'] = 1;
}
else{
} else {
//不存在下一步审核,审核结束
$param['check_status'] = 2;
$param['check_admin_ids'] = '';
}
}
else{
} else {
$param['check_status'] = 1;
$param['check_admin_ids'] = $step['flow_uids'];
}
}
else if($step['flow_type'] == 0){
} else if ($step['flow_type'] == 0) {
//自由人审批
if ($param['check_node'] == 2) {
$next_step = $detail['check_step_sort'] + 1;
@ -420,30 +411,25 @@ class Index extends BaseController
$param['check_admin_ids'] = $param['check_admin_ids'];
$param['check_step_sort'] = $next_step;
$param['check_status'] = 1;
}
else{
} else {
//不存在下一步审核,审核结束
$param['check_status'] = 2;
$param['check_admin_ids'] = '';
}
}
else{
} else {
$next_step = Db::name('FlowStep')->where(['action_id' => $id, 'type' => $type, 'sort' => ($detail['check_step_sort'] + 1), 'delete_time' => 0])->find();
if ($next_step) {
//存在下一步审核
if ($next_step['flow_type'] == 1) {
$param['check_admin_ids'] = get_department_leader($detail['admin_id']);
}
else if($next_step['flow_type'] == 2){
} else if ($next_step['flow_type'] == 2) {
$param['check_admin_ids'] = get_department_leader($detail['admin_id'], 1);
}
else{
} else {
$param['check_admin_ids'] = $next_step['flow_uids'];
}
$param['check_step_sort'] = $detail['check_step_sort'] + 1;
$param['check_status'] = 1;
}
else{
} else {
//不存在下一步审核,审核结束
$param['check_status'] = 2;
$param['check_admin_ids'] = '';
@ -459,16 +445,13 @@ class Index extends BaseController
if ($type == 1) {
//日常审核
$res = Db::name('Approve')->strict(false)->field('check_step_sort,check_status,last_admin_id,flow_admin_ids,check_admin_ids')->update($param);
}
else if($type==2){
} else if ($type == 2) {
//报销审核
$res = Db::name('Expense')->strict(false)->field('check_step_sort,check_status,last_admin_id,flow_admin_ids,check_admin_ids')->update($param);
}
else if($type==3){
} else if ($type == 3) {
//发票审核
$res = Db::name('Invoice')->strict(false)->field('check_step_sort,check_status,last_admin_id,flow_admin_ids,check_admin_ids')->update($param);
}
else if($type==4){
} else if ($type == 4) {
//合同审核
$res = Db::name('Contract')->strict(false)->field('check_step_sort,check_status,last_admin_id,flow_admin_ids,check_admin_ids')->update($param);
}
@ -502,12 +485,10 @@ class Index extends BaseController
sendMessage($users, ($type * 10 + 12), $msg);
}
return to_assign();
}
else{
} else {
return to_assign(1, '操作失败');
}
}
else if($param['check'] == 2){
} else if ($param['check'] == 2) {
$check_admin_ids = explode(",", strval($detail['check_admin_ids']));
if (!in_array($this->uid, $check_admin_ids)) {
return to_assign(1, '您没权限审核该审批');
@ -525,8 +506,7 @@ class Index extends BaseController
$param['check_step_sort'] = $prev_step['sort'];
$param['check_admin_ids'] = $prev_step['flow_uids'];
$param['check_status'] = 1;
}
else{
} else {
//不存在上一步审核,审核初始化步骤
$param['check_step_sort'] = 0;
$param['check_admin_ids'] = '';
@ -536,16 +516,13 @@ class Index extends BaseController
if ($type == 1) {
//日常审核
$res = Db::name('Approve')->strict(false)->field('check_step_sort,check_status,last_admin_id,flow_admin_ids,check_admin_ids')->update($param);
}
else if($type==2){
} else if ($type == 2) {
//报销审核
$res = Db::name('Expense')->strict(false)->field('check_step_sort,check_status,last_admin_id,flow_admin_ids,check_admin_ids')->update($param);
}
else if($type==3){
} else if ($type == 3) {
//发票审核
$res = Db::name('Invoice')->strict(false)->field('check_step_sort,check_status,last_admin_id,flow_admin_ids,check_admin_ids')->update($param);
}
else if($type==4){
} else if ($type == 4) {
//合同审核
$res = Db::name('Contract')->strict(false)->field('check_step_sort,check_status,last_admin_id,flow_admin_ids,check_admin_ids')->update($param);
}
@ -572,12 +549,10 @@ class Index extends BaseController
$users = $detail['admin_id'];
sendMessage($users, ($type * 10 + 13), $msg);
return to_assign();
}
else{
} else {
return to_assign(1, '操作失败');
}
}
else if($param['check'] == 3){
} else if ($param['check'] == 3) {
if ($detail['admin_id'] != $this->uid) {
return to_assign(1, '你没权限操作');
}
@ -588,16 +563,13 @@ class Index extends BaseController
if ($type == 1) {
//日常审核
$res = Db::name('Approve')->strict(false)->field('check_step_sort,check_status,check_admin_ids')->update($param);
}
else if($type==2){
} else if ($type == 2) {
//报销审核
$res = Db::name('Expense')->strict(false)->field('check_step_sort,check_status,check_admin_ids')->update($param);
}
else if($type==3){
} else if ($type == 3) {
//发票审核
$res = Db::name('Invoice')->strict(false)->field('check_step_sort,check_status,check_admin_ids')->update($param);
}
else if($type==4){
} else if ($type == 4) {
//合同审核
$res = Db::name('Contract')->strict(false)->field('check_step_sort,check_status,check_admin_ids')->update($param);
}
@ -692,45 +664,7 @@ class Index extends BaseController
if (isset($param['end_time'])) {
$param['end_time'] = strtotime(urldecode($param['end_time']));
}
if (!empty($param['id']) && $param['id'] > 0) {
$task = (new TaskList())->detail($param['id']);
try {
validate(TaskCheck::class)->scene('edit')->check($param);
} catch (ValidateException $e) {
// 验证失败 输出错误信息
return to_assign(1, $e->getError());
}
if (isset($param['flow_status'])) {
if ($param['flow_status'] == 3) {
$param['over_time'] = time();
$param['done_ratio'] = 100;
if($task['before_task']>0){
$flow_status = Db::name('ProjectTask')->where(['id' => $task['before_task']])->value('flow_status');
if($flow_status !=3){
return to_assign(1, '前置任务未完成,不能设置已完成');
}
}
} else {
$param['over_time'] = 0;
$param['done_ratio'] = 0;
}
}
if(isset($param['before_task'])){
$after_task_array = admin_after_task_son($param['id']);
//包括自己在内
$after_task_array[] = $param['id'];
if (in_array($param['before_task'], $after_task_array)) {
return to_assign(1, '前置任务不能是该任务本身或其后置任务');
}
}
$param['update_time'] = time();
$res = TaskList::where('id', $param['id'])->strict(false)->save($param);
if ($res) {
add_log('edit', $param['id'], $param);
add_project_log(1,'task',$param, $task);
}
return to_assign();
} else {
try {
validate(TaskCheck::class)->scene('add')->check($param);
} catch (ValidateException $e) {
@ -739,6 +673,12 @@ class Index extends BaseController
}
$param['create_time'] = time();
$param['admin_id'] = 1;
if(!empty($param['md5']) &&strlen($param['md5'])>2){
$id = TaskList::where('md5',$param['md5'])->value('id');
if($id){
return to_assign(1,'已存在');
}
}
$sid = TaskList::strict(false)->field(true)->insertGetId($param);
if ($sid) {
add_log('add', $sid, $param);
@ -760,5 +700,3 @@ class Index extends BaseController
}
}
}
}