tijian_tieying/web/dccdc.BLL/PaiDuiJiaoHaoBLL.cs
2025-02-20 12:14:39 +08:00

172 lines
6.0 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using dccdc.DAL;
using dccdc.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace dccdc.BLL
{
public class PaiDuiJiaoHaoBLL
{
public Models.OperationResult JiaoHao(int etid = 0)
{
var setbll = new Common();
var swkyyrs = setbll.getParm_Value("pdswkyyrs", "90", "排队上午可预约人数");
var xwkyyrs = setbll.getParm_Value("pdxwkyyrs", "90", "排队下午可预约人数");
var pddal = new PaiDuiJiaoHaoDAL();
var xs = DateTime.Now.Hour;
if (xs < 12)
{
var rs = pddal.getpdrs(1);
if (rs >= int.Parse(swkyyrs))
{
return new OperationResult { State = 0, Message = "已达到上午最大排队人数!" };
}
}
else
{
var rs = pddal.getpdrs(2);
if (rs >= int.Parse(xwkyyrs))
{
return new OperationResult { State = 0, Message = "已达到下午最大排队人数!" };
}
}
string swsj = new BLL.Common().getParm_Value("swpdsj","","上午排队时间").Trim().Replace("",":");
string xwsj = new BLL.Common().getParm_Value("xwpdsj", "", "下午排队时间").Trim().Replace("", ":");
string swsj1 = swsj.Split('-')[0];
string swsj2 = swsj.Split('-')[1];
string xwsj1 = xwsj.Split('-')[0];
string xwsj2 = xwsj.Split('-')[1];
DateTime ds1 = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd") + " " + swsj1);
DateTime ds2 = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd") + " " + swsj2);
DateTime dx1 = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd") + " " + xwsj1);
DateTime dx2 = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd") + " " + xwsj2);
if ((DateTime.Now >= ds1 && DateTime.Now <= ds2) || (DateTime.Now >= dx1 && DateTime.Now <= dx2))
{
}
else
{
return new OperationResult {State=0,Message="当前时间段不能预约取号!" };
}
int hm = int.Parse(new G_identityBll().GetMaxId("PD" + DateTime.Now.ToString("yyyyMMdd"), 1));
Models.PD_XX pdxx = new Models.PD_XX();
pdxx.hm = hm;
pdxx.rq = DateTime.Now;
pdxx.etid = etid;
pdxx.jhbz = 0;
int c = pddal.add(pdxx);
if (c > 0)
{
var pdrs = pddal.getpdrs();
return new OperationResult { State = 1, Message = hm.ToString() + "|" + DateTime.Now.ToString("yyyy-MM-dd HH:mm") + "|" + pdrs };
}
else
{
return new OperationResult { State = 0, Message = "排队失败未知原因!" };
}
//throw new NotImplementedException();
}
public string getPdrs()
{
//throw new NotImplementedException();
return new PaiDuiJiaoHaoDAL().getpdrs().ToString();
}
PaiDuiJiaoHaoDAL _dal = new PaiDuiJiaoHaoDAL();
public OperationResult hj(int ksid, string ksmc, string hm, bool gh)
{
//throw new NotImplementedException();
if (string.IsNullOrEmpty(hm))
{
var pdxx = _dal.getnext();
if (pdxx == null)
{
return new OperationResult { State = 0, Message = "没有下一个排队信息!" };
}
else
{
pdxx.jhck = ksid;
pdxx.jhckmc = ksmc;
pdxx.jhsj = DateTime.Now;
pdxx.jhbz = 1;
_dal.update(pdxx);
return new OperationResult { State = 1, Message = pdxx.hm.ToString() };
}
}
else
{
var pdxx = _dal.getmbyhm(hm);
if (pdxx == null)
{
return new OperationResult { State = 0, Message = "没有下一个排队信息!" };
}
else
{
pdxx.jhck = ksid;
pdxx.jhckmc = ksmc;
pdxx.jhsj = DateTime.Now;
if (gh)
pdxx.jhbz = 2;
else
pdxx.jhbz = 1;
_dal.update(pdxx);
if (gh == false)
return new OperationResult { State = 1, Message = pdxx.hm.ToString() };
else
{
pdxx = _dal.getnext();
if (pdxx == null)
{
return new OperationResult { State = 0, Message = "没有下一个排队信息!" };
}
else
{
pdxx.jhck = ksid;
pdxx.jhckmc = ksmc;
pdxx.jhsj = DateTime.Now;
pdxx.jhbz = 1;
_dal.update(pdxx);
return new OperationResult { State = 1, Message = pdxx.hm.ToString() };
}
}
}
}
}
public object getModel(string hm)
{
//throw new NotImplementedException();
return _dal.getmbyhm(hm);
}
public List<PD_XX> getYJH()
{
//throw new NotImplementedException();
return _dal.getYJH();
}
public List<PD_XX> getWJH()
{
return _dal.getWJH();
}
public object qxpd(string pdid)
{
//throw new NotImplementedException();
return _dal.qxpd(pdid);
}
public PD_XX getpdxx(string session)
{
return _dal.getpdxx(session);
}
}
}