Files
oms-back/application/api/controller/Operation.php
2026-03-09 22:55:58 +08:00

141 lines
4.5 KiB
PHP

<?php
namespace app\api\controller;
use think\Config;
use think\Controller;
use think\Db;
use think\Log;
use think\Model;
use think\Request;
use think\cache\driver\Memcache;
header("Access-Control-Allow-Origin:*");
header("Access-Control-Allow-Methods:GET, POST, OPTIONS, DELETE");
header("Access-Control-Allow-Headers:DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type, Accept-Language, Origin, Accept-Encoding");
class Operation extends Common
{
//获取运营工作分类列表
public function GetOperationWorkTypeList()
{
$allTypes = db('operation_info')->field('work_id as id, super_work_id, work_name as name')->select();
$tree = [];
foreach ($allTypes as $item) {
if ($item['super_work_id'] == 0) {
$tree[$item['id']] = $item;
} else {
$parentId = $item['super_work_id'];
if (isset($tree[$parentId])) {
$tree[$parentId]['sub_type'][] = $item;
} else {
foreach ($tree as &$node) {
if (isset($node['sub_type'])) {
foreach ($node['sub_type'] as &$subNode) {
if ($subNode['id'] == $parentId) {
$subNode['sub_type'][] = $item;
}
}
}
}
}
}
}
$tree = array_values($tree);
return $this->sendSuccess($tree);
}
//添加运营工作分类
public function AddOperationWorkType()
{
$param = request()->post();
$ret = [];
if (isset($param['work_id']) && $param['work_id'] > 0) {
// 添加子类型
$ret = db('operation_info')->where('work_id', $param['work_id'])->field('work_id,super_work_id')->find();
} else {
// 添加基类型
$ret['work_id'] = 0;
}
if ($ret != null) {
$insert = [];
$insert['work_name'] = $param['work_name'];
$insert['super_work_id'] = $ret['work_id'];
$insert['create_time'] = date('Y-m-d H:i:s');
// 检查 story_manager 和 story_member 参数是否存在
if (isset($param['story_manager'])) {
$insert['work_manager'] = $param['story_manager'];
}
if (isset($param['story_member'])) {
$insert['work_member'] = $param['story_member'];
}
$ret1 = db('operation_info')->insert($insert);
if ($ret1) {
return $this->sendSuccess('添加成功');
} else {
return $this->sendError('', '添加失败');
}
}
}
public function upTaskType()
{
$param = request()->post();
if($param){
$update = [];
$task_info = db('work_task_info')->where('task_id',$param['task_id'])->find();
if($task_info && $param['task_type'] === 4){
$update['real_close_time'] = date('Y-m-d H:i:s');
//如果是完成状态,计算消耗时间
$createTime = $task_info['create_time'];
$createTimestamp = strtotime($createTime);
$currentTimestamp = time();
$timeDifference = $currentTimestamp - $createTimestamp;
$update['consuming_time'] = $timeDifference;
}
$update['task_state'] = $param['task_type'];
$ret = db('work_task_info')->where('task_id',$param['task_id'])->update($update);
if($ret){
return $this->sendSuccess('修改成功');
}else{
return $this->sendError('','修改失败');
}
}
}
public function upTask()
{
$param = request()->post();
if($param){
$ret = db('work_task_info')->where('task_id',$param['task_id'])->update($param);
if($ret){
return $this->sendSuccess('修改成功');
}else{
return $this->sendError('','修改失败');
}
}
}
public function DeleteTask()
{
$param = request()->post();
if ($param) {
$ret = db('work_task_info')->where('task_id', $param['task_id'])->delete();
if ($ret) {
return $this->sendSuccess('删除成功');
}else{
return $this->sendError('','删除失败');
}
}
}
}