正在显示
5 个修改的文件
包含
152 行增加
和
0 行删除
| @@ -4,7 +4,9 @@ namespace App\Http\Controllers\Aside\Project; | @@ -4,7 +4,9 @@ namespace App\Http\Controllers\Aside\Project; | ||
| 4 | 4 | ||
| 5 | use App\Helper\Arr; | 5 | use App\Helper\Arr; |
| 6 | use App\Http\Controllers\Aside\BaseController; | 6 | use App\Http\Controllers\Aside\BaseController; |
| 7 | +use App\Http\Logic\Aside\Project\ProcessRecordsLogic; | ||
| 7 | use App\Http\Logic\Aside\Project\ProjectLogic; | 8 | use App\Http\Logic\Aside\Project\ProjectLogic; |
| 9 | +use App\Http\Requests\Aside\Project\ProcessRecordsRequest; | ||
| 8 | use App\Http\Requests\Aside\Project\ProjectRequest; | 10 | use App\Http\Requests\Aside\Project\ProjectRequest; |
| 9 | use App\Models\InquirySet; | 11 | use App\Models\InquirySet; |
| 10 | use App\Rules\Ids; | 12 | use App\Rules\Ids; |
| @@ -96,4 +98,29 @@ class ProjectController extends BaseController | @@ -96,4 +98,29 @@ class ProjectController extends BaseController | ||
| 96 | $data = $logic->dataSource(); | 98 | $data = $logic->dataSource(); |
| 97 | return $this->success($data); | 99 | return $this->success($data); |
| 98 | } | 100 | } |
| 101 | + | ||
| 102 | + /** | ||
| 103 | + * 进程记录 | ||
| 104 | + * @author zbj | ||
| 105 | + * @date 2023/6/25 | ||
| 106 | + */ | ||
| 107 | + public function get_process_records(Request $request, ProcessRecordsLogic $logic){ | ||
| 108 | + $request->validate([ | ||
| 109 | + 'project_id'=>'required' | ||
| 110 | + ],[ | ||
| 111 | + 'project_id.required' => '项目ID不能为空' | ||
| 112 | + ]); | ||
| 113 | + $data = $logic->getInfo($this->param['project_id']); | ||
| 114 | + return $this->success($data ? $data->toArray() : []); | ||
| 115 | + } | ||
| 116 | + | ||
| 117 | + /** | ||
| 118 | + * 保存进程记录 | ||
| 119 | + * @author zbj | ||
| 120 | + * @date 2023/6/25 | ||
| 121 | + */ | ||
| 122 | + public function save_process_records(ProcessRecordsRequest $request, ProcessRecordsLogic $logic){ | ||
| 123 | + $data = $logic->save($this->param); | ||
| 124 | + return $this->success($data); | ||
| 125 | + } | ||
| 99 | } | 126 | } |
| 1 | +<?php | ||
| 2 | + | ||
| 3 | +namespace App\Http\Logic\Aside\Project; | ||
| 4 | + | ||
| 5 | + | ||
| 6 | +use App\Http\Logic\Aside\BaseLogic; | ||
| 7 | +use App\Models\Project\ProcessRecords; | ||
| 8 | + | ||
| 9 | +class ProcessRecordsLogic extends BaseLogic | ||
| 10 | +{ | ||
| 11 | + public function __construct() | ||
| 12 | + { | ||
| 13 | + parent::__construct(); | ||
| 14 | + | ||
| 15 | + $this->model = new ProcessRecords(); | ||
| 16 | + } | ||
| 17 | + | ||
| 18 | + public function getInfo($project_id) | ||
| 19 | + { | ||
| 20 | + return $this->model->where('project_id', $project_id)->first(); | ||
| 21 | + } | ||
| 22 | + | ||
| 23 | + public function save($param){ | ||
| 24 | + $info = $this->getInfo($param['project_id']); | ||
| 25 | + if($info){ | ||
| 26 | + $this->model = $info; | ||
| 27 | + } | ||
| 28 | + $this->model->record = $param['record']; | ||
| 29 | + $this->model->remark = $param['remark']; | ||
| 30 | + $res = $this->model->save(); | ||
| 31 | + if($res){ | ||
| 32 | + return $this->success(['id' => $this->model->id]); //返回保存的数据id | ||
| 33 | + }else{ | ||
| 34 | + $this->fail('保存失败'); | ||
| 35 | + } | ||
| 36 | + } | ||
| 37 | +} |
| 1 | +<?php | ||
| 2 | + | ||
| 3 | +namespace App\Http\Requests\Aside\Project; | ||
| 4 | + | ||
| 5 | +use Illuminate\Foundation\Http\FormRequest; | ||
| 6 | +use Illuminate\Support\Str; | ||
| 7 | + | ||
| 8 | +/** | ||
| 9 | + * Class ProcessRecordsRequest | ||
| 10 | + * @package App\Http\Requests\Aside\product | ||
| 11 | + * @author zbj | ||
| 12 | + * @date 2023/6/25 | ||
| 13 | + */ | ||
| 14 | +class ProcessRecordsRequest extends FormRequest | ||
| 15 | +{ | ||
| 16 | + /** | ||
| 17 | + * Determine if the user is authorized to make this request. | ||
| 18 | + * | ||
| 19 | + * @return bool | ||
| 20 | + */ | ||
| 21 | + public function authorize() | ||
| 22 | + { | ||
| 23 | + return true; | ||
| 24 | + } | ||
| 25 | + | ||
| 26 | + /** | ||
| 27 | + * Get the validation rules that apply to the request. | ||
| 28 | + * | ||
| 29 | + * @return array | ||
| 30 | + */ | ||
| 31 | + public function rules() | ||
| 32 | + { | ||
| 33 | + return [ | ||
| 34 | + 'project_id' => 'required', | ||
| 35 | + 'record' => ['required', 'array', function ($attribute, $value, $fail) { | ||
| 36 | + foreach ($value as $v) { | ||
| 37 | + if (empty($v['date'])) { | ||
| 38 | + $fail('请选择记录日期'); | ||
| 39 | + } | ||
| 40 | + if (empty($v['content'])) { | ||
| 41 | + $fail('请输入记录内容'); | ||
| 42 | + } | ||
| 43 | + } | ||
| 44 | + }], | ||
| 45 | + ]; | ||
| 46 | + } | ||
| 47 | + | ||
| 48 | + public function messages() | ||
| 49 | + { | ||
| 50 | + return [ | ||
| 51 | + 'project_id.required'=>'项目ID不能为空', | ||
| 52 | + ]; | ||
| 53 | + } | ||
| 54 | + | ||
| 55 | +} |
app/Models/Project/ProcessRecords.php
0 → 100644
| 1 | +<?php | ||
| 2 | + | ||
| 3 | +namespace App\Models\Project; | ||
| 4 | + | ||
| 5 | +use App\Helper\Arr; | ||
| 6 | +use App\Models\Base; | ||
| 7 | +use App\Services\Facades\Upload; | ||
| 8 | + | ||
| 9 | +class ProcessRecords extends Base | ||
| 10 | +{ | ||
| 11 | + //设置关联表名 | ||
| 12 | + protected $table = 'gl_project_process_records'; | ||
| 13 | + | ||
| 14 | + public function setRecordAttribute($value){ | ||
| 15 | + foreach ($value as &$v){ | ||
| 16 | + $v['image'] = Upload::url2path($v['image']); | ||
| 17 | + $v['file'] = Upload::url2path($v['file']); | ||
| 18 | + } | ||
| 19 | + $this->attributes['record'] = Arr::a2s($value); | ||
| 20 | + } | ||
| 21 | + | ||
| 22 | + public function getRecordAttribute($value){ | ||
| 23 | + $value = Arr::s2a($value); | ||
| 24 | + foreach ($value as &$v){ | ||
| 25 | + $v['image'] = Upload::path2url($v['image']); | ||
| 26 | + $v['file'] = Upload::path2url($v['file']); | ||
| 27 | + } | ||
| 28 | + return $value; | ||
| 29 | + } | ||
| 30 | + | ||
| 31 | +} |
| @@ -118,6 +118,8 @@ Route::middleware(['aloginauth'])->group(function () { | @@ -118,6 +118,8 @@ Route::middleware(['aloginauth'])->group(function () { | ||
| 118 | Route::post('/save', [Aside\Project\ProjectController::class, 'save'])->name('admin.project_save'); | 118 | Route::post('/save', [Aside\Project\ProjectController::class, 'save'])->name('admin.project_save'); |
| 119 | Route::any('/inquiry_set', [Aside\Project\ProjectController::class, 'inquiry_set'])->name('admin.project_inquiry_set'); | 119 | Route::any('/inquiry_set', [Aside\Project\ProjectController::class, 'inquiry_set'])->name('admin.project_inquiry_set'); |
| 120 | Route::any('/data_source', [Aside\Project\ProjectController::class, 'data_source'])->name('admin.project_data_source'); | 120 | Route::any('/data_source', [Aside\Project\ProjectController::class, 'data_source'])->name('admin.project_data_source'); |
| 121 | + Route::any('/get_process_records', [Aside\Project\ProjectController::class, 'get_process_records'])->name('admin.project_get_process_records'); | ||
| 122 | + Route::any('/save_process_records', [Aside\Project\ProjectController::class, 'save_process_records'])->name('admin.project_save_process_records'); | ||
| 121 | }); | 123 | }); |
| 122 | 124 | ||
| 123 | //工单管理 | 125 | //工单管理 |
-
请 注册 或 登录 后发表评论