Exemple #1
0
 /// <summary>
 /// 返回新增成功后的ID
 /// </summary>
 /// <param name="mHis"></param>
 /// <returns></returns>
 public int InsertCustomer(CustomerModel mCustomer)
 {
     try
     {
         CUSTOMER_INFO ci = new CUSTOMER_INFO();
         ci.ADDRESS = mCustomer.Address;
         ci.BIRTHDAY = mCustomer.Birthday;
         ci.COMPANY = mCustomer.Company;
         ci.CREATE_DATE = GetDBTime;
         ci.CREATE_USERID = mCustomer.CommonInfo.CreateUserId;
         ci.ID_CARD = mCustomer.IdCardNo;
         ci.NAME = mCustomer.Name;
         ci.NATION = mCustomer.Nation;
         ci.PHONE = mCustomer.Phone;
         ci.PICTURE = mCustomer.Picture;
         ci.SEX = mCustomer.Sex;
         ci.TYPE = mCustomer.Type;
         ci.UPDATE_DATE = GetDBTime;
         ci.UPDATE_USERID = mCustomer.CommonInfo.UpdateUserId;
         dc.CUSTOMER_INFO.InsertOnSubmit(ci);
         dc.SubmitChanges();
         return ci.CUSTOMER_ID;
     }
     catch (Exception err)
     {
         throw err;
     }
 }
Exemple #2
0
        public List<CustomerModel> GetCustomerInfo(CustomerModel mCustomer, ObjectControls oCtrl)
        {
            string sql = @"SELECT CUSTOMER_ID, ID_CARD, NAME, SEX, NATION, BIRTHDAY, ADDRESS, COMPANY,
                            PHONE, PICTURE, TYPE, CREATE_DATE, CREATE_USERID, UPDATE_DATE,
                            UPDATE_USERID
                            FROM CUSTOMER_INFO WHERE 1=1";
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByCustomerId) && oCtrl.Append(ref sql, " AND CUSTOMER_ID=" + mCustomer.CustomerId));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByName) && oCtrl.Append(ref sql, " AND NAME=" + SQL(mCustomer.Name)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByIdCard)&& oCtrl.Append( ref sql, " AND ID_CARD=" + SQL(mCustomer.IdCardNo)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.BySex)&& oCtrl.Append( ref sql, " AND SEX=" + SQL(mCustomer.Sex)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByPhone)&& oCtrl.Append(ref sql, " AND PHONE=" + SQL(mCustomer.Phone)));
            //oCtrl.Helper(oCtrl.Exsit(MCtrl.ByStayId)&& oCtrl.Append(ref sql, " AND A.STAY_ID=" + mCustomer.StayId));

            sdr = ExecuteReader(sql);
            List<CustomerModel> listCustomer = new List<CustomerModel>();
            using (sdr)
            {
                while (sdr.Read())
                {
                    CustomerModel mCustomerInfo = new CustomerModel();
                    mCustomerInfo.CustomerId = ToInt32(sdr["CUSTOMER_ID"]);
                   // mCustomerInfo.CustomerStayHisInfo.StayId = ToInt32(sdr["STAY_ID"]);
                    mCustomerInfo.IdCardNo = ToString(sdr["ID_CARD"]);
                    mCustomerInfo.Name = ToString(sdr["NAME"]);
                    mCustomerInfo.Sex = ToString(sdr["SEX"]);
                    mCustomerInfo.Birthday = ToDateTime(sdr["BIRTHDAY"]);
                    mCustomerInfo.Address = ToString(sdr["ADDRESS"]);
                    mCustomerInfo.Company = ToString(sdr["COMPANY"]);
                    mCustomerInfo.Nation = ToString(sdr["NATION"]);
                    mCustomerInfo.Phone = ToString(sdr["PHONE"]);
                    mCustomerInfo.Picture = ToString(sdr["PICTURE"]);
                    mCustomerInfo.Type = ToChar(sdr["TYPE"]);
                    mCustomerInfo.CommonInfo = new CommonModel();
                    mCustomerInfo.CommonInfo.CreateDate = ToDateTime(sdr["CREATE_DATE"]);
                    mCustomerInfo.CommonInfo.CreateUserId = ToInt32(sdr["CREATE_USERID"]);
                    mCustomerInfo.CommonInfo.UpdateDate = ToDateTime(sdr["UPDATE_DATE"]);
                    mCustomerInfo.CommonInfo.UpdateUserId = ToInt32(sdr["UPDATE_USERID"]);
                    listCustomer.Add(mCustomerInfo);
                }
            }
            return listCustomer;
        }
Exemple #3
0
 public List<CustomerStayModel> GetMainRoomGroup()
 {
     string sql = @"SELECT DISTINCT A.MAIN_ROOM_ID,B.NAME,D.ROOM_NO,B.CUSTOMER_ID
                         FROM CUSTOMER_STAY_INFO A,CUSTOMER_INFO B,CUSTOMER_STAY_HIS C,BAS_ROOM_INFO D
                         WHERE A.STAY_ID=C.STAY_ID AND C.CUSTOMER_ID=B.CUSTOMER_ID
                         AND A.MAIN_ROOM_ID=D.ROOM_ID
                         AND A.STATUS='I'
                         AND C.HIS_STATUS='E'
                         AND C.STAY_TYPE='M'
                         AND MAIN_ROOM_ID>0";
     sdr = ExecuteReader(sql);
     List<CustomerStayModel> listTeamRoom = new List<CustomerStayModel>();
     using (sdr)
     {
         while (sdr.Read())
         {
             CustomerStayModel mCustomerStay = new CustomerStayModel();
             mCustomerStay.MainRoomId = ToInt32(sdr["MAIN_ROOM_ID"]);
             mCustomerStay.RoomInfo.RoomNo = ToString(sdr["ROOM_NO"]);
             mCustomerStay.CustomerList = new List<CustomerModel>();
             CustomerModel mc = new CustomerModel();
             mc.CustomerId = ToInt32(sdr["CUSTOMER_ID"]);
             mc.Name = ToString(sdr["NAME"]);
             mCustomerStay.CustomerList.Add(mc);
             listTeamRoom.Add(mCustomerStay);
         }
     }
     return listTeamRoom;
 }
