Beispiel #1
0
        /// <summary>
        /// 查询队列中未办结的记录
        /// </summary>
        /// <param name="BussinesID"></param>
        /// <returns></returns>
        public List<QueueInfoOR> selectBussinessQueues(string BussinesID)
        {
            string sql = string.Format(@"select * from t_queueinfo where BussinessId='{0}'
            and status < 3  and prillbilltime>'{1}'  order by prillbilltime ", BussinesID,DateTime.Now.ToString("yyyy-MM-dd"));

               DataTable dt = null;
               try
               {
               dt = dbMySql.ExecuteQuery(sql);
               }
               catch (Exception ex)
               {
               throw ex;
               }
               if (dt == null)
               {
               return null;
               }
               List<QueueInfoOR> listBuss = new List<QueueInfoOR>();
               foreach (DataRow dr in dt.Rows)
               {
               QueueInfoOR obj = new QueueInfoOR(dr);
               listBuss.Add(obj);
               }
               return listBuss;
        }
Beispiel #2
0
        private CommandList UpdateQueue(QueueInfoOR queueInfo)
        {
            string sql = @"update t_QueueInfo set  BillNo = @BillNo,TransferDestWin = @TransferDestWin,  DelayNum = @DelayNum,
            DelayTime = @DelayTime,  CallTime = @CallTime,  ProcessTime = @ProcessTime,  FinishTime = @FinishTime,  WindowNo = @WindowNo,
            EmployNo = @EmployNo,  EmployName = @EmployName,Judge = @Judge,  WaitInterval = @WaitInterval,  ProcessInterval = @ProcessInterval,
            CustemClass = @CustemClass,  Description = @Description,  Status = @Staus where  Id = @Id";
               SqlParameter[] parameters = new SqlParameter[]
            {
                new SqlParameter("@Id", SqlDbType.Char, 36, ParameterDirection.Input, false, 0, 0, "Id", DataRowVersion.Default, queueInfo.Id),
                new SqlParameter("@BillNo", SqlDbType.VarChar, 50, ParameterDirection.Input, false, 0, 0, "BillNo", DataRowVersion.Default, queueInfo.Billno),
                new SqlParameter("@TransferDestWin", SqlDbType.VarChar, 20, ParameterDirection.Input, false, 0, 0, "TransferDestWin", DataRowVersion.Default, queueInfo.Transferdestwin),
                new SqlParameter("@DelayNum", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "DelayNum", DataRowVersion.Default, queueInfo.Delaynum),
                new SqlParameter("@DelayTime", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "DelayTime", DataRowVersion.Default, queueInfo.Delaytime),
                new SqlParameter("@CallTime", SqlDbType.DateTime, 8, ParameterDirection.Input, false, 0, 0, "CallTime", DataRowVersion.Default, queueInfo.Calltime),
                new SqlParameter("@ProcessTime", SqlDbType.DateTime, 8, ParameterDirection.Input, false, 0, 0, "ProcessTime", DataRowVersion.Default, queueInfo.Processtime),
                new SqlParameter("@FinishTime", SqlDbType.DateTime, 8, ParameterDirection.Input, false, 0, 0, "FinishTime", DataRowVersion.Default, queueInfo.Finishtime),
                new SqlParameter("@WindowNo", SqlDbType.Char, 36, ParameterDirection.Input, false, 0, 0, "WindowNo", DataRowVersion.Default, queueInfo.Windowno),
                new SqlParameter("@EmployNo", SqlDbType.Char, 36, ParameterDirection.Input, false, 0, 0, "EmployNo", DataRowVersion.Default, queueInfo.Employno),
                new SqlParameter("@EmployName", SqlDbType.VarChar, 50, ParameterDirection.Input, false, 0, 0, "EmployName", DataRowVersion.Default, queueInfo.Employname),
                //new SqlParameter("@CardNo", SqlDbType.VarChar, 50, ParameterDirection.Input, false, 0, 0, "CardNo", DataRowVersion.Default, queueInfo.Cardno),
                new SqlParameter("@Judge", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "Judge", DataRowVersion.Default, queueInfo.Judge),
                new SqlParameter("@WaitInterval", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "WaitInterval", DataRowVersion.Default, queueInfo.Waitinterval),
                new SqlParameter("@ProcessInterval", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "ProcessInterval", DataRowVersion.Default, queueInfo.Processinterval),

                new SqlParameter("@CustemClass", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "CustemClass", DataRowVersion.Default, queueInfo.Custemclass),
                new SqlParameter("@Description", SqlDbType.VarChar, 100, ParameterDirection.Input, false, 0, 0, "Description", DataRowVersion.Default, queueInfo.Description),
                new SqlParameter("@Staus", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "Status", DataRowVersion.Default, queueInfo.Status)
            };
               return new CommandList(sql, parameters);
        }
Beispiel #3
0
 private CommandList Insert(QueueInfoOR queueInfo)
 {
     string sql = @"insert into t_QueueInfo (Id, BankNo, BillNo, BussinessId, PrillBillTime, TransferDestWin, DelayNum, DelayTime,
     CallTime, ProcessTime, FinishTime, WindowNo, EmployNo, EmployName, CardNo, Judge, WaitInterval, ProcessInterval, WaitPeopleBusssiness,
     WaitPeopleBank, CustemClass, Description, Status)
     values (@Id, @BankNo, @BillNo, @BussinessId, @PrillBillTime, @TransferDestWin, @DelayNum, @DelayTime,
     @CallTime, @ProcessTime, @FinishTime, @WindowNo, @EmployNo, @EmployName, @CardNo, @Judge, @WaitInterval, @ProcessInterval, @WaitPeopleBusssiness,
     @WaitPeopleBank, @CustemClass, @Description, @Staus)";
        SqlParameter[] parameters = new SqlParameter[]
     {
         new SqlParameter("@Id", SqlDbType.Char, 36, ParameterDirection.Input, false, 0, 0, "Id", DataRowVersion.Default, queueInfo.Id),
         new SqlParameter("@BankNo", SqlDbType.VarChar, 20, ParameterDirection.Input, false, 0, 0, "BankNo", DataRowVersion.Default, queueInfo.Bankno),
         new SqlParameter("@BillNo", SqlDbType.VarChar, 50, ParameterDirection.Input, false, 0, 0, "BillNo", DataRowVersion.Default, queueInfo.Billno),
         new SqlParameter("@BussinessId", SqlDbType.Char, 36, ParameterDirection.Input, false, 0, 0, "BussinessId", DataRowVersion.Default, queueInfo.Bussinessid),
         new SqlParameter("@PrillBillTime", SqlDbType.DateTime, 8, ParameterDirection.Input, false, 0, 0, "PrillBillTime", DataRowVersion.Default, queueInfo.Prillbilltime),
         new SqlParameter("@TransferDestWin", SqlDbType.VarChar, 20, ParameterDirection.Input, false, 0, 0, "TransferDestWin", DataRowVersion.Default, queueInfo.Transferdestwin),
         new SqlParameter("@DelayNum", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "DelayNum", DataRowVersion.Default, queueInfo.Delaynum),
         new SqlParameter("@DelayTime", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "DelayTime", DataRowVersion.Default, queueInfo.Delaytime),
         new SqlParameter("@CallTime", SqlDbType.DateTime, 8, ParameterDirection.Input, false, 0, 0, "CallTime", DataRowVersion.Default, queueInfo.Calltime),
         new SqlParameter("@ProcessTime", SqlDbType.DateTime, 8, ParameterDirection.Input, false, 0, 0, "ProcessTime", DataRowVersion.Default, queueInfo.Processtime),
         new SqlParameter("@FinishTime", SqlDbType.DateTime, 8, ParameterDirection.Input, false, 0, 0, "FinishTime", DataRowVersion.Default, queueInfo.Finishtime),
         new SqlParameter("@WindowNo", SqlDbType.Char, 36, ParameterDirection.Input, false, 0, 0, "WindowNo", DataRowVersion.Default, queueInfo.Windowno),
         new SqlParameter("@EmployNo", SqlDbType.Char, 36, ParameterDirection.Input, false, 0, 0, "EmployNo", DataRowVersion.Default, queueInfo.Employno),
         new SqlParameter("@EmployName", SqlDbType.VarChar, 50, ParameterDirection.Input, false, 0, 0, "EmployName", DataRowVersion.Default, queueInfo.Employname),
         new SqlParameter("@CardNo", SqlDbType.VarChar, 50, ParameterDirection.Input, false, 0, 0, "CardNo", DataRowVersion.Default, queueInfo.Cardno),
         new SqlParameter("@Judge", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "Judge", DataRowVersion.Default, queueInfo.Judge),
         new SqlParameter("@WaitInterval", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "WaitInterval", DataRowVersion.Default, queueInfo.Waitinterval),
         new SqlParameter("@ProcessInterval", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "ProcessInterval", DataRowVersion.Default, queueInfo.Processinterval),
         new SqlParameter("@WaitPeopleBusssiness", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "WaitPeopleBusssiness", DataRowVersion.Default, queueInfo.Waitpeoplebusssiness),
         new SqlParameter("@WaitPeopleBank", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "WaitPeopleBank", DataRowVersion.Default, queueInfo.Waitpeoplebank),
         new SqlParameter("@CustemClass", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "CustemClass", DataRowVersion.Default, queueInfo.Custemclass),
         new SqlParameter("@Description", SqlDbType.VarChar, 100, ParameterDirection.Input, false, 0, 0, "Description", DataRowVersion.Default, queueInfo.Description),
         new SqlParameter("@Staus", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "Staus", DataRowVersion.Default, queueInfo.Status)
     };
        return new CommandList(sql, parameters);
 }
