MapperConfigs.cs 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263
  1. using Hotline.Share.Dtos.Order;
  2. using Mapster;
  3. using Sharing.Province.Extend;
  4. using Sharing.Province.HuiJu.Send;
  5. using Sharing.Province.XieTong.Receive;
  6. using Sharing.Province.XieTong.Send;
  7. namespace Sharing.Application.Mappers
  8. {
  9. public class MapperConfigs : IRegister
  10. {
  11. public void Register(TypeAdapterConfig config)
  12. {
  13. //服务工单受理
  14. config.ForType<OrderDto, SubmitCaseInfo>()
  15. .Ignore(d => d.Id)
  16. .Map(d => d.OrderID, x => x.Id)
  17. .Map(d => d.CaseTitle, x => x.Title)
  18. .Map(d => d.CaseRegister, x => x.AcceptorName)
  19. .Map(d => d.CaseRegisterNo, x => x.AcceptorStaffNo)
  20. .Map(d => d.CaseDate, x => Convert.ToDateTime(x.CreationTime))
  21. .Map(d => d.PhoneNumber, x => x.Contact)
  22. .Map(d => d.AppLicantName, x => x.FromName)
  23. .Map(d => d.AppLicantAge, x => x.AgeRangeCode)
  24. .Map(d => d.AppLicantId, x => x.LicenceNo)
  25. .Map(d => d.CaseAccord, x => x.Hotspot.ProvinceCode)
  26. .Map(d => d.CaseContent, x => x.Content)
  27. .Map(d => d.CaseProcessType, x => Convert.ToInt32(x.ProcessType))
  28. .Map(d => d.CaseIsSecrect, x => x.IsSecret)
  29. .Map(d => d.CaseIsVisit, x => x.ProcessType == Hotline.Share.Enums.Order.EProcessType.Zhiban ? "0" : "1")
  30. .Map(d => d.EventDate, x => x.IncidentTime)
  31. .Map(d => d.PushType, x => x.PushTypeCode)
  32. .Map(d => d.AreaCode, x => x.AreaCode)
  33. .Map(d => d.CaseSerial, x => x.ToProvinceNo)
  34. ;
  35. //服务工单处理过程
  36. config.ForType<OrderFlowDto, SubmitCaseProcess>()
  37. .Map(d => d.CaseSerial, x => x.Order.ToProvinceNo)
  38. .Map(d => d.DeptName, x => x.WorkflowTrace.OrgName)
  39. .Map(d => d.ProcessTime, x => x.WorkflowTrace.CompleteTime)
  40. .Map(d => d.ProcessName, x => x.WorkflowTrace.UserName)
  41. .Map(d => d.ProcessNote, x => x.WorkflowTrace.Opinion)
  42. .Map(d => d.EndAreaCode, x => x.WorkflowTrace.OrgAreaCode)
  43. .Map(d => d.EndAreaName, x => x.WorkflowTrace.OrgAreaName)
  44. .Map(d => d.CaseId, x => x.WorkflowTrace.Id)
  45. .Map(d => d.AreaCode, x => x.Order.AreaCode)
  46. ;
  47. //服务工单交办处理过程
  48. config.ForType<OrderFlowDto, GetCaseProcessReceive>()
  49. .Map(d => d.CaseSerial, x => x.Order.FromProvinceNo)
  50. .Map(d => d.DeptName, x => x.WorkflowTrace.OrgName)
  51. .Map(d => d.ProcessTime, x => x.WorkflowTrace.CompleteTime)
  52. .Map(d => d.ProcessName, x => x.WorkflowTrace.UserName)
  53. .Map(d => d.ProcessNote, x => x.WorkflowTrace.Opinion)
  54. .Map(d => d.EndAreaCode, x => x.WorkflowTrace.OrgAreaCode)
  55. .Map(d => d.EndAreaName, x => x.WorkflowTrace.OrgAreaName)
  56. .Map(d => d.TrowGuid, x => x.WorkflowTrace.Id)
  57. .Map(d => d.AreaCode, x => x.Order.AreaCode)
  58. ;
  59. //服务工单回访评价
  60. config.ForType<PublishVisitDto, SubmitVisitInfo>()
  61. .Map(d => d.CaseSerial, x => x.Order.ToProvinceNo)
  62. ;
  63. //服务工单交办评价
  64. config.ForType<PublishVisitDto, GetVisitInfoReceive>()
  65. .Map(d => d.CaseSerial, x => x.Order.FromProvinceNo)
  66. ;
  67. //汇聚扩展数据--投诉
  68. config.ForType<OrderComplainDto, FormMarket>()
  69. .Map(d => d.ApplBasQue, x => x.ComplainClassifyCode)
  70. .Map(d => d.ApplBasQueName, x => x.ComplainClassify)
  71. .Map(d => d.Zlh, x => x.PatentNo)
  72. .Map(d => d.Zlqr, x => x.Patentee)
  73. .Map(d => d.Fmmc, x => x.PatentName)
  74. .Map(d => d.Zllx, x => x.PatentTypeCode)
  75. .Map(d => d.ZllxMc, x => x.PatentType)
  76. .Map(d => d.Accsce, x => x.BusinessPosition.AreaCode)
  77. .Map(d => d.Sfdd, x => x.BusinessPosition.FullAddress)
  78. .Map(d => d.ControversyTime, x => x.OccurrenceTime)
  79. .Map(d => d.OBType, x => x.ObjectClassifyCode)
  80. .Map(d => d.OBTypeName, x => x.ObjectClassify)
  81. .Map(d => d.MdseName, x => x.ObjectClassify)
  82. .Map(d => d.SaleMode, x => x.SalesModeCode)
  83. .Map(d => d.DsptType, x => x.ComplainTargetCode)
  84. .Map(d => d.DsptCode, x => x.ECommercePlatformCode)
  85. .Map(d => d.DsptName, x => x.ECommercePlatform)
  86. .Map(d => d.BrandCode, x => x.BrandCode)
  87. .Map(d => d.BrandName, x => x.Brand)
  88. .Map(d => d.BIdNo, x => x.ExternalOrderNo)
  89. .Map(d => d.InvoAm, x => x.Amount)
  90. .Map(d => d.Jtqdtype, x => x.SalesChannelCode)
  91. .Map(d => d.Jtqdname, x => x.SalesChannel)
  92. .Map(d => d.ProdName, x => x.ProductName)
  93. .Map(d => d.ProdAppNo, x => x.ApprovalNumber)
  94. .Map(d => d.ProdPatchNo, x => x.ProductBatchNo)
  95. .Map(d => d.ProdTypeSpf, x => x.ProductStandard)
  96. .Map(d => d.ProdFty, x => x.Manufacturer)
  97. .Map(d => d.ProdSalEnt, x => x.SalesEnterprise)
  98. .Map(d => d.ProdValid, x => x.ProductExpiredTime.ToString())
  99. .Map(d => d.ProviderAddr, x => x.ConsumerAddress)
  100. .Map(d => d.Invopt, x => x.EnterpriseName)
  101. .Map(d => d.UBindType, x => x.IndustryClassifyCode)
  102. .Map(d => d.UBindTypeName, x => x.IndustryClassify)
  103. .Map(d => d.EntType, x => x.MarketTypeCode)
  104. .Map(d => d.EntTypeName, x => x.MarketType)
  105. .Map(d => d.Addr, x => x.RegisterAddress)
  106. .Map(d => d.Sjztlxr, x => x.EnterpriseContact)
  107. .Map(d => d.Nbxh, x => x.UnifiedSocialCreditCode)
  108. .Map(d => d.RegNo, x => x.RegisterNumber)
  109. .Map(d => d.CertType, x => x.LicenceTypeCode)
  110. .Map(d => d.CertTypeName, x => x.LicenceType)
  111. .Map(d => d.CertNo, x => x.LicenceNo)
  112. .Map(d => d.ReveType, x => x.IdentityTypeCode)
  113. .Map(d => d.ReveTypeName, x => x.IdentityType)
  114. .Map(d => d.Nationality, x => x.NationalityCode)
  115. .Map(d => d.NationalityName, x => x.Nationality)
  116. .Map(d => d.Folk, x => x.NationCode)
  117. .Map(d => d.FolkName, x => x.Nation)
  118. .Map(d => d.Peride, x => x.IdentityCode)
  119. .Map(d => d.PerideName, x => x.Identity)
  120. .Map(d => d.ProviderMail, x => x.Email)
  121. .Map(d => d.Qtlxfs, x => x.OtherContact)
  122. ;
  123. //汇聚扩展数据--举报
  124. config.ForType<OrderReportDto, FormMarket>()
  125. .Map(d => d.ApplBasQue, x => x.ReportClassifyCode)
  126. .Map(d => d.ApplBasQueName, x => x.ReportClassify)
  127. .Map(d => d.Zlh, x => x.PatentNo)
  128. .Map(d => d.Zlqr, x => x.Patentee)
  129. .Map(d => d.Fmmc, x => x.PatentName)
  130. .Map(d => d.Zllx, x => x.PatentTypeCode)
  131. .Map(d => d.ZllxMc, x => x.PatentType)
  132. .Map(d => d.OBType, x => x.ObjectClassifyCode)
  133. .Map(d => d.OBTypeName, x => x.ObjectClassify)
  134. .Map(d => d.MdseName, x => x.ObjectClassify)
  135. .Map(d => d.SaleMode, x => x.SalesModeCode)
  136. .Map(d => d.DsptType, x => x.ReportTargetCode)
  137. .Map(d => d.DsptCode, x => x.ECommercePlatformCode)
  138. .Map(d => d.DsptName, x => x.ECommercePlatform)
  139. .Map(d => d.BrandCode, x => x.BrandCode)
  140. .Map(d => d.BrandName, x => x.Brand)
  141. .Map(d => d.BIdNo, x => x.ExternalOrderNo)
  142. .Map(d => d.InvoAm, x => x.Amount)
  143. .Map(d => d.Jtqdtype, x => x.SalesChannelCode)
  144. .Map(d => d.Jtqdname, x => x.SalesChannel)
  145. .Map(d => d.ProdName, x => x.ProductName)
  146. .Map(d => d.ProdAppNo, x => x.ApprovalNumber)
  147. .Map(d => d.ProdPatchNo, x => x.ProductBatchNo)
  148. .Map(d => d.ProdTypeSpf, x => x.ProductStandard)
  149. .Map(d => d.ProdFty, x => x.Manufacturer)
  150. .Map(d => d.ProdSalEnt, x => x.SalesEnterprise)
  151. .Map(d => d.ProdValid, x => x.ProductExpiredTime.ToString())
  152. .Map(d => d.ProviderAddr, x => x.ConsumerAddress)
  153. .Map(d => d.Invopt, x => x.EnterpriseName)
  154. .Map(d => d.UBindType, x => x.IndustryClassifyCode)
  155. .Map(d => d.UBindTypeName, x => x.IndustryClassify)
  156. .Map(d => d.EntType, x => x.MarketTypeCode)
  157. .Map(d => d.EntTypeName, x => x.MarketType)
  158. .Map(d => d.Addr, x => x.RegisterAddress)
  159. .Map(d => d.Sjztlxr, x => x.EnterpriseContact)
  160. .Map(d => d.Nbxh, x => x.UnifiedSocialCreditCode)
  161. .Map(d => d.RegNo, x => x.RegisterNumber)
  162. .Map(d => d.CertType, x => x.LicenceTypeCode)
  163. .Map(d => d.CertTypeName, x => x.LicenceType)
  164. .Map(d => d.CertNo, x => x.LicenceNo)
  165. .Map(d => d.ReveType, x => x.IdentityTypeCode)
  166. .Map(d => d.ReveTypeName, x => x.IdentityType)
  167. .Map(d => d.Nationality, x => x.NationalityCode)
  168. .Map(d => d.NationalityName, x => x.Nationality)
  169. .Map(d => d.Folk, x => x.NationCode)
  170. .Map(d => d.FolkName, x => x.Nation)
  171. .Map(d => d.Peride, x => x.IdentityCode)
  172. .Map(d => d.PerideName, x => x.Identity)
  173. .Map(d => d.ProviderMail, x => x.Email)
  174. .Map(d => d.Qtlxfs, x => x.OtherContact)
  175. ;
  176. //接收
  177. //工单交办
  178. config.ForType<ReceiveCaseInfo, OrderDto>()
  179. .Map(d => d.FromProvinceNo, x => x.CaseSerial)
  180. .Map(d => d.Title, x => x.CaseTitle)
  181. .Map(d => d.AcceptorName, x => x.CaseRegister)
  182. .Map(d => d.AcceptorStaffNo, x => x.CaseRegisterNo)
  183. .Map(d => d.CreationTime, x => x.CaseDate)
  184. .Map(d => d.Contact, x => x.PhoneNumber)
  185. .Map(d => d.FromName, x => x.AppLicantName)
  186. .Map(d => d.AgeRangeCode, x => x.AppLicantAge)
  187. .Map(d => d.LicenceNo, x => x.AppLicantId)
  188. .Map(d => d.Hotspot.ProvinceCode, x => x.CaseAccord)
  189. .Map(d => d.Content, x => x.CaseContent)
  190. .Map(d => d.ProcessType, x => x.CaseProcessType)
  191. .Map(d => d.IsSecret, x => x.CaseIsSecrect == "1" ? true : false)
  192. .Map(d => d.IsPublicity, x => x.CaseIsPublic == "1" ? true : false)
  193. .Map(d => d.ExpiredTimeProvince, x => x.TfdBackTimeBf)
  194. .Map(d => d.AreaCode, x => x.AreaCode)
  195. .Map(d => d.Street, x => x.CaseAddress)
  196. .Map(d => d.IncidentTime, x => x.EventDate)
  197. .Map(d => d.SourceChannel, x => x.CaseSource)
  198. ;
  199. //以下未完全转换
  200. //服务工单处理结果
  201. config.ForType<OrderFlowDto, SubmitCaseResult>()
  202. .Map(d => d.CaseSerial, x => x.Order.ToProvinceNo)
  203. .Map(d => d.DeptName, x => x.Order.ActualHandleOrgName)
  204. .Map(d => d.FinishTime, x => x.Order.ActualHandleTime)
  205. .Map(d => d.FinishName, x => x.Order.ActualHandlerName)
  206. .Map(d => d.FinishNote, x => x.Order.ActualOpinion)
  207. .Map(d => d.EndDept, x => x.Order.ActualHandleOrgName)
  208. .Map(d => d.EndName, x => x.Order.ActualHandlerName)
  209. .Map(d => d.SendTime, x => x.Order.Workflow.AssignTime)//需要确认
  210. .Map(d => d.FdBack, x => x.Order.ActualOpinion)
  211. .Map(d => d.AreaCode, x => x.Order.AreaCode)
  212. .Map(d => d.EndAreaCode, x => x.Order.ActualHandleOrgAreaCode)
  213. .Map(d => d.EndAreaName, x => x.Order.ActualHandleOrgAreaName)
  214. .Map(d => d.SignTimeBf, x => x.Order.ExpiredTime)
  215. .Map(d => d.SignTime, x => x.Order.StartTime)//缺少签收时间
  216. .Map(d => d.FdBackTimeBf, x => x.Order.ExpiredTime)
  217. .Map(d => d.FdBackTime, x => x.Order.ActualHandleTime)
  218. ;
  219. ///服务工单交办处理结果
  220. config.ForType<OrderFlowDto, GetCaseResultReceive>()
  221. .Map(d => d.CaseSerial, x => x.Order.ToProvinceNo)
  222. .Map(d => d.DeptName, x => x.Order.ActualHandleOrgName)
  223. .Map(d => d.FinishTime, x => x.Order.ActualHandleTime)
  224. .Map(d => d.FinishName, x => x.Order.ActualHandlerName)
  225. .Map(d => d.FinishNote, x => x.Order.ActualOpinion)
  226. .Map(d => d.EndDept, x => x.Order.ActualHandleOrgName)
  227. .Map(d => d.EndName, x => x.Order.ActualHandlerName)
  228. .Map(d => d.SendTime, x => x.Order.Workflow.AssignTime)//需要确认
  229. .Map(d => d.FdBack, x => x.Order.ActualOpinion)
  230. .Map(d => d.AreaCode, x => x.Order.AreaCode)
  231. .Map(d => d.EndAreaCode, x => x.Order.ActualHandleOrgAreaCode)
  232. .Map(d => d.EndAreaName, x => x.Order.ActualHandleOrgAreaName)
  233. ;
  234. }
  235. }
  236. }