NewLife/AntJob

数据调度例程完成
大石头 authored at 2020-04-10 00:36:03
758158b
Tree
1 Parent(s) c2846dd
Summary: 5 changed files with 64 additions and 12 deletions.
Added +49 -0
Modified +1 -0
Modified +10 -10
Modified +1 -0
Modified +3 -2
Added +49 -0
diff --git a/Samples/HisAgent/BuildWill.cs b/Samples/HisAgent/BuildWill.cs
new file mode 100644
index 0000000..c987c0a
--- /dev/null
+++ b/Samples/HisAgent/BuildWill.cs
@@ -0,0 +1,49 @@
+using System;
+using AntJob;
+using HisData;
+using NewLife.Security;
+using XCode;
+
+namespace HisAgent
+{
+    class BuildWill : DataHandler
+    {
+        public BuildWill()
+        {
+            var job = Job;
+            job.Start = DateTime.Today;
+            job.Step = 30;
+        }
+
+        public override Boolean Start()
+        {
+            // 指定要抽取数据的实体类以及时间字段
+            Factory = ZYBH0.Meta.Factory;
+            Field = ZYBH0._.CreateTime;
+
+            return base.Start();
+        }
+
+        protected override Boolean ProcessItem(JobContext ctx, IEntity entity)
+        {
+            var pi = entity as ZYBH0;
+
+            // 创建医嘱信息
+            var will = new ZYBHYZ0
+            {
+                Bhid = pi.Bhid,
+                Mgroupid = Rand.Next(9999),
+
+                Kyzrq = pi.Ryrq.AddHours(1),
+                Tyzrq = pi.Cyrq.AddHours(-3),
+                Kyzys = Rand.NextString(8),
+
+                State = pi.State,
+            };
+
+            will.Insert();
+
+            return true;
+        }
+    }
+}
\ No newline at end of file
Modified +1 -0
diff --git a/Samples/HisAgent/Program.cs b/Samples/HisAgent/Program.cs
index ad65be6..1c967fa 100644
--- a/Samples/HisAgent/Program.cs
+++ b/Samples/HisAgent/Program.cs
@@ -27,6 +27,7 @@ namespace HisAgent
             // 添加作业处理器
             sc.Handlers.Add(new HelloJob());
             sc.Handlers.Add(new BuildPatient());
+            sc.Handlers.Add(new BuildWill());
 
             // 启动调度引擎,调度器内部多线程处理
             sc.Start();
Modified +10 -10
diff --git "a/Samples/HisData/Entity/\347\227\205\344\272\272\345\214\273\345\230\261\344\277\241\346\201\257.cs" "b/Samples/HisData/Entity/\347\227\205\344\272\272\345\214\273\345\230\261\344\277\241\346\201\257.cs"
index 05b223b..381e363 100644
--- "a/Samples/HisData/Entity/\347\227\205\344\272\272\345\214\273\345\230\261\344\277\241\346\201\257.cs"
+++ "b/Samples/HisData/Entity/\347\227\205\344\272\272\345\214\273\345\230\261\344\277\241\346\201\257.cs"
@@ -41,21 +41,21 @@ namespace HisData
         [BindColumn("MGROUPID", "医嘱组号", "", Master = true)]
         public Int32 Mgroupid { get => _Mgroupid; set { if (OnPropertyChanging(__.Mgroupid, value)) { _Mgroupid = value; OnPropertyChanged(__.Mgroupid); } } }
 
-        private Int32 _Kyzrq;
+        private DateTime _Kyzrq;
         /// <summary>开医嘱日期</summary>
         [DisplayName("开医嘱日期")]
         [Description("开医嘱日期")]
-        [DataObjectField(false, false, false, 0)]
+        [DataObjectField(false, false, true, 0)]
         [BindColumn("KYZRQ", "开医嘱日期", "")]
-        public Int32 Kyzrq { get => _Kyzrq; set { if (OnPropertyChanging(__.Kyzrq, value)) { _Kyzrq = value; OnPropertyChanged(__.Kyzrq); } } }
+        public DateTime Kyzrq { get => _Kyzrq; set { if (OnPropertyChanging(__.Kyzrq, value)) { _Kyzrq = value; OnPropertyChanged(__.Kyzrq); } } }
 
-        private Int32 _Tyzrq;
+        private DateTime _Tyzrq;
         /// <summary>停医嘱日期</summary>
         [DisplayName("停医嘱日期")]
         [Description("停医嘱日期")]
-        [DataObjectField(false, false, false, 0)]
+        [DataObjectField(false, false, true, 0)]
         [BindColumn("TYZRQ", "停医嘱日期", "")]
-        public Int32 Tyzrq { get => _Tyzrq; set { if (OnPropertyChanging(__.Tyzrq, value)) { _Tyzrq = value; OnPropertyChanged(__.Tyzrq); } } }
+        public DateTime Tyzrq { get => _Tyzrq; set { if (OnPropertyChanging(__.Tyzrq, value)) { _Tyzrq = value; OnPropertyChanged(__.Tyzrq); } } }
 
         private String _Kyzys;
         /// <summary>开医嘱医生</summary>
@@ -173,8 +173,8 @@ namespace HisData
                     case __.ID: _ID = value.ToInt(); break;
                     case __.Bhid: _Bhid = value.ToInt(); break;
                     case __.Mgroupid: _Mgroupid = value.ToInt(); break;
-                    case __.Kyzrq: _Kyzrq = value.ToInt(); break;
-                    case __.Tyzrq: _Tyzrq = value.ToInt(); break;
+                    case __.Kyzrq: _Kyzrq = value.ToDateTime(); break;
+                    case __.Tyzrq: _Tyzrq = value.ToDateTime(); break;
                     case __.Kyzys: _Kyzys = Convert.ToString(value); break;
                     case __.State: _State = value.ToInt(); break;
                     case __.CreateUser: _CreateUser = Convert.ToString(value); break;
@@ -308,10 +308,10 @@ namespace HisData
         Int32 Mgroupid { get; set; }
 
         /// <summary>开医嘱日期</summary>
-        Int32 Kyzrq { get; set; }
+        DateTime Kyzrq { get; set; }
 
         /// <summary>停医嘱日期</summary>
-        Int32 Tyzrq { get; set; }
+        DateTime Tyzrq { get; set; }
 
         /// <summary>开医嘱医生</summary>
         String Kyzys { get; set; }
Modified +1 -0
diff --git "a/Samples/HisData/Entity/\347\227\205\344\272\272\345\237\272\346\234\254\344\277\241\346\201\257.cs" "b/Samples/HisData/Entity/\347\227\205\344\272\272\345\237\272\346\234\254\344\277\241\346\201\257.cs"
index d6f3690..b7b52d1 100644
--- "a/Samples/HisData/Entity/\347\227\205\344\272\272\345\237\272\346\234\254\344\277\241\346\201\257.cs"
+++ "b/Samples/HisData/Entity/\347\227\205\344\272\272\345\237\272\346\234\254\344\277\241\346\201\257.cs"
@@ -12,6 +12,7 @@ namespace HisData
     [DataObject]
     [Description("病人基本信息")]
     [BindIndex("IU_ZYBH0_BHID", true, "BHID")]
+    [BindIndex("IX_ZYBH0_CreateTime", false, "CreateTime")]
     [BindTable("ZYBH0", Description = "病人基本信息", ConnName = "His", DbType = DatabaseType.None)]
     public partial class ZYBH0 : IZYBH0
     {
Modified +3 -2
diff --git a/Samples/HisData/Model.xml b/Samples/HisData/Model.xml
index 670b2fa..9c9fc93 100644
--- a/Samples/HisData/Model.xml
+++ b/Samples/HisData/Model.xml
@@ -23,6 +23,7 @@
     </Columns>
     <Indexes>
       <Index Columns="BHID" Unique="True" />
+      <Index Columns="CreateTime" />
     </Indexes>
   </Table>
   <Table Name="ZYBHYZ0" Description="病人医嘱信息" IgnoreNameCase="False">
@@ -30,8 +31,8 @@
       <Column Name="ID" DataType="Int32" Identity="True" PrimaryKey="True" Description="编号" />
       <Column Name="Bhid" ColumnName="BHID" DataType="Int32" Description="病人ID" />
       <Column Name="Mgroupid" ColumnName="MGROUPID" DataType="Int32" Master="True" Description="医嘱组号" />
-      <Column Name="Kyzrq" ColumnName="KYZRQ" DataType="Int32" Description="开医嘱日期" />
-      <Column Name="Tyzrq" ColumnName="TYZRQ" DataType="Int32" Description="停医嘱日期" />
+      <Column Name="Kyzrq" ColumnName="KYZRQ" DataType="DateTime" Description="开医嘱日期" />
+      <Column Name="Tyzrq" ColumnName="TYZRQ" DataType="DateTime" Description="停医嘱日期" />
       <Column Name="Kyzys" ColumnName="KYZYS" DataType="String" Description="开医嘱医生" />
       <Column Name="State" ColumnName="STATE" DataType="Int32" Description="状态" />
       <Column Name="CreateUser" DataType="String" Description="创建者" />