Beispiel #4
0
        /// <summary>
        /// 取号,返回票号
        /// </summary>
        /// <param name="bussinessID"></param>
        /// <param name="mCardno"></param>
        /// <returns></returns>
        public string QH(string mbussinessID, string mCardno)
        {
            BussinessQueueOR _CurentBuss = GetBussiness(mbussinessID);
            if (_CurentBuss == null)
            {
                throw new Exception("获取业务队列失败!,无法取号。");
            }
            //这里需要处理:取号类型(直接,刷卡、直接刷卡) 办理时间
            string mErrorMsg = string.Empty;
            if (!CheckBussinessTime(_CurentBuss,out mErrorMsg))
            {
                return mErrorMsg;
            }
            StringBuilder sbLog = new StringBuilder();
            sbLog.AppendLine(string.Format("开始时间:{0}",DateTime.Now.ToString("dd HH:mm:ss:fff")));
            try
            {
                string _BillNo = _CurentBuss.Prefix + GetBillNo(mbussinessID);
                sbLog.AppendLine(string.Format("时间:{0} ,编号:{1}", DateTime.Now.ToString("dd HH:mm:ss:fff"), _BillNo));
                int mWaitpeoplebusssiness = 0;
                int mWaitpeoplebank = 0;
                //int mCustemclass = 0;
                GetWaitPeople(mbussinessID, out  mWaitpeoplebusssiness, out mWaitpeoplebank);

                QueueInfoOR _qhOR = new QueueInfoOR(BankNo, _BillNo, mbussinessID, mCardno
                    , mWaitpeoplebusssiness, mWaitpeoplebank);//初使化取号
                _qhOR.VipFirstTime = 0;
                //处理vip优先时间
                if (!string.IsNullOrEmpty(mCardno))
                {
                    _qhOR.VipFirstTime = VipCardHeadObj.GetFirstTime(mCardno);
                }
                _QueueDA.QH(_qhOR);//将取号插入到数据库

                //插入到当前队列
                _CurentBuss.BussQueues.Add(_qhOR);

                //票号#业务名称#当前业务人数#当前网点人数
                string result= string.Format("{0}#{1}#{2}#{3}", _BillNo, _CurentBuss.Name,mWaitpeoplebusssiness,mWaitpeoplebank);

                sbLog.AppendLine(string.Format("入库完成到打印:{0}  ", DateTime.Now.ToString("dd HH:mm:ss:fff")));
                if (HDDA.Instance.PrintSlip(result))
                {

                }
                sbLog.AppendLine(string.Format("打印结束:{0}  \r\n", DateTime.Now.ToString("dd HH:mm:ss:fff")));
                ErrorLog.WriteLog("时间测试:		", sbLog.ToString());
                return result;
            }
            catch (Exception ex)
            {
                return ex.Message;
            }
        }
