/// <summary> /// 新增报备信息 /// </summary> /// <param name="customerreport">实体</param> /// <param name="cancellationToken">验证</param> /// <returns></returns> public async Task <CustomerReport> CreateAsync(CustomerReport customerreport, CancellationToken cancellationToken = default(CancellationToken)) { if (customerreport == null) { throw new ArgumentNullException(nameof(customerreport)); } Context.Add(customerreport); Context.Add(new CustomerFollowUp { Id = Guid.NewGuid().ToString(), CustomerId = customerreport.CustomerId, TypeId = CustomerFollowUpType.CustomerReported, UserId = customerreport.UserId, DepartmentId = customerreport.DepartmentId, FollowUpTime = customerreport.CreateTime, TrueName = customerreport.CustomerInfo.CustomerName, FollowUpContents = "带看报备", CustomerNo = customerreport.CustomerInfo.CustomerNo, IsRealFollow = false, CreateTime = DateTime.Now, CreateUser = customerreport.UserId }); await Context.SaveChangesAsync(cancellationToken); return(customerreport); }
public async Task <IActionResult> GetCustomersReport() { List <CustomerReport> customersReport = new List <CustomerReport>(); var connectionString = _configuration.GetConnectionString("WarehouseDB"); await using var conn = new NpgsqlConnection(connectionString); await conn.OpenAsync(); string sql = "SELECT c.customer_name, c.customer_address, c.customer_phone, p.part_name, s.shipment_qty, s.shipment_date FROM shipments s JOIN customers c ON s.shipment_id = c.customer_id JOIN parts p ON s.part_id = p.part_id;"; await using (var cmd = new NpgsqlCommand(sql, conn)) await using (var reader = await cmd.ExecuteReaderAsync()) while (await reader.ReadAsync()) { var info = new CustomerReport(); info.CustomerName = reader["customer_name"].ToString(); info.CustomerAddress = reader["customer_address"].ToString(); info.CustomerPhone = reader["customer_phone"].ToString(); info.PartName = reader["part_name"].ToString(); info.ShipmentQty = Convert.ToInt32(reader["shipment_qty"]); info.ShipmentDate = Convert.ToDateTime(reader["shipment_date"]); customersReport.Add(info); } return(Ok(customersReport)); }
private void btnCusName_Click(object sender, EventArgs e) { CustomerReport objCus = new CustomerReport(); rptViewer objView = new rptViewer(); if (!string.IsNullOrEmpty(txtSearch.Text)) { objCus.SetParameterValue("@CustomerID", txtSearch.Text); CustomerBL objBL = new CustomerBL() { CustomerID = Convert.ToInt32(txtSearch.Text), }; var dt = objBL.SelectByCus(); if (dt != null) { objCus.SetDataSource(dt); objView.crptViewer.ReportSource = objCus; objView.WindowState = FormWindowState.Maximized; objView.ShowDialog(); } //crptViewerCus.ReportSource = objCus; else { MessageBox.Show("No Record Found"); } txtSearch.Clear(); } else { MessageBox.Show("Please Enter Enter ID"); } }
/// <summary> /// 删除报备 /// </summary> /// <param name="user">登陆用户基本信息</param> /// <param name="customerreport">报备实体</param> /// <param name="cancellationToken">验证</param> /// <returns></returns> public async Task DeleteAsync(SimpleUser user, CustomerReport customerreport, CancellationToken cancellationToken = default(CancellationToken)) { if (user == null) { throw new ArgumentNullException(nameof(user)); } if (customerreport == null) { throw new ArgumentNullException(nameof(customerreport)); } //删除基本信息 customerreport.DeleteTime = DateTime.Now; customerreport.DeleteUser = user.Id; customerreport.IsDeleted = true; Context.Attach(customerreport); var entry = Context.Entry(customerreport); entry.Property(x => x.IsDeleted).IsModified = true; entry.Property(x => x.DeleteUser).IsModified = true; entry.Property(x => x.DeleteTime).IsModified = true; try { await Context.SaveChangesAsync(cancellationToken); } catch (DbUpdateConcurrencyException) { throw; } }
//GET: api/Reports/M public string Get(string id) { Telerik.Reporting.Report report = null; switch (id) { case "L": { report = new LeadsReport(); break; } case "C": { report = new CustomerReport(); break; } case "A": { report = new AdminTeamMemberReport(); break; } } var path = CreatePath(id, report?.Name); CreatePdfFile(report, path.Item1); return(path.Item2); }
public void Will_be_able_to_save_and_retrieve_a_customer_dto() { var customerDto = new CustomerReport(Guid.NewGuid(), "Mark Nijhof"); _repository.Save(customerDto); var sut = _repository.GetByExample<CustomerReport>(new { Name = "Mark Nijhof" }).FirstOrDefault(); Assert.That(sut.Id, Is.EqualTo(customerDto.Id)); Assert.That(sut.Name, Is.EqualTo(customerDto.Name)); }
public void AddCustomer(CustomerReport customer) { if (!this.items.ContainsKey(customer.ID)) { this.items.Add(customer.ID, customer); } else { this.items[customer.ID] = customer; } }
/// <summary> /// 修改报备信息 /// </summary> /// <param name="customerreport"></param> /// <param name="cancellationToken"></param> /// <returns></returns> public async Task UpdateAsync(CustomerReport customerreport, CancellationToken cancellationToken = default(CancellationToken)) { if (customerreport == null) { throw new ArgumentNullException(nameof(customerreport)); } Context.Attach(customerreport); Context.Update(customerreport); try { await Context.SaveChangesAsync(cancellationToken); } catch (DbUpdateConcurrencyException) { } }
public ActionResult Add(CustomerReportViewModel customerReportViewModel) { if (ModelState.IsValid) { var customerReport = new CustomerReport(); customerReport.ReportId = customerReportViewModel.ReportId; customerReport.CustomerId = customerReportViewModel.CustomerId; customerReport.CubeName = customerReportViewModel.CubeName; customerReport.ServerName = customerReportViewModel.ServerName; customerReport.DBName = customerReportViewModel.DBName; customerReport.DBType = customerReportViewModel.DBType; customerReportRepository.Add(customerReport); return(RedirectToAction("Details", "Report", new { id = customerReportViewModel.ReportId })); } return(View(customerReportViewModel)); }
public static object Create(Type reportType) { switch (reportType.ToString()) { case "CustomerReport": var custRpt = new CustomerReport(); custRpt.Date = DateTime.Now; return(custRpt); default: case "OrdersReport": var ordsRpt = new OrdersReport(); ordsRpt.Date = DateTime.Now; return(ordsRpt); } }
public async Task <CustomerReport> GetCustomerReportByRetailIDBL(Guid CustomerID) { CustomerReport customerReport = new CustomerReport { CustomerID = CustomerID }; CustomerBL customerBL = new CustomerBL(); Customer customer = await customerBL.GetCustomerByCustomerIDBL(customerReport.CustomerID); customerReport.CustomerName = customer.CustomerName; OrderBL order = new OrderBL(); List <Order> orderList = await order.GetOrdersByCustomerIDBL(CustomerID); foreach (Order item in orderList) { customerReport.CustomerSalesCount++; customerReport.CustomerSalesAmount += item.OrderAmount; } return(customerReport); }
public JsonStandardResponse SaveCustomerReports(CustomerReport cp) { JsonStandardResponse result = null; try { WebClient client = new WebClient(); string serviceUrl = "https://acu.rafid.ae/staging/api/EGovt/saveCustomerReport"; NameValueCollection formData = new NameValueCollection(); formData["username"] = "******"; formData["password"] = "******"; formData["appApi"] = "ndc04i4uhYtWmUGHFw4GLwJn68QW5GWWXtVB9b5bGSpYMuW76lMjPpsViVXWr8qV"; formData["sessionId"] = GenerateNewSessionId(); formData["vehicleDetails"] = JsonConvert.SerializeObject(cp.vehicleDetails); formData["reportDetails"] = JsonConvert.SerializeObject(cp.reportDetails); formData["isPayNow"] = "0"; formData["images"] = "[]"; var serializer = new JavaScriptSerializer(); var data = client.UploadValues(serviceUrl, "POST", formData); UTF8Encoding encoding = new UTF8Encoding(); result = new JsonStandardResponse { status = "success", data = encoding.GetString(data, 0, data.Length), message = "" }; } catch (Exception ex) { result = new JsonStandardResponse { status = "error", data = "", message = ex.Message }; new BusinessLogic().CreateLog(1, ex.Message, ex.HResult.ToString(), "SaveCustomerReport/SaveCustomerReports"); } return(result); }
private CustomerReport SetLastAndNextAppointment(List <CustomerReport> data, CustomerReport report) { var pastAppts = new List <DateTime>(); // appointments before now var upcomingAppts = new List <DateTime>(); // appointments after now // splits the reports by if they're before or after now foreach (var item in data) { if (item.LastAppointment < DateTime.UtcNow) { pastAppts.Add(item.LastAppointment.GetValueOrDefault()); } else { upcomingAppts.Add(item.LastAppointment.GetValueOrDefault()); } } report.LastAppointment = pastAppts.Count > 0 ? (DateTime?)pastAppts.Max() : null; // gets the most recent past appointment time report.NextAppointment = upcomingAppts.Count > 0 ? (DateTime?)upcomingAppts.Min() : null; // gets the next appointment time return(report); }
public async Task <List <CustomerReport> > GetCustomerReportsAsync(int userId) { var reports = await _sqlOrm.QueryListAsync <CustomerReport>(SelectSql.CustomerReport, new { userId }); var groups = reports.GroupBy(report => report.Id); // group the reports by customer Id var reportList = new List <CustomerReport>(); // Combine individual customers reports into 1 foreach (var group in groups) { var report = new CustomerReport { Id = group.Key, CustomerName = group.FirstOrDefault()?.CustomerName, AppointmentCount = group.Count(), }; report = SetLastAndNextAppointment(group.ToList(), report); reportList.Add(report); } return(reportList); }
public async Task <CustomerReport> GetCustomerReportByRetailIDBL(Guid CustomerID) { CustomerReport CustomerReport = new CustomerReport(); CustomerReport.CustomerID = CustomerID; Customer Customer = new Customer(); CustomerBL CustomerBL = new CustomerBL(); Customer = await CustomerBL.GetCustomerByCustomerIDBL(CustomerReport.CustomerID); CustomerReport.CustomerName = Customer.CustomerName; List <Order> orderList = new List <Order>(); OrderBL order = new OrderBL(); orderList = await order.GetOrdersByCustomerIDBL(CustomerID); foreach (Order item in orderList) { CustomerReport.CustomerSalesCount++; CustomerReport.CustomerSalesAmount += item.OrderAmount; } return(CustomerReport); }
public HomeController(IHostingEnvironment enviroment) { this._enviroment = enviroment; this._customerReport = new CustomerReport(this._enviroment); }
private void createNewTab(eTabType type) { switch (type) { case eTabType.MAIN_TAB: break; case eTabType.CUSTOMER_TAB: { //Hieu //Edit var newTab = isExitTabPage("Danh sách khách hàng"); if (newTab == null) { newTab = new TabPage("Danh sách khách hàng"); var customerList = new CustomerList(); customerList.Dock = DockStyle.Fill; newTab.Controls.Add(customerList); tabControl.TabPages.Add(newTab); } tabControl.SelectedTab = newTab; break; } case eTabType.VENDOR_TAB: { var newTab = isExitTabPage("Danh sách nhà cung cấp"); if (newTab == null) { newTab = new TabPage("Danh sách nhà cung cấp"); var vendorList = new VendorList(); vendorList.Dock = DockStyle.Fill; newTab.Controls.Add(vendorList); tabControl.TabPages.Add(newTab); } tabControl.SelectedTab = newTab; break; } case eTabType.ORDER_TAB: { var customerOrder = new CreateCustomerOrderForm(); var result = customerOrder.ShowDialog(); if (result == DialogResult.OK) { var newTab = isExitTabPage("Giao dịch"); if (newTab == null) { newTab = new TabPage("Giao dịch"); newTab.AutoScroll = true; var order = new OrderDetailForm(customerOrder.OrderId); order.Dock = DockStyle.Top; newTab.Controls.Add(order); tabControl.TabPages.Add(newTab); } tabControl.SelectedTab = newTab; } else if (result == DialogResult.Retry) { createNewTab(eTabType.CUSTOMER_TAB); } break; } case eTabType.CUSTOMER_ORDER_LIST_TAB: { var selectForm = new SelectOrderForm(); var result = selectForm.ShowDialog(); if (result == DialogResult.OK) { var text = "Đơn hàng " + selectForm.OrderKey; var newTab = isExitTabPage(text); if (newTab == null) { newTab = new TabPage(text); newTab.AutoScroll = true; var order = new CustomerOrderDetail(selectForm.OrderId); order.Dock = DockStyle.Fill; newTab.Controls.Add(order); tabControl.TabPages.Add(newTab); } tabControl.SelectedTab = newTab; } break; } case eTabType.STORE_TAB: { var text = "Danh sách kho hàng"; var newTab = isExitTabPage(text); if (newTab == null) { newTab = new TabPage(text); newTab.AutoScroll = true; var store = new InventoryList(); store.Dock = DockStyle.Fill; newTab.Controls.Add(store); tabControl.TabPages.Add(newTab); } tabControl.SelectedTab = newTab; break; } case eTabType.PRODUCT_TAB: { var text = "Danh sách mặt hàng"; var newTab = isExitTabPage(text); if (newTab == null) { newTab = new TabPage(text); newTab.AutoScroll = true; var product = new ProductList(); product.Dock = DockStyle.Fill; newTab.Controls.Add(product); this.newProductMenuItem.Click += product.showDialogAddProduct; //7ung tabControl.TabPages.Add(newTab); } tabControl.SelectedTab = newTab; break; } case eTabType.STAFF_TAB: { var text = "Danh sách nhân viên"; var newTab = isExitTabPage(text); if (newTab == null) { newTab = new TabPage(text); newTab.AutoScroll = true; var staff = new StaffList(); staff.Dock = DockStyle.Fill; newTab.Controls.Add(staff); tabControl.TabPages.Add(newTab); } tabControl.SelectedTab = newTab; break; } case eTabType.INOUT_INVENTORY: { var text = "Quản lý đơn hàng nhập xuất kho"; var newTab = isExitTabPage(text); if (newTab == null) { newTab = new TabPage(text); newTab.AutoScroll = true; var store = new InOutInventoryList(); store.Dock = DockStyle.Fill; newTab.Controls.Add(store); tabControl.TabPages.Add(newTab); } tabControl.SelectedTab = newTab; break; } case eTabType.INVENTORY_LIST: { var text = "Quản lý kho hàng"; var newTab = isExitTabPage(text); if (newTab == null) { newTab = new TabPage(text); newTab.AutoScroll = true; var store = new InventoryList(); store.Dock = DockStyle.Fill; newTab.Controls.Add(store); tabControl.TabPages.Add(newTab); } tabControl.SelectedTab = newTab; break; } case eTabType.VENDOR_ORDER_TAB: { var vendorOrder = new CreateVendorOrderForm(); var result = vendorOrder.ShowDialog(); if (result == DialogResult.OK) { var text = "Giao dịch đơn hàng " + vendorOrder.DocumentKey; var newTab = isExitTabPage(text); if (newTab == null) { newTab = new TabPage(text); newTab.AutoScroll = true; var order = new VendorOrderDetailForm(vendorOrder.OrderId); order.Dock = DockStyle.Top; newTab.Controls.Add(order); tabControl.TabPages.Add(newTab); } tabControl.SelectedTab = newTab; } else if (result == DialogResult.Retry) { createNewTab(eTabType.VENDOR_TAB); } break; } case eTabType.VENDOR_ORDER_LIST_TAB: { var selectForm = new SelectVendorOrderForm(); var result = selectForm.ShowDialog(); if (result == DialogResult.OK) { var text = "Đơn hàng " + selectForm.DocumentKey; var newTab = isExitTabPage(text); if (newTab == null) { newTab = new TabPage(text); newTab.AutoScroll = true; var order = new VendorOrderDetail(selectForm.OrderId); order.DocumentKey = selectForm.DocumentKey; order.Dock = DockStyle.Fill; newTab.Controls.Add(order); tabControl.TabPages.Add(newTab); } tabControl.SelectedTab = newTab; } break; } case eTabType.REVENUE_REPORT_TAB: { var text = "Báo cáo doanh thu"; var newTab = isExitTabPage(text); if (newTab == null) { newTab = new TabPage(text); newTab.AutoScroll = true; var report = new RevenueReport(); report.Dock = DockStyle.Fill; newTab.Controls.Add(report); tabControl.TabPages.Add(newTab); } tabControl.SelectedTab = newTab; break; } case eTabType.CUSTOMER_REPORT_TAB: { var text = "Báo cáo tình hình khách hàng"; var newTab = isExitTabPage(text); if (newTab == null) { newTab = new TabPage(text); newTab.AutoScroll = true; var report = new CustomerReport(); report.Dock = DockStyle.Top; newTab.Controls.Add(report); tabControl.TabPages.Add(newTab); } tabControl.SelectedTab = newTab; break; } case eTabType.CREATE_BUSINESS_REPORT_TAB: { var dialogCreate = new CreateReportForm(); var r = dialogCreate.ShowDialog(); if (r == DialogResult.OK) { var text = "Báo cáo chi phí bán hàng"; var newTab = isExitTabPage(text); if (newTab == null) { newTab = new TabPage(text); newTab.AutoScroll = true; var report = new CreateBusinessFee(dialogCreate.DocumentId, true); report.Dock = DockStyle.Top; newTab.Controls.Add(report); tabControl.TabPages.Add(newTab); } tabControl.SelectedTab = newTab; } break; } case eTabType.VIEW_BUSINESS_REPORT_TAB: { var text = "Xem cáo chi phí bán hàng"; var newTab = isExitTabPage(text); if (newTab == null) { newTab = new TabPage(text); newTab.AutoScroll = true; var report = new ViewBusinessFee(); report.Dock = DockStyle.Top; newTab.Controls.Add(report); tabControl.TabPages.Add(newTab); } tabControl.SelectedTab = newTab; break; } case eTabType.INVENTORY_REPORT_TAB: { var text = "Báo cáo tồn kho"; var newTab = isExitTabPage(text); if (newTab == null) { newTab = new TabPage(text); newTab.AutoScroll = true; var report = new InventoryReport(); report.Dock = DockStyle.Fill; newTab.Controls.Add(report); tabControl.TabPages.Add(newTab); } tabControl.SelectedTab = newTab; break; } default: break; } }
private void LoadTable() { if (!String.IsNullOrEmpty(Table)) { switch (Table) { case "Product": List <ProductModel> productModels = new List <ProductModel>(); ProductReport rpt = new ProductReport(); var data = from p in db.Products select new ProductModel { Sku = p.Sku, DisplayName = p.DisplayName, Quantity = (int)p.Quantity, PurcharePrice = p.PurchasePrice, Price = (double)p.Price, Unit = p.Unit.DisplayName, Brand = p.Brand.DisplayName, Category = p.Category.DisplayName, Supplier = p.Suplier.DisplayName, Status = p.Quantity == 0 ?"Hết hàng":"Còn hàng" }; rpt.SetDataSource(data); crvReport.ReportSource = rpt; crvReport.Show(); break; case "Categories": List <CategoriesModel> categoriesModels = new List <CategoriesModel>(); CategoriesReport rpc = new CategoriesReport(); var datac = from c in db.Categories select new CategoriesModel { Id = c.Id, DisplayName = c.DisplayName, Status = c.Status ? "Kích hoạt" : "Ẩn" }; rpc.SetDataSource(datac); crvReport.ReportSource = rpc; crvReport.Show(); break; case "Brand": List <BrandModel> brandModels = new List <BrandModel>(); BrandReport rpb = new BrandReport(); var datab = from b in db.Brands select new BrandModel { Id = b.Id, DisplayName = b.DisplayName, Status = b.Status ? "Kích hoạt" : "Ẩn" }; rpb.SetDataSource(datab); crvReport.ReportSource = rpb; crvReport.Show(); break; case "Supplier": List <SuplierModel> suplierModels = new List <SuplierModel>(); SuplierReport rps = new SuplierReport(); var datas = from s in db.Supliers select new SuplierModel { DisplayName = s.DisplayName, TaxCode = s.TaxCode, AccountNumber = s.AcountNumber, Phone = s.Phone, Email = s.Email, Adress = s.Adress, ContractDate = s.ContractDate, Status = s.Status ? "Kích hoạt" : "Ẩn" }; rps.SetDataSource(datas); crvReport.ReportSource = rps; crvReport.Show(); break; case "Customer": List <CustomerModel> customerModels = new List <CustomerModel>(); CustomerReport rpcu = new CustomerReport(); var datacu = from cu in db.Customers select new CustomerModel { DisplayName = cu.DisplayName, Phone = cu.Phone, Email = cu.Email, Adress = cu.Adress, ContractDate = (DateTime)cu.ContractDate, Status = cu.Status ? "Kích hoạt" : "Ẩn" }; rpcu.SetDataSource(datacu); crvReport.ReportSource = rpcu; crvReport.Show(); break; case "Input": InputReport rpi = new InputReport(); var datai = from i in db.InputDetails select new { Id = i.Input.Id, DisplayName = i.Input.DisplayName, InputDate = i.Input.InputDate, Status = i.Input.Status ? "Đã nhập" : "Chờ duyệt", ProductId1 = i.ProductId, Quantity1 = i.Quantity, Price1 = i.Price }; rpi.SetDataSource(datai); crvReport.ReportSource = rpi; crvReport.Show(); break; case "Output": break; default: MessageBox.Show("Vui lòng chọn 1 bảng"); break; } } else { MessageBox.Show("Lỗi thao tác", "Vui lòng chọn 1 bảng để in !", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }