예제 #1
0
        public static string SaveModule(int templateID, string mInfo, string loginUserInfo)
        {
            string returnStr = "";
            JObject objVenue = JObject.Parse(mInfo);
            try
            {
                using (venuesEntities db = new venuesEntities())
                {
                    tbl_module tbm = new tbl_module();
                    tbm.ModuleCreatetime=DateTime.Now;
                    tbm.ModuleType=int.Parse(objVenue["moduleTypeID"].ToString());
                    tbm.ModuleX = int.Parse(objVenue["moduleX"].ToString());
                    tbm.ModuleY = int.Parse(objVenue["moduleY"].ToString());
                    tbm.ModuleWidth = int.Parse(objVenue["moduleWidth"].ToString());
                    tbm.ModuleHeight = int.Parse(objVenue["moduleHeight"].ToString());
                    tbm.ModuleImage = objVenue["moduleImage"].ToString();
                    tbm.ModuleDepth = int.Parse(objVenue["moduleDepth"].ToString());
                    tbm.TextPrompt = objVenue["modulePrompt"].ToString();

                    tbm.TemplateID = int.Parse(templateID.ToString());
                    db.AddTotbl_module(tbm);
                    if (db.SaveChanges() != 0)
                    {
                        returnStr = KeyManager.RetrunSucceed;

                        if (objVenue["moduleAttributeInfo"].ToString() != "[]")//判断是否有模块的其他属性,若有则保存模块其他属性
                        {
                            string strSql = "SELECT MAX(s.ID) as max FROM tbl_module AS s";
                            int newModuleID = 0;
                            ObjectQuery<DbDataRecord> resultm = db.CreateQuery<DbDataRecord>(strSql);
                            foreach (var item in resultm)
                            {
                                newModuleID = int.Parse(item["max"].ToString());//获取当前新增模块的id
                            }

                            DeleteModuleAttributeByModuleID(newModuleID, loginUserInfo);//先删除与该模块有关的其他模块属性

                            JArray attModules = JArray.Parse(objVenue["moduleAttributeInfo"].ToString());
                            foreach (JObject objAttModule in attModules)
                            {
                                returnStr = AddModuleAttribute(newModuleID, objAttModule.ToString(), loginUserInfo);//新增模块属性
                            }

                        }
                    }
                    else
                    {
                        returnStr = KeyManager.RetrunUnSucceed;
                    }
                }
            }
            catch (Exception e)
            {
                returnStr = e.Message;
                LogManager.addLog(KeyManager.LogTypeId_Error, KeyManager.MENUS.Menu_ModulesManager, "新增模块,mInfo=" + mInfo + ";错误信息:" + e.Message, loginUserInfo);
            }

            return returnStr;
        }