예제 #1
0
        public string AddDishTutor(dynamic requestData)
        {
            try
            {
                string    addDishTutor = JsonConvert.SerializeObject(requestData);
                DishTutor model        = JsonConvert.DeserializeObject <DishTutor>(addDishTutor);
                var       IsExist      = (from v in db.DishTutor
                                          where v.TutorId == model.TutorId && v.DishType == model.DishType
                                          select v).FirstOrDefault();
                //等于空就增加
                if (IsExist == null)
                {
                    if (model.DishStory.IndexOf("base64") > 0)
                    {
                        string d = model.DishStory;

                        foreach (string a in imgHandel.GetHtmlImageUrlList(d))
                        {
                            if (a.IndexOf(ImgHandle.DNS) < 0)
                            {
                                string[] asplit   = a.Split(',');
                                string   imgtype  = asplit[0].Substring(11, asplit[0].Length - 18);
                                string   filepath = imgHandel.Base64StringToImage(asplit[1], imgtype, "/pic/Dishtutor");
                                d = d.Replace(a, filepath);
                            }
                        }
                        model.DishStory = d;
                    }
                    model.CreateTime  = DateTime.Now;
                    model.UpdateTime  = DateTime.Now;
                    model.VisitCount  = 0;
                    model.PrasieCount = 0;
                    model.ShareCount  = 0;
                    db.DishTutor.Add(model);
                    db.SaveChanges();
                    return(model.TutorDishId.ToString());
                }
                //不为空就是修改
                else
                {
                    IsExist.UpdateTime = DateTime.Now;
                    IsExist.DishName   = model.DishName;
                    IsExist.DishStory  = model.DishStory;

                    if (IsExist.DishStory.IndexOf("base64") > 0)
                    {
                        string d = IsExist.DishStory;

                        foreach (string a in imgHandel.GetHtmlImageUrlList(d))
                        {
                            if (a.IndexOf(ImgHandle.DNS) < 0)
                            {
                                string[] asplit   = a.Split(',');
                                string   imgtype  = asplit[0].Substring(11, asplit[0].Length - 18);
                                string   filepath = imgHandel.Base64StringToImage(asplit[1], imgtype, "/pic/Dishtutor");
                                d = d.Replace(a, filepath);
                            }
                        }
                        IsExist.DishStory = d;
                    }

                    IsExist.DishPicUrl   = model.DishPicUrl;
                    IsExist.UpdatePerson = model.UpdatePerson;
                    db.Entry <DishTutor>(IsExist).State = EntityState.Modified;
                    db.SaveChanges();
                    return(IsExist.TutorDishId.ToString());
                }
            }
            catch (Exception)
            {
                return("No");
            }
        }
