Exemple #1
0
        public DoorDetailModel GetDetailModelForDoor(Door door, PropertyInfo[] propertyInfo, List <FieldHeader> fieldHeaders, List <string> companiesList)
        {
            DoorDetailModel detailModel = new DoorDetailModel();

            detailModel.ProjectId   = door.ProjectId;
            detailModel.DoorNo      = door.DoorNo;
            detailModel.DoorQty     = door.DoorQty;
            detailModel.RoomType    = door.RoomType.Content;
            detailModel.Floor       = door.Floor;
            detailModel.Id          = door.Id;
            detailModel.DoorDetails = new List <DoorDetail>();

            foreach (PropertyInfo info in propertyInfo)
            {
                if (!propertiesToIgnore.Contains(info.Name))
                {
                    DoorDetail doorDetail = GetDoorDetail(door, info, fieldHeaders, companiesList);

                    if (doorDetail != null)
                    {
                        detailModel.DoorDetails.Add(doorDetail);
                    }
                }
            }

            return(detailModel);
        }
Exemple #2
0
        public List <DoorDetailModel> GetDoorDetailModels(List <Door> doors, List <FieldHeader> fieldHeaders, List <string> companiesList)
        {
            PropertyInfo[]         propertyInfo = typeof(Door).GetProperties();
            List <DoorDetailModel> doorDetails  = new List <DoorDetailModel>();

            foreach (Door door in doors)
            {
                DoorDetailModel detailModel = GetDetailModelForDoor(door, propertyInfo, fieldHeaders, companiesList);
                doorDetails.Add(detailModel);
            }

            return(doorDetails);
        }
        public DoorDetailModel GetDoorDetailsViewWithCompanyPermissions(WorkorderDoor door, List <FieldHeader> fieldHeaders, string userName)
        {
            var detailModel = new DoorDetailModel
            {
                Id          = door.Id,
                WorkOrderId = door.WorkorderId,
                ProjectId   = door.ProjectId,
                DoorNo      = door.Door.DoorNo,
                DoorQty     = door.Door.DoorQty,
                RoomType    = door.Door.RoomType.Content,
                Floor       = door.Door.Floor,
                DoorDetails = new List <DoorDetail>()
            };

            var doorSurfDetails = new List <DoorDetail>();

            foreach (PropertyInfo info in DOOR_PROP_INFO)
            {
                if (!PROPS_TO_IGNORE.Contains(info.Name))
                {
                    DoorDetail doorDetail = GetDoorDetail(door, info, fieldHeaders, userName);
                    if (info.PropertyType.Equals(typeof(Hardware)))
                    {
                        DoorDetail doorSurfDetail = GetDoorSurfDetail(door, info, fieldHeaders);
                        if (doorSurfDetail != null)
                        {
                            doorSurfDetails.Add(doorSurfDetail);
                        }
                    }
                    if (doorDetail != null)
                    {
                        detailModel.DoorDetails.Add(doorDetail);
                    }
                }
            }

            if (doorSurfDetails.Count > 0)
            {
                detailModel.DoorDetails.AddRange(doorSurfDetails);
            }
            detailModel.DoorDetails = detailModel.DoorDetails.OrderBy(x => x.Header).ToList();
            return(detailModel);
        }