Exemple #4
0
        public CustomerStayModel GetCustomerStayInfo(CustomerStayModel mCustomerStay, ObjectControls oCtrl)
        {
            string sql = @"SELECT A.STAY_ID,A.STAY_NO, A.ROOM_ID, A.MAIN_ROOM_ID, A.ROOM_STAY_TYPE,
                      A.START_DATE, A.END_DATE,A.HOURS, A.DEPOSIT, A.ROOM_RATES AS CURRENT_RATE,A.PAID_MONEY, A.PAY_TYPE,A.TOTAL_MONEY, A.STATUS,
                      A.NOTICE, A.CREATE_DATE, A.CREATE_USERID,F.USER_NAME AS CREATE_USER_NAME,G.USER_NAME AS UPDATE_USER_NAME, A.UPDATE_DATE,
                      A.UPDATE_USERID, B.CUSTOMER_ID, B.ID_CARD, B.NAME, B.SEX, B.NATION,
                      B.BIRTHDAY, B.ADDRESS, B.COMPANY, B.PHONE, B.PICTURE, B.TYPE, E.STAY_TYPE,E.HIS_STATUS,E.HIS_ID,
                        E.START_TIME,E.END_TIME,
                      C.ROOM_NO, C.ROOM_TYPE, C.ROOM_RATES AS DEFAULT_RATE, C.ROOM_NOTICE,
                      C.ROOM_PHONE, C.STATUS AS ROOM_STATUS, C.FLOOR_ID,D.FLOOR_NAME
                     FROM CUSTOMER_STAY_INFO AS A INNER JOIN
                      CUSTOMER_STAY_HIS E ON A.STAY_ID =E.STAY_ID";
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByStayType) && oCtrl.Append(ref sql, " AND E.STAY_TYPE=" + SQL(mCustomerStay.CustomerList[0].CustomerStayHisInfo.StayType)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByHisStatus) && oCtrl.Append(ref sql, " AND E.HIS_STATUS=" + SQL(mCustomerStay.CustomerList[0].CustomerStayHisInfo.HisStatus)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByHisStatusNotEqual) && oCtrl.Append(ref sql, " AND E.HIS_STATUS !=" + SQL(mCustomerStay.CustomerList[0].CustomerStayHisInfo.HisStatus)));

            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByHisStartTime) && oCtrl.Append(ref sql, " AND E.START_TIME BETWEEN " + SQL(mCustomerStay.CustomerList[0].CustomerStayHisInfo.CommonInfo.StartDate) + " AND " + SQL(mCustomerStay.CustomerList[0].CustomerStayHisInfo.CommonInfo.EndDate)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByHisEndTime) && oCtrl.Append(ref sql, " AND E.END_TIME BETWEEN " + SQL(mCustomerStay.CustomerList[0].CustomerStayHisInfo.CommonInfo.StartDate) + " AND " + SQL(mCustomerStay.CustomerList[0].CustomerStayHisInfo.CommonInfo.EndDate)));

            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByHisStartOrEndTime) && oCtrl.Append(ref sql, " AND (E.START_TIME BETWEEN " + SQL(mCustomerStay.CustomerList[0].CustomerStayHisInfo.CommonInfo.StartDate)
                + " AND " + SQL(mCustomerStay.CustomerList[0].CustomerStayHisInfo.CommonInfo.EndDate)
                + " OR E.END_TIME BETWEEN " + SQL(mCustomerStay.CustomerList[0].CustomerStayHisInfo.CommonInfo.StartDate)
                + " AND " + SQL(mCustomerStay.CustomerList[0].CustomerStayHisInfo.CommonInfo.EndDate) + ")"));
            sql += @" INNER JOIN
                      CUSTOMER_INFO AS B ON E.CUSTOMER_ID = B.CUSTOMER_ID ";
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByName) && oCtrl.Append(ref sql, " AND B.NAME=" + SQL(mCustomerStay.CustomerList[0].Name)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByPhone) && oCtrl.Append(ref sql, " AND B.PHONE=" + SQL(mCustomerStay.CustomerList[0].Phone)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByCustomerType) && oCtrl.Append(ref sql, " AND B.TYPE=" + SQL(mCustomerStay.CustomerList[0].Type)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByCustomerId) && oCtrl.Append(ref sql, " AND B.CUSTOMER_ID=" + mCustomerStay.CustomerList[0].CustomerId));
            sql+=@" INNER JOIN
                      BAS_ROOM_INFO AS C ON A.ROOM_ID = C.ROOM_ID INNER JOIN
                       SYS_USER_INFO AS F ON A.CREATE_USERID = F.USER_ID INNER JOIN
                    SYS_USER_INFO AS G ON A.UPDATE_USERID = G.USER_ID INNER JOIN
                      BAS_FLOOR_INFO AS D ON C.FLOOR_ID = D.FLOOR_ID";
            sql += " WHERE 1=1";
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByRoomId) &&  oCtrl.Append(ref sql, " AND A.ROOM_ID=" + mCustomerStay.RoomId));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByFloorId) &&  oCtrl.Append(ref sql, " AND D.FLOOR_ID=" + mCustomerStay.RoomInfo.FloorInfo.FloorId));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByRoomNo) &&  oCtrl.Append(ref sql, " AND C.ROOM_NO=" + SQL(mCustomerStay.RoomInfo.RoomNo)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByStartDate) &&  oCtrl.Append(ref sql, " AND A.START_DATE=" + SQL(mCustomerStay.CommonInfo.StartDate)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByEndDate)&& oCtrl.Append(ref sql, " AND A.END_DATE=" + SQL(mCustomerStay.CommonInfo.EndDate)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByStayStatus) &&  oCtrl.Append(ref sql, " AND A.STATUS=" + SQL(mCustomerStay.Status)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByRoomStayType) && oCtrl.Append(ref sql, " AND A.ROOM_STAY_TYPE=" + mCustomerStay.RoomStayType));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByStayNo) && oCtrl.Append(ref sql, " AND A.STAY_NO=" + mCustomerStay.StayNo));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.ByStayId) &&  oCtrl.Append(ref sql, " AND A.STAY_ID=" + mCustomerStay.StayId));

            sdr = ExecuteReader(sql);

            using (sdr)
            {
                if (!sdr.HasRows)
                {
                    return null;
                }
                CustomerStayModel mCustomerStayInfo = new CustomerStayModel();
                mCustomerStayInfo.CustomerList = new List<CustomerModel>();
                while(sdr.Read())
                {
                    mCustomerStayInfo.CommonInfo = new CommonModel();
                    mCustomerStayInfo.StayNo = ToString(sdr["STAY_NO"]);
                    mCustomerStayInfo.StayId = ToInt32(sdr["STAY_ID"]);
                    mCustomerStayInfo.RoomId = ToInt32(sdr["ROOM_ID"]);
                    mCustomerStayInfo.MainRoomId = ToInt32(sdr["MAIN_ROOM_ID"]);
                    mCustomerStayInfo.CommonInfo.StartDate = ToDateTime(sdr["START_DATE"]);
                    mCustomerStayInfo.CommonInfo.EndDate = ToDateTime(sdr["END_DATE"]);
                    mCustomerStayInfo.Deposit = ToDouble(sdr["DEPOSIT"]);
                    mCustomerStayInfo.RoomRate = ToInt32(sdr["CURRENT_RATE"]);
                    mCustomerStayInfo.Total = ToDouble(sdr["TOTAL_MONEY"]);
                    mCustomerStayInfo.PayType = ToChar(sdr["PAY_TYPE"]);
                    mCustomerStayInfo.Status = ToChar(sdr["STATUS"]);
                    mCustomerStayInfo.Notice = ToString(sdr["NOTICE"]);
                    mCustomerStayInfo.Hours = ToInt32(sdr["HOURS"]);
                    mCustomerStayInfo.RoomStayType = ToChar(sdr["ROOM_STAY_TYPE"]);
                    mCustomerStayInfo.PaidMoney = ToDouble(sdr["PAID_MONEY"]);
                    mCustomerStayInfo.CommonInfo.CreateDate = ToDateTime(sdr["CREATE_DATE"]);
                    mCustomerStayInfo.CommonInfo.CreateUserId = ToInt32(sdr["CREATE_USERID"]);
                    mCustomerStayInfo.CommonInfo.CreateUserName = ToString(sdr["CREATE_USER_NAME"]);
                    mCustomerStayInfo.CommonInfo.UpdateDate = ToDateTime(sdr["UPDATE_DATE"]);
                    mCustomerStayInfo.CommonInfo.UpdateUserId = ToInt32(sdr["UPDATE_USERID"]);
                    mCustomerStayInfo.CommonInfo.UpateUserName = ToString(sdr["UPDATE_USER_NAME"]);

                    CustomerModel mCustomerInfo = new CustomerModel();
                    mCustomerInfo.CustomerId = ToInt32(sdr["CUSTOMER_ID"]);
                    mCustomerInfo.IdCardNo = ToString(sdr["ID_CARD"]);
                    mCustomerInfo.Name = ToString(sdr["NAME"]);
                    mCustomerInfo.Nation = ToString(sdr["NATION"]);
                    mCustomerInfo.Phone = ToString(sdr["PHONE"]);
                    mCustomerInfo.Picture = ToString(sdr["PICTURE"]);
                    mCustomerInfo.Type = ToChar(sdr["TYPE"]);
                    mCustomerInfo.Sex = ToString(sdr["SEX"]);
                    mCustomerInfo.Birthday = ToDateTime(sdr["BIRTHDAY"]);
                    mCustomerInfo.Address = ToString(sdr["ADDRESS"]);
                    mCustomerInfo.Company = ToString(sdr["COMPANY"]);

                    mCustomerInfo.CustomerStayHisInfo = new CustomerStayHisModel();
                    mCustomerInfo.CustomerStayHisInfo.HisId = ToInt32(sdr["HIS_ID"]);
                    mCustomerInfo.CustomerStayHisInfo.StayId = ToInt32(sdr["STAY_ID"]);
                    mCustomerInfo.CustomerStayHisInfo.CustomerId = ToInt32(sdr["CUSTOMER_ID"]);
                    mCustomerInfo.CustomerStayHisInfo.StayType = ToChar(sdr["STAY_TYPE"]);
                    mCustomerInfo.CustomerStayHisInfo.HisStatus = ToChar(sdr["HIS_STATUS"]);
                    mCustomerInfo.CustomerStayHisInfo.CommonInfo.StartDate = ToDateTime(sdr["START_TIME"]);
                    mCustomerInfo.CustomerStayHisInfo.CommonInfo.EndDate = ToDateTime(sdr["END_TIME"]);
                    mCustomerInfo.CommonInfo = new CommonModel();
                    mCustomerStayInfo.CustomerList.Add(mCustomerInfo);

                    mCustomerStayInfo.RoomInfo = new BasRoomModel();
                    mCustomerStayInfo.RoomInfo.RoomId = ToInt32(sdr["ROOM_ID"]);
                    mCustomerStayInfo.RoomInfo.RoomNo = ToString(sdr["ROOM_NO"]);
                    mCustomerStayInfo.RoomInfo.RoomType = ToChar(sdr["ROOM_TYPE"]);
                    mCustomerStayInfo.RoomInfo.RoomRate = ToDouble(sdr["DEFAULT_RATE"]);
                    mCustomerStayInfo.RoomInfo.RoomPhone = ToString(sdr["ROOM_PHONE"]);
                    mCustomerStayInfo.RoomInfo.Status = ToChar(sdr["ROOM_STATUS"]);
                    mCustomerStayInfo.RoomInfo.RoomNotice = ToString(sdr["ROOM_NOTICE"]);
                    mCustomerStayInfo.RoomInfo.FloorInfo = new BasFloorModel();
                    mCustomerStayInfo.RoomInfo.FloorInfo.FloorId = ToInt32(sdr["FLOOR_ID"]);
                    mCustomerStayInfo.RoomInfo.FloorInfo.FloorName = ToString(sdr["FLOOR_NAME"]);
                }
                return mCustomerStayInfo;
            }
        }
