예제 #1
0
        public override OperationResult Create(StationInfo info)
        {
            OperationResult result = new OperationResult(OperationResultType.Error, "操作失败,请稍后重试!");
            using (var DbContext = new UCDbContext())
            {
                Station entity = new Station();
                DESwap.StationDTE(info, entity);
                StationRpt.Insert(DbContext, entity);

                /*关联角色是否为空*/
                if (info.StationRoleInfoList != null)
                {
                    /*****新增列表*********/
                    List<StationRole> insertlist = new List<StationRole>();
                    /*****删除列表*********/
                    List<StationRole> deletelist = new List<StationRole>();

                    /*原有列表*/
                    var existlist = (from i in DbContext.StationRole
                                     where i.StationId.Equals(info.Id)
                                     select i).ToList();

                    /*************如果为选中且没有关联表id则为新增******************/
                    foreach (var rfinfo in info.StationRoleInfoList)
                    {
                        if (string.IsNullOrEmpty(rfinfo.Id) && rfinfo.Selected)
                        {
                            /*************如果为选中且没有关联表id则为新增******************/
                            rfinfo.Id = System.Guid.NewGuid().ToString();
                            rfinfo.StationId = info.Id;
                            StationRole StationRole = new StationRole();
                            DESwap.StationRoleDTE(rfinfo, StationRole);
                            insertlist.Add(StationRole);
                        }
                        else if (!string.IsNullOrEmpty(rfinfo.Id) && rfinfo.Selected == false)
                        {
                            /*************如果为未选中且有关联表id则为删除******************/
                            var StationRole = existlist.Where(x => x.Id.Equals(rfinfo.Id)).FirstOrDefault();
                            if (StationRole == null)
                            {
                                deletelist.Add(StationRole);
                            }
                        }
                    }

                    StationRoleRpt.Insert(DbContext, insertlist);
                    StationRoleRpt.Delete(DbContext, deletelist);
                }
                DbContext.SaveChanges();

                result.ResultType = OperationResultType.Success;
                result.Message = "操作成功!";
                return result;
            }
        }
예제 #2
0
 public virtual OperationResult Create(StationInfo info)
 {
     OperationResult result = new OperationResult(OperationResultType.Error, "操作失败,请稍后重试!");
     using (var DbContext = new UCDbContext())
     {
       Station entity = new Station();
       DESwap.StationDTE(info, entity);
       StationRpt.Insert(DbContext, entity);
       DbContext.SaveChanges();
     }
     result.ResultType = OperationResultType.Success;
     result.Message = "操作成功!";
     return result;
 }
예제 #3
0
        public virtual List<StationInfo> ListAllByCondition(NameValueCollection searchCondtionCollection, NameValueCollection sortCollection)
        {
            List<Station> list = null;

            using (var DbContext = new UCDbContext())
            {
            var query = from i in DbContext.Station
                        select i;

            #region 条件
            foreach (string key in searchCondtionCollection)
            {
                string condition = searchCondtionCollection[key];
                switch (key.ToLower())
                {
                    case "isvalid":
                        int value = Convert.ToInt32(condition);
                        query = query.Where(x => x.SYS_IsValid.Equals(value));
                        break;
                    default:
                        break;
                }
            }
            #endregion

            #region 排序
            foreach (string sort in sortCollection)
            {
                string direct = string.Empty;
                switch (sort.ToLower())
                {
                    case "createtime":
                        if (direct.ToLower().Equals("asc"))
                        {
                            query = query.OrderBy(x => new { x.SYS_CreateTime });
                        }
                        else
                        {
                            query = query.OrderByDescending(x => new { x.SYS_CreateTime });
                        }
                        break;
                    default:
                        query = query.OrderByDescending(x => new { x.SYS_OrderSeq });
                        break;
                }
            }
               list = query.ToList();
            }
            #endregion
            #region linq to entity
            List<StationInfo> ilist = new List<StationInfo>();
            list.ForEach(x =>
            {
                StationInfo info = new StationInfo();
                DESwap.StationETD(x, info);
                ilist.Add(info);
            });
            #endregion

            return ilist;;
        }
예제 #4
0
 public virtual StationInfo Load(string key)
 {
     StationInfo info = new StationInfo();
     using (var DbContext = new UCDbContext())
     {
     Station entity = StationRpt.Get(DbContext, key);
     DESwap.StationETD(entity,info);
     }
     return info;
 }
예제 #5
0
        /// <summary>
        /// 重载读取岗位内容,加载关联的功能列表
        /// </summary>
        /// <param name="key"></param>
        /// <returns></returns>
        public override StationInfo Load(string key)
        {
            StationInfo info = new StationInfo();
            using (var DbContext = new UCDbContext())
            {
                Station entity = StationRpt.Get(DbContext, key);
                if (info != null)
                {
                    DESwap.StationETD(entity, info);

                    /*******查询关联权限*******/
                    var fflist = (from i in DbContext.StationRole
                                  where i.StationId.Equals(info.Id)
                                  select i).ToList();
                    info.StationRoleInfoList = new List<StationRoleInfo>();
                    fflist.ForEach(x =>
                    {
                        StationRoleInfo rfinfo = new StationRoleInfo();
                        DESwap.StationRoleETD(x, rfinfo);
                        info.StationRoleInfoList.Add(rfinfo);
                    });
                }

            }
            return info;
        }
예제 #6
0
 public JsonResult UpdateStationValid(string key, string validstatus)
 {
     StationInfo info = new StationInfo();
     if (!string.IsNullOrEmpty(key) && !string.IsNullOrEmpty(validstatus))
     {
         info.Id = key;
         info.SYS_IsValid = int.Parse(validstatus);
         OperationResult opr = StationService.Modify(info);
         return Json(new JsonResultHelper(opr.Message));
     }
     else
     {
         return Json(new JsonResultHelper(false, "选择的记录无效", ""));
     }
 }
