Example #1
0
        public ActionResult QyDetail(string bh = "")
        {
            var qyModel = qyjbxxService.GetModel(bh, GLYadmin.YYID);

            if (qyModel == null)
            {
                return(Content("参数错误"));
            }

            var qypqModel = qypqszService.GetModelByQybh(bh, GLYadmin.YYID);//渠道排期基本设置

            if (qypqModel == null)
            {
                PqJbszModel jbszModel = jbszService.GetModel(GLYadmin.YYID);
                jbszModel      = jbszModel == null ? new PqJbszModel() : jbszModel;
                qypqModel      = new PqQyszModel();
                qypqModel.qybh = bh;
                qypqModel.yybh = qyModel.yybh;
            }
            var plszjlModel = plszjlService.GetModelByQybh(bh);

            plszjlModel        = plszjlModel == null ? new PqPlszjlModel() : plszjlModel;
            plszjlModel.mxList = JsonConvert.DeserializeObject <List <PlszMxModel> >(plszjlModel.mx);
            if (plszjlModel.mxList.Count == 0)
            {
                plszjlModel.mxList.Add(new PlszMxModel {
                    kssj = "07:30", jssj = "08:30", tjrs = 10
                });
                plszjlModel.mxList.Add(new PlszMxModel {
                    kssj = "08:30", jssj = "09:30", tjrs = 10
                });
            }
            ViewBag.qy     = qyModel;
            ViewBag.jbsz   = qypqModel;   //基本设置
            ViewBag.plszjl = plszjlModel; //批量设置

            return(View());
        }