Exemple #5
0
 /// <summary>
 /// 更新用户信息
 /// </summary>
 /// <param name="mCustomerNew">新的信息</param>
 /// <param name="mCustomerOld">以前旧信息</param>
 public void UpdateExsitCustomerInfo(CustomerModel mCustomerNew,CustomerModel mCustomerOld)
 {
     ObjectControls oCtrl = new ObjectControls();
     if (!string.IsNullOrEmpty(mCustomerNew.Name))
     {
         mCustomerOld.Name = mCustomerNew.Name;
         oCtrl.Add(MCtrl.SetName);
     }
     if (!string.IsNullOrEmpty(mCustomerNew.IdCardNo))
     {
         mCustomerOld.IdCardNo = mCustomerNew.IdCardNo;
         oCtrl.Add(MCtrl.SetIdCard);
     }
     if (!string.IsNullOrEmpty(mCustomerNew.Address))
     {
         mCustomerOld.Address = mCustomerNew.Address;
         oCtrl.Add(MCtrl.SetAddress);
     }
     if (mCustomerNew.Birthday != DateTime.MinValue)
     {
         mCustomerOld.Birthday = mCustomerNew.Birthday;
         oCtrl.Add(MCtrl.SetBirthday);
     }
     if (!string.IsNullOrEmpty(mCustomerNew.Company))
     {
         mCustomerOld.Company = mCustomerNew.Company;
         oCtrl.Add(MCtrl.SetCompanyName);
     }
     if (!string.IsNullOrEmpty(mCustomerNew.Nation))
     {
         mCustomerOld.Nation = mCustomerNew.Nation;
         oCtrl.Add(MCtrl.SetNation);
     }
     if (!string.IsNullOrEmpty(mCustomerNew.Phone))
     {
         mCustomerOld.Phone = mCustomerNew.Phone;
         oCtrl.Add(MCtrl.SetPhone);
     }
     if (!string.IsNullOrEmpty(mCustomerNew.Picture))
     {
         mCustomerOld.Picture = mCustomerNew.Picture;
         oCtrl.Add(MCtrl.SetPicture);
     }
     if (!string.IsNullOrEmpty(mCustomerNew.Sex))
     {
         mCustomerOld.Sex = mCustomerNew.Sex;
         oCtrl.Add(MCtrl.SetSex);
     }
     if (!mCustomerNew.Type.Equals(mCustomerOld.Type))
     {
         mCustomerOld.Type = mCustomerNew.Type;
         oCtrl.Add(MCtrl.SetCustomerType);
     }
     mCustomerNew.CustomerId = mCustomerOld.CustomerId;
     mCustomerOld.CommonInfo.UpdateUserId = mCustomerNew.CommonInfo.UpdateUserId;
     bCustomer.UpdateCustomer(mCustomerOld, oCtrl);
 }
