示例#1
0
        /// <summary>
        /// 根据id获取审批规则
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public GetCorpAduitConfigResponseViewModel GetCorpAduitConfigById(GetCorpAduitConfigRequestViewModel request)
        {
            GetCorpAduitConfigResponseViewModel viewModel = new GetCorpAduitConfigResponseViewModel();

            if (request.ConfigId.HasValue)
            {
                CorpAduitConfigModel corpAduitConfigModel =
                    _getCorpAduitConfigServiceBll.GetCorpAduitConfigById(request.ConfigId.Value);
                viewModel.AduitConfigRule =
                    Mapper.Map <CorpAduitConfigModel, CorpAduitConfigViewModel>(corpAduitConfigModel);
            }

            viewModel.AduitONameList = new List <SortedListViewModel>();

            List <CustomerModel> customerModels = _getCustomerServiceBll.GetCustomerByCorpId(request.CorpId);

            customerModels = customerModels.FindAll(n => n.IsCheckPerson == "T" && n.IsDel == "F" && n.IsLock == "F");
            customerModels.ForEach(n =>
            {
                viewModel.AduitONameList.Add(new SortedListViewModel()
                {
                    Key   = n.Cid,
                    Value = n.RealName
                });
            });

            return(viewModel);
        }
        public CorpAduitConfigModel GetCorpAduitConfigById(int configId)
        {
            CorpAduitConfigEntity corpAduitConfigEntity = _corpAduitConfigDal.Find <CorpAduitConfigEntity>(configId);
            List <CorpAduitConfigDetailEntity> corpAduitConfigDetailEntities =
                _corpAduitConfigDetailDal.Query <CorpAduitConfigDetailEntity>(
                    n => n.ConfigId == corpAduitConfigEntity.ConfigId, true).OrderBy(n => n.AduitLevel)
                .ToList();

            List <int> cidList = new List <int>();

            corpAduitConfigDetailEntities.ForEach(n =>
            {
                cidList.Add(n.AduitCid);
            });

            List <CustomerInfoEntity> customerInfoEntities =
                _customerDal.Query <CustomerInfoEntity>(n => cidList.Contains(n.Cid), true).ToList();

            CorpAduitConfigModel corpAduitConfigModel =
                Mapper.Map <CorpAduitConfigEntity, CorpAduitConfigModel>(corpAduitConfigEntity);

            corpAduitConfigModel.DetailList =
                Mapper.Map <List <CorpAduitConfigDetailEntity>, List <CorpAduitConfigDetailModel> >(
                    corpAduitConfigDetailEntities);

            foreach (var corpAduitConfigDetailModel in corpAduitConfigModel.DetailList)
            {
                var customer = customerInfoEntities.Find(n => n.Cid == corpAduitConfigDetailModel.AduitCid);
                corpAduitConfigDetailModel.AduitName     = customer?.RealName;
                corpAduitConfigDetailModel.IsCheckPerson = (customer?.IsCheckPerson == "T");
            }

            return(corpAduitConfigModel);
        }
        public UpdateCorpAduitConfigResponseViewModel Update(UpdateCorpAduitConfigRequestViewModel request)
        {
            CorpAduitConfigModel corpAduitConfigModel =
                Mapper.Map <UpdateCorpAduitConfigRequestViewModel, CorpAduitConfigModel>(request);


            bool flag = false;

            using (var transaction = this.Context.Database.BeginTransaction())
            {
                try
                {
                    flag = _editCorpAduitConfigServiceBll.EditCorpAduitConfig(corpAduitConfigModel);
                    transaction.Commit();
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    throw;
                }
            }

            return(new UpdateCorpAduitConfigResponseViewModel()
            {
                IsSuccessed = flag
            });
        }