예제 #7
0
        public ViewResult StationForm(string key)
        {
            ViewBag.Title = "StationForm";
            ViewBag.DicCompany = PublicMethod.ListAllCompanyInfo(CompanyService, null);
            ViewBag.DicDepartment = PublicMethod.ListAllDepartmentInfo(DepartmentService, null);
            ViewBag.DicStation = PublicMethod.ListAllStationInfo(StationService, key);

            /*所有角色*/
            NameValueCollection nvc = new NameValueCollection();
            nvc.Add("isvalid", "1");
            NameValueCollection orderby = new NameValueCollection();
            orderby.Add("rolename", "asc");
            List<RoleInfo> rdatalist = RoleService.ListAllByCondition(nvc, orderby);

            if (string.IsNullOrEmpty(key))
            {
                StationInfo info = new StationInfo();

                var srdatalist = new List<StationRoleInfo>();
                var datalist = (from f in rdatalist
                                join ff in srdatalist on f.Id equals ff.RoleId into templist
                                from tp in templist.DefaultIfEmpty()
                                select new StationRoleInfo()
                                {
                                    Id = tp == null ? "" : tp.Id,
                                    StationId = tp == null ? "" : tp.StationId,
                                    RoleId = f.Id,
                                    RoleName = f.RoleName,
                                    Selected = tp == null ? false : true

                                }).ToList();
                info.StationRoleInfoList = datalist;
                return View(info);
            }
            else
            {
                StationInfo info = StationService.Load(key);
                var datalist = (from f in rdatalist
                                join ff in info.StationRoleInfoList on f.Id equals ff.RoleId into templist
                                from tp in templist.DefaultIfEmpty()
                                select new StationRoleInfo()
                                {
                                    Id = tp == null ? "" : tp.Id,
                                    StationId = tp == null ? "" : tp.StationId,
                                    RoleId = f.Id,
                                    RoleName = f.RoleName,
                                    Selected = tp == null ? false : true

                                }).ToList();
                info.StationRoleInfoList = datalist;
                return View(info);
            }
        }
예제 #8
0
        public ActionResult SaveStation(StationInfo info)
        {
            OperationResult opr = new OperationResult(OperationResultType.Success);
            try
            {
                if (string.IsNullOrEmpty(info.Id))
                {
                    info.Id = System.Guid.NewGuid().ToString();
                    opr = StationService.Create(info);
                }
                else
                {
                    opr = StationService.Modify(info);

                }
                ViewBag.DicCompany = PublicMethod.ListAllCompanyInfo(CompanyService, null);
                ViewBag.DicDepartment = PublicMethod.ListAllDepartmentInfo(DepartmentService, null);
                ViewBag.DicStation = PublicMethod.ListAllStationInfo(StationService, info.Id);

                ViewBag.PromptMsg = opr.Message;
            }
            catch (Exception err)
            {
                ViewBag.PromptMsg = err.Message;
            }

            return View("StationForm", info);
        }
예제 #9
0
 public JsonResult DeleteStation(string key)
 {
     StationInfo info = new StationInfo();
     if (!string.IsNullOrEmpty(key))
     {
         info.Id = key;
         OperationResult opr = StationService.Remove(key);
         return Json(new JsonResultHelper(opr.Message));
     }
     else
     {
         return Json(new JsonResultHelper(false, "选择的记录无效", ""));
     }
 }
예제 #10
0
파일: DESwap.cs 프로젝트: liurongjin/frame
        public static void StationETD(Station entity, StationInfo info)
        {
            info.Id = entity.Id;
               info._IdIsDirty = 0;

               info.ParentId = entity.ParentId;
               info._ParentIdIsDirty = 0;

               info.DepartmentId = entity.DepartmentId;
               info._DepartmentIdIsDirty = 0;

               info.StationName = entity.StationName;
               info._StationNameIsDirty = 0;

               info.TreeNode = entity.TreeNode;
               info._TreeNodeIsDirty = 0;

               info.SYS_OrderSeq = entity.SYS_OrderSeq;
               info._SYS_OrderSeqIsDirty = 0;

               info.SYS_IsValid = entity.SYS_IsValid;
               info._SYS_IsValidIsDirty = 0;

               info.SYS_IsDeleted = entity.SYS_IsDeleted;
               info._SYS_IsDeletedIsDirty = 0;

               info.SYS_Remark = entity.SYS_Remark;
               info._SYS_RemarkIsDirty = 0;

               info.SYS_StaffId = entity.SYS_StaffId;
               info._SYS_StaffIdIsDirty = 0;

               info.SYS_StationId = entity.SYS_StationId;
               info._SYS_StationIdIsDirty = 0;

               info.SYS_DepartmentId = entity.SYS_DepartmentId;
               info._SYS_DepartmentIdIsDirty = 0;

               info.SYS_CompanyId = entity.SYS_CompanyId;
               info._SYS_CompanyIdIsDirty = 0;

               info.SYS_AppId = entity.SYS_AppId;
               info._SYS_AppIdIsDirty = 0;

               info.SYS_CreateTime = entity.SYS_CreateTime;
               info._SYS_CreateTimeIsDirty = 0;

               info.SYS_ModifyTime = entity.SYS_ModifyTime;
               info._SYS_ModifyTimeIsDirty = 0;

               info.SYS_DeleteTime = entity.SYS_DeleteTime;
               info._SYS_DeleteTimeIsDirty = 0;
        }