Пример #1
0
        private BQueueModel InsertQueue(string ticketStart)
        {
            string idCard = "";
            string qNmae  = "";
            var    line   = qBll.QueueLine(selectBusy, selectUnit, ticketStart, idCard, qNmae);

            return(line);
        }
Пример #2
0
        //进行排队
        private object OutQueueNo(string unitSeq, string unitName, string busiSeq, string busiName, string personName, string idCard, string wxId)
        {
            #region 验证业务扩展属性
            var qBll        = new BQueueBLL();
            var ticketStart = "";
            var att         = baList.Where(b => b.unitSeq == unitSeq && b.busiSeq == busiSeq).FirstOrDefault();
            var list        = qBll.GetModelList(busiSeq, unitSeq, 0);
            int waitNo      = list.Count;//计算等候人数
            if (att != null)
            {
                ticketStart = att.ticketPrefix;
            }
            else
            {
                return(new
                {
                    method = "ProcessQueue",
                    code = 0,
                    desc = "当前部门以及业务类型未获取到扩展属性,无法排队",
                    idcard = idCard,
                    result = new
                    {
                    }
                });
            }
            #endregion

            #region 排队
            var queue = qBll.QueueLine(unitSeq, unitName, busiSeq, busiName, ticketStart, idCard, personName, wxId);
            #endregion

            #region 日志相关
            string strLog = string.Format("已出票:部门[{0}],业务[{1}],票号[{2}],预约号[{3}],身份证号[{4}],姓名[{5}],时间[{6}]。",
                                          queue.unitName, queue.busTypeName, queue.ticketNumber, queue.reserveSeq, idCard, personName, DateTime.Now);
            WriterQueueLog(strLog);
            new TOprateLogBLL().Insert(new TOprateLogModel()
            {
                oprateFlag         = wxId,
                oprateType         = "微信端排队",
                oprateClassifyType = "出票",
                oprateTime         = DateTime.Now,
                oprateLog          = strLog
            });
            #endregion

            #region  返回数据组织
            var    areaWindowStr = GetAreaWindowsStr(unitSeq, busiSeq);
            var    isGreen       = GetVipLever(queue);
            object obj           = new
            {
                method = "ProcessQueue",
                code   = 1,
                desc   = "处理成功",
                idcard = idCard,
                result = new
                {
                    id           = queue.ID,
                    area         = areaWindowStr[0],
                    windowStr    = areaWindowStr[1],
                    waitCount    = waitNo,
                    unitSeq      = queue.unitSeq,
                    unitName     = queue.unitName,
                    busySeq      = queue.busTypeSeq,
                    busyName     = queue.busTypeName,
                    ticketNumber = queue.ticketNumber,
                    ticketTime   = queue.ticketTime.ToString("yyyy-MM-dd HH:mm:ss"),
                    cardId       = queue.idCard,
                    reserveSeq   = queue.reserveSeq,
                    vip          = isGreen,
                }
            };
            return(obj);

            #endregion
        }