Ejemplo n.º 1
0
        public static List <PolicySyncRec> SynchronizePolicy(List <Policies> _list)
        {
            List <PolicySyncRec> errList = new List <PolicySyncRec>();
            bool flag = true;

            string[]         arryPolicyId91e = _list.Select(o => o.PartnerPolicyId).ToArray();
            PolicySyncRecLib syncRecLib      = new PolicySyncRecLib();

            // List<string> existIdList =syncRecLib.ExistPartenerIdList(arryPolicyId91e);
            syncRecLib.BatchDelPolicy(arryPolicyId91e);//先批量置为无效,然后从新添加一条
            List <PolicySyncRec> list       = MapperHelper.GetEntityList <List <Policies>, List <PolicySyncRec> >(_list);
            List <PolicyDetail>  listDetail = MapperHelper.GetEntityList <List <Policies>, List <PolicyDetail> >(_list);

            foreach (var item in list)
            {
                item.PartnerId   = (int)SupplierType._19E;
                item.PartnerName = SupplierType._19E.ToString();
                PolicyDetail policyDeatil = listDetail.FirstOrDefault(x => x.PolicyId == item.Id);
                //if (existIdList.Contains(item.PartnerPolicyId))
                //{

                //   flag = syncRecLib.Update(item, policyDeatil);//更新
                //    if(!flag)
                //    {
                //        errList.Add(item);
                //    }
                //}
                //else
                //{
                flag = syncRecLib.Add(item, policyDeatil);    //添加
                if (!flag)
                {
                    errList.Add(item);
                }
                //}
            }

            return(errList);
        }