0
最近我正在使用果園做一個網頁,並且我正嘗試使用orchard協作創建一個Q & A頁面。我知道通過使用票務儀表板,我可以很容易地得出一個結果,如this。根據項目的不同,將問題分爲不同的組。但是現在我想讓管理員在點擊票據儀表板時看到每個項目的project-dashboard。任何人都可以讓我知道如何做到這一點?非常感謝!果園合作
最近我正在使用果園做一個網頁,並且我正嘗試使用orchard協作創建一個Q & A頁面。我知道通過使用票務儀表板,我可以很容易地得出一個結果,如this。根據項目的不同,將問題分爲不同的組。但是現在我想讓管理員在點擊票據儀表板時看到每個項目的project-dashboard。任何人都可以讓我知道如何做到這一點?非常感謝!果園合作
有一些選項可以幫助你。我想到的其中一個就是這個。
爲「DisplayTicketDashboard」之類的新DisplayType自定義ProjectDriver。如果您查看ProjectDriver.Display方法,則會爲Detail顯示類型呈現ProjectDetail(其中包含Portlet)。您可以在那裏爲新的DisplayType添加新的「case語句」。對於新的顯示類型,您可以表示票據儀表板。是這樣的:
case "ProjectTicketDashboard":
// Query the counts of the whole tickets in the system based on stateId
dynamic state = new JObject();
var contentQuery = this.services.ContentManager.HqlQuery().ForVersion(VersionOptions.Published);
state.ContentTypes = "Ticket";
contentQuery = this.projectionManagerWithDynamicSort.ApplyFilter(contentQuery, "Content", "ContentTypes", state);
state.Project_Id = part.Id;
contentQuery = this.projectionManagerWithDynamicSort.ApplyFilter(contentQuery, "AttachToProjectFilter", "Id", state);
var ticketCountsByStateIds = groupQuery.GetCount(contentQuery, "TicketPartRecord", "StatusRecord.Id");
model.AllTickets = new Collection<dynamic>();
CRMHelper.AddStatusGroupRecordsToModel(statusRecords, ticketCountsByStateIds, model.AllTickets);
state.MaxDueDate = DateTime.UtcNow.Date;
contentQuery = this.projectionManagerWithDynamicSort.ApplyFilter(contentQuery, TicketFieldsFilter.CategoryName, TicketFieldsFilter.TicketDueDateType, state);
model.AllOverrudeItemsCount = contentQuery.Count();
return ContentShape("Parts_Project_Dashboard",
() => shapeHelper.Parts_Project_Dashboard(
Model: model
));
讓我知道,如果你有任何問題。 Siyamand
我會試試!謝謝你的幫助〜 –
嗨Siyamand,我有另一個問題要問你。現在,當我使用管理員帳戶查看票據儀表板時,我會看到兩張票據摘要之一是「您的票據摘要」和另一張「所有票據摘要」,是否能夠在儀表板上添加更多摘要? –
嗨奧斯汀,有幾種方法可以這樣做。 [Orchard Collaboration](http://orchardcollaboration.com)使用一個小部件來表示Ticket Summaries(用戶和管理員)。主要邏輯在Modules/Orchard.CRM.Core/Drivers中的DashboardDriver中。你需要創建一個類似於那個的新Widget。 DashboardDriver代表登錄用戶的門票以及所有門票的摘要。在新的小部件中,您只能表示用戶的摘要故障單。新窗口小部件必須具有UserId屬性並表示該用戶的票證摘要,而不是登錄的用戶。 – siyamand