Beispiel #5
0
        /// <summary>
        /// 查询需要同步的数据
        /// </summary>
        /// <returns></returns>
        public List<QueueInfoOR> SelectUpdata()
        {
            string sql = "select * from t_queueinfo where status != upstatus order by status";

               DataTable dt = null;
               try
               {
               dt = dbMySql.ExecuteQuery(sql);
               }
               catch (Exception ex)
               {
               throw ex;
               }
               if (dt == null)
               {
               return null;
               }
               List<QueueInfoOR> listQue = new List<QueueInfoOR>();
               foreach (DataRow dr in dt.Rows)
               {
               QueueInfoOR obj = new QueueInfoOR(dr);
               listQue.Add(obj);
               }
               return listQue;
        }
Beispiel #6
0
 /// <summary>
 /// 取号
 /// </summary>
 /// <param name="_Qh"></param>
 /// <returns></returns>
 public bool QH(QueueInfoOR _Qh)
 {
     string sql = GetQHInsertSQL(_Qh);
        dbMySql.ExecuteNoQuery(sql);
        return true;
 }
Beispiel #7
0
 /// <summary>
 /// 更新欢迎状态
 /// </summary>
 /// <param name="obj"></param>
 /// <returns></returns>
 public bool UpdateWelcome(QueueInfoOR obj)
 {
     string sql = @"update t_queueinfo  set status=2,ProcessTime=now(),Waitinterval='@Waitinterval'
     where  ID='@ID' ";
        sql = sql.Replace("@Waitinterval", obj.Waitinterval.ToString());
        //sql = sql.Replace("@Waitinterval", obj.Waitinterval.ToString());
        //sql = sql.Replace("@ProcessTime", obj.Processtime.ToString("yyyy-MM-dd HH:mm:ss"));
        //sql = sql.Replace("@PrillBillTime", DateTime.Now.ToString("yyyy-MM-dd"));
        sql = sql.Replace("@ID", obj.Id);
        return dbMySql.ExecuteNoQuery(sql) > 0;
 }