예제 #2
0
        public string UpdateDishTutor(dynamic requestData)
        {
            try
            {
                #region 修改菜品基本信息
                DishTutor model   = JsonConvert.DeserializeObject <DishTutor>(JsonConvert.SerializeObject(requestData.dishTutor));
                var       IsExist = (from v in db.DishTutor
                                     where v.TutorId == model.TutorId && v.DishType == model.DishType
                                     select v).FirstOrDefault();

                //等于空就增加
                if (IsExist == null)
                {
                    if (model.DishStory.IndexOf("base64") > 0)
                    {
                        string d = model.DishStory;

                        foreach (string a in imgHandel.GetHtmlImageUrlList(d))
                        {
                            if (a.IndexOf(ImgHandle.DNS) < 0)
                            {
                                string[] asplit   = a.Split(',');
                                string   imgtype  = asplit[0].Substring(11, asplit[0].Length - 18);
                                string   filepath = imgHandel.Base64StringToImage(asplit[1], imgtype, "/pic/Dishtutor");
                                d = d.Replace(a, filepath);
                            }
                        }
                        model.DishStory = d;
                    }
                    model.CreateTime  = DateTime.Now;
                    model.UpdateTime  = DateTime.Now;
                    model.VisitCount  = 0;
                    model.PrasieCount = 0;
                    model.ShareCount  = 0;
                    db.DishTutor.Add(model);
                    db.SaveChanges();
                }

                else
                {
                    IsExist.UpdateTime = DateTime.Now;
                    IsExist.DishName   = model.DishName;
                    IsExist.DishStory  = model.DishStory;
                    string dd = IsExist.DishStory;
                    if (IsExist.DishStory.IndexOf("base64") > 0)
                    {
                        foreach (string a in imgHandel.GetHtmlImageUrlList(dd))
                        {
                            if (a.IndexOf(ImgHandle.DNS) < 0)
                            {
                                string[] asplit   = a.Split(',');
                                string   imgtype  = asplit[0].Substring(11, asplit[0].Length - 18);
                                string   filepath = imgHandel.Base64StringToImage(asplit[1], imgtype, "/pic/Dishtutor");
                                dd = dd.Replace(a, filepath);
                            }
                        }
                    }
                    IsExist.DishStory    = dd;
                    IsExist.DishPicUrl   = model.DishPicUrl;
                    IsExist.UpdatePerson = model.UpdatePerson;
                    db.Entry <DishTutor>(IsExist).State = EntityState.Modified;
                    db.SaveChanges();
                }
                #endregion

                #region 修改菜品调料

                var middledishMaterial = requestData.dishMaterial;
                //首先删除已存在菜品Id的调料
                List <DishMaterial> qdishMaterial = new List <DishMaterial>();

                for (int i = 0; i < middledishMaterial.Count; i++)
                {
                    qdishMaterial.Add(JsonConvert.DeserializeObject <DishMaterial>(JsonConvert.SerializeObject(middledishMaterial[i])));
                }
                if (IsExist != null)
                {
                    var sql = string.Format(@"Delete DishMaterial where DishId={0}", qdishMaterial[0].DishId);
                    dataContext.ExecuteNonQuery(CommandType.Text, sql);
                }
                //保存调料信息
                foreach (DishMaterial dm in qdishMaterial)
                {
                    if (IsExist == null)
                    {
                        dm.DishId = model.TutorDishId;
                    }
                    db.DishMaterial.Add(dm);
                }
                db.SaveChanges();

                #endregion

                #region 修改菜品步骤

                var middleDishStep = requestData.dishStep;
                //先删除已有调料


                List <DishStep> qDishStep = new List <DishStep>();

                for (int i = 0; i < middleDishStep.Count; i++)
                {
                    qDishStep.Add(JsonConvert.DeserializeObject <DishStep>(JsonConvert.SerializeObject(middleDishStep[i])));
                }
                if (IsExist != null)
                {
                    string sqlDishStep = string.Format(@"Delete DishStep where DishId={0}", qDishStep[0].DishId);
                    dataContext.ExecuteNonQuery(CommandType.Text, sqlDishStep);
                }
                //保存
                int t = 1;
                foreach (DishStep i in qDishStep)
                {
                    if (IsExist == null)
                    {
                        i.DishId = model.TutorDishId;
                    }
                    i.StepId = t;
                    db.DishStep.Add(i);
                    t++;
                }
                db.SaveChanges();

                #endregion

                #region 修改推荐调料

                var middleflavourRecRole = requestData.flavourRecRole;

                List <FlavourRecRole> modelflavourRecRole = new List <FlavourRecRole>();
                if (middleflavourRecRole.Count > 0)
                {
                    for (int i = 0; i < middleflavourRecRole.Count; i++)
                    {
                        var            test1 = JsonConvert.SerializeObject(middleflavourRecRole[i]);
                        FlavourRecRole test2 = JsonConvert.DeserializeObject <FlavourRecRole>(test1);
                        if (IsExist == null)
                        {
                            test2.DishId = model.TutorDishId;
                            test2.RoleId = model.TutorId;
                        }
                        modelflavourRecRole.Add(test2);
                    }


                    var sqlflavourRecRole = string.Format(@"Delete FlavourRecRole where RoleId={0} and DishId={1}", modelflavourRecRole[0].RoleId, modelflavourRecRole[0].DishId);
                    dataContext.ExecuteNonQuery(CommandType.Text, sqlflavourRecRole);
                    foreach (FlavourRecRole m in modelflavourRecRole)
                    {
                        m.CreateTime = DateTime.Now;
                        m.UpdateTime = DateTime.Now;
                        db.FlavourRecRole.Add(m);
                        db.SaveChanges();
                    }
                }
                #endregion

                return("OK");
            }
            catch (Exception)
            {
                return("No");
            }
        }