Ejemplo n.º 1
0
        /// <summary>
        /// 新增汇报上级
        /// </summary>
        /// <param name="position"></param>
        /// <returns></returns>
        public Position AddReportTo(Position position)
        {
            if (!PositionInfoRepo.Exists(position.MappingTo <PositionInfo>()) ||
                !PositionInfoRepo.Exists(this.MappingTo <PositionInfo>()))
            {
                throw new Exception("岗位不存在");
            }
            PositionReportToInfo reportToInfo = new PositionReportToInfo();

            reportToInfo.OrganizationId       = this.OrganizationId;
            reportToInfo.PositionId           = this.Id;
            reportToInfo.HigherOrganizationId = position.OrganizationId;
            reportToInfo.HigherPositionId     = position.Id;
            PositionReportToInfoRepo.Save(reportToInfo);
            return(position);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 移除汇报上级
        /// </summary>
        /// <param name="position"></param>
        /// <returns></returns>
        public Position RemoveReportTo(Position position)
        {
            if (!PositionInfoRepo.Exists(position.MappingTo <PositionInfo>()) ||
                !PositionInfoRepo.Exists(this.MappingTo <PositionInfo>()))
            {
                throw new Exception("岗位不存在");
            }
            PositionReportToInfo reportToInfo =
                PositionReportToInfoRepo.Read()
                .FirstOrDefault(
                    p =>
                    p.PositionId == this.Id && p.HigherOrganizationId == position.OrganizationId &&
                    p.HigherPositionId == position.Id &&
                    p.OrganizationId == this.OrganizationId);

            //reportToInfo.OrganizationId = this.OrganizationId;
            //reportToInfo.PositionId = this.Id;
            //reportToInfo.HigherOrganizationId = position.OrganizationId;
            //reportToInfo.HigherPositionId = position.Id;
            PositionReportToInfoRepo.Delete(reportToInfo);
            return(position);
        }