Config.cs 26 KB

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