public ActionResult Delete(_PreCommission model) { int month = model.StartDate.Month; CH.Delete <PreCommission>(model.ID); var list = Finance_Logical._PreCommissionBLL.GetPreCommission(model.StartDate.Year, month); var data = list.OrderBy(p => p.TargetNameEN).ToList(); return(View(new GridModel(data))); }
public static _PreCommission GetIncome(int month, string sale, int projectid) { var year = DateTime.Now.Year; var deals = from d in CH.DB.Deals.Where(o => o.ProjectID == projectid && o.Abandoned == false && o.Income > 0 && o.ActualPaymentDate.Value.Month == month && o.ActualPaymentDate.Value.Year == year && o.Sales == sale) select d; var username = sale; var emps = CH.DB.EmployeeRoles.Where(w => w.AccountName == username); var displayname = emps.Select(s => s.AccountNameCN).FirstOrDefault(); var roleid = emps.Select(s => s.RoleID).FirstOrDefault(); var projects = from p in deals group p by new { p.Project.ProjectCode } into grp select new { projectcode = grp.Key.ProjectCode }; var proname = ""; foreach (var name in projects) { proname = proname + name.projectcode + ","; } proname = proname.TrimEnd(','); string inout = "海外"; if (roleid != null) { var name = CH.GetDataById <Role>(roleid).Name; if (name.Contains("国内")) { inout = "国内"; } } decimal standard = 3000; var lps = new _PreCommission() { RoleLevel = 1, ID = 0, //ProjectNames = proname, Income = deals.Sum(s => (decimal?)s.Income), TargetNameEN = sale, TargetNameCN = displayname, InOut = inout, DelegateLessIncome = inout == "海外" ? 0 :deals.Where(w => w.Poll > 0 && w.Income / w.Poll < standard).Sum(s => (decimal?)s.Income), DelegateMoreCount = inout == "海外" ? 0 : deals.Where(w => w.Poll > 0 && w.Income / w.Poll > standard).Sum(s => (int?)s.Poll), DelegateMoreIncome = inout == "海外" ? 0 : deals.Where(w => w.Poll > 0 && w.Income / w.Poll >= standard).Sum(s => (decimal?)s.Income), SponsorIncome = deals.Where(w => w.Poll == 0).Sum(s => (decimal?)s.Income), DelegateIncome = deals.Where(w => w.Poll > 0).Sum(s => (decimal?)s.Income) }; return(lps); }
public ActionResult Save(_PreCommission model) { PreCommission newmodel = new PreCommission(); newmodel = CH.GetDataById <PreCommission>(model.ID); //newmodel.StartDate = model.StartDate; //newmodel.EndDate = model.EndDate; newmodel.TargetNameEN = model.TargetNameEN; newmodel.TargetNameCN = model.TargetNameCN; newmodel.ProjectID = model.ProjectID; newmodel.InOut = model.InOut; newmodel.DelegateLessIncome = model.DelegateLessIncome; newmodel.DelegateMoreCount = model.DelegateMoreCount; newmodel.DelegateMoreIncome = model.DelegateMoreIncome; newmodel.SponsorIncome = model.SponsorIncome; newmodel.Income = model.Income; newmodel.CommissionRate = model.CommissionRate; newmodel.Commission = model.Commission; newmodel.Tax = model.Tax; newmodel.Bonus = model.Bonus; newmodel.ReturnIncome = model.ReturnIncome; newmodel.ReturnReason = model.ReturnReason; newmodel.ActualCommission = model.ActualCommission; newmodel.DelegateLessRate = model.DelegateLessRate; newmodel.DelegateLessCommission = model.DelegateLessCommission; newmodel.DelegateMoreRate = model.DelegateMoreRate; newmodel.DelegateMoreCommission = model.DelegateMoreCommission; newmodel.SponsorRate = model.SponsorRate; newmodel.SponsorCommission = model.SponsorCommission; newmodel.TotalCommission = model.TotalCommission; newmodel.DelegateIncome = model.DelegateIncome; newmodel.DelegateRate = model.DelegateRate; newmodel.DelegateCommission = model.DelegateCommission; CH.Edit <PreCommission>(newmodel); var list = Finance_Logical._PreCommissionBLL.GetPreCommission(model.StartDate.Year, model.StartDate.Month); var data = list.OrderBy(p => p.TargetNameEN).ToList(); return(View(new GridModel(data))); }
public ActionResult Insert(_PreCommission model) { PreCommission newmodel = new PreCommission(); newmodel.StartDate = model.StartDate; newmodel.EndDate = model.StartDate.AddMonths(1).AddDays(-1); newmodel.TargetNameEN = model.TargetNameEN; newmodel.TargetNameCN = model.TargetNameCN; newmodel.ProjectID = model.ProjectID; newmodel.InOut = model.InOut; newmodel.DelegateLessIncome = model.DelegateLessIncome; newmodel.DelegateMoreCount = model.DelegateMoreCount; newmodel.DelegateMoreIncome = model.DelegateMoreIncome; newmodel.SponsorIncome = model.SponsorIncome; newmodel.Income = model.Income; newmodel.CommissionRate = model.CommissionRate; newmodel.Commission = model.Commission; newmodel.Tax = model.Tax; newmodel.Bonus = model.Bonus; newmodel.ReturnIncome = model.ReturnIncome; newmodel.ReturnReason = model.ReturnReason; newmodel.ActualCommission = model.ActualCommission; newmodel.DelegateLessRate = model.DelegateLessRate; newmodel.DelegateLessCommission = model.DelegateLessCommission; newmodel.DelegateMoreRate = model.DelegateMoreRate; newmodel.DelegateMoreCommission = model.DelegateMoreCommission; newmodel.SponsorRate = model.SponsorRate; newmodel.SponsorCommission = model.SponsorCommission; newmodel.TotalCommission = model.TotalCommission; newmodel.DelegateIncome = model.DelegateIncome; newmodel.DelegateRate = model.DelegateRate; newmodel.DelegateCommission = model.DelegateCommission; newmodel.CommID = model.TargetNameEN + model.StartDate.Year.ToString() + model.StartDate.Month.ToString().PadLeft(2, '0'); CH.Create <PreCommission>(newmodel); var list = Finance_Logical._PreCommissionBLL.GetPreCommission(model.StartDate.Year, model.StartDate.Month); var data = list.OrderBy(p => p.TargetNameEN).ToList(); return(View(new GridModel(data))); }