Beispiel #8
0
        private string GetQHInsertSQL(QueueInfoOR queueInfo)
        {
            string sql = @"insert into t_QueueInfo (Id, BankNo, BillNo, BussinessId, PrillBillTime,
            TransferDestWin, DelayNum, DelayTime, CallTime, ProcessTime,
            FinishTime, WindowNo, EmployNo, EmployName, CardNo,
            Judge, WaitInterval, ProcessInterval, WaitPeopleBusssiness, WaitPeopleBank,
            CustemClass, Description, Status)
            values ('@Id', '@BankNo', '@BillNo', '@BussinessId', '@PrillBillTime',
            '@TransferDestWin', @DelayNum, @DelayTime,'@CallTime', '@ProcessTime',
            '@FinishTime', '@WindowNo', '@EmployNo', '@EmployName', '@CardNo',
            @Judge, @WaitInterval, @ProcessInterval, @WaitPeopleBusssiness, @WaitPeopleBank,
            @CustemClass, '@Description', @Status)";

               sql = sql.Replace("@Id", queueInfo.Id);
               sql = sql.Replace("@BankNo", queueInfo.Bankno);
               sql = sql.Replace("@BillNo", queueInfo.Billno);
               sql = sql.Replace("@BussinessId", queueInfo.Bussinessid);
               sql = sql.Replace("@PrillBillTime", queueInfo.Prillbilltime.ToString("yyyy-MM-dd HH:mm:ss"));

               sql = sql.Replace("@TransferDestWin", queueInfo.Transferdestwin.ToString());
               sql = sql.Replace("@DelayNum", queueInfo.Delaynum.ToString());
               sql = sql.Replace("@DelayTime", queueInfo.Delaytime.ToString());
               sql = sql.Replace("@CallTime", queueInfo.Calltime.ToString("yyyy-MM-dd HH:mm:ss"));
               sql = sql.Replace("@ProcessTime", queueInfo.Processtime.ToString("yyyy-MM-dd HH:mm:ss"));

               sql = sql.Replace("@FinishTime", queueInfo.Finishtime.ToString("yyyy-MM-dd HH:mm:ss"));
               sql = sql.Replace("@WindowNo", queueInfo.Windowno);
               sql = sql.Replace("@EmployNo", queueInfo.Employno);
               sql = sql.Replace("@EmployName", queueInfo.Employname);
               sql = sql.Replace("@CardNo", queueInfo.Cardno);

               sql = sql.Replace("@Judge", queueInfo.Judge.ToString());
               sql = sql.Replace("@WaitInterval", queueInfo.Waitinterval.ToString());
               sql = sql.Replace("@ProcessInterval", queueInfo.Processinterval.ToString());
               sql = sql.Replace("@WaitPeopleBusssiness", queueInfo.Waitpeoplebusssiness.ToString());
               sql = sql.Replace("@WaitPeopleBank", queueInfo.Waitpeoplebank.ToString());

               sql = sql.Replace("@CustemClass", queueInfo.Custemclass.ToString());
               sql = sql.Replace("@Description", queueInfo.Description.ToString());
               sql = sql.Replace("@Status", queueInfo.Status.ToString());

               return sql;
        }
