diff --git a/app/Http/Controllers/Api/ReportController.php b/app/Http/Controllers/Api/ReportController.php index a53c1d7b7..739f7cba7 100755 --- a/app/Http/Controllers/Api/ReportController.php +++ b/app/Http/Controllers/Api/ReportController.php @@ -230,6 +230,7 @@ class ReportController extends AbstractController $user = User::auth(); $type = trim(Request::input("type")); $offset = abs(intval(Request::input("offset", 0))); + $id = intval(Request::input("offset", 0)); $now_dt = trim(Request::input("date")) ? Carbon::parse(Request::input("date")) : Carbon::now(); // 获取开始时间 if ($type === Report::DAILY) { @@ -256,7 +257,7 @@ class ReportController extends AbstractController $sign = Report::generateSign($type, 0, Carbon::instance($start_time)); $one = Report::query()->whereSign($sign)->first(); // 如果已经提交了相关汇报 - if ($one) { + if ($one && $id > 0) { return Base::retSuccess('success', [ "content" => $one->content, "title" => $one->title, @@ -312,7 +313,7 @@ class ReportController extends AbstractController } else { $title = $user->nickname . "的日报[" . $start_time->format("Y/m/d") . "]"; } - return Base::retSuccess('success', [ + $data = [ "time" => $start_time->toDateTimeString(), "complete_task" => $complete_task, "unfinished_task" => $unfinished_task, @@ -321,7 +322,11 @@ class ReportController extends AbstractController Base::Lang('未完成的工作') . '
    ' . $unfinishedContent . '
', "title" => $title, - ]); + ]; + if ($one) { + $data['id'] = $one->id; + } + return Base::retSuccess('success', $data); } /** diff --git a/resources/assets/js/pages/manage/components/ReportEdit.vue b/resources/assets/js/pages/manage/components/ReportEdit.vue index 8f16eeee3..e280246ed 100644 --- a/resources/assets/js/pages/manage/components/ReportEdit.vue +++ b/resources/assets/js/pages/manage/components/ReportEdit.vue @@ -4,18 +4,18 @@

{{ $L("汇报类型") }}

- {{ $L("周报") }} - {{ $L("日报") }} + {{ $L("周报") }} + {{ $L("日报") }} - - -
- - @@ -95,6 +95,11 @@ export default { id(val) { if (this.id > 0) { this.getDetail(val); + }else{ + this.reportData.offset = 0; + this.reportData.type = "weekly"; + this.reportData.receive = []; + this.getTemplate(); } }, }, @@ -111,6 +116,10 @@ export default { }, handleSubmit: function () { let id = this.reportData.id; + if (this.reportData.receive.length === 0) { + $A.messageError(this.$L("请选择接收人")); + return false; + } if (this.id === 0 && id > 1) { $A.modalConfirm({ title: '覆盖提交', @@ -133,6 +142,8 @@ export default { }).then(({data, msg}) => { // data 结果数据 this.reportData.offset = 0; + this.reportData.type = "weekly"; + this.reportData.receive = []; this.getTemplate(); this.disabledType = false; this.$Modal.remove(); @@ -140,6 +151,7 @@ export default { $A.messageSuccess(msg); this.$emit("saveSuccess"); }).catch(({msg}) => { + this.$Modal.remove(); // msg 错误原因 $A.messageError(msg); }); @@ -149,13 +161,20 @@ export default { url: 'report/template', data: { type: this.reportData.type, - offset: this.reportData.offset + offset: this.reportData.offset, + id: this.id }, method: 'get', }).then(({data, msg}) => { // data 结果数据 if (data.id) { - this.getDetail(data.id); + this.reportData.id = data.id; + if(this.id > 0){ + this.getDetail(data.id); + }else{ + this.reportData.title = data.title; + this.reportData.content = data.content; + } } else { this.reportData.id = 0; this.reportData.title = data.title;