コード例 #1
0
        private void UpdateAppointment(TAppointmentModel model)
        {
            var ev = appList.Where(l => l.reserveSeq == model.reserveSeq).ToList().FirstOrDefault();

            if (ev != null)
            {
                ev.isCheck = model.isCheck;
            }
        }
コード例 #2
0
        private TQueueModel InsertQueue(TAppointmentModel app, string ticketStart)
        {
            string idCard     = "";
            string qNmae      = "";
            string reserveSeq = app == null ? "" : app.reserveSeq;
            var    line       = qBll.QueueLine(selectBusy, selectUnit, ticketStart, idCard, qNmae, app);

            if (app != null)
            {
                app.sysFlag = 0;
                aBll.Insert(app);
            }
            return(line);
        }
コード例 #3
0
        private void button1_Click(object sender, EventArgs e)
        {
            selectUnit = new TUnitModel()
            {
                unitSeq  = "2931",
                unitName = "江城区社保局"
            };
            selectBusy = new TBusinessModel()
            {
                busiSeq  = "3610",
                busiName = "社保制卡"
            };
            TAppointmentModel app = new TAppointmentModel()
            {
                approveSeq       = "111111",
                appType          = 0,
                reserveSeq       = "22222",
                reserveDate      = DateTime.Now,
                reserveStartTime = DateTime.Now,
                reserveEndTime   = DateTime.Now,
            };

            InsertQueue(app, "AA");
        }
コード例 #4
0
        /// <summary>
        /// 排队 微信接口使用
        /// </summary>
        /// <param name="selectBusy"></param>
        /// <param name="selectUnit"></param>
        /// <param name="ticketStart"></param>
        /// <param name="idCard"></param>
        /// <param name="name"></param>
        /// <param name="app"></param>
        /// <returns></returns>
        public TQueueModel QueueLine(string unitSeq, string unitName, string busiSeq, string busiName, string ticketStart, string idCard, string name, string wxId, TAppointmentModel app)
        {
            TQueueModel qModel = null;

            try
            {
                LockAction.Run(LockKey.Queue, () =>
                {
                    var maxNo         = new TLineUpMaxNoDAL(this.db).GetModelList().Where(l => l.unitSeq == unitSeq && l.busiSeq == busiSeq).FirstOrDefault();
                    int ticketNo      = maxNo == null ? 1 : maxNo.lineDate.Date != DateTime.Now.Date ? 1 : maxNo.maxNo + 1;
                    TQueueModel line  = new TQueueModel();
                    line.busTypeName  = busiName;
                    line.busTypeSeq   = busiSeq;
                    line.qNumber      = ticketNo.ToString();
                    line.state        = 0;
                    line.ticketNumber = ticketStart + ticketNo.ToString("000");
                    line.ticketTime   = DateTime.Now;
                    line.unitName     = unitName;
                    line.unitSeq      = unitSeq;
                    line.vipLever     = "";
                    line.windowName   = "";
                    line.windowNumber = "";
                    line.idCard       = idCard;
                    line.qNmae        = name;
                    line.sysFlag      = 0;
                    line.wxId         = wxId;
                    line.qType        = 1;
                    if (app != null)
                    {
                        line.appType          = app.appType;
                        line.reserveSeq       = app.reserveSeq;
                        line.reserveStartTime = app.reserveStartTime;
                        line.reserveEndTime   = app.reserveEndTime;
                        line.type             = app.type;
                    }
                    line = this.Insert(line);
                    if (maxNo == null)
                    {
                        maxNo          = new TLineUpMaxNoModel();
                        maxNo.areaSeq  = "";
                        maxNo.busiSeq  = busiSeq;
                        maxNo.lineDate = DateTime.Now;
                        maxNo.maxNo    = 1;
                        maxNo.unitSeq  = unitSeq;
                        maxNo.sysFlag  = 0;
                        new TLineUpMaxNoDAL(this.db).Insert(maxNo);
                    }
                    else
                    {
                        if (maxNo.lineDate.Date != DateTime.Now.Date)
                        {
                            maxNo.maxNo = 1;
                        }
                        else
                        {
                            maxNo.maxNo = maxNo.maxNo + 1;
                        }
                        maxNo.lineDate = DateTime.Now;
                        maxNo.sysFlag  = 1;
                        new TLineUpMaxNoDAL(this.db).Update(maxNo);
                    }
                    qModel = line;
                });
            }
            catch
            {
                return(null);
            }
            return(qModel);
        }
コード例 #5
0
 public int Delete(TAppointmentModel model)
 {
     return(this.dal.Delete(model));
 }
コード例 #6
0
        //进行排队
        private object OutQueueNo(TAppointmentModel app, string unitSeq, string unitName, string busiSeq, string busiName, string personName, string idCard, string wxId)
        {
            #region 验证业务扩展属性
            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, app);
            if (app != null)
            {
                app.sysFlag = 0;
                aBll.Insert(app);
            }
            #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);
            oBll.Insert(new TOprateLogModel()
            {
                oprateFlag         = wxId,
                oprateType         = "微信端排队",
                oprateClassifyType = "出票",
                oprateTime         = DateTime.Now,
                oprateLog          = strLog,
                sysFlag            = 0
            });
            #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
        }
コード例 #7
0
 public int Update(TAppointmentModel model)
 {
     return(this.dal.Update(model));
 }
コード例 #8
0
 public TAppointmentModel Insert(TAppointmentModel model)
 {
     return(this.dal.Insert(model));
 }
コード例 #9
0
 public TQueueModel QueueLine(string unitSeq, string unitName, string busiSeq, string busiName, string ticketStart, string idCard, string name, string wxId, TAppointmentModel app)
 {
     return(new TQueueDAL().QueueLine(unitSeq, unitName, busiSeq, busiName, ticketStart, idCard, name, wxId, app));
 }
コード例 #10
0
 public TQueueModel QueueLine(TBusinessModel selectBusy, TUnitModel selectUnit, string ticketStart, string idCard, string name, TAppointmentModel app)
 {
     return(new TQueueDAL().QueueLine(selectBusy, selectUnit, ticketStart, idCard, name, app));
 }
コード例 #11
0
 public TAppointmentModel Insert(TAppointmentModel model)
 {
     return(db.Insert(model));
 }