Beispiel #9
0
        /// <summary>
        /// 转移窗口
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        public bool UpdateTransfer(QueueInfoOR obj)
        {
            string sql = @"update t_queueinfo  set TransferDestWin='@TransferDestWin',Employno=''
            ,Employname='',Windowno='',Status=@Status where  ID='@ID' ";

               sql = sql.Replace("@TransferDestWin", obj.Transferdestwin.ToString());
               sql = sql.Replace("@ID", obj.Id);
               sql = sql.Replace("@status", obj.Status.ToString());

               return dbMySql.ExecuteNoQuery(sql) > 0;
        }
Beispiel #10
0
        /// <summary>
        /// 两次重呼,弃号
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        public bool UpdateRecallEnd(QueueInfoOR obj)
        {
            obj.Status = 3;
               string sql = @"update t_queueinfo  set status=@status where  ID='@ID' ";

               sql = sql.Replace("@status", obj.Status.ToString());
               sql = sql.Replace("@ID", obj.Id);

               return dbMySql.ExecuteNoQuery(sql) > 0;
        }
Beispiel #11
0
        /// <summary>
        /// 延后
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        public bool UpdateDelayTimer(QueueInfoOR obj)
        {
            string sql = @"update t_queueinfo  set DelayTime=@DelayTime,status=@status where  ID='@ID' ";

               sql = sql.Replace("@DelayTime", obj.Delaytime.ToString());
               sql = sql.Replace("@status", obj.Status.ToString());
               sql = sql.Replace("@ID", obj.Id);

               return dbMySql.ExecuteNoQuery(sql) > 0;
        }
Beispiel #12
0
 public bool UpdateCallJudge(QueueInfoOR obj)
 {
     string sql = @"update t_queueinfo  set status=3,FinishTime=now(),
     Processinterval=@Processinterval  where ID='@ID' ";
        sql = sql.Replace("@Processinterval", obj.Processinterval.ToString());
        //sql = sql.Replace("@ProcessTime", obj.Finishtime.ToString("yyyy-MM-dd HH:mm:ss"));
        //sql = sql.Replace("@PrillBillTime", DateTime.Now.ToString("yyyy-MM-dd"));
        sql = sql.Replace("@ID", obj.Id);
        return dbMySql.ExecuteNoQuery(sql) > 0;
 }
Beispiel #13
0
        /// <summary>
        /// 叫号
        /// </summary>
        /// <returns></returns>
        public bool UpdateCall( QueueInfoOR obj)
        {
            string sql = @"update t_queueinfo  set CallTime=now(),status=1,
            Windowno='@Windowno',Employno='@Employno',Employname='@Employname' where  ID='@ID' ";

               sql = sql.Replace("@Windowno", obj.Windowno);
               sql = sql.Replace("@Employno", obj.Employno);
               sql=sql.Replace("@Employname",obj.Employname);
               sql = sql.Replace("@ID", obj.Id);

               return dbMySql.ExecuteNoQuery(sql) > 0;
        }