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

没有广告的免费个人网站建设胶州网站建设

没有广告的免费个人网站建设,胶州网站建设,镇江建设网站公司,做个网站需要什么步骤责任链模式#xff1a;请求从链中的一个对象传递到下一个对象#xff0c;直到请求被响应为止。通过这种方式在对象之间去除耦合。 用途#xff1a;请假审批、采购审批等。 案例介绍#xff1a;以公司采购东西为例子来实现责任链模式。公司规定#xff0c;采购架构总价在…责任链模式请求从链中的一个对象传递到下一个对象直到请求被响应为止。通过这种方式在对象之间去除耦合。 用途请假审批、采购审批等。 案例介绍以公司采购东西为例子来实现责任链模式。公司规定采购架构总价在1万之内经理级别的人批准即可总价大于1万小于2万5的则还需要副总进行批准总价大于2万5小于10万的需要还需要总经理批准而大于总价大于10万的则需要组织一个会议进行讨论 审批类  /// summary/// 审批实体类/// /summaryinternal class Approver{#region 数据库对应字段/// summary/// 用户Id/// /summarypublic string UId { get; set; }/// summary/// 用户名/// /summarypublic string Name { get; set; }/// summary/// 下一个审批Id/// /summarypublic string NextApproverId { get; set; }/// summary/// 当前最多审批的金额/// /summarypublic 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/// 采购请求/// /summaryinternal 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 ListApprover approvers;static TestData(){approvers new ListApprover(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 ListApprover GetDatas(){return approvers;}internal static ListApprover GetDatas(FuncApprover, bool func){return approvers.Where(func).ToList();}internal static Approver GetDataWithUId(string uid){return GetData((t) t.UId uid);}internal static Approver GetData(FuncApprover, 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(tt.Amount NeedPurchase.Amount).OrderBy(t t.Amount).FirstOrDefault();if (firstData null)firstData TestData.GetDatas().OrderByDescending(t t.Amount).LastOrDefault();// 开始审批firstData.ProcessRequest(NeedPurchase);}
http://www.lakalapos1.cn/news/25535/

相关文章:

  • 网站建设流程信息微信怎么弄自己的小程序
  • 网站优化的公司wordpress运行环境要求
  • 直播网站建设项目策划书免费自创网站
  • 手机在线做ppt的网站有哪些专业建站公司报价
  • 北京外贸行业网站建设wordpress连接上下文
  • 怎样帮人做网站挣钱wordpress 电子商务主题
  • 作文网站投稿seo推广业务员招聘
  • 高防手表网站长春专业网站建设
  • 做网站要给ftp密码吗媒体按钮 wordpress
  • python网站开发 完整例子呼家楼街道网站建设
  • 怎样建立个人网站?大连百姓网
  • 汶上网站制作logo图标
  • PHP网站建设的基本流程注册公司网站模板下载
  • 百度网站收录链接提交手机端安卓开发软件
  • 北京中交建设公司网站武威网站seo
  • 网站开发进阶wordpress添加原创logo
  • 农村电商网站建设wordpress前台登录注册密码找回
  • 大连网站建设选高和科技国产服务器前三强
  • 最权威的网站推广设计福州做网站
  • 英文网站建设推广德州谁会做网站
  • 下载的网站模板怎么进入后台没有网站可以做app吗
  • 制作外贸网站模板敦煌壁画网站开发毕设论文
  • 网站需要加wordpress装潢设计图片大全
  • 为了 门户网站建设石家庄站布局图
  • seo优化网站网页教学写安卓软件用什么工具
  • 网络营销产品鹤壁seo
  • 威海 网站开发wordpress邮箱发文
  • 网站建设目标是什么意思wordpress如何调用js
  • 太原网站建设报价苏州网站开发培训班
  • 什么网站的地图设计公司logo公司文化