kuaifan il y a 5 ans
Parent
commit
41307369df

+ 3 - 0
app/Http/Controllers/Api/ProjectController.php

@@ -1620,6 +1620,9 @@ class ProjectController extends Controller
                 if ($startdate == $task['startdate'] && $enddate == $task['enddate']) {
                     return Base::retError('与原计划时间一致!');
                 }
+                if ($startdate == $enddate) {
+                    return Base::retError('开始时间与结束时间一致!');
+                }
                 $upArray['startdate'] = $startdate;
                 $upArray['enddate'] = $enddate;
                 $logArray[] = [

+ 1 - 1
app/Http/Controllers/IndexController.php

@@ -14,7 +14,7 @@ use Redirect;
 class IndexController extends Controller
 {
 
-    private $version = '1.4.4';
+    private $version = '1.4.5';
 
     public function __invoke($method, $action = '', $child = '')
     {

+ 12 - 2
resources/assets/js/main/components/project/gantt/index.vue

@@ -115,13 +115,13 @@
                 this.projectLabel.forEach((item) => {
                     item.taskLists.forEach((taskData) => {
                         let start = taskData.startdate || taskData.indate;
-                        let end = taskData.enddate || taskData.indate;
+                        let end = taskData.enddate || (taskData.indate + 86400);
                         if (end == start) {
                             end = Math.round(new Date($A.formatDate('Y-m-d 23:59:59', end)).getTime()/1000);
                         }
+                        end = Math.max(end, start + 60);
                         start*= 1000;
                         end*= 1000;
-                        if (end == start) end++;
                         //
                         let color = '#058ce4';
                         if (taskData.complete) {
@@ -159,6 +159,16 @@
                     });
                 });
                 //
+                if (Object.keys(this.rows).length == 0) {
+                    this.$Modal.warning({
+                        title: this.$L("温馨提示"),
+                        content: this.$L('任务列表为空,请先添加任务。'),
+                        onOk: () => {
+                            this.$emit('on-close');
+                        },
+                    });
+                }
+                //
                 this.config = Object.assign({
                     plugins: [ItemMovement({
                         moveable: 'x',

+ 10 - 7
resources/assets/js/main/components/project/task/detail/detail.vue

@@ -148,49 +148,52 @@
             }
         },
         created() {
+            let lastSecond = (e) => {
+                return new Date($A.formatDate("Y-m-d 23:59:29", Math.round(e / 1000)))
+            };
             this.timeOptions = {
                 shortcuts: [{
                     text: this.$L('今天'),
                     value() {
-                        return [new Date(), new Date()];
+                        return [new Date(), lastSecond(new Date().getTime())];
                     }
                 }, {
                     text: this.$L('明天'),
                     value() {
                         let e = new Date();
                         e.setDate(e.getDate() + 1);
-                        return [new Date(), e];
+                        return [new Date(), lastSecond(e.getTime())];
                     }
                 }, {
                     text: this.$L('本周'),
                     value() {
-                        return [$A.getData('今天', true), $A.getData('本周结束', true)];
+                        return [$A.getData('今天', true), lastSecond($A.getData('本周结束2', true))];
                     }
                 }, {
                     text: this.$L('本月'),
                     value() {
-                        return [$A.getData('今天', true), $A.getData('本月结束', true)];
+                        return [$A.getData('今天', true), lastSecond($A.getData('本月结束', true))];
                     }
                 }, {
                     text: this.$L('3天'),
                     value() {
                         let e = new Date();
                         e.setDate(e.getDate() + 3);
-                        return [new Date(), e];
+                        return [new Date(), lastSecond(e.getTime())];
                     }
                 }, {
                     text: this.$L('5天'),
                     value() {
                         let e = new Date();
                         e.setDate(e.getDate() + 5);
-                        return [new Date(), e];
+                        return [new Date(), lastSecond(e.getTime())];
                     }
                 }, {
                     text: this.$L('7天'),
                     value() {
                         let e = new Date();
                         e.setDate(e.getDate() + 7);
-                        return [new Date(), e];
+                        return [new Date(), lastSecond(e.getTime())];
                     }
                 }]
             };

+ 1 - 0
resources/lang/en/general.js

@@ -473,4 +473,5 @@ export default {
     "项目面板显示已完成的任务。": "The project panel displays the completed tasks.",
     "项目面板隐藏已完成的任务。": "The project panel hides completed tasks.",
     "确定要修改任务【%】的计划时间吗?<br/>开始时间:%<br/>结束时间:%": "Are you sure you want to change the scheduled time for task [%]? <br/> start time: %<br/> end time: %",
+    "任务列表为空,请先添加任务。": "The task list is empty, please add the task first.",
 }

+ 1 - 0
resources/lang/en/general.php

@@ -131,4 +131,5 @@ return [
     "知识库仅对作者开放!" => "Knowledge base for authors only!",
     "操作权限不足!" => "Not permissions!",
     "此操作仅限项目负责人!" => "This operation is only for the project leader!",
+    "开始时间与结束时间一致!" => "Start time and end time are the same!",
 ];