Exemple #6
0
        /// <summary>
        /// 获取在宾客信息清单
        /// </summary>
        /// <param name="listRoomInfo"></param>
        /// <param name="cStayStatus">该入住单是否在住</param>
        /// <param name="sStayType">宾客类型,主客Or从客</param>
        /// <param name="HisStayStatus">宾客是否退房</param>
        /// <param name="IsCountConsume">是否统计消费</param>
        /// <returns></returns>
        public List<CustomerStayModel> GetStayInRoomInfo(List<BasRoomModel> listRoomInfo, char cStayStatus,string sStayType, bool IsCountConsume)
        {
            List<CustomerStayModel> listCustomerStayInfo = new List<CustomerStayModel>();

            CustomerStayModel mStayInfo = new CustomerStayModel();
            ObjectControls oCtrl = new ObjectControls();
            foreach (BasRoomModel mRoom in listRoomInfo)
            {
                mStayInfo.RoomInfo.RoomIdGroup += Cmn.MakeGroup(mRoom.RoomId.ToString());
            }
            mStayInfo.RoomInfo.RoomIdGroup = Cmn.RemoveLastDou(mStayInfo.RoomInfo.RoomIdGroup);

            mStayInfo.Status = cStayStatus;
            mStayInfo.CustomerList = new List<CustomerModel>();
            CustomerModel mc = new CustomerModel();
            mc.CustomerStayHisInfo = new CustomerStayHisModel();
            if (!string.IsNullOrEmpty(sStayType))
            {
                mc.CustomerStayHisInfo.StayType = Cmn.ToChar(sStayType);
                oCtrl.Add(MCtrl.ByStayType);
            }
            mc.CustomerStayHisInfo.HisStatus = cStayStatus == 'I' ? 'E' : 'O';
            mStayInfo.CustomerList.Add(mc);
            if (Cmn.CheckEOF(listRoomInfo))
            {
                oCtrl.Add(MCtrl.ByRoomIdGroup);
            }
            oCtrl.Add(MCtrl.ByStayStatus);
            oCtrl.Add(MCtrl.ByHisStatus);
            listCustomerStayInfo = bCustomerStay.GetCustomerStayList(mStayInfo, oCtrl);
            if (Cmn.CheckEOF(listCustomerStayInfo) && IsCountConsume)
            {
                foreach (CustomerStayModel mCustomerStay in listCustomerStayInfo)
                {
                    List<ConsumeDetailModel> listGetConsumeDetail = new List<ConsumeDetailModel>();
                    ConsumeDetailModel mConsume = new ConsumeDetailModel();
                    mConsume.StayId = mCustomerStay.StayId;
                    oCtrl.Reset();
                    oCtrl.Add(MCtrl.ByStayId);
                    listGetConsumeDetail = bConsume.GetConsumeList(mConsume, oCtrl);
                    if (Cmn.CheckEOF(listGetConsumeDetail))
                    {
                        mCustomerStay.ConSumeDetailList = listGetConsumeDetail;
                    }
                }
            }

            return listCustomerStayInfo;
        }