Example #2
0
        /// <summary>
        /// 批量保存
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public ActionResult BatchSave(PqQyszModel model)
        {
            var rq = Request["rq"];

            model.ksrq = Convert.ToDateTime(rq.Split('~')[0]);
            model.jsrq = Convert.ToDateTime(rq.Split('~')[1]);
            if (pqqyszService.CheckRepeat(GLYadmin.YYID, model.qybh, model.ksrq, model.jsrq, model.pqbh))
            {
                return(Json(new { code = 500, msg = "排期日期有重复", pqbh = model.pqbh }));
            }


            model.yybh = GLYadmin.YYID;
            model.xxr  = string.IsNullOrEmpty(Request["xxr"]) ? "" : Request["xxr"].Replace(",", "|");
            //时间段
            var kssjList    = Request.Params.GetValues("kssj") ?? new string[] { };
            var jssjList    = Request.Params.GetValues("jssj") ?? new string[] { };
            var tjrsList    = Request.Params.GetValues("tjrs") ?? new string[] { };
            var tjrs_dyList = Request.Params.GetValues("tjrs_dy") ?? new string[] { };

            model.SjdList = new List <Sjd>();
            for (int i = 0; i < kssjList.Count(); i++)
            {
                if (string.IsNullOrEmpty(kssjList[i]) || string.IsNullOrEmpty(jssjList[i]))
                {
                    return(Json(new { code = 500, msg = "时间段不能为空" }));
                }
                else if (string.IsNullOrEmpty(tjrsList[i]))
                {
                    return(Json(new { code = 500, msg = "预留人数不能为空" }));
                }
                for (int j = i + 1; j < kssjList.Count(); j++)
                {
                    if (Convert.ToDateTime(kssjList[j]) > Convert.ToDateTime(kssjList[i]) && Convert.ToDateTime(kssjList[j]) < Convert.ToDateTime(jssjList[i]))
                    {
                        return(Json(new { code = 500, msg = "第" + (i + 1) + "和第" + (j + 1) + "行时间有重叠" }));
                    }
                    else if (Convert.ToDateTime(jssjList[j]) > Convert.ToDateTime(kssjList[i]) && Convert.ToDateTime(jssjList[j]) < Convert.ToDateTime(jssjList[i]))
                    {
                        return(Json(new { code = 500, msg = "第" + (i + 1) + "和第" + (j + 1) + "行时间有重叠" }));
                    }
                    else if (Convert.ToDateTime(kssjList[j]) < Convert.ToDateTime(kssjList[i]) && Convert.ToDateTime(jssjList[j]) > Convert.ToDateTime(jssjList[i]))
                    {
                        return(Json(new { code = 500, msg = "第" + (i + 1) + "和第" + (j + 1) + "行时间有重叠" }));
                    }
                }

                int tjrs_dy = Convert.ToInt32(string.IsNullOrEmpty(tjrs_dyList[i]) ? tjrsList[i] : tjrs_dyList[i]);
                model.SjdList.Add(new Sjd {
                    kssj = kssjList[i], jssj = jssjList[i], tjrs = Convert.ToInt32(tjrsList[i]), tjrs_dy = tjrs_dy
                });
            }

            model.tjrs    = model.SjdList.Sum(x => x.tjrs);
            model.tjrs_dy = model.SjdList.Sum(x => x.tjrs_dy);
            model.sjd     = JsonConvert.SerializeObject(model.SjdList);
            string[]           pjtc     = Request.Params.GetValues("pjtc");
            string[]           pjtcrs   = Request.Params.GetValues("pjtcrs");
            string[]           pjtcXxr  = Request.Params.GetValues("pjtcXxr");
            string[]           pjtcSfxz = Request.Params.GetValues("pjtcSfxz");
            List <PqPjtcModel> pjtcList = new List <PqPjtcModel>();

            if (pjtc != null && pjtcrs != null)
            {
                for (int i = 0; i < pjtc.Length; i++)
                {
                    foreach (var item in pjtc[i].Split(','))
                    {
                        pjtcList.Add(new PqPjtcModel {
                            tcbh = item, tjrs = Convert.ToInt32(pjtcrs[i])
                        });
                    }
                }
                if (pjtcList.Count() > 0 && pjtcList.Select(x => x.tcbh).Count() != pjtcList.Select(x => x.tcbh).Distinct().Count())
                {
                    return(Json(new { code = 500, msg = "瓶颈套餐有重复" }));
                }
            }
            pqqyszService.Save(model, pjtc, pjtcrs, pjtcXxr, pjtcSfxz);


            return(Json(new { code = 200, msg = "", pqbh = model.pqbh }));
        }
        /// <summary>
        /// 追加保存
        /// </summary>
        /// <param name="model"></param>
        public void ZjSave(PqQyszModel model)
        {
            using (IDbConnection conn = new DapperConnection().DbConnection)
            {
                IDbTransaction transaction = conn.BeginTransaction();
                try
                {
                    StringBuilder strSql = new StringBuilder();

                    strSql.Append("UPDATE dbo.pq_qysz SET jsrq=@jsrq WHERE pqbh=@pqbh");

                    conn.Execute(strSql.ToString(), model, transaction);
                    strSql.Clear();


                    model.SjdList = JsonConvert.DeserializeObject <List <Sjd> >(model.sjd);


                    for (int i = 0; i < model.jsrq.Subtract(model.ksrq).TotalDays + 1; i++)
                    {
                        DateTime rq = model.ksrq.AddDays(i);

                        PqTjrqModel rqModel = new PqTjrqModel();
                        rqModel.pqbh = model.pqbh;
                        rqModel.qybh = model.qybh;
                        rqModel.rq   = model.ksrq.AddDays(i);
                        rqModel.tjrs = model.SjdList.Sum(x => x.tjrs);
                        rqModel.yybh = model.yybh;
                        rqModel.flag = GetFlag(model.ksrq.AddDays(i), model.xxr);

                        strSql.Append("insert into pq_tjrq(");
                        strSql.Append("pqbh,yybh,qybh,rq,tjrs,flag)");
                        strSql.Append(" values (");
                        strSql.Append("@pqbh,@yybh,@qybh,@rq,@tjrs,@flag)");
                        conn.Execute(strSql.ToString(), rqModel, transaction);
                        strSql.Clear();

                        foreach (var item in model.SjdList)
                        {
                            PqTjsjModel sjModel = new PqTjsjModel();
                            sjModel.yybh = model.yybh;
                            sjModel.pqbh = model.pqbh;
                            sjModel.qybh = model.qybh;
                            sjModel.rq   = rqModel.rq;
                            sjModel.tjrs = item.tjrs;
                            sjModel.kssj = Convert.ToDateTime(rqModel.rq.ToString("yyyy-MM-dd") + " " + item.kssj);
                            sjModel.jssj = Convert.ToDateTime(rqModel.rq.ToString("yyyy-MM-dd") + " " + item.jssj);
                            strSql.Append("insert into pq_tjsj(");
                            strSql.Append("pqbh,yybh,qybh,rq,kssj,jssj,tjrs)");
                            strSql.Append(" values (");
                            strSql.Append("@pqbh,@yybh,@qybh,@rq,@kssj,@jssj,@tjrs)");
                            conn.Execute(strSql.ToString(), sjModel, transaction);
                            strSql.Clear();
                        }
                    }
                    transaction.Commit();
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    throw;
                }
            }
        }
