私は単純なタスクスケジューリングアプリケーションを書いています。現在、いくつかのUIで立ち往生しています。私は、当日のユーザに割り当てられたタスクはほとんどありません。タスクは午前10時から午後1時、午後2時から午後4時に割り当てられます。私が達成したい何C#データを繰り返し、一定の時間間隔で要素を挿入する
私は現在、その時間帯とに行くための新しいタスクのために使用可能なタイムスロットのためのdiv内のすべてのタスクを表示することができ。
され、タスクを繰り返し処理に基づいてブロックを追加開始時刻と終了時刻。
** DOMを編集して、私が何をしたかを示しました。SAMPLE TIME DISPLAYED。以上を踏まえ
@helper Tasks(int _UserId, DateTime _CurrentDay)
{
//Get all Tasks assigned to the user for _CurrentDay
var _Tasks = Model.Tasks
.Where(t => t.UserId == _UserId
&& Convert.ToDateTime(t.dtTaskEnd).Date == _CurrentDay.Date);
//Total assigned task hours
int _TotalTaskHrs = 0;
//Loop through all the tasks
foreach (var _Task in _Tasks)
{
//Current Task Hours
int _TaskHrs = (Convert.ToDateTime(_Task.dtTaskEnd).Hour - Convert.ToDateTime(_Task.dtTaskStart).Hour);
<div class="job-task" data-hours="@_TaskHrs">
<h2>@_Task.TaskName</h2>
<p>@_Task.TaskCode</p>
<div class="clearfix"></div>
<p>@_Task.Notes</p>
<!--edit btn-->
<span class="job-task-edit" onclick="_ism.tasks.edit(@_Task.TaskId)">
<i class="fa fa-edit"></i>
</span>
</div>
_TotalTaskHrs += _TaskHrs;
}
//Unassigned Hours
int _EmptyHrs = 8 - _TotalTaskHrs;
if (_EmptyHrs > 0)
{
<div class="job-task job-task-empty" data-hours="@_EmptyHrs">
<!--Add btn-->
<span class="job-task-edit" onclick="_ism.tasks.add(this,@_UserId)">
<i class="fa fa-plus-square"></i>
</span>
</div>
}
}
第一ブロックは10:00に開始し、だから、午後1時00分
で終了する必要があり、ブロックは次のようになります。
[空09:00 - 10:00] [TST2 10:00 - 01:00] [空01:00 - 02:00] [TST124 02:00 - 04:00] [空04:00 - 0500]
すべてのポインタが役立ちます。
よろしく
ありがとう。モデルは割り当てられたタスクしか持っていないので、それに基づいて空のものを見つけなければなりません。私はいくつかのことを試してから、if文を外に移動しました。ヒントをお寄せいただきありがとうございます。毎時間繰り返して、タスクが割り当てられているかどうかを確認します。 – amyth91