Exemple #7
0
 /// <summary>
 /// 获取宾客入住信息,消费明细
 /// </summary>
 /// <param name="mRoom">房间信息</param>
 /// <param name="cStayStatus">入住状态 I In / O off</param>
 /// <param name="sStayType">入住类型,主客M从客S,如包含主从则为""</param>
 /// <returns></returns>
 public CustomerStayModel GetStayInRoomInfo(BasRoomModel mRoom, char cStayStatus, string sStayType)
 {
     CustomerStayModel mStayInfo = new CustomerStayModel();
         ObjectControls oCtrl = new ObjectControls();
         mStayInfo.RoomId = mRoom.RoomId;
         mStayInfo.Status = cStayStatus;
         mStayInfo.CustomerList = new List<CustomerModel>();
         CustomerModel mc = new CustomerModel();
         mc.CustomerStayHisInfo = new CustomerStayHisModel();
         if (!string.IsNullOrEmpty(sStayType))
         {
             mc.CustomerStayHisInfo.StayType = Cmn.ToChar(sStayType);
             oCtrl.Add(MCtrl.ByStayType);
         }
         mc.CustomerStayHisInfo.HisStatus = cStayStatus == 'I' ? 'E' : 'O';
         mStayInfo.CustomerList.Add(mc);
         oCtrl.Add(MCtrl.ByRoomId);
         oCtrl.Add(MCtrl.ByStayStatus);
         oCtrl.Add(MCtrl.ByHisStatus);
         CustomerStayModel mCustomerStay = bCustomerStay.GetCustomerStayInfo(mStayInfo, oCtrl);
         if (mCustomerStay != null)
         {
             List<ConsumeDetailModel> listGetConsumeDetail = new List<ConsumeDetailModel>();
             ConsumeDetailModel mConsume = new ConsumeDetailModel();
             mConsume.StayId = mCustomerStay.StayId;
             oCtrl.Reset();
             oCtrl.Add(MCtrl.ByStayId);
             listGetConsumeDetail = bConsume.GetConsumeList(mConsume, oCtrl);
             if (Cmn.CheckEOF(listGetConsumeDetail))
             {
                 mCustomerStay.ConSumeDetailList = listGetConsumeDetail;
             }
         }
         return mCustomerStay;
 }
        private void pbtnSearch_Click(object sender, EventArgs e)
        {
            try
            {
                CustomerStayModel mCustomerStay = new CustomerStayModel();
                oCtrl.Reset();
                mCustomerStay.ConSumeDetailList = new List<ConsumeDetailModel>();
                CustomerModel mCustomer = new CustomerModel();
                mCustomer.Name = txtCondition.Text;

                mCustomerStay.RoomInfo = new BasRoomModel();
                mCustomerStay.RoomInfo.RoomNo = txtCondition.Text;

                if (!string.IsNullOrEmpty(txtCondition.Text))
                {
                    oCtrl.Add(MCtrl.ByNPR);
                }
                if (cboStayStaus.SelectedIndex != 0)//如果选择在住或者离店
                {
                    //mCustomerStay.Status = cmn.ToChar(cboStayStaus.SelectedValue);
                    mCustomer.CustomerStayHisInfo.HisStatus = cmn.ToChar(cboStayStaus.SelectedValue) == 'I' ? 'E' : 'O';
                    oCtrl.Add(MCtrl.ByHisStatus);
                    //oCtrl.Add(MCtrl.ByStayStatus);
                }
                else//如果选择所有,则查询his中状态不为D的宾客.E为在住,O为离店.D为删除的用户.没有意义.
                {
                    //mCustomerStay.Status = cmn.ToChar(cboStayStaus.SelectedValue);
                    mCustomer.CustomerStayHisInfo.HisStatus = 'D';
                    oCtrl.Add(MCtrl.ByHisStatusNotEqual);
                }
                if (chkByDateTime.Checked)
                {
                    mCustomer.CustomerStayHisInfo.CommonInfo.StartDate = GetDateTimePickValue(dtpStart, cboHourS);
                    mCustomer.CustomerStayHisInfo.CommonInfo.EndDate = GetDateTimePickValue(dtpEnd, cboHourE);
                    if (mCustomer.CustomerStayHisInfo.HisStatus == 'E')
                    {
                        oCtrl.Add(MCtrl.ByHisStartTime);
                    }
                    else if (mCustomer.CustomerStayHisInfo.HisStatus == 'O')
                    {
                        oCtrl.Add(MCtrl.ByHisEndTime);
                    }
                    else
                    {
                        oCtrl.Add(MCtrl.ByHisStartOrEndTime);
                    }
                }
                mCustomerStay.CustomerList.Add(mCustomer);
                List<CustomerStayModel> listCustomerStay = bCustomerStay.GetCustomerStayList(mCustomerStay, oCtrl);
                BindDgv(listCustomerStay);
            }
            catch (Exception err)
            {
                tslblMsg.Text = err.Message;
            }
        }