Example #4
0
        public ActionResult BatchSave()
        {
            string yybh = GLYadmin.YYID;
            string qybh = Request["qybh"];                  //企业id
            int    tqts = Convert.ToInt32(Request["tqts"]); //提前天数
            string jzsj = Request["txtTimeBefor"];          //截止时间

            //日期范围
            DateTime ksrq = Convert.ToDateTime(Request["txtStartDate"]);
            DateTime jsrq = Convert.ToDateTime(Request["txtEndDate"]);
            //时间段
            var kssjList = Request.Params.GetValues("kssj");
            var jssjList = Request.Params.GetValues("jssj");
            var tjrsList = Request.Params.GetValues("tjrs");
            //休息日
            var xxr = (Request["xxr"] ?? "").Replace(",", "|");

            List <PlszMxModel> mxList   = new List <PlszMxModel>();
            List <PqTjrqModel> tjrqList = new List <PqTjrqModel>();
            List <PqTjsjModel> tjsjList = new List <PqTjsjModel>();

            for (int i = 0; i < kssjList.Count(); i++)
            {
                if (string.IsNullOrEmpty(kssjList[i]) || string.IsNullOrEmpty(jssjList[i]))
                {
                    return(Json(new { code = 500, msg = "时间段不能为空" }));
                }
                else if (string.IsNullOrEmpty(tjrsList[i]))
                {
                    return(Json(new { code = 500, msg = "预留人数不能为空" }));
                }
                for (int j = i + 1; j < kssjList.Count(); j++)
                {
                    if (Convert.ToDateTime(kssjList[j]) > Convert.ToDateTime(kssjList[i]) && Convert.ToDateTime(kssjList[j]) < Convert.ToDateTime(jssjList[i]))
                    {
                        return(Json(new { code = 500, msg = "第" + (i + 1) + "和第" + (j + 1) + "行时间有重叠" }));
                    }
                    else if (Convert.ToDateTime(jssjList[j]) > Convert.ToDateTime(kssjList[i]) && Convert.ToDateTime(jssjList[j]) < Convert.ToDateTime(jssjList[i]))
                    {
                        return(Json(new { code = 500, msg = "第" + (i + 1) + "和第" + (j + 1) + "行时间有重叠" }));
                    }
                    else if (Convert.ToDateTime(kssjList[j]) < Convert.ToDateTime(kssjList[i]) && Convert.ToDateTime(jssjList[j]) > Convert.ToDateTime(jssjList[i]))
                    {
                        return(Json(new { code = 500, msg = "第" + (i + 1) + "和第" + (j + 1) + "行时间有重叠" }));
                    }
                }

                mxList.Add(new PlszMxModel {
                    kssj = kssjList[i], jssj = jssjList[i], tjrs = Convert.ToInt32(tjrsList[i])
                });
            }
            //获取企业排期基本设置
            var qyPqModel = qypqszService.GetModelByQybh(qybh, GLYadmin.YYID);

            if (qyPqModel == null)
            {
                qyPqModel = new PqQyszModel()
                {
                    qybh = qybh, yybh = yybh, jzsj = jzsj, tqts = tqts, xxr = xxr
                };
                qypqszService.Add(qyPqModel);
            }
            else
            {
                qyPqModel.jzsj = jzsj;
                qyPqModel.tqts = tqts;
                qyPqModel.xxr  = xxr;
                qypqszService.Update(qyPqModel);
            }
            PqPlszjlModel plszjlModel = new PqPlszjlModel();

            plszjlModel.kssj = ksrq;
            plszjlModel.jssj = jsrq;
            plszjlModel.mx   = JsonConvert.SerializeObject(mxList);
            plszjlModel.yybh = yybh;
            plszjlModel.qybh = qybh;
            plszjlService.Add(plszjlModel);

            tjrqService.BatchSave(ksrq, jsrq, yybh, qybh, mxList, xxr);

            return(Json(new { code = 200, msg = "" }));
        }
        /// <summary>
        /// 保存
        /// </summary>
        /// <param name="model"></param>
        /// <param name="pjtc"></param>
        /// <param name="pjtcrs"></param>
        public void Save(PqQyszModel model, string[] pjtc, string[] pjtcrs, string[] pjtcXxr, string[] pjtcSfxz)
        {
            using (IDbConnection conn = new DapperConnection().DbConnection)
            {
                IDbTransaction transaction = conn.BeginTransaction();
                try
                {
                    StringBuilder strSql = new StringBuilder();
                    if (!string.IsNullOrEmpty(model.pqbh))
                    {
                        strSql.Append("DELETE FROM dbo.pq_tjrq WHERE pqbh=@pqbh;");
                        strSql.Append("DELETE FROM dbo.pq_tjsj WHERE pqbh=@pqbh;");
                        strSql.Append("DELETE FROM dbo.pq_pjtc WHERE pqbh=@pqbh;");
                        strSql.Append("DELETE FROM dbo.pq_pjtcgz WHERE pqbh=@pqbh;");
                        strSql.Append("UPDATE dbo.pq_qysz SET ksrq=@ksrq,jsrq=@jsrq,jzsj=@jzsj,xxr=@xxr,tqts=@tqts,sjd=@sjd,tjrs=@tjrs,tjrs_dy=@tjrs_dy WHERE pqbh=@pqbh");
                    }
                    else
                    {
                        model.pqbh = GetPqbh();
                        strSql.Append("insert into pq_qysz(pqbh,yybh,qybh,ksrq,jsrq,cjsj,jzsj,xxr,tqts,sjd,tjrs,tjrs_dy) values (@pqbh,@yybh,@qybh,@ksrq,@jsrq,@cjsj,@jzsj,@xxr,@tqts,@sjd,@tjrs,@tjrs_dy);");
                    }
                    conn.Execute(strSql.ToString(), model, transaction);
                    strSql.Clear();


                    //foreach (var item in pjtcList)
                    //{
                    //    strSql.Append("insert into pq_pjtc(");
                    //    strSql.Append("pqbh,tcbh,tjrs)");
                    //    strSql.Append(" values (");
                    //    strSql.Append("@pqbh,@tcbh,@tjrs)");
                    //    item.pqbh = model.pqbh;
                    //    conn.Execute(strSql.ToString(), item, transaction);
                    //    strSql.Clear();
                    //}

                    if (pjtc != null && pjtcrs != null)
                    {
                        for (int i = 0; i < pjtc.Length; i++)
                        {
                            var fzbh = GetFzbh();
                            var tjrs = Convert.ToInt32(pjtcrs[i]);
                            var xxr  = pjtcXxr[i];
                            var sfxz = Convert.ToInt32(pjtcSfxz[i]);

                            strSql.Append("insert into pq_pjtcgz(");
                            strSql.Append("pqbh,fzbh,tjrs,xxr,sfxz)");
                            strSql.Append(" values (");
                            strSql.Append("@pqbh,@fzbh,@tjrs,@xxr,@sfxz)");
                            conn.Execute(strSql.ToString(), new { pqbh = model.pqbh, fzbh = fzbh, tjrs = tjrs, xxr = xxr, sfxz = sfxz }, transaction);
                            strSql.Clear();
                            foreach (var item in pjtc[i].Split(','))
                            {
                                strSql.Append("insert into pq_pjtc(");
                                strSql.Append("pqbh,tcbh,fzbh)");
                                strSql.Append(" values (");
                                strSql.Append("@pqbh,@tcbh,@fzbh)");
                                conn.Execute(strSql.ToString(), new { pqbh = model.pqbh, fzbh = fzbh, tcbh = item }, transaction);
                                strSql.Clear();
                            }
                        }
                    }


                    for (int i = 0; i < model.jsrq.Subtract(model.ksrq).TotalDays + 1; i++)
                    {
                        DateTime rq = model.ksrq.AddDays(i);

                        PqTjrqModel rqModel = new PqTjrqModel();
                        rqModel.pqbh = model.pqbh;
                        rqModel.qybh = model.qybh;
                        rqModel.rq   = model.ksrq.AddDays(i);
                        rqModel.tjrs = model.SjdList.Sum(x => x.tjrs);
                        rqModel.yybh = model.yybh;
                        rqModel.flag = GetFlag(model.ksrq.AddDays(i), model.xxr);

                        strSql.Append("insert into pq_tjrq(");
                        strSql.Append("pqbh,yybh,qybh,rq,tjrs,flag)");
                        strSql.Append(" values (");
                        strSql.Append("@pqbh,@yybh,@qybh,@rq,@tjrs,@flag)");
                        conn.Execute(strSql.ToString(), rqModel, transaction);
                        strSql.Clear();

                        foreach (var item in model.SjdList)
                        {
                            PqTjsjModel sjModel = new PqTjsjModel();
                            sjModel.yybh = model.yybh;
                            sjModel.pqbh = model.pqbh;
                            sjModel.qybh = model.qybh;
                            sjModel.rq   = rqModel.rq;
                            sjModel.tjrs = item.tjrs;
                            sjModel.kssj = Convert.ToDateTime(rqModel.rq.ToString("yyyy-MM-dd") + " " + item.kssj);
                            sjModel.jssj = Convert.ToDateTime(rqModel.rq.ToString("yyyy-MM-dd") + " " + item.jssj);
                            strSql.Append("insert into pq_tjsj(");
                            strSql.Append("pqbh,yybh,qybh,rq,kssj,jssj,tjrs)");
                            strSql.Append(" values (");
                            strSql.Append("@pqbh,@yybh,@qybh,@rq,@kssj,@jssj,@tjrs)");
                            conn.Execute(strSql.ToString(), sjModel, transaction);
                            strSql.Clear();
                        }
                    }
                    transaction.Commit();
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    throw;
                }
            }
        }