Config.cs 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846
  1. using OASystem.Domain.Dtos.Groups;
  2. using OASystem.Domain.Entities.Groups;
  3. using OASystem.Domain.ViewModels.CRM;
  4. using System.ComponentModel;
  5. namespace OASystem.API.OAMethodLib.QiYeWeChatAPI.AppNotice
  6. {
  7. public enum QiyeWeChatEnum
  8. {
  9. /// <summary>
  10. /// 测试用
  11. /// </summary>
  12. [Description("groupstatuschat01")]
  13. TestChat = 0,
  14. /// <summary>
  15. /// 团组通知-公司客户群(国交部经理、主管、财务部),发送条件(1.确认出团)
  16. /// </summary>
  17. [Description("CompanyCRMChat01")]
  18. CompanyCRMChat = 1,
  19. /// <summary>
  20. /// 团组通知-市场客户群(市场部经理、主管;国交部经理、主管)发送条件(1.确认出团) 暂时不用
  21. /// </summary>
  22. [Description("MarketCRMChat01")]
  23. MarketCRMChat,
  24. /// <summary>
  25. /// 团组通知-财务群(财务部全员),发送条件(1.费用审核-通过;2,团组出访时间出发-7 天,结束-3 天,通知财务三人签合同、收尾款)
  26. /// </summary>
  27. [Description("CaiWuChat01")]
  28. CaiWuChat,
  29. /// <summary>
  30. /// 团组通知-财务群(财务部全员),发送条件(团组出访时间出发-7 天,结束-3 天,第二天,通知财务三人签合同、收尾款)
  31. /// </summary>
  32. [Description("CaiWuChat02")]
  33. CaiWuChat02,
  34. /// <summary>
  35. /// 团组通知-国交管理群(国交部经理、主管),发送条件(1.费用审核-提交)
  36. /// </summary>
  37. [Description("GuoJiaoLeader01")]
  38. GuoJiaoLeaderChat,
  39. /// <summary>
  40. /// 团组通知-国交群(3天内结束行程)
  41. /// </summary>
  42. [Description("GuoJiaoChat01")]
  43. GuoJiaoChat01,
  44. /// <summary>
  45. /// 预算通知-机票群(机票、主管)
  46. /// </summary>
  47. [Description("AirCostChat01")]
  48. AirCostChat01,
  49. /// <summary>
  50. /// 团组通知-费用超支群(国交、财务、主管)
  51. /// </summary>
  52. [Description("ExpenseOverrunsChat01")]
  53. ExpenseOverrunsChat01,
  54. /// <summary>
  55. /// 团组通知-费用超支群(商邀、财务、主管)
  56. /// </summary>
  57. [Description("ExpenseOverrunsChat02")]
  58. ExpenseOverrunsChat02,
  59. }
  60. public class MarkdownLib
  61. {
  62. /// <summary>
  63. /// 通知文本-确认出团
  64. /// </summary>
  65. /// <param name="info"></param>
  66. /// <returns></returns>
  67. public static string GroupStatus_Create(GroupStatus_CreateModel info)
  68. {
  69. string result = string.Format(@" `确认出团`
  70. >团组名称:<font color='info'>{0}</font>
  71. >团组类型:{1}
  72. >出访日期:<font color='comment'>{2}</font>
  73. >出访人数/天数:{3}人/{4}天
  74. >客户单位:{5}
  75. >客户名称:{6}
  76. [详细信息请前往OA系统查看](http://oa.pan-american-intl.com:4399/)
  77. ", info.TeamName, info.TeamDid_Text, info.VisitDateRange, info.VisitPNumber, info.VisitDays, info.ClientUnit, info.ClientName);
  78. return result;
  79. }
  80. /// <summary>
  81. /// 通知文本-费用申请
  82. /// </summary>
  83. /// <returns></returns>
  84. public static string GroupStatus_ApplyFee(GroupStatus_ApplyFeeModel info)
  85. {
  86. string result = string.Format(@" `团组费用录入`
  87. >团组:<font color='info'>{0}</font>
  88. <font color='comment'>- </font>{7}
  89. >费用模块:{1}
  90. >费用名称:<font color='warning'>{2}</font>
  91. >付款金额:<font color='warning'>{3}</font>
  92. >申请人:{4}
  93. >申请时间:<font color='comment'>{5}</font>
  94. <font color='comment'>- </font>当前团组费用待审核数量: {6}
  95. [详细信息请前往OA系统查看](http://oa.pan-american-intl.com:4399/) ", info.TeamName, info.PriceModule, info.PriceName, info.Price, info.CreateUser, info.CreateDt, info.QueueCount, info.TitleStr);
  96. return result;
  97. }
  98. /// <summary>
  99. /// 费用审核通知-团组费用-群聊
  100. /// </summary>
  101. /// <param name="info"></param>
  102. /// <returns></returns>
  103. public static string AuditResult_ApplyFee_Chat(AuditResult_ApplyFee_GroupModel info)
  104. {
  105. string result = string.Format(@" `{0}`
  106. <font color='{1}'>{2}</font>
  107. >审核时间:<font color='comment'>{8}</font>
  108. >团组:{3}
  109. >费用模块:{4}
  110. >费用名称:<font color='warning'>{5}</font>
  111. >付款金额:<font color='warning'>{6}</font>
  112. >申请人:{7}
  113. [详细信息请前往OA系统查看](http://oa.pan-american-intl.com:4399/) ", info.Title, info.ResultColor, info.Result, info.TeamName, info.PriceModule, info.PriceName, info.Price, info.CreateUser, info.GMAuditDate);
  114. return result;
  115. }
  116. /// <summary>
  117. /// 费用审核通知-团组费用-用户
  118. /// </summary>
  119. /// <param name="info"></param>
  120. /// <returns></returns>
  121. public static string AuditResult_ApplyFee_User(AuditResult_ApplyFee_GroupModel info)
  122. {
  123. string result = string.Format(@" `{0}`
  124. <font color='{1}'>{2}</font>
  125. >审核时间:<font color='comment'>{7}</font>
  126. >团组:{3}
  127. >费用模块:{4}
  128. >费用名称:<font color='warning'>{5}</font>
  129. >付款金额:<font color='warning'>{6}</font>
  130. [详细信息请前往OA系统查看](http://oa.pan-american-intl.com:4399/) ", info.Title, info.ResultColor, info.Result, info.TeamName, info.PriceModule, info.PriceName, info.Price, info.GMAuditDate);
  131. return result;
  132. }
  133. /// <summary>
  134. /// 费用支付通知-团组费用-用户
  135. /// </summary>
  136. /// <param name="info"></param>
  137. /// <returns></returns>
  138. public static string PayResult_Group_ToUser(PayResult_Group_ToUserModel info)
  139. {
  140. string result = string.Format(@" `团组费用支付`
  141. >团组:{0}
  142. >费用模块:{1}
  143. >费用名称:<font color='warning'>{2}</font>
  144. >付款金额:<font color='warning'>{3}</font>
  145. ><font color='info'>该笔费用已支付</font>
  146. >支付时间:<font color='comment'>{4}</font>
  147. [详细信息请前往OA系统查看](http://oa.pan-american-intl.com:4399/) ", info.TeamName, info.PriceModule, info.PriceName, info.Price, info.PayDt);
  148. return result;
  149. }
  150. /// <summary>
  151. /// 团组出发前一周提醒财务检查合同、尾款
  152. /// </summary>
  153. /// <returns></returns>
  154. public static string GroupRemindersToGuojiao(List<Grp_DelegationInfo> list_3day)
  155. {
  156. string teamNames2 = "><font color='comment'>暂无</font>";
  157. if (list_3day.Count > 0)
  158. {
  159. teamNames2 = "";
  160. foreach (var item in list_3day)
  161. {
  162. string endDt = item.VisitEndDate.ToString("yyyy-MM-dd");
  163. teamNames2 += ">(" + endDt + ")" + item.TeamName + " \n\n";
  164. }
  165. //list_3day.ForEach(s => teamNames2 += ">" + s.TeamName + "\n\n");
  166. }
  167. string result = string.Format(@" `团组行程结束提醒`
  168. ><font color='warning'> - 下列团组将于3天内结束:</font>
  169. {0}
  170. <font color='info'>请各位注意检查业务费用是否录入完整</font>
  171. [详细信息请前往OA系统查看](http://oa.pan-american-intl.com:4399/) ", teamNames2);
  172. return result;
  173. }
  174. /// <summary>
  175. /// 团组出发前一周提醒HR
  176. /// </summary>
  177. /// <returns></returns>
  178. public static string GroupRemindersToHR(List<Grp_DelegationInfo> list_7day)
  179. {
  180. string teamNames2 = "><font color='comment'>暂无</font>";
  181. if (list_7day.Count > 0)
  182. {
  183. teamNames2 = "";
  184. foreach (var item in list_7day)
  185. {
  186. string startDt = item.VisitStartDate.ToString("yyyy-MM-dd");
  187. teamNames2 += ">(" + startDt + ")" + item.TeamName + " \n\n";
  188. }
  189. }
  190. string result = string.Format(@" `团组行程提醒`
  191. ><font color='warning'> - 下列团组将于7天内出发:</font>
  192. {0}
  193. [详细信息请前往OA系统查看](http://oa.pan-american-intl.com:4399/) ", teamNames2);
  194. return result;
  195. }
  196. /// <summary>
  197. /// 团组出发前一周提醒财务检查合同、尾款
  198. /// </summary>
  199. /// <returns></returns>
  200. public static string GroupRemindersToCaiwuChat(List<Grp_DelegationInfo> list_7day, List<Grp_DelegationInfo> list_3day, List<Grp_DelegationInfo> list_minus1day)
  201. {
  202. string teamNames1 = "><font color='comment'>暂无</font>";
  203. string teamNames2 = "><font color='comment'>暂无</font>";
  204. string teamNames3 = "><font color='comment'>暂无</font>";
  205. if (list_7day.Count > 0)
  206. {
  207. teamNames1 = "";
  208. foreach (var item in list_7day)
  209. {
  210. string startDt = item.VisitStartDate.ToString("yyyy-MM-dd");
  211. teamNames1 += ">(" + startDt + ")" + item.TeamName + " \n\n";
  212. }
  213. //list_7day.ForEach(s => teamNames1 += ">" + s.TeamName + "\n\n");
  214. }
  215. if (list_3day.Count > 0)
  216. {
  217. teamNames2 = "";
  218. foreach (var item in list_3day)
  219. {
  220. string endDt = item.VisitEndDate.ToString("yyyy-MM-dd");
  221. teamNames2 += ">(" + endDt + ")" + item.TeamName + " \n\n";
  222. }
  223. //list_3day.ForEach(s => teamNames2 += ">" + s.TeamName + "\n\n");
  224. }
  225. if (list_minus1day.Count > 0)
  226. {
  227. teamNames3 = "";
  228. foreach (var item in list_minus1day)
  229. {
  230. string endDt = item.VisitEndDate.ToString("yyyy-MM-dd");
  231. teamNames3 += ">(" + endDt + ")" + item.TeamName + " \n\n";
  232. }
  233. }
  234. string result = string.Format(@" `团组状态提醒`
  235. ><font color='warning'> - 下列团组将于7天内出发:</font>
  236. {0}
  237. ><font color='warning'> - 下列团组将于3天内结束:</font>
  238. {1}
  239. ><font color='warning'> - 下列团组已于昨日结束行程:</font>
  240. {2}
  241. <font color='info'>请注意检查合同、尾款状态</font>
  242. [详细信息请前往OA系统查看](http://oa.pan-american-intl.com:4399/) ", teamNames1, teamNames2, teamNames3);
  243. return result;
  244. }
  245. /// <summary>
  246. /// 日付申请提交时推送财务群
  247. /// </summary>
  248. /// <returns></returns>
  249. public static string DailyPayReminders_Create_ToCaiwuChat(DailyPayReminders_Create_ToCaiwuChatModel info)
  250. {
  251. string result = string.Format(@" `日付申请录入`
  252. <font color='comment'>- </font>{6}
  253. >费用名称:<font color='warning'>{0}</font>
  254. >公司:<font color='comment'>{5}</font>
  255. >费用标识:<font color='comment'>{4}</font>
  256. >付款金额:<font color='warning'>{1}</font>
  257. >申请人:{2}
  258. >申请时间:<font color='comment'>{3}</font>
  259. [详细信息请前往OA系统查看](http://oa.pan-american-intl.com:4399/) ", info.PriceName, info.Price, info.CreateUser, info.CreateDt, info.FeeSign, info.Company, info.TitleStr);
  260. return result;
  261. }
  262. /// <summary>
  263. /// 日付申请审核结果推送给申请人
  264. /// </summary>
  265. /// <returns></returns>
  266. public static string DailyPayReminder_Audit_ToUser(DailyPayReminder_Audit_ToUserModel info)
  267. {
  268. string result = string.Format(@" `日付申请`
  269. <font color='{0}'>{1}</font>
  270. >费用名称:{2}
  271. >付款金额:<font color='warning'>{3}</font>
  272. >审核时间:<font color='comment'>{4}</font>
  273. ", info.ResultColor, info.Result, info.PriceName, info.Price, info.AuditDate);
  274. return result;
  275. }
  276. /// <summary>
  277. /// 日付申请审核结果推送给财务群(总经理审核通过)
  278. /// </summary>
  279. /// <returns></returns>
  280. public static string DailyPayReminder_Audit_ToCaiwuChat(DailyPayReminder_Audit_ToCaiwuChatModel info)
  281. {
  282. string result = string.Format(@" `日付申请`
  283. <font color='info'> - 新增一笔通过总经理审核的日付申请</font>
  284. >费用名称:{0}
  285. >付款金额:<font color='warning'>{1}</font>
  286. >申请人:{2}
  287. >审核时间:<font color='comment'>{3}</font>
  288. ", info.PriceName, info.Price, info.CreateUser, info.AuditDate);
  289. return result;
  290. }
  291. /// <summary>
  292. /// 日付申请已付款推送给申请人
  293. /// </summary>
  294. /// <returns></returns>
  295. public static string DailyPayReminder_Pay_ToUser(DailyPayReminder_Pay_ToUserModel info)
  296. {
  297. string result = string.Format(@" `日付申请`
  298. <font color='info'>你有一笔日付申请费用已付款</font>
  299. >费用名称:{0}
  300. >付款金额:<font color='warning'>{1}</font>
  301. >支付时间:<font color='comment'>{2}</font>
  302. ", info.PriceName, info.Price, info.PayDt);
  303. return result;
  304. }
  305. /// <summary>
  306. /// 成本通知发送给用户
  307. /// </summary>
  308. /// <returns></returns>
  309. public static string GroupShare_ToUser(GroupShare_ToUserModel info)
  310. {
  311. string result = string.Format(@" `成本通知`
  312. <font color='info'>团组成本费用已更新</font>
  313. >团组名称:{0}
  314. >更新时间:<font color='warning'>{1}</font>
  315. ><font color='comment'>请注意在费用录入页面中核对成本信息</font>
  316. ><font color='comment'>若无对应团组权限请联系国交部经理或信息部人员</font>
  317. ", info.TeamName, info.RefreshDate);
  318. return result;
  319. }
  320. /// <summary>
  321. /// 成本通知发送给用户
  322. /// </summary>
  323. /// <returns></returns>
  324. public static string GroupShare_ToAirUser(GroupShare_ToAirUserModel info)
  325. {
  326. string result = string.Format(@" `成本通知`
  327. <font color='info'>团组成本费用已更新</font>
  328. >团组名称:{0}
  329. >预算费用:<font color='warning'>{2}</font>
  330. >更新时间:<font color='warning'>{1}</font>
  331. ><font color='comment'>请注意在费用录入页面中核对成本信息</font>
  332. ><font color='comment'>若无对应团组权限请联系国交部经理或信息部人员</font>
  333. ", info.TeamName, info.RefreshDate, info.AirCost);
  334. return result;
  335. }
  336. /// <summary>
  337. /// 出入境费用明细更改通知发送给用户
  338. /// </summary>
  339. /// <returns></returns>
  340. public static string GroupShare_ToGM(GroupShare_ToGMModel info)
  341. {
  342. string result = string.Format(@" `出入境费用明细操作通知`
  343. >团组:<font color='info'>{0}</font>
  344. >操作人员:{1}
  345. >操作时间:<font color='comment'>{2}</font>
  346. [请点击进入明细进行查看或确认]({3}) ", info.TeamName, info.CreateUser, info.RefreshDate, info.Url);
  347. return result;
  348. }
  349. /// <summary>
  350. /// 出入境费用 确认 通知发送给 财务相关人员
  351. /// </summary>
  352. /// <returns></returns>
  353. public static string GroupShare_ToFinance(GroupShare_ToUserModel info)
  354. {
  355. string result = string.Format(@" `出入境费用确认操作通知`
  356. >团组:<font color='info'>{0}</font>
  357. >操作时间:<font color='comment'>{1}</font>
  358. [出入境费用已确认,请进行相关流程操作。] ", info.TeamName, info.RefreshDate);
  359. return result;
  360. }
  361. /// <summary>
  362. /// CRM统计通知(周)
  363. /// </summary>
  364. /// <param name="list"></param>
  365. /// <param name="beginDt"></param>
  366. /// <param name="endDt"></param>
  367. /// <returns></returns>
  368. public static string CRMStatistics_ToUser(List<CRMWeekStatisticsView> list, string beginDt, string endDt)
  369. {
  370. string users = "暂无";
  371. if (list.Count > 0)
  372. {
  373. users = "";
  374. foreach (var item in list)
  375. {
  376. users += ">【" + item.UserName + "】 - 新增 " + item.InsertNum + " 条,删除 " + item.DeleteNum + " 条\n\n";
  377. }
  378. }
  379. string result = string.Format(@" `市场客户资料周统计({0} - {1})`
  380. {2}
  381. [详细信息请前往OA系统查看](http://oa.pan-american-intl.com:4399/) ", beginDt, endDt, users);
  382. return result;
  383. }
  384. /// <summary>
  385. /// CRM统计通知(月)
  386. /// </summary>
  387. /// <param name="list"></param>
  388. /// <param name="beginDt"></param>
  389. /// <param name="endDt"></param>
  390. /// <param name="totalInsert"></param>
  391. /// <param name="totalDelete"></param>
  392. /// <returns></returns>
  393. public static string CRMStatistics_Month_ToUser(List<CRMWeekStatisticsView> list, string beginDt, string endDt, int totalInsert, int totalDelete)
  394. {
  395. string users = "暂无";
  396. if (list.Count > 0)
  397. {
  398. users = "";
  399. foreach (var item in list)
  400. {
  401. users += ">【" + item.UserName + "】 - 新增 " + item.InsertNum + " 条,删除 " + item.DeleteNum + " 条\n\n";
  402. }
  403. }
  404. string result = string.Format(@" `市场客户资料月统计({0} - {1})`
  405. > 总共 - 新增 <font color='info'>{3}</font> 条,删除 <font color='warning'> {4}</font> 条
  406. {2}
  407. [详细信息请前往OA系统查看](http://oa.pan-american-intl.com:4399/) ", beginDt, endDt, users, totalInsert, totalDelete);
  408. return result;
  409. }
  410. public static string BlackCodeInfo_ToVisaUser(BlackCodeInfo_ToVisaUser info)
  411. {
  412. string result = string.Format(@" `国家出入时间通知`
  413. <font color='info'>详细时间</font>
  414. >团组名称:{0}
  415. >更新时间:<font color='warning'>{1}</font>
  416. ", info.TeamName, info.RefreshDate);
  417. foreach (var item in info.info)
  418. {
  419. var black = string.Empty;
  420. for (int i = 0; i < item.Country.Length; i++)
  421. {
  422. black += " ";
  423. }
  424. black += " ";
  425. result += $@"
  426. ><font color='comment'>{item.Country}-抵达:{item.StartTime.ToString("yyyy-MM-dd HH:mm")}</font>
  427. ><font color='comment'>{black}离开:{item.EndTime.ToString("yyyy-MM-dd HH:mm")}</font>";
  428. }
  429. return result;
  430. }
  431. public static string GroupDateTime_ToVisaUser(GroupDateTime_ToVisaUser info)
  432. {
  433. string result = string.Format(@" `团组时间通知`
  434. <font color='info'>详细时间</font>
  435. >团组名称:{0}
  436. >更新时间:<font color='warning'>{1}</font>
  437. ><font color='comment'>开始时间:{2}</font>
  438. ><font color='comment'>结束时间:{3}</font>
  439. ", info.TeamName, info.RefreshDate, info.StartTime, info.EndTime);
  440. return result;
  441. }
  442. /// <summary>
  443. /// 任务创建推送给归属人
  444. /// </summary>
  445. /// <returns></returns>
  446. public static string TaskAssignment_Create_ToUser(TaskAssignment_Create_ToUserModel dto)
  447. {
  448. string result = string.Format(@" `任务分配通知`
  449. >团组:<font color='info'>{0}</font>
  450. <font color='info'>{1}</font>
  451. >操作人员:{2}
  452. >操作时间:<font color='comment'>{3}</font>
  453. [详细信息请前往OA系统查看](http://oa.pan-american-intl.com:4399/)
  454. ", dto.GroupName, dto.Title, dto.CreateUser, dto.RefreshDate);
  455. return result;
  456. }
  457. public static string TaskInfo_ToUser(TaskInfo_ToUser info)
  458. {
  459. string result = string.Format(@" `{2}`
  460. <font color='info'>请前往OA系统查看 【团组管理模块->部门任务】 </font>
  461. >任务名称:{0}
  462. >任务开始时间:{1}
  463. >任务数量:<font color='warning'>{3}</font>
  464. >加急任务数量:<font color='warning'>{4}</font>
  465. ", info.TaskName, info.StartTime, info.isNew ? "OA新任务通知" : "OA任务修改通知", info.TaskCount, info.UrgentCount);
  466. return result;
  467. }
  468. public static string TaskInfo_SubMit_ToUser(TaskInfo_SubMit_ToUser info)
  469. {
  470. string result = string.Format(@" `有新的任务回执待审核`
  471. <font color='info'>请前往OA系统查看 【团组管理模块->部门任务】 </font>
  472. >任务名称:{0}
  473. >任务开始时间:{1}
  474. >任务结束时间:{2}
  475. ", info.TaskName, info.StartTime, info.EndTime);
  476. return result;
  477. }
  478. public static string TaskInfo_Audit_ToUser(TaskInfo_Audit_ToUser info)
  479. {
  480. string result = string.Format(@" `任务审核通知`
  481. <font color='info'>请前往OA系统查看 【团组管理模块->部门任务】 </font>
  482. >任务名称:{0}", info.TaskName);
  483. if (info.auditResult)
  484. {
  485. result += $@"
  486. >审核结果:<font color='#67C23A'>审核通过</font>
  487. ";
  488. }
  489. else
  490. {
  491. result += $@"
  492. >审核结果:<font color='warning'>审核未通过</font>
  493. >未通过原因:{info.Message}
  494. ";
  495. }
  496. return result;
  497. }
  498. }
  499. #region 实体类
  500. public class TaskAssignment_Create_ToUserModel
  501. {
  502. public string GroupName { get; set; }
  503. public string Title { get; set; }
  504. public string RefreshDate { get; set; }
  505. public string CreateUser { get; set; }
  506. }
  507. public class GroupShare_ToGMModel : GroupShare_ToUserModel
  508. {
  509. public string CreateUser { get; set; }
  510. public string Url { get; set; }
  511. }
  512. public class GroupShare_ToUserModel
  513. {
  514. public string TeamName { get; set; }
  515. public string RefreshDate { get; set; }
  516. }
  517. public class GroupShare_ToAirUserModel
  518. {
  519. public string TeamName { get; set; }
  520. public string RefreshDate { get; set; }
  521. public string AirCost { get; set; }
  522. }
  523. public class DailyPayReminder_Pay_ToUserModel
  524. {
  525. public string PriceName { get; set; }
  526. public string Price { get; set; }
  527. public string PayDt { get; set; }
  528. }
  529. public class DailyPayReminder_Audit_ToCaiwuChatModel
  530. {
  531. public string PriceName { get; set; }
  532. public string Price { get; set; }
  533. public string CreateUser { get; set; }
  534. public string AuditDate { get; set; }
  535. }
  536. public class DailyPayReminder_Audit_ToUserModel
  537. {
  538. public string ResultColor { get; set; } = "info"; //warning
  539. public string Result { get; set; } = "你有一笔日付申请已通过审核"; // 你有一笔日付申请未通过财务/总经理审核
  540. public string PriceName { get; set; }
  541. public string Price { get; set; }
  542. /// <summary>
  543. /// 财务或总经理审核时间
  544. /// </summary>
  545. public string AuditDate { get; set; }
  546. }
  547. public class DailyPayReminders_Create_ToCaiwuChatModel
  548. {
  549. public string PriceName { get; set; }
  550. public string Price { get; set; }
  551. public string CreateUser { get; set; }
  552. public string CreateDt { get; set; }
  553. public string FeeSign { get; set; }
  554. public string Company { get; set; }
  555. /// <summary>
  556. /// [更新]一项费用待审核
  557. /// </summary>
  558. public string TitleStr { get; set; } = "[新增]一项费用待审核";
  559. }
  560. public class PayResult_Group_ToUserModel
  561. {
  562. public string TeamName { get; set; }
  563. public string PriceModule { get; set; }
  564. public string PriceName { get; set; }
  565. public string Price { get; set; }
  566. public string PayDt { get; set; }
  567. }
  568. public class AuditResult_ApplyFee_GroupModel
  569. {
  570. public string Title { get; set; } = "团组费用审核结果";
  571. public string ResultColor { get; set; } = "info"; //info 或 warning
  572. public string Result { get; set; } = "总经理审核通过"; //总经理审核通过 或 总经理审核未通过
  573. public string TeamName { get; set; }
  574. public string PriceModule { get; set; }
  575. public string PriceName { get; set; }
  576. public string Price { get; set; }
  577. public string CreateUser { get; set; }
  578. public string GMAuditDate { get; set; }
  579. }
  580. public class GroupStatus_ApplyFeeModel
  581. {
  582. public string TeamName { get; set; }
  583. public string PriceModule { get; set; }
  584. public string PriceName { get; set; }
  585. public string Price { get; set; }
  586. public string CreateUser { get; set; }
  587. public string CreateDt { get; set; }
  588. public int QueueCount { get; set; }
  589. /// <summary>
  590. /// [更新]一项费用待审核
  591. /// </summary>
  592. public string TitleStr { get; set; } = "[新增]一项费用待审核";
  593. }
  594. public class GroupStatus_CreateModel
  595. {
  596. public string TeamName { get; set; }
  597. public string TeamDid_Text { get; set; }
  598. public string VisitDateRange { get; set; }
  599. public int VisitPNumber { get; set; }
  600. public int VisitDays { get; set; }
  601. public string ClientUnit { get; set; }
  602. public string ClientName { get; set; }
  603. }
  604. public class BlackCodeInfo_ToVisaUser
  605. {
  606. public string TeamName { get; set; }
  607. public List<CountryDataTime> info { get; set; }
  608. public string RefreshDate { get; set; }
  609. }
  610. public class GroupDateTime_ToVisaUser
  611. {
  612. public string TeamName { get; set; }
  613. public string RefreshDate { get; set; }
  614. public string StartTime { get; set; }
  615. public string EndTime { get; set; }
  616. }
  617. public class TaskInfo_ToUser
  618. {
  619. public string TaskName { get; set; }
  620. public string StartTime { get; set; }
  621. public bool isNew { get; set; }
  622. public int TaskCount { get; set; }
  623. public int UrgentCount { get; set; }
  624. }
  625. public class TaskInfo_SubMit_ToUser
  626. {
  627. public string TaskName { get; set; }
  628. public string StartTime { get; set; }
  629. public string EndTime { get; set; }
  630. }
  631. public class TaskInfo_Audit_ToUser
  632. {
  633. public string TaskName { get; set; }
  634. public bool auditResult { get; set; }
  635. public string Message { get; set; }
  636. }
  637. #endregion
  638. }