示例#4
0
        public bool EditCorpAduitConfig(CorpAduitConfigModel model)
        {
            if (model.DetailList != null && model.DetailList.Count > 0)
            {
                List <int> orderTypeList = new List <int>
                {
                    (int)OrderSourceTypeEnum.Flt,
                    (int)OrderSourceTypeEnum.FltModApply,
                    (int)OrderSourceTypeEnum.FltRetApply,
                    (int)OrderSourceTypeEnum.Tra
                };
                foreach (var i in orderTypeList)
                {
                    var tList = model.DetailList.FindAll(n => n.OrderType == i);
                    if (tList != null && tList.Count > 0)
                    {
                        Check(tList);
                    }
                }
            }

            CorpAduitConfigEntity corpAduitConfigEntity = Mapper.Map <CorpAduitConfigModel, CorpAduitConfigEntity>(model);

            _corpAduitConfigDal.Update(corpAduitConfigEntity,
                                       new string[] { "AduitName", "IsNeedAduit", "IsDel", "TogetherAduitType" });

            //清空关联关系
            List <CorpAduitConfigDetailEntity> corpAduitConfigDetailEntities =
                _corpAduitConfigDetailDal.Query <CorpAduitConfigDetailEntity>(
                    n => n.ConfigId == corpAduitConfigEntity.ConfigId, true).ToList();

            foreach (var corpAduitConfigDetailEntity in corpAduitConfigDetailEntities)
            {
                _corpAduitConfigDetailDal.Delete <CorpAduitConfigDetailEntity>(corpAduitConfigDetailEntity.Id);
            }

            List <CorpAduitConfigDetailEntity> requestCorpAduitConfigDetailEntities = Mapper
                                                                                      .Map <List <CorpAduitConfigDetailModel>, List <CorpAduitConfigDetailEntity> >(
                model.DetailList);

            foreach (var requestCorpAduitConfigDetailEntity in requestCorpAduitConfigDetailEntities)
            {
                if ((requestCorpAduitConfigDetailEntity.PolicyTypeAduit ?? 0) == 0)
                {
                    throw new Exception("请设置差旅政策审批使用范围");
                }
                requestCorpAduitConfigDetailEntity.ConfigId = corpAduitConfigEntity.ConfigId;
                _corpAduitConfigDetailDal.Insert(requestCorpAduitConfigDetailEntity);
            }

            return(true);
        }
        public bool AddCorpAduitConfig(CorpAduitConfigModel model)
        {
            if (model.DetailList != null && model.DetailList.Count > 0)
            {
                List <int> orderTypeList = new List <int>
                {
                    (int)OrderSourceTypeEnum.Flt,
                    (int)OrderSourceTypeEnum.FltModApply,
                    (int)OrderSourceTypeEnum.FltRetApply,
                    (int)OrderSourceTypeEnum.Tra
                };
                foreach (var i in orderTypeList)
                {
                    var tList = model.DetailList.FindAll(n => n.OrderType == i);
                    if (tList != null && tList.Count > 0)
                    {
                        Check(tList);
                    }
                }
            }


            CorpAduitConfigEntity corpAduitConfigEntity = Mapper.Map <CorpAduitConfigModel, CorpAduitConfigEntity>(model);

            corpAduitConfigEntity.CreateTime = DateTime.Now;
            List <CorpAduitConfigDetailEntity> corpAduitConfigDetailEntities = Mapper
                                                                               .Map <List <CorpAduitConfigDetailModel>, List <CorpAduitConfigDetailEntity> >(
                model.DetailList);

            corpAduitConfigEntity = _corpAduitConfigDal.Insert(corpAduitConfigEntity);

            if (corpAduitConfigDetailEntities != null && corpAduitConfigDetailEntities.Count > 0)
            {
                foreach (var cporCorpAduitConfigDetailEntity in corpAduitConfigDetailEntities)
                {
                    if ((cporCorpAduitConfigDetailEntity.PolicyTypeAduit ?? 0) == 0)
                    {
                        throw new Exception("请设置差旅政策审批使用范围");
                    }

                    cporCorpAduitConfigDetailEntity.ConfigId = corpAduitConfigEntity.ConfigId;
                    _corpAduitConfigDetailDal.Insert(cporCorpAduitConfigDetailEntity);
                }
            }


            return(true);
        }