Exemple #9
0
        private void LoadInfo()
        {
            BindCodeInfo(cboPayType, "CUSTOMER_STAY_INFO", "PAY_TYPE");
            BindCodeInfo(cboCustomerType, "CUSTOMER_STAY_HIS", "STAY_TYPE");
            cboSex.SelectedIndex = 0;
            lblRoomInfo.Text = mRoomInfo.RoomNo;
            lblRoomType.Text = mRoomInfo.RoomTypeDesc;
            lblRoomRate.Text = mRoomInfo.RoomRate + "元";
            if (!mRoomInfo.Status.Equals('E'))
            {
                CustomerStayModel mCustomerStayInfo = new CustomerStayModel();
                mCustomerStayInfo.RoomId = mRoomInfo.RoomId;
                mCustomerStayInfo.Status = 'I';
                mCustomerStayInfo.CustomerList = new List<CustomerModel>();
                CustomerModel mc = new CustomerModel();
                mc.CustomerStayHisInfo = new CustomerStayHisModel();
                mc.CustomerStayHisInfo.HisStatus = 'E';
                mCustomerStayInfo.CustomerList.Add(mc);
                oCtrl = new ObjectControls();
                oCtrl.Add(MCtrl.ByRoomId);
                oCtrl.Add(MCtrl.ByStayStatus);
                oCtrl.Add(MCtrl.ByHisStatus);
                CustomerStayModel mCustomerStay =bCustomer.GetCustomerStayInfo(mCustomerStayInfo, oCtrl);
                if (mCustomerStay != null)
                {
                    this.Text = "修改登记";
                    listCustomerStay.Add(mCustomerStay);
                    txtDay.Text = (mCustomerStay.Hours / 24).ToString(); //hml.GetCustomerStayDays(mCustomerStay.CommonInfo.StartDate, mCustomerStay.CommonInfo.EndDate, listSysParameter).ToString("0.0"); //listSysParameter.Where(c => c.ParamNo == "DEFAULT_STAY_DAYS").Select(c => c.Value1).First();
                    txtCurrentDeposit.Text = mCustomerStay.Deposit.ToString();
                    txtCurrentRate.Text = mCustomerStay.RoomRate.ToString();
                    txtDiskonRate.Enabled = false;
                    //txtDiskonRate.Text = (mCustomerStay.RoomRate / mCustomerStay.RoomInfo.RoomRate).ToString("0.00");
                    txtCustomerNumber.Text = mCustomerStay.CustomerList.Count.ToString();
                    txtNotice.Text = mCustomerStay.Notice;
                    chkHourRoom.Checked = mCustomerStay.RoomStayType == 'H' ? true : false;
                    cboPayType.SelectedIndex = GetComboxIndexByKey(cboPayType, mCustomerStay.PayType);

                    if (cmn.FileExsit(cmn.GetImgFilePath(mCustomerStay.CustomerList[0].Picture)))
                    {
                        pbxUserImg.Image = Image.FromFile(cmn.GetImgFilePath(mCustomerStay.CustomerList[0].Picture));
                    }
                    listCustomer = mCustomerStay.CustomerList;
                    BindCustomer(listCustomer);
                    return;
                }
            }
            this.Text = "散客开单";

            List<OrderInfoModel> listOrder = hml.GetRoomOrder(mRoomInfo);
            if (cmn.CheckEOF(listOrder))
            {
                FormSelectOrder frmSelectOrder = new FormSelectOrder(listOrder);
                if (frmSelectOrder.ShowDialog() == DialogResult.OK)
                {
                    mOrderInfo = frmSelectOrder.mOrderInfo;
                    if (mOrderInfo != null)
                    {
                        txtCustomerName.Text = mOrderInfo.Name;
                        txtPhone.Text = mOrderInfo.Phone;
                        txtIDCard.Text = mOrderInfo.IdCardNo;
                        txtCurrentRate.Text = mOrderInfo.OrderRoomRate.ToString();
                        txtNotice.Text = mOrderInfo.Notice;
                        btnAddCustomer_Click(null, new EventArgs());
                    }
                }
            }
            txtDay.Text = hml.ToParameter(listSysParameter, "DEFAULT_STAY_DAYS").Value1; //listSysParameter.Where(c => c.ParamNo == "DEFAULT_STAY_DAYS").Select(c => c.Value1).First();
            txtCurrentDeposit.Text = hml.ToParameter(listSysParameter, "DEFAULT_DEPOSIT").Value1;
            txtCurrentRate.Text = txtCurrentRate.Text.Equals("") ? mRoomInfo.RoomRate.ToString() : txtCurrentRate.Text;
            txtDiskonRate.Text = hml.ToParameter(listSysParameter, "DEFAULT_DISKON").Value1;
            txtCustomerNumber.Text = hml.ToParameter(listSysParameter, "DEFAULT_CUSTOMER_NUMBER").Value1;
        }
