using Hotline.Share.Dtos.Order; using Hotline.Share.Enums.CallCenter; using Mapster; using Sharing.DataExchange; using Sharing.Enterprise; using Sharing.Orders; using Sharing.Province.Extend; using Sharing.Province.HuiJu.Send; using Sharing.Province.XieTong.Receive; using Sharing.Province.XieTong.Send; namespace Sharing.Application.Mappers { public class MapperConfigs : IRegister { public void Register(TypeAdapterConfig config) { //服务工单受理 config.ForType() .Ignore(d => d.Id) .Map(d => d.OrderID, x => x.Id) .Map(d => d.CaseTitle, x => x.Title) .Map(d => d.CaseRegister, x => x.AcceptorName) .Map(d => d.CaseRegisterNo, x => x.AcceptorStaffNo) .Map(d => d.CaseDate, x => Convert.ToDateTime(x.CreationTime)) .Map(d => d.PhoneNumber, x => x.Contact) .Map(d => d.AppLicantName, x => x.FromName) .Map(d => d.AppLicantAge, x => x.AgeRangeCode) .Map(d => d.AppLicantId, x => x.LicenceNo) .Map(d => d.CaseAccord, x => x.Hotspot.ProvinceCode) .Map(d => d.CaseContent, x => x.Content) .Map(d => d.CaseProcessType, x => Convert.ToInt32(x.ProcessType)) .Map(d => d.CaseIsSecrect, x => x.IsSecret ? "1" : "0") .Map(d => d.CaseIsVisit, x => x.ProcessType == Hotline.Share.Enums.Order.EProcessType.Zhiban ? "0" : "1") .Map(d => d.EventDate, x => x.IncidentTime) .Map(d => d.PushType, x => x.PushTypeCode) .Map(d => d.AreaCode, x => x.AreaCode) .Map(d => d.CaseSerial, x => x.ProvinceNo) .Map(d => d.CaseSource, x => x.SourceChannelCode) .Map(d => d.CaseAddress, x => x.FullAddress) .Map(d => d.CaseType, x => x.AcceptTypeCode) ; config.ForType() .Ignore(d => d.Id) .Map(d => d.OrderID, x => x.Id) .Map(d => d.CaseTitle, x => x.Title) .Map(d => d.CaseRegister, x => x.AcceptorName) .Map(d => d.CaseRegisterNo, x => x.AcceptorStaffNo) .Map(d => d.CaseDate, x => Convert.ToDateTime(x.CreationTime)) .Map(d => d.PhoneNumber, x => x.Contact) .Map(d => d.AppLicantName, x => x.FromName) .Map(d => d.AppLicantAge, x => x.AgeRangeCode) .Map(d => d.AppLicantId, x => x.LicenceNo) .Map(d => d.CaseAccord, x => x.Hotspot.ProvinceCode) .Map(d => d.CaseContent, x => x.Content) .Map(d => d.CaseProcessType, x => Convert.ToInt32(x.ProcessType)) .Map(d => d.CaseIsSecrect, x => x.IsSecret ? "1" : "0") .Map(d => d.CaseIsVisit, x => x.ProcessType == Hotline.Share.Enums.Order.EProcessType.Zhiban ? "0" : "1") .Map(d => d.EventDate, x => x.IncidentTime) .Map(d => d.AreaCode, x => x.AreaCode) .Map(d => d.CaseSerial, x => x.ProvinceNo) .Map(d => d.CaseSource, x => x.SourceChannelCode) .Map(d => d.CaseAddress, x => x.FullAddress) .Map(d => d.CaseType, x => x.AcceptTypeCode) ; //服务工单处理过程 config.ForType() .Map(d => d.CaseSerial, x => x.Order.ProvinceNo) .Map(d => d.DeptName, x => x.WorkflowTrace.HandlerOrgName) .Map(d => d.ProcessTime, x => x.WorkflowTrace.HandleTime) .Map(d => d.ProcessName, x => x.WorkflowTrace.HandlerName) .Map(d => d.ProcessNote, x => x.WorkflowTrace.Opinion) .Map(d => d.EndAreaCode, x => x.WorkflowTrace.HandlerOrgAreaCode) .Map(d => d.EndAreaName, x => x.WorkflowTrace.HandlerOrgAreaName) // .Map(d => d.CaseId, x => x.WorkflowTrace.Id) .Map(d => d.AreaCode, x => x.Order.AreaCode) ; //服务工单交办处理过程 config.ForType() .Map(d => d.CaseSerial, x => x.Order.ProvinceNo) .Map(d => d.DeptName, x => x.WorkflowTrace.HandlerOrgName) .Map(d => d.ProcessTime, x => x.WorkflowTrace.HandleTime) .Map(d => d.ProcessName, x => x.WorkflowTrace.HandlerName) .Map(d => d.ProcessNote, x => x.WorkflowTrace.Opinion) .Map(d => d.EndAreaCode, x => x.WorkflowTrace.HandlerOrgAreaCode) .Map(d => d.EndAreaName, x => x.WorkflowTrace.HandlerOrgAreaName) //.Map(d => d.TrowGuid, x => x.WorkflowTrace.Id) .Map(d => d.AreaCode, x => x.Order.AreaCode) ; //服务工单回访评价 config.ForType() .Map(d => d.CaseSerial, x => x.Order.ProvinceNo) .Map(d => d.SubjectResultSatify, x => x.SubjectResultSatifyCode) .Map(d => d.FirstSatisfaction, x => x.FirstSatisfactionCode) ; //服务工单交办评价 config.ForType() .Map(d => d.CaseSerial, x => x.Order.ProvinceNo) .Map(d => d.SubjectResultSatify, x => x.SubjectResultSatifyCode) ; //接收 //工单交办 config.ForType() .Map(d => d.ProvinceNo, x => x.CaseSerial) .Map(d => d.Title, x => x.CaseTitle) //.Map(d => d.AcceptorName, x => x.CaseRegister) //.Map(d => d.AcceptorStaffNo, x => x.CaseRegisterNo) //.Map(d => d.CreationTime, x => x.CaseDate) .Map(d => d.Contact, x => x.PhoneNumber) .Map(d => d.FromName, x => x.AppLicantName) .Map(d => d.AgeRangeCode, x => x.AppLicantAge) .Map(d => d.LicenceNo, x => x.AppLicantId) // .Map(d => d.Hotspot.ProvinceCode, x => x.CaseAccord) .Map(d => d.Content, x => x.CaseContent) // .Map(d => d.ProcessType, x => x.CaseProcessType) .Map(d => d.IsSecret, x => x.CaseIsSecrect == "1" ? true : false) // .Map(d => d.IsPublicity, x => x.CaseIsPublic == "1" ? true : false) .Map(d => d.ExpiredTimeProvince, x => x.TfdBackTimeBf) .Map(d => d.AreaCode, x => x.AreaCode) .Map(d => d.Street, x => x.CaseAddress) .Map(d => d.IncidentTime, x => x.EventDate) .Map(d => d.SourceChannelCode, x => x.CaseSource) ; //服务工单处理结果 config.ForType() .Map(d => d.CaseSerial, x => x.Order.ProvinceNo) .Map(d => d.DeptName, x => x.Order.ActualHandleOrgName) .Map(d => d.FinishTime, x => x.Order.ActualHandleTime) .Map(d => d.FinishName, x => x.Order.ActualHandlerName) .Map(d => d.FinishNote, x => x.Order.ActualOpinion) .Map(d => d.EndDept, x => x.Order.ActualHandleOrgName) .Map(d => d.EndName, x => x.Order.ActualHandlerName) .Map(d => d.SendTime, x => x.Order.CenterToOrgTime) .Map(d => d.FdBack, x => x.Order.ActualOpinion) .Map(d => d.AreaCode, x => x.Order.AreaCode) .Map(d => d.EndAreaCode, x => x.Order.ActualHandleOrgAreaCode) .Map(d => d.EndAreaName, x => x.Order.ActualHandleOrgAreaName) .Map(d => d.SignTimeBf, x => x.Order.ExpiredTime) .Map(d => d.SignTime, x => x.Order.ActualHandleStepAcceptTime) .Map(d => d.FdBackTimeBf, x => x.Order.ExpiredTime) .Map(d => d.FdBackTime, x => x.Order.ActualHandleTime) .Map(d => d.HandleTimeLong, x => x.Order.HandleDurationWorkday) ; ///服务工单交办处理结果 config.ForType() .Map(d => d.CaseSerial, x => x.Order.ProvinceNo) .Map(d => d.DeptName, x => x.Order.ActualHandleOrgName) .Map(d => d.FinishTime, x => x.Order.ActualHandleTime) .Map(d => d.FinishName, x => x.Order.ActualHandlerName) .Map(d => d.FinishNote, x => x.Order.ActualOpinion) .Map(d => d.EndDept, x => x.Order.ActualHandleOrgName) .Map(d => d.EndName, x => x.Order.ActualHandlerName) .Map(d => d.SendTime, x => x.Order.CenterToOrgTime) .Map(d => d.FdBack, x => x.Order.ActualOpinion) .Map(d => d.AreaCode, x => x.Order.AreaCode) .Map(d => d.EndAreaCode, x => x.Order.ActualHandleOrgAreaCode) .Map(d => d.EndAreaName, x => x.Order.ActualHandleOrgAreaName) .Map(d => d.HandleTimeLong, x => x.Order.HandleDurationWorkday) ; //通话记录 config.ForType() .Map(d => d.CallId, x => x.CallRecord.CallId) .Map(d => d.PhoneNumber, x => x.CallRecord.CPN) .Map(d => d.PhoneStatus, x => x.CallRecord.OnState == EOnState.On ? "10" : "20") .Map(d => d.IsPhoneCall, x => x.CallRecord.Direction == ECallDirection.Out ? "1" : "0") .Map(d => d.CallStart, x => x.CallRecord.AnsweredTime) .Map(d => d.CallEnd, x => x.CallRecord.ByeTime) .Map(d => d.InIvr, x => x.CallRecord.InIvrTime) .Map(d => d.InQueue, x => x.CallRecord.InQueueTime) .Map(d => d.CallTime, x => x.CallRecord.BeginRingTime) .Map(d => d.CallLength, x => x.CallRecord.TalkTime) .Map(d => d.SeatNumber, x => x.CallRecord.StaffNo) .Map(d => d.AccordUrl, x => x.CallRecord.Direction == ECallDirection.Out ? x.CallRecord.RecordUrl : x.CallRecord.OtherRecordUrl) ; //发起甄别 config.ForType() .Map(d => d.CaseSerial, x => x.Order.ProvinceNo) .Map(d => d.AreaCode, x => x.Order.AreaCode) .Map(d => d.ApplyName, x => x.Screen.CreatorName) .Map(d => d.ApplyTime, x => x.Screen.CreationTime) .Map(d => d.ApplyOuName, x => x.Screen.CreatorOrgName) .Map(d => d.ApplyReason, x => x.Screen.Content) ; //服务工单督办过程 config.ForType() .Map(d => d.SuperviseSerial, x => x.Supervise.SuperviseSerial) .Map(d => d.AreaCode, x => x.Order.AreaCode) .Map(d => d.ReplyName, x => x.Supervise.ReUser) .Map(d => d.ReplyTime, x => x.Supervise.ReplyTime) .Map(d => d.ReplyOpinion, x => x.Supervise.ReplyContent) ; //服务工单督办结果 config.ForType() .Map(d => d.SuperviseSerial, x => x.Supervise.SuperviseSerial) .Map(d => d.AreaCode, x => x.Order.AreaCode) .Map(d => d.EndName, x => x.Supervise.ReUser) .Map(d => d.EndDate, x => x.Supervise.ReplyTime) .Map(d => d.EndOpinion, x => x.Supervise.ReplyContent) ; //服务工单催单 config.ForType() .Map(d => d.RemindTime, x => x.Urge.CreationTime) .Map(d => d.RemindName, x => x.Urge.CrUser) .Map(d => d.RemindReasion, x => x.Urge.ApplyContent) .Map(d => d.AreaCode, x => x.Order.AreaCode) .Map(d => d.CaseSerial, x => x.Order.ProvinceNo) ; #region 汇聚扩展数据--拓展信息 //医疗工单 config.ForType() .Ignore(d => d.Id) .Map(d => d.MedicalName, x => x.MedName) .Map(d => d.MedicalAddr, x => x.MedAddress) .Map(d => d.DepartMent, x => x.MedDepartment) .Map(d => d.Doctor, x => x.MedDoctor) .Map(d => d.PatientName, x => x.MedPatient) .Map(d => d.ClinicCardNum, x => x.MedNo) .Map(d => d.CardNum, x => x.MedIdNo) ; //四川政务服务网技术工单 config.ForType() .Ignore(d => d.Id) .Map(d => d.ZwfwAccount, x => x.ZwfwwAccount) .Map(d => d.LinkPeson, x => x.ZwfwwContact) ; //电视购物及商铺购买退换货工单 config.ForType() .Ignore(d => d.Id) .Map(d => d.SubjectName, x => x.ExchTv) .Map(d => d.PurchaseTime, x => x.ExchTradeTime) .Map(d => d.ProductName, x => x.ExchProduct) .Map(d => d.Charge, x => x.ExchAmount) .Map(d => d.BusinessName, x => x.ExchName) .Map(d => d.BusunessAddr, x => x.ExchAddress) .Map(d => d.ReceivePerson, x => x.ExchConsignee) .Map(d => d.ReceiveAddr, x => x.ExchConsigneeAddress) ; //高速公路工单 config.ForType() .Ignore(d => d.Id) .Map(d => d.InWay, x => x.ExpwyEntrance) .Map(d => d.OutWay, x => x.ExpwyExit) .Map(d => d.OperateDate, x => x.ExpwyTime) .Map(d => d.CardNum, x => x.ExpwyNo) ; //电视台虚假广告工单 config.ForType() .Ignore(d => d.Id) .Map(d => d.SubjectName, x => x.AdTv) .Map(d => d.ProductName, x => x.AdProduct) .Map(d => d.PubContent, x => x.AdContent) ; //12366热线诉求交办 config.ForType() .Ignore(d => d.Id) .Map(d => d.TaxAuthority, x => x.Location12366Sq) .Map(d => d.ComplaintSubject, x => x.Info12366Sq) .Map(d => d.ComplaintType, x => x.Type12366Sq) ; //12366热线咨询交办 config.ForType() .Ignore(d => d.Id) .Map(d => d.TaxAuthority, x => x.Location12366Zx) .Map(d => d.ComplaintSubject, x => x.Info12366Zx) ; //12328服务监督 config.ForType() .Ignore(d => d.Id) .Map(d => d.AcceptType, x => x.AcceptType12328) .Map(d => d.Customer, x => x.Client12328) ; //邮政业消费者申诉 config.ForType() .Ignore(d => d.Id) .Map(d => d.AppealName, x => x.MailClaimantName) .Map(d => d.AppealNum, x => x.MailClaimantPhone) .Map(d => d.AppealEnterprise, x => x.MailClaimantEnterprise) .Map(d => d.SenderName, x => x.MailSenderName) .Map(d => d.SenderNum, x => x.MailSenderPhone) .Map(d => d.SenderAddr, x => x.MailSenderAddress) .Map(d => d.AddresseeName, x => x.MailReceiverName) .Map(d => d.AddresseeNum, x => x.MailReceiverPhone) .Map(d => d.AddresseeAddr, x => x.MailReceiverAddress) .Map(d => d.InsuredPrice, x => x.MailAmount) .Map(d => d.IsContact, x => x.MailIsContacted == true ? "是" : "否") .Map(d => d.OperateResult, x => x.MailResult) ; //环保举报业务 config.ForType() .Ignore(d => d.Id) .Map(d => d.ComplaintMailBox, x => x.EpEmail) .Map(d => d.PostalAddress, x => x.EpAddress) .Map(d => d.ReportObject, x => x.EpObject) .Map(d => d.DetailedAddr, x => x.EpObjectAddress) .Map(d => d.IndustryType, x => x.EpIndustryType) .Map(d => d.KeyPoint, x => x.EpKeyPoint) ; //12315个性化表单--投诉、举报 config.ForType() .Ignore(d => d.Id) .Map(d => d.ApplBasQue, x => x.ComplainClassifyCode) .Map(d => d.ApplBasQueName, x => x.ComplainClassify) .Map(d => d.Zlh, x => x.PatentNo) .Map(d => d.Zlqr, x => x.Patentee) .Map(d => d.Fmmc, x => x.PatentName) .Map(d => d.Zllx, x => x.PatentTypeCode) .Map(d => d.ZllxMc, x => x.PatentType) .Map(d => d.Accsce, x => x.BusinessPosition.AreaCode) .Map(d => d.Sfdd, x => x.BusinessPosition.FullAddress) .Map(d => d.ControversyTime, x => x.OccurrenceTime) .Map(d => d.OBType, x => x.ObjectClassifyCode) .Map(d => d.OBTypeName, x => x.ObjectClassify) .Map(d => d.MdseName, x => x.ObjectClassify) .Map(d => d.SaleMode, x => x.SalesModeCode) .Map(d => d.DsptType, x => x.ComplainTargetCode) .Map(d => d.DsptCode, x => x.ECommercePlatformCode) .Map(d => d.DsptName, x => x.ECommercePlatform) .Map(d => d.BrandCode, x => x.BrandCode) .Map(d => d.BrandName, x => x.Brand) .Map(d => d.BIdNo, x => x.ExternalOrderNo) .Map(d => d.InvoAm, x => x.Amount) .Map(d => d.Jtqdtype, x => x.SalesChannelCode) .Map(d => d.Jtqdname, x => x.SalesChannel) .Map(d => d.ProdName, x => x.ProductName) .Map(d => d.ProdAppNo, x => x.ApprovalNumber) .Map(d => d.ProdPatchNo, x => x.ProductBatchNo) .Map(d => d.ProdTypeSpf, x => x.ProductStandard) .Map(d => d.ProdFty, x => x.Manufacturer) .Map(d => d.ProdSalEnt, x => x.SalesEnterprise) .Map(d => d.ProdValid, x => x.ProductExpiredTime.ToString()) .Map(d => d.ProviderAddr, x => x.ConsumerAddress) .Map(d => d.Invopt, x => x.EnterpriseName) .Map(d => d.UBindType, x => x.IndustryClassifyCode) .Map(d => d.UBindTypeName, x => x.IndustryClassify) .Map(d => d.EntType, x => x.MarketTypeCode) .Map(d => d.EntTypeName, x => x.MarketType) .Map(d => d.Addr, x => x.RegisterAddress) .Map(d => d.Sjztlxr, x => x.EnterpriseContact) .Map(d => d.Nbxh, x => x.UnifiedSocialCreditCode) .Map(d => d.RegNo, x => x.RegisterNumber) .Map(d => d.CertType, x => x.LicenceTypeCode) .Map(d => d.CertTypeName, x => x.LicenceType) .Map(d => d.CertNo, x => x.LicenceNo) .Map(d => d.ReveType, x => x.IdentityTypeCode) .Map(d => d.ReveTypeName, x => x.IdentityType) .Map(d => d.Nationality, x => x.NationalityCode) .Map(d => d.NationalityName, x => x.Nationality) .Map(d => d.Folk, x => x.NationCode) .Map(d => d.FolkName, x => x.Nation) .Map(d => d.Peride, x => x.IdentityCode) .Map(d => d.PerideName, x => x.Identity) .Map(d => d.ProviderMail, x => x.Email) .Map(d => d.Qtlxfs, x => x.OtherContact) ; #endregion #region 市州数据交换 //市州数据-接受 config.ForType() .Ignore(d => d.Id) .Map(d => d.Title, x => x.Title) .Map(d => d.ExternalId, x => x.FSHCode) .Map(d => d.AcceptType, x => x.PurTypeName) .Map(d => d.HotspotSpliceName, x => x.ConTypeName) .Map(d => d.FromName, x => x.LinkName) .Map(d => d.FromGender, x => x.Gender) .Map(d => d.Contact, x => x.Mobile) .Map(d => d.Address, x => x.Address) .Map(d => d.Content, x => x.Content) .Map(d => d.Source, x => string.IsNullOrEmpty(x.Source) ? Hotline.Share.Enums.Order.ESource.Hotline : Hotline.Share.Enums.Order.ESource.HotlineImport) ; //市州数据-发送 config.ForType() .Ignore(d => d.Id) .Map(d => d.Title, x => x.Title) .Map(d => d.FSHCode, x => x.No) .Map(d => d.PurTypeName, x => x.AcceptType) .Map(d => d.ConTypeName, x => x.HotspotSpliceName) .Map(d => d.LinkName, x => x.FromName) .Map(d => d.Gender, x => x.FromGender) .Map(d => d.Mobile, x => x.Contact) .Map(d => d.Address, x => x.Address) .Map(d => d.Content, x => x.Content) .Map(d => d.Source, x => x.Source) ; #endregion #region 企业服务 //企业数据推送 config.ForType() .Ignore(d => d.Id) .Map(d => d.WorkOrderTitle, x => x.Title) .Map(d => d.WorkOrderNo, x => x.No) .Map(d => d.AcceptTime, x => x.CreationTime) .Map(d => d.AppealChannel, x => x.SourceChannel) .Map(d => d.ContactPhone, x => x.Contact) .Map(d => d.ContactName, x => x.FromName) .Map(d => d.AppealType, x => x.AcceptType) .Map(d => d.HotspotType, x => x.HotspotSpliceName) .Map(d => d.AppealContent, x => x.Content) .Map(d => d.UrgencyDegree, x => x.EmergencyLevel.ToString()) .Map(d => d.RegionCode, x => x.AreaCode) .Map(d => d.ExpirationTime, x => x.ExpiredTime) .Map(d => d.IncidentTime, x => x.IncidentTime) ; //企业数据推送 config.ForType() .Ignore(d => d.Id) .Map(d => d.OrderId, x => x.Order.Id) .Map(d => d.WorkflowId, x => x.Order.WorkflowId) ; #endregion } } }