예제 #1
0
        public JsonResult GetVisit(DataTableParameters dataTableParameters, string from)
        {
            VIST_CONTACTOR vit = new VIST_CONTACTOR();
            EMPLOYEE       em  = new EMPLOYEE();

            var resultSet = new DataTableResultSet();

            resultSet.draw = dataTableParameters.Draw;
            var lst = vit.SelectPaging(from, dataTableParameters.Start + 1,
                                       dataTableParameters.Start + dataTableParameters.Length + 1);

            resultSet.recordsTotal = resultSet.recordsFiltered = em.GetCount();

            foreach (var i in lst)
            {
                var columns = new List <string>();
                var tar     = i.tar == null ? 0 : i.tar;
                var Ratio   = tar == 0 ? 0 : Math.Round(Convert.ToDouble(i.result) / i.tar * 100, 2, MidpointRounding.ToEven).ToString();
                columns.Add("<a href='#' class='emp' data-emid='" + i.EMP_ID + "'>" + i.EMP_ID + "</a>");
                columns.Add(i.EMP_NAME.Trim());
                columns.Add(tar.ToString());
                columns.Add(i.result.ToString());
                columns.Add(i.dir.ToString());
                columns.Add(i.ca.ToString());
                columns.Add(i.email.ToString());
                columns.Add(Ratio.ToString());
                columns.Add(i.EMP_DEPT == null ? "" : i.EMP_DEPT.Trim());
                resultSet.data.Add(columns);
            }
            return(Json(resultSet));
        }
예제 #2
0
        public JsonResult Delete(string ID)
        {
            VIST_CONTACTOR vc     = new VIST_CONTACTOR();
            var            result = vc.Delete(ID);

            return(Json(result));
        }
예제 #3
0
        public JsonResult GetHistory(string EMP_ID, string FROM, string TO)
        {
            VIST_CONTACTOR vc  = new VIST_CONTACTOR();
            var            lst = vc.Select(EMP_ID, FROM, TO);

            return(Json(lst));
        }
예제 #4
0
        public JsonResult GetVisitById(string ID)
        {
            VIST_CONTACTOR vit    = new VIST_CONTACTOR();
            var            result = vit.GetVisit(ID);

            return(Json(result));
        }
예제 #5
0
        public JsonResult GetVisit(DataTableParameters dataTableParameters, string from, string to, string cus_id, string emp_id)
        {
            VIST_CONTACTOR vit = new VIST_CONTACTOR();

            var resultSet = new DataTableResultSet();

            resultSet.draw = dataTableParameters.Draw;
            var lst = vit.GetVisit(from, to, cus_id, emp_id, dataTableParameters.Start + 1,
                                   dataTableParameters.Start + dataTableParameters.Length + 1);

            resultSet.recordsTotal = resultSet.recordsFiltered = vit.GetCountVisit(from, to, cus_id, emp_id);

            foreach (var i in lst)
            {
                var columns = new List <string>();
                columns.Add("<input type='checkbox' class='ckb' id='" + i.ID + "' data-emp='" + i.EMP_ID + "' />");
                columns.Add(i.CONTACT_DATE.ToShortDateString());
                columns.Add(i.CUSTOMER_ID.ToString());
                columns.Add(i.CUS_NAME.ToString());
                columns.Add(i.CUST_VIST_TYPE == null ? "" : i.CUST_VIST_TYPE);
                columns.Add(i.CUST_VIST_PURPOSE == null ? "" : i.CUST_VIST_PURPOSE);
                columns.Add(i.VIST_REMARK == null ? "" : i.VIST_REMARK);
                columns.Add(i.EMP_NAME == null? "":i.EMP_NAME);

                resultSet.data.Add(columns);
            }
            return(Json(resultSet));
        }
예제 #6
0
        public ActionResult Export(string month)
        {
            VIST_CONTACTOR vit = new VIST_CONTACTOR();
            EMPLOYEE       em  = new EMPLOYEE();
            var            lst = vit.SelectPaging(month, 0, 1000);

            DataTable dtb = new DataTable();

            dtb.Clear();

            dtb.Columns.Add("EMP_ID");
            dtb.Columns.Add("NAME");
            dtb.Columns.Add("TARGET");
            dtb.Columns.Add("VISITED");
            dtb.Columns.Add("DIRECT");
            dtb.Columns.Add("CALL");
            dtb.Columns.Add("EMAIL");

            dtb.Columns.Add("RATIO");
            dtb.Columns.Add("TEAM");

            foreach (var i in lst)
            {
                DataRow r       = dtb.NewRow();
                var     columns = new List <string>();
                var     tar     = i.tar == null ? 0 : i.tar;
                var     Ratio   = tar == 0 ? 0 : (Convert.ToDouble(i.result) / i.tar) * 100;

                r["EMP_ID"]  = i.EMP_ID;
                r["NAME"]    = i.EMP_NAME;
                r["TARGET"]  = i.tar;
                r["VISITED"] = i.result;
                r["DIRECT"]  = i.dir;
                r["CALL"]    = i.ca;
                r["EMAIL"]   = i.email;
                r["RATIO"]   = Ratio;
                r["TEAM"]    = i.EMP_DEPT;
                dtb.Rows.Add(r);
            }
            var fileName = DateTime.Now.ToString("yyyyMMddHHmmss");
            // Gọi lại hàm để tạo file excel
            var stream = CreateExcelFile(dtb);
            // Tạo buffer memory strean để hứng file excel
            var buffer = stream as MemoryStream;

            // Đây là content Type dành cho file excel, còn rất nhiều content-type khác nhưng cái này mình thấy okay nhất
            Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
            // Dòng này rất quan trọng, vì chạy trên firefox hay IE thì dòng này sẽ hiện Save As dialog cho người dùng chọn thư mục để lưu
            // File name của Excel này là ExcelDemo
            Response.AddHeader("Content-Disposition", "attachment; filename=" + fileName + ".xlsx");
            // Lưu file excel của chúng ta như 1 mảng byte để trả về response
            Response.BinaryWrite(buffer.ToArray());
            // Send tất cả ouput bytes về phía clients
            Response.Flush();
            Response.End();
            return(RedirectToAction("Home"));
        }
예제 #7
0
        public JsonResult InsertUpdateVisit(VIST_CONTACTOR VISIT, int ROLE)
        {
            var result = 0;

            VISIT.CUSTOMER_ID = VISIT.CUSTOMER_ID.ToUpper();
            if (!string.IsNullOrWhiteSpace(VISIT.CUSTOMER_ID))
            {
                if (string.IsNullOrEmpty(VISIT.CUST_CONTACTOR))
                {
                    return(Json(-1));
                }
                if (string.IsNullOrWhiteSpace(VISIT.ID))
                {
                    result = VISIT.Insert(VISIT.EMP_ID, VISIT.CUSTOMER_ID, VISIT.CUST_CONTACTOR, VISIT.CONTACT_DATE, VISIT.CUST_VIST_TYPE, VISIT.CUST_VIST_PURPOSE, VISIT.VIST_REMARK);
                }
                else
                {
                    result = VISIT.Update(VISIT.EMP_ID, VISIT.CUSTOMER_ID, VISIT.CUST_CONTACTOR, VISIT.CONTACT_DATE, VISIT.CUST_VIST_TYPE, VISIT.CUST_VIST_PURPOSE, VISIT.VIST_REMARK, VISIT.ID);
                }
            }
            return(Json(result));
        }
예제 #8
0
        public ActionResult Export(string from, string to, string cus_id, string emp)
        {
            VIST_CONTACTOR vc       = new VIST_CONTACTOR();
            var            fileName = DateTime.Now.ToString("yyyyMMddHHmmss");
            var            list     = vc.Export(from, to, cus_id, emp);

            // Gọi lại hàm để tạo file excel
            var stream = CreateExcelFile(list);
            // Tạo buffer memory strean để hứng file excel
            var buffer = stream as MemoryStream;

            // Đây là content Type dành cho file excel, còn rất nhiều content-type khác nhưng cái này mình thấy okay nhất
            Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
            // Dòng này rất quan trọng, vì chạy trên firefox hay IE thì dòng này sẽ hiện Save As dialog cho người dùng chọn thư mục để lưu
            // File name của Excel này là ExcelDemo
            Response.AddHeader("Content-Disposition", "attachment; filename=" + fileName + ".xlsx");
            // Lưu file excel của chúng ta như 1 mảng byte để trả về response
            Response.BinaryWrite(buffer.ToArray());
            // Send tất cả ouput bytes về phía clients
            Response.Flush();
            Response.End();
            return(RedirectToAction("Visit"));
        }