当前位置: 首页 > news >正文

怎么建设一个漫画网站seo营销优化软件

怎么建设一个漫画网站,seo营销优化软件,咸宁网网站,网站建设合同要求责任链模式:请求从链中的一个对象传递到下一个对象,直到请求被响应为止。通过这种方式在对象之间去除耦合。 用途:请假审批、采购审批等。 案例介绍:以公司采购东西为例子来实现责任链模式。公司规定,采购架构总价在…

责任链模式:请求从链中的一个对象传递到下一个对象,直到请求被响应为止。通过这种方式在对象之间去除耦合。

用途:请假审批、采购审批等。

案例介绍:以公司采购东西为例子来实现责任链模式。公司规定,采购架构总价在1万之内,经理级别的人批准即可,总价大于1万小于2万5的则还需要副总进行批准,总价大于2万5小于10万的需要还需要总经理批准,而大于总价大于10万的则需要组织一个会议进行讨论

审批类: 

    /// <summary>/// 审批实体类/// </summary>internal class Approver{#region 数据库对应字段/// <summary>/// 用户Id/// </summary>public string UId { get; set; }/// <summary>/// 用户名/// </summary>public string Name { get; set; }/// <summary>/// 下一个审批Id/// </summary>public string NextApproverId { get; set; }/// <summary>/// 当前最多审批的金额/// </summary>public int Amount { get; set; }#endregionpublic Approver NextApprover { get;private set; }void GetNextApprover(){if (!string.IsNullOrWhiteSpace(NextApproverId)){// 查找数据库NextApprover = TestData.GetDataWithUId(NextApproverId);}}public virtual void ProcessRequest(PurchaseRequest request){GetNextApprover();if (request.Amount <= Amount){Console.WriteLine($"[{Name}] 批准了购买 [{request.ProductName}] 的请求");}else{if (NextApprover == null)Console.WriteLine($"需要开会讨论购买 [{request.ProductName}]");}if (NextApprover != null){NextApprover.ProcessRequest(request);}}}

 采购类:

    /// <summary>/// 采购请求/// </summary>internal class PurchaseRequest{// 金额public double Amount { get; set; }// 产品名字public string ProductName { get; set; }public PurchaseRequest(double amount, string productName){Amount = amount;ProductName = productName;}}

测试数据:

internal class TestData{static List<Approver> approvers;static TestData(){approvers = new List<Approver>(3);Approver approver1 = new Approver(){UId = Guid.NewGuid().ToString(),Name = "王总",Amount = 100000};Approver approver2 = new Approver(){UId = Guid.NewGuid().ToString(),Name = "李副总",NextApproverId = approver1.UId,Amount = 25000};Approver approver3 = new Approver(){UId = Guid.NewGuid().ToString(),Name = "孙经理",NextApproverId = approver2.UId,Amount = 10000};approvers.Add(approver1);approvers.Add(approver2);approvers.Add(approver3);}internal static List<Approver> GetDatas(){return approvers;}internal static List<Approver> GetDatas(Func<Approver, bool> func){return approvers.Where(func).ToList();}internal static Approver GetDataWithUId(string uid){return GetData((t) => t.UId == uid);}internal static Approver GetData(Func<Approver, bool> func){return approvers.FirstOrDefault(func);}}

测试用例:

public static void Test(){// 商品类PurchaseRequest purchase = new PurchaseRequest(20000,"电脑");PurchaseRequest purchase2 = new PurchaseRequest(2000, "笔");PurchaseRequest purchase3 = new PurchaseRequest(30000, "手机");PurchaseRequest purchase4 = new PurchaseRequest(110000, "3台电脑");// 需要审批的商品PurchaseRequest NeedPurchase = purchase4;// 根据金额筛选出权限最低的人var firstData = TestData.GetDatas().Where(t=>t.Amount>= NeedPurchase.Amount).OrderBy(t => t.Amount).FirstOrDefault();if (firstData == null)firstData = TestData.GetDatas().OrderByDescending(t => t.Amount).LastOrDefault();// 开始审批firstData.ProcessRequest(NeedPurchase);}

 

 

 

 

 

 

http://www.laogonggong.com/news/19718.html

相关文章:

  • 做网站图片存储用什么格式深圳网站优化排名
  • 含山建设局网站链接优化方法
  • 有什么免费的网站营销策划的八个步骤
  • 企业网站主页模板如何快速提升自己
  • 西宁做网站建设公司成都关键词seo推广电话
  • 做二手房网站有哪些资料十大新媒体平台有哪些
  • 广安建网站优速网站建设优化seo
  • 自建网站h5百度 营销推广怎么做
  • 长沙企业建站程序大数据免费查询平台
  • 小型网吧网络设计方案西安专业seo
  • 郑州专业的网站建设公司5188关键词挖掘
  • 做期货主要看哪个网站优化整站
  • app推广多少钱一个广东seo推广公司
  • 长沙购物网站建设百度的广告
  • 平顶山公司做网站西安网络优化培训机构公司
  • 南宁网站建设服务商谷歌外链工具
  • 利用路由器做网站网站建设公司好
  • 做网站的抬头标语怎么做全国十大跨境电商排名
  • 东营优化路网重庆seo公司排名
  • 唐山网站制作软件宁波seo整体优化
  • 花样云做网站怎样太原seo网站管理
  • 网站建设和管理情况360公司官网首页
  • 要做好网络营销首先要关于seo的行业岗位有哪些
  • 如何做一个网站的功能吗百度统计工具
  • 仿西部数码网站crm网站
  • 企业设计网站建设seo优化查询
  • 三合一网站和传统网站排名公式
  • 怎样将建设银行网站加入可信站百度地图官网2022最新版下载
  • 厦门网站建设 智多星必应搜索国际版
  • 网上作业网站怎么做的怎么推广销售