/// <summary> /// Export Project Detail CSV /// </summary> /// <param name="start_date"></param> /// <param name="end_date"></param> /// <param name="project_name"></param> /// <param name="customer_id"></param> /// <param name="tag_id"></param> /// <param name="eff_type"></param> /// <param name="sort_colum"></param> /// <param name="sort_type"></param> /// <param name="DelFlag"></param> /// <param name="status"></param> /// <param name="TAB_ID"></param> /// <returns></returns> public ActionResult ExportProjectDetailCsv(int project_id, int group_id, int selected_year, int selected_month, int sortCol = 0, string sortDir = "asc", string TAB_ID = "") { var condition = new SalesProjectDetailCondition() { CompanyCode = GetLoginUser().CompanyCode, GroupId = group_id, ProjectId = project_id, SelectedYear = selected_year, SelectedMonth = selected_month }; DataTablesModel model = new DataTablesModel { sEcho = "1", iColumns = 6, sColumns = "user_sys_id,user_sys_id,user_name,sales_amount,cost,profit", iDisplayStart = 0, iDisplayLength = int.MaxValue, iSortCol_0 = sortCol, sSortDir_0 = sortDir, iSortingCols = 1 }; var listGroupDetail = new List <PersonalSalesInfo>(); if (Session[Constant.SESSION_SEARCH_RESULT + TAB_ID] != null) { listGroupDetail = Session[Constant.SESSION_SEARCH_RESULT + TAB_ID] as List <PersonalSalesInfo>; } else { listGroupDetail = this.mainService.GetListSalesProjectDetail(model, condition).Items; } var listExport = new List <PersonalSalesInfoExport>(); foreach (var t in listGroupDetail) { listExport.Add(new PersonalSalesInfoExport() { no = t.peta_rn, user_name = t.user_name, sales_amount = Utility.RoundNumber(t.sales_amount, GetLoginUser().DecimalCalculationType, false).ToString("#,##0"), cost = Utility.RoundNumber(t.cost, GetLoginUser().DecimalCalculationType, false).ToString("#,##0"), profit = Utility.RoundNumber(t.profit, GetLoginUser().DecimalCalculationType, false).ToString("#,##0"), }); } List <string> columns = new List <string>() { "No.", "ユーザー名", "売上", "原価", "利益" }; DataTable dataTable = Utility.ToDataTableT(listExport, columns.ToArray()); Utility.ExportToCsvData(this, dataTable, "SalesProjectDetail_" + Utility.GetCurrentDateTime().ToString("yyyyMMdd") + ".csv"); return(new EmptyResult()); }
public PMS09001SalesProjectDetailViewModel() { GroupName = ""; ProjectName = ""; ProjectRange = ""; TotalSales = ""; TotalCost = ""; TotalProfit = ""; Condition = new SalesProjectDetailCondition(); BasicInfo = new SalesProjectDetailBasicInfo(); }
/// <summary> /// Using Ajax to search data table Sales Project Detail by User /// </summary> /// <param name="model"></param> /// <param name="condition"></param> /// <param name="TAB_ID"></param> /// <returns></returns> public ActionResult SearchSalesProjectDetail(DataTablesModel model, SalesProjectDetailCondition condition, string TAB_ID) { if (Request.IsAjaxRequest() && ModelState.IsValid) { condition.CompanyCode = GetLoginUser().CompanyCode; var pageInfo = this.mainService.GetListSalesProjectDetail(model, condition); Session[Constant.SESSION_SEARCH_RESULT + TAB_ID] = pageInfo.Items; decimal totalSales = 0; decimal totalCost = 0; decimal totalProfit = 0; foreach (var data in pageInfo.Items) { totalSales += data.sales_amount; totalCost += data.cost; totalProfit += data.profit; } var result = Json( new { sEcho = model.sEcho, iTotalRecords = pageInfo.TotalItems, iTotalDisplayRecords = pageInfo.TotalItems, aaData = (from t in pageInfo.Items select new object[] { t.user_sys_id, t.peta_rn, HttpUtility.HtmlEncode(t.user_name), t.sales_amount.ToString("#,##0") + "円", t.cost.ToString("#,##0") + "円", t.profit.ToString("#,##0") + "円", }).ToList(), totalSales = totalSales.ToString("#,##0") + "円", totalCost = totalCost.ToString("#,##0") + "円", totalProfit = totalProfit.ToString("#,##0") + "円" }, JsonRequestBehavior.AllowGet); return(result); } return(new EmptyResult()); }
/// <summary> /// Sales Group Detail By Project /// </summary> /// <param name="group_id"></param> /// <param name="selected_year"></param> /// <param name="selected_month"></param> /// <returns></returns> public ActionResult SalesProjectDetail(int group_id = -1, int project_id = -1, int selected_year = -1, int selected_month = -1) { if (!this.IsInFunctionList(Constant.FunctionID.SalesGroup) && !this.IsInFunctionList(Constant.FunctionID.SalesGroup_Admin)) { return(this.RedirectToAction("Index", "ErrorAuthent")); } var condition = new SalesProjectDetailCondition() { ProjectId = project_id, GroupId = group_id, SelectedMonth = selected_month, SelectedYear = selected_year, CompanyCode = GetLoginUser().CompanyCode }; var model = new PMS09001SalesProjectDetailViewModel { BasicInfo = this.mainService.GetProjectDetailBasicInfo(group_id, project_id), Condition = condition }; return(this.View("SalesProjectDetail", model)); }
/// <summary> /// Sales list by project detail /// </summary> /// <param name="model"></param> /// <param name="condition"></param> /// <returns></returns> public PageInfo <PersonalSalesInfo> GetListSalesProjectDetail(DataTablesModel model, SalesProjectDetailCondition condition) { var pageInfo = this._repository.GetListSalesProjectDetail( model.iDisplayStart, model.iDisplayLength, model.sColumns, model.iSortCol_0, model.sSortDir_0, condition); return(pageInfo); }