Exemple #10
0
        private void dgvCustomerInfo_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e != null)
            {
                cboCustomerType.Text = dgvCustomerInfo["Type", e.RowIndex].Value.ToString();
                cboSex.SelectedItem = dgvCustomerInfo["Sex", e.RowIndex].Value;
                txtCustomerName.Text = dgvCustomerInfo["CustomerName", e.RowIndex].Value.ToString();
                txtIDCard.Text = dgvCustomerInfo["IDCard", e.RowIndex].Value.ToString();
                txtCompany.Text = dgvCustomerInfo["Company", e.RowIndex].Value.ToString();
                txtAddress.Text = dgvCustomerInfo["Address", e.RowIndex].Value.ToString();
                txtPhone.Text = dgvCustomerInfo["Phone", e.RowIndex].Value.ToString();

                mCustomerInfo = new CustomerModel();
                mCustomerInfo = listCustomer.Where(c => c.CustomerId == Convert.ToInt32(dgvCustomerInfo["CustomerId", e.RowIndex].Value)).FirstOrDefault();
                if (cmn.FileExsit(cmn.GetImgFilePath(mCustomerInfo.Picture)))
                {
                    pbxUserImg.Image = Image.FromFile(cmn.GetImgFilePath(mCustomerInfo.Picture));
                }
                //dgvCustomerInfo.Rows.RemoveAt(e.RowIndex);
                //listCustomer.Remove(mCustomerInfo);
                //BindCustomer(listCustomer);
            }
        }
Exemple #11
0
        private void btnReadIDCard_Click(object sender, EventArgs e)
        {
            try
            {
                lblMsg.Text = string.Empty;
                pbxUserImg.Image = null;
                IdentityCardProviderImp IdCard = new IdentityCardProviderImp();
                IdentityCardInfo mCardInfo = IdCard.ReadIdCard(1, true);

                pbxUserImg.Image = mCardInfo.IdImage;
                txtCustomerName.Text = mCardInfo.Name;
                txtAddress.Text = mCardInfo.Address;
                cboSex.SelectedItem = mCardInfo.SexName;
                txtIDCard.Text = mCardInfo.CardId;
                mCustomerInfo = new CustomerModel();
                mCustomerInfo.Nation = mCardInfo.NationName;
                mCustomerInfo.Birthday = mCardInfo.Birthday;

                //btnAddCustomer_Click(sender, new EventArgs());
            }
            catch (Exception err)
            {
                lblMsg.Text = err.Message;
            }
        }
Exemple #12
0
 public int UpdateCustomer(CustomerModel mCustomer, ObjectControls oCtrl)
 {
     return dCustomer.UpdateCustomer(mCustomer, oCtrl);
 }
Exemple #13
0
 public int InsertCustomer(CustomerModel mCustomer)
 {
     return dCustomer.InsertCustomer(mCustomer);
 }
Exemple #14
0
 /// <summary>
 /// 获取宾客信息
 /// </summary>
 /// <param name="mCustomer"></param>
 /// <param name="oCtrl"></param>
 /// <returns></returns>
 public List<CustomerModel> GetCustomerInfo(CustomerModel mCustomer, ObjectControls oCtrl)
 {
     return dCustomer.GetCustomerInfo(mCustomer, oCtrl);
 }
Exemple #15
0
 public int DeleteCustomer(CustomerModel mCustomer)
 {
     return dCustomer.DeleteCustomer(mCustomer);
 }
Exemple #16
0
 public int DeleteCustomer(CustomerModel mCustomer)
 {
     string sql = "DELETE FROM CUSTOMER_INFO WHERE CUSTOMER_ID=" + mCustomer.CustomerId;
     return ExcuteNonQuery(sql);
 }
Exemple #17
0
 private void btnAddCustomer_Click(object sender, EventArgs e)
 {
     try
     {
         lblMsg.Text = "";
         if (mCustomerInfo == null)
         {
             mCustomerInfo = new CustomerModel();
         }
         mCustomerInfo.Name = cmn.CheckNullOrEmpty(txtCustomerName, "宾客姓名");
         mCustomerInfo.Address = txtAddress.Text;
         mCustomerInfo.Company = txtCompany.Text;
         mCustomerInfo.IdCardNo = cmn.CheckNullOrEmpty(txtIDCard, "证件号码");
         mCustomerInfo.Phone = txtPhone.Text;
         mCustomerInfo.Sex = cboSex.SelectedItem.ToString();
         mCustomerInfo.CustomerStayHisInfo=new CustomerStayHisModel ();
         mCustomerInfo.CustomerStayHisInfo.HisStatus='E';
         if (pbxUserImg.Image != null)
         {
             mCustomerInfo.Picture = cmn.SaveImage(pbxUserImg.Image, cmn.DateBaseDate.ToString("yyyyMMddHHmmss"), "CARD_IMG");
         }
         //第一个加入的宾客默认为主客.
         if (listCustomer.Count == 0)
         {
             mCustomerInfo.CustomerStayHisInfo.StayType = 'M';
         }
         else
         {
             mCustomerInfo.CustomerStayHisInfo.StayType = cmn.ToChar(cboCustomerType.SelectedValue);
         }
         mCustomerInfo.CommonInfo = new CommonModel();
         mCustomerInfo.CommonInfo.CreateUserId = UserInfo.UserId;
         mCustomerInfo.CommonInfo.UpdateUserId = UserInfo.UserId;
         var query=listCustomer.Where(c => c.IdCardNo == mCustomerInfo.IdCardNo && c.Name == mCustomerInfo.Name);
         if (query.Count() > 0)
         {
             listCustomer.Remove(query.First());
         }
         query = listCustomer.Where(c => c.CustomerStayHisInfo.StayType == mCustomerInfo.CustomerStayHisInfo.StayType && c.CustomerStayHisInfo.StayType=='M');
         if (query.Count() > 0)
         {
             if (cmn.Confirm(string.Format("已指定主客为{0}确实要将主客变更为{1}?", query.First().Name, mCustomerInfo.Name)))
             {
                 query.First().CustomerStayHisInfo.StayType = 'S';
             }
             else { return; }
         }
         if (!listCustomer.Contains(mCustomerInfo))
         {
             listCustomer.Add(mCustomerInfo);
         }
         BindCustomer(listCustomer);
         if (mCustomerInfo.CustomerStayHisInfo.StayType.Equals('M'))
         {
             cboCustomerType.SelectedValue = "S";
         }
         mCustomerInfo = null;
         ClearUI();
     }
     catch (Exception err)
     {
         lblMsg.Text = err.Message;
     }
 }
Exemple #18
0
 /// <summary>
 /// By用户证件以及姓名获取用户信息
 /// </summary>
 /// <param name="mCustomer"></param>
 /// <returns></returns>
 public List<CustomerModel> GetExistCustomerInfo(CustomerModel mCustomer)
 {
     ObjectControls oCtrl = new ObjectControls();
     if (mCustomer.CustomerId > 0)
     {
         oCtrl.Add(MCtrl.ByCustomerId);
     }
     else
     {
         oCtrl.Add(MCtrl.ByIdCard);
         oCtrl.Add(MCtrl.ByName);
     }
     return bCustomer.GetCustomerInfo(mCustomer, oCtrl);
 }
Exemple #19
0
        public int UpdateCustomer(CustomerModel mCustomer, ObjectControls oCtrl)
        {
            string sql = "UPDATE CUSTOMER_INFO SET CREATE_DATE = CREATE_DATE";
            oCtrl.Helper(oCtrl.Exsit(MCtrl.SetName) && oCtrl.Append(ref sql, ",NAME=" + SQL(mCustomer.Name)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.SetNation) && oCtrl.Append(ref sql, ",NATION=" + SQL(mCustomer.Nation)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.SetIdCard) && oCtrl.Append(ref sql, ",ID_CARD=" + SQL(mCustomer.IdCardNo)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.SetSex) && oCtrl.Append(ref sql, ",SEX=" + SQL(mCustomer.Sex)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.SetBirthday) && oCtrl.Append(ref sql, ",BIRTHDAY=" + SQL(mCustomer.Birthday)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.SetCompanyName) && oCtrl.Append( ref sql, ",COMPANY=" + SQL(mCustomer.Company)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.SetAddress) && oCtrl.Append(ref sql, ",ADDRESS=" + SQL(mCustomer.Address)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.SetCustomerType) && oCtrl.Append( ref sql, ",ADDRESS=" + SQL(mCustomer.Type)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.SetPicture) && oCtrl.Append(ref sql, ",PICTURE=" + SQL(mCustomer.Picture)));
            oCtrl.Helper(oCtrl.Exsit(MCtrl.SetPhone) && oCtrl.Append(ref sql, ",PHONE=" + SQL(mCustomer.Phone)));
            sql += ",UPDATE_DATE=" + SQL(GetDBTime);
            sql += ",UPDATE_USERID=" + SQL(mCustomer.CommonInfo.UpdateUserId);
            sql += " WHERE CUSTOMER_ID=" + mCustomer.CustomerId;

            return ExcuteNonQuery(sql);
        }
Exemple #20
0
        private void pbtnSearch_Click(object sender, EventArgs e)
        {
            try
            {
                CustomerStayModel mCustomerStay = new CustomerStayModel();
                mCustomerStay.CommonInfo.StartDate = GetDateTimePickValue(dtpStart, cboHourS);
                mCustomerStay.CommonInfo.EndDate = GetDateTimePickValue(dtpEnd, cboHourE);
                mCustomerStay.Status = 'O';
                ObjectControls oCtrl = new ObjectControls();

                mCustomerStay.CustomerList = new List<CustomerModel>();
                CustomerModel mc = new CustomerModel();
                mc.CustomerStayHisInfo = new CustomerStayHisModel();
                //mc.CustomerStayHisInfo.StayType = 'M';
                mc.CustomerStayHisInfo.HisStatus = 'O';//取离店宾客入住历史记录.
                mCustomerStay.CustomerList.Add(mc);

                oCtrl.Add(MCtrl.ByStayStatus);
                oCtrl.Add(MCtrl.ByHisStatus);
                oCtrl.Add(MCtrl.ByUpdateDate);
                listCustomerStay = bCustomerStay.GetCustomerStayList(mCustomerStay, oCtrl);
                BindDgv(listCustomerStay);
            }
            catch (Exception err)
            {
                cmn.Show(err.Message);
            }
        }