Esempio n. 1
0
        public static Result UpdateKetLuan(string tuVanKhachHangGUID, string ketLuan)
        {
            Result     result = new Result();
            MMOverride db     = null;

            try
            {
                db = new MMOverride();
                string desc = string.Empty;
                using (TransactionScope t = new TransactionScope(TransactionScopeOption.RequiresNew))
                {
                    TuVanKhachHang ykkh = db.TuVanKhachHangs.SingleOrDefault <TuVanKhachHang>(s => s.TuVanKhachHangGUID.ToString() == tuVanKhachHangGUID);
                    if (ykkh != null)
                    {
                        ykkh.NguoiKetLuan = Guid.Parse(Global.UserGUID);
                        ykkh.KetLuan      = ketLuan;

                        //Tracking
                        desc += string.Format("- GUID: '{0}', Tên khách hàng: '{1}', Số điện thoại: '{2}', Địa chỉ: '{3}', Yêu cầu: '{4}', Nguồn: '{5}', Ghi chú: '{6}', Người kết luận: '{7}', Kết luận: '{8}'",
                                              ykkh.TuVanKhachHangGUID.ToString(), ykkh.TenKhachHang, ykkh.SoDienThoai, ykkh.DiaChi, ykkh.YeuCau, ykkh.Nguon, ykkh.Note, ykkh.NguoiKetLuan, ykkh.KetLuan);

                        Tracking tk = new Tracking();
                        tk.TrackingGUID = Guid.NewGuid();
                        tk.TrackingDate = DateTime.Now;
                        tk.DocStaffGUID = Guid.Parse(Global.UserGUID);
                        tk.ActionType   = (byte)ActionType.Edit;
                        tk.Action       = "Cập nhật kết luận tư vấn khách hàng";
                        tk.Description  = desc;
                        tk.TrackingType = (byte)TrackingType.None;
                        tk.ComputerName = Utility.GetDNSHostName();
                        db.Trackings.InsertOnSubmit(tk);

                        db.SubmitChanges();
                    }

                    t.Complete();
                }
            }
            catch (System.Data.SqlClient.SqlException se)
            {
                result.Error.Code        = (se.Message.IndexOf("Timeout expired") >= 0) ? ErrorCode.SQL_QUERY_TIMEOUT : ErrorCode.INVALID_SQL_STATEMENT;
                result.Error.Description = se.ToString();
            }
            catch (Exception e)
            {
                result.Error.Code        = ErrorCode.UNKNOWN_ERROR;
                result.Error.Description = e.ToString();
            }
            finally
            {
                if (db != null)
                {
                    db.Dispose();
                    db = null;
                }
            }

            return(result);
        }
Esempio n. 2
0
        public static Result CheckKhachHangExist(string tenKhachHang, string tuVanKhachHangGUID)
        {
            Result     result = new Result();
            MMOverride db     = null;

            try
            {
                db = new MMOverride();
                TuVanKhachHang ykkh = null;
                if (tuVanKhachHangGUID == null || tuVanKhachHangGUID == string.Empty)
                {
                    ykkh = db.TuVanKhachHangs.FirstOrDefault <TuVanKhachHang>(n => n.TenKhachHang.ToLower() == tenKhachHang.ToLower() &&
                                                                              n.ContactBy.Value.ToString() == Global.UserGUID && n.Status == (byte)Status.Actived);
                }
                else
                {
                    ykkh = db.TuVanKhachHangs.FirstOrDefault <TuVanKhachHang>(n => n.TenKhachHang.ToLower() == tenKhachHang.ToLower() &&
                                                                              n.ContactBy.Value.ToString() == Global.UserGUID && n.TuVanKhachHangGUID.ToString() != tuVanKhachHangGUID &&
                                                                              n.Status == (byte)Status.Actived);
                }

                if (ykkh == null)
                {
                    result.Error.Code = ErrorCode.NOT_EXIST;
                }
                else
                {
                    result.Error.Code = ErrorCode.EXIST;
                }
            }
            catch (System.Data.SqlClient.SqlException se)
            {
                result.Error.Code        = (se.Message.IndexOf("Timeout expired") >= 0) ? ErrorCode.SQL_QUERY_TIMEOUT : ErrorCode.INVALID_SQL_STATEMENT;
                result.Error.Description = se.ToString();
            }
            catch (Exception e)
            {
                result.Error.Code        = ErrorCode.UNKNOWN_ERROR;
                result.Error.Description = e.ToString();
            }
            finally
            {
                if (db != null)
                {
                    db.Dispose();
                    db = null;
                }
            }

            return(result);
        }
Esempio n. 3
0
        public static Result DeleteTuVanKhachHang(List <string> keys)
        {
            Result     result = new Result();
            MMOverride db     = null;

            try
            {
                db = new MMOverride();
                using (TransactionScope t = new TransactionScope(TransactionScopeOption.RequiresNew))
                {
                    string desc  = string.Empty;
                    int    index = 0;
                    foreach (string key in keys)
                    {
                        TuVanKhachHang s = db.TuVanKhachHangs.SingleOrDefault <TuVanKhachHang>(ss => ss.TuVanKhachHangGUID.ToString() == key);
                        if (s != null)
                        {
                            s.DeletedDate = DateTime.Now;
                            s.DeletedBy   = Guid.Parse(Global.UserGUID);
                            s.Status      = (byte)Status.Deactived;
                            desc         += string.Format("- GUID: '{0}', Tên khách hàng: '{1}', Số điện thoại: '{2}', Địa chỉ: '{3}', Yêu cầu: '{4}', Nguồn: '{5}', Ghi chú: '{6}', Người kết luận: '{7}', Kết luận: '{8}', Bác sĩ phụ trách: '{9}', Đã xong: '{10}', IN: '{11}', Số tổng đài: '{12}', Bán thẻ: '{13}'\n",
                                                          s.TuVanKhachHangGUID.ToString(), s.TenKhachHang, s.SoDienThoai, s.DiaChi, s.YeuCau, s.Nguon, s.Note, s.NguoiKetLuan, s.KetLuan, s.BacSiPhuTrachGUID, s.DaXong, s.IsIN, s.SoTongDai, s.BanThe);
                        }

                        index++;
                    }

                    //Tracking
                    desc = desc.Substring(0, desc.Length - 1);
                    Tracking tk = new Tracking();
                    tk.TrackingGUID = Guid.NewGuid();
                    tk.TrackingDate = DateTime.Now;
                    tk.DocStaffGUID = Guid.Parse(Global.UserGUID);
                    tk.ActionType   = (byte)ActionType.Delete;
                    tk.Action       = "Xóa tư vấn khách hàng";
                    tk.Description  = desc;
                    tk.TrackingType = (byte)TrackingType.None;
                    tk.ComputerName = Utility.GetDNSHostName();
                    db.Trackings.InsertOnSubmit(tk);

                    db.SubmitChanges();
                    t.Complete();
                }
            }
            catch (System.Data.SqlClient.SqlException se)
            {
                result.Error.Code        = (se.Message.IndexOf("Timeout expired") >= 0) ? ErrorCode.SQL_QUERY_TIMEOUT : ErrorCode.INVALID_SQL_STATEMENT;
                result.Error.Description = se.ToString();
            }
            catch (Exception e)
            {
                result.Error.Code        = ErrorCode.UNKNOWN_ERROR;
                result.Error.Description = e.ToString();
            }
            finally
            {
                if (db != null)
                {
                    db.Dispose();
                    db = null;
                }
            }

            return(result);
        }
Esempio n. 4
0
        public static Result InsertTuVanKhachHang(TuVanKhachHang tuVanKhachHang)
        {
            Result     result = new Result();
            MMOverride db     = null;

            try
            {
                db = new MMOverride();
                string desc = string.Empty;
                using (TransactionScope t = new TransactionScope(TransactionScopeOption.RequiresNew))
                {
                    //Insert
                    if (tuVanKhachHang.TuVanKhachHangGUID == null || tuVanKhachHang.TuVanKhachHangGUID == Guid.Empty)
                    {
                        tuVanKhachHang.TuVanKhachHangGUID = Guid.NewGuid();
                        db.TuVanKhachHangs.InsertOnSubmit(tuVanKhachHang);
                        db.SubmitChanges();

                        //Tracking
                        desc += string.Format("- GUID: '{0}', Tên khách hàng: '{1}', Số điện thoại: '{2}', Địa chỉ: '{3}', Yêu cầu: '{4}', Nguồn: '{5}', Ghi chú: '{6}', Người kết luận: '{7}', Kết luận: '{8}', Bác sĩ phụ trách: '{9}', Đã xong: '{10}', IN: '{11}', Số tổng đài: '{12}', Bán thẻ: '{13}'",
                                              tuVanKhachHang.TuVanKhachHangGUID.ToString(), tuVanKhachHang.TenKhachHang, tuVanKhachHang.SoDienThoai, tuVanKhachHang.DiaChi,
                                              tuVanKhachHang.YeuCau, tuVanKhachHang.Nguon, tuVanKhachHang.Note, tuVanKhachHang.NguoiKetLuan, tuVanKhachHang.KetLuan,
                                              tuVanKhachHang.BacSiPhuTrachGUID, tuVanKhachHang.DaXong, tuVanKhachHang.IsIN, tuVanKhachHang.SoTongDai, tuVanKhachHang.BanThe);

                        Tracking tk = new Tracking();
                        tk.TrackingGUID = Guid.NewGuid();
                        tk.TrackingDate = DateTime.Now;
                        tk.DocStaffGUID = Guid.Parse(Global.UserGUID);
                        tk.ActionType   = (byte)ActionType.Add;
                        tk.Action       = "Thêm tư vấn khách hàng";
                        tk.Description  = desc;
                        tk.TrackingType = (byte)TrackingType.None;
                        tk.ComputerName = Utility.GetDNSHostName();
                        db.Trackings.InsertOnSubmit(tk);

                        db.SubmitChanges();
                    }
                    else //Update
                    {
                        TuVanKhachHang ykkh = db.TuVanKhachHangs.SingleOrDefault <TuVanKhachHang>(s => s.TuVanKhachHangGUID == tuVanKhachHang.TuVanKhachHangGUID);
                        if (ykkh != null)
                        {
                            ykkh.PatientGUID       = tuVanKhachHang.PatientGUID;
                            ykkh.TenCongTy         = tuVanKhachHang.TenCongTy;
                            ykkh.MaKhachHang       = tuVanKhachHang.MaKhachHang;
                            ykkh.MucDich           = tuVanKhachHang.MucDich;
                            ykkh.TenKhachHang      = tuVanKhachHang.TenKhachHang;
                            ykkh.SoDienThoai       = tuVanKhachHang.SoDienThoai;
                            ykkh.DiaChi            = tuVanKhachHang.DiaChi;
                            ykkh.YeuCau            = tuVanKhachHang.YeuCau;
                            ykkh.Nguon             = tuVanKhachHang.Nguon;
                            ykkh.Note              = tuVanKhachHang.Note;
                            ykkh.ContactDate       = tuVanKhachHang.ContactDate;
                            ykkh.ContactBy         = tuVanKhachHang.ContactBy;
                            ykkh.UpdatedDate       = tuVanKhachHang.UpdatedDate;
                            ykkh.UpdatedBy         = tuVanKhachHang.UpdatedBy;
                            ykkh.DeletedDate       = tuVanKhachHang.DeletedDate;
                            ykkh.DeletedBy         = tuVanKhachHang.DeletedBy;
                            ykkh.Status            = tuVanKhachHang.Status;
                            ykkh.NguoiKetLuan      = tuVanKhachHang.NguoiKetLuan;
                            ykkh.KetLuan           = tuVanKhachHang.KetLuan;
                            ykkh.BacSiPhuTrachGUID = tuVanKhachHang.BacSiPhuTrachGUID;
                            ykkh.DaXong            = tuVanKhachHang.DaXong;
                            ykkh.BanThe            = tuVanKhachHang.BanThe;
                            ykkh.IsIN              = tuVanKhachHang.IsIN;
                            ykkh.SoTongDai         = tuVanKhachHang.SoTongDai;

                            //Tracking
                            desc += string.Format("- GUID: '{0}', Tên khách hàng: '{1}', Số điện thoại: '{2}', Địa chỉ: '{3}', Yêu cầu: '{4}', Nguồn: '{5}', Ghi chú: '{6}', Người kết luận: '{7}', Kết luận: '{8}', Bác sĩ phụ trách: '{9}', Đã xong: '{10}', IN: '{11}', Số tổng đài: '{12}', Bán thẻ: '{13}'",
                                                  ykkh.TuVanKhachHangGUID.ToString(), ykkh.TenKhachHang, ykkh.SoDienThoai, ykkh.DiaChi, ykkh.YeuCau, ykkh.Nguon, ykkh.Note, ykkh.NguoiKetLuan,
                                                  ykkh.KetLuan, ykkh.BacSiPhuTrachGUID, ykkh.DaXong, ykkh.IsIN, ykkh.SoTongDai, ykkh.BanThe);

                            Tracking tk = new Tracking();
                            tk.TrackingGUID = Guid.NewGuid();
                            tk.TrackingDate = DateTime.Now;
                            tk.DocStaffGUID = Guid.Parse(Global.UserGUID);
                            tk.ActionType   = (byte)ActionType.Edit;
                            tk.Action       = "Sửa tư vấn khách hàng";
                            tk.Description  = desc;
                            tk.TrackingType = (byte)TrackingType.None;
                            tk.ComputerName = Utility.GetDNSHostName();
                            db.Trackings.InsertOnSubmit(tk);

                            db.SubmitChanges();
                        }
                    }

                    t.Complete();
                }
            }
            catch (System.Data.SqlClient.SqlException se)
            {
                result.Error.Code        = (se.Message.IndexOf("Timeout expired") >= 0) ? ErrorCode.SQL_QUERY_TIMEOUT : ErrorCode.INVALID_SQL_STATEMENT;
                result.Error.Description = se.ToString();
            }
            catch (Exception e)
            {
                result.Error.Code        = ErrorCode.UNKNOWN_ERROR;
                result.Error.Description = e.ToString();
            }
            finally
            {
                if (db != null)
                {
                    db.Dispose();
                    db = null;
                }
            }

            return(result);
        }