static void Main(string[] args) { using (var mySql = new MySqlContext()) { int cnt = mySql.Depart.Count(); Console.WriteLine(cnt); } Console.ReadKey(); }
static void Main(string[] args) { Console.WriteLine(DateTime.Now); Stopwatch sw = Stopwatch.StartNew(); using (var pgAdmin = new PgAdminContext()) { using (var mySql = new MySqlContext()) { //INSERT INTO `units` (UnitSn, UnitName, UnitIp, UnitPort) VALUES ('00-1', 'IrisKing', '8.8.8.8', '8888'); Units units = new Units() { UnitId = 1, UnitSn = "00-1", UnitName = "中科虹霸", //ParentUnitId = UnitIp = "8.8.8.8", UnitPort = "8888", CreateTime = DateTime.Now, UpdateTime = DateTime.Now, //DeleteTime = //Memo = "", }; mySql.Units.Add(units); int rows = mySql.SaveChanges(); Console.WriteLine(rows); var devs = pgAdmin.iris_device.Select(d => new IrisDevice() { UnitId = units.UnitId, DevSn = d.dev_sn, DevType = d.dev_type ?? 6, DevAddress = d.place, StartTime = d.start_time, Place = d.place, }); mySql.IrisDevice.AddRange(devs); rows = mySql.SaveChanges(); Console.WriteLine(rows); #region ClassType var cts = pgAdmin.class_type.Select(ct => new ClassType() { UnitId = units.UnitId, ClassTypeId = ct.class_type_id, ClassTypeName = ct.class_type_name, CreateTime = ct.create_time ?? DateTime.Now, UpdateTime = ct.update_time ?? DateTime.Now, DeleteTime = ct.delete_info == null ? (DateTime?)null : DateTime.Now, Memo = ct.memo, }); mySql.ClassType.AddRange(cts); rows = mySql.SaveChanges(); Console.WriteLine(rows); #endregion #region WorkType var wts = pgAdmin.work_type.Select(wt => new WorkType() { UnitId = units.UnitId, WorkTypeId = wt.work_type_id, WorkTypeName = wt.work_type_name, CreateTime = wt.create_time ?? DateTime.Now, UpdateTime = wt.update_time ?? DateTime.Now, DeleteTime = wt.delete_info == null ? (DateTime?)null : DateTime.Now, Memo = wt.memo, }); mySql.WorkType.AddRange(wts); rows = mySql.SaveChanges(); Console.WriteLine(rows); #endregion #region PrincipalType var pts = pgAdmin.principal_type.Select(pt => new PrincipalType() { UnitId = units.UnitId, PrincipalTypeId = pt.principal_type_id, PrincipalTypeName = pt.principal_type_name, PrincipalTypeOrder = pt.principal_type_order, CreateTime = pt.create_time ?? DateTime.Now, UpdateTime = pt.update_time ?? DateTime.Now, DeleteTime = pt.delete_info == null ? (DateTime?)null : DateTime.Now, Memo = pt.memo, }); mySql.PrincipalType.AddRange(pts); rows = mySql.SaveChanges(); Console.WriteLine(rows); #endregion #region Principal int principalTypeCount = mySql.PrincipalType.Count(); var ps = pgAdmin.principal.Select(p => new Principal() { UnitId = units.UnitId, PrincipalId = p.principal_id, PrincipalName = p.principal_name, PrincipalTypeId = p.principal_id % principalTypeCount <= 0 ? 1 : p.principal_id % principalTypeCount, //PrincipalTypeId = GetMod(p.principal_id, principalTypeCount), CreateTime = p.create_time ?? DateTime.Now, UpdateTime = p.update_time ?? DateTime.Now, DeleteTime = p.delete_info == null ? (DateTime?)null : DateTime.Now, Memo = p.memo, }); mySql.Principal.AddRange(ps); rows = mySql.SaveChanges(); Console.WriteLine(rows); #endregion #region Depart var ds = pgAdmin.depart.Select(d => new Depart() { UnitId = units.UnitId, DepartId = d.depart_id, DepartSn = d.depart_sn, DepartName = d.depart_name, ParentDepartId = d.parent_depart_id, ContactPhone = d.contact_phone, CreateTime = d.create_time ?? DateTime.Now, UpdateTime = d.update_time ?? DateTime.Now, DeleteTime = d.delete_time, Memo = d.memo, }); mySql.Depart.AddRange(ds); rows = mySql.SaveChanges(); Console.WriteLine(rows); #endregion #region PersonBase int departCount = pgAdmin.depart.Count(); int principalCount = pgAdmin.principal.Count(); int workTypeCount = pgAdmin.work_type.Count(); int classTypeCount = pgAdmin.class_type.Count(); var pbs = pgAdmin.person_base.Select(pb => new PersonBase() { UnitId = units.UnitId, PersonId = pb.person_id, OwnerKey = pb.owner_key, WorkSn = pb.work_sn, Name = pb.name, DepartId = pb.depart_id % departCount == 0 ? 1 : pb.depart_id % departCount, PrincipalId = pb.principal_id % principalCount == 0 ? 1 : pb.principal_id % principalCount, WorkTypeId = pb.work_type_id % workTypeCount == 0 ? 1 : pb.work_type_id % workTypeCount, ClassTypeId = pb.class_type_id_on_ground % classTypeCount == 0 ? 1 : pb.class_type_id_on_ground % classTypeCount, ClassTypeIdInWell = pb.class_type_id % classTypeCount == 0 ? 1 : pb.class_type_id % classTypeCount, Sex = pb.sex, BloodType = pb.blood_type, Birthdate = pb.birthdate, Workday = pb.workday, IdCard = pb.id_card, Phone = pb.phone, Address = pb.address, Zipcode = pb.zipcode, Email = pb.email, CreateTime = pb.create_time ?? DateTime.Now, UpdateTime = pb.update_time ?? DateTime.Now, DeleteTime = pb.delete_time, Memo = pb.memo, EyeFlag = -1, EnrollTime = DateTime.Now, }); mySql.PersonBase.AddRange(pbs); rows = mySql.SaveChanges(); Console.WriteLine(rows + "rows" + DateTime.Now); #endregion #region AttendType //leave_type_id > 50 are AttendType var ats = pgAdmin.leave_type.Where(ct => ct.leave_type_id < 50).Select(ct => new AttendType() { AttendTypeId = ct.leave_type_id, AttendTypeName = ct.leave_type_name, AttendSign = ct.attend_sign, Priority = ct.priority, CreateTime = ct.create_time ?? DateTime.Now, UpdateTime = ct.update_time ?? DateTime.Now, DeleteTime = ct.delete_info == null ? (DateTime?)null : DateTime.Now, Memo = ct.memo, }); mySql.AttendType.AddRange(ats); rows = mySql.SaveChanges(); Console.WriteLine(rows); #endregion #region ClassOrderNormal int classOrderCount = pgAdmin.class_order_normal.Count(); var cons = pgAdmin.class_order_normal.Select(con => new ClassOrderNormal() { UnitId = units.UnitId, ClassOrderId = con.class_order_id % classOrderCount == 0 ? 1 : con.class_order_id % classOrderCount, ClassOrderName = con.class_order_name, AttendSign = con.attend_sign, ClassTypeId = con.class_type_id % classTypeCount == 0 ? 1 : con.class_type_id % classTypeCount, AttendOffMinutes = con.attend_off_minutes ?? 1441, InStartTime = con.in_well_start_time ?? 480, //60 * 8 -> 8h //InEarlyEndTime = InEndTime = con.in_well_end_time, //InOutDivision = OutStartTime = con.out_well_start_time, //OutOvertimeStart = OutEndTime = con.out_well_end_time ?? 960, //60*16 ->16h RestTime = string.Empty, WorkCnt = "60,10;120,15", CreateTime = con.create_time ?? DateTime.Now, UpdateTime = con.update_time ?? DateTime.Now, DeleteTime = con.delete_info == null ? (DateTime?)null : DateTime.Now, Memo = con.memo, }); mySql.ClassOrderNormal.AddRange(cons); rows = mySql.SaveChanges(); Console.WriteLine(rows); #endregion #region PersonRecogBase var devices = new string[] { "00:E0:4C:3A:87:E4", "00:e0:4c:3a:87:eb", "00:E0:4C:3A:87:EC", "00:E0:4C:3A:87:F8", "00:E0:4C:3A:88:0E", "00:E0:4C:3A:88:0E", "00:E0:4C:3A:88:18", "00:E0:4C:3A:88:54", "00:E0:4C:3A:88:8E", "0000-0000-0000", "0049-2134-1234", "0049-2134-1234", "0049-4B6E-82CC", "0049-4b6e-82E7", "0049-4B6E-83F6", "0049-4B6E-83F8", "0049-4B6E-8455", }; var recogs = from prb in pgAdmin.person_recog_base where devices.Contains(prb.device_sn) // let r = random.Next(0, devTypes.Length) select new PersonRecogBase() { UnitId = units.UnitId, PersonRecogLogId = prb.person_recog_log_id, PersonId = (prb.person_id ?? 0) % classTypeCount == 0 ? 1 : (prb.person_id ?? 0) % classTypeCount, ClassTypeId = prb.class_type_id % classTypeCount == 0 ? 1 : prb.class_type_id % classTypeCount, RecogTime = prb.recog_time, RecogType = prb.recog_type, DevSn = prb.device_sn,//devices[r], DevType = prb.dev_type,//devTypes[r], AtPosition = prb.at_position, OpTime = prb.op_time, OperatorName = prb.operator_name, DeleteTime = prb.delete_time, Memo = prb.memo, AttendState = 0, }; var temp = recogs.ToList(); mySql.PersonRecogBase.AddRange(temp); rows = mySql.SaveChanges(); Console.WriteLine(rows); #endregion #region AttendRecordNormal //int recogBaseCount = pgAdmin.person_recog_base.Count(); //var arns = pgAdmin.attend_record_normal.Where(arn => arn.person_id != null).Select(arn => new AttendRecordNormal() //{ // UnitId = units.UnitId, // AttendRecordId = arn.attend_record_id, // PersonId = arn.person_id.Value, // InId = GetMod(arn.in_id ?? 0, recogBaseCount), //!!! // InWellTime = arn.in_well_time, // InAttendTypeId = GetMod(arn.in_leave_type_id ?? 0, 6), // //InAttendTypeName = // OutId = GetMod(arn.out_id ?? 0, recogBaseCount), //!!! // OutWellTime = arn.out_well_time, // OutAttendTypeId = GetMod(arn.out_leave_type_id ?? 0, 6), // //OutAttendTypeName = // IsValid = arn.is_valid, // AttendTypeId = GetMod(arn.attend_type ?? 0, 6), // //LeaveTypeName = // ClassOrderId = GetMod(arn.class_order_id ?? 0, classOrderCount),//arn.class_order_id, // WorkTime = arn.work_time ?? 0, // AttendDay = arn.attend_day, // DevGroup = arn.dev_group ?? 6, // WorkCnt = arn.work_cnt, // CreateTime = arn.create_time, // Memo = arn.memo, //}); //mySql.AttendRecordNormal.AddRange(arns); //rows = mySql.SaveChanges(); //Console.WriteLine(rows); #endregion mySql.SystemParams.Add(new SystemParam() { DupTime = 5, InDupRecog = 0, OutDupRecog = 1, UnitId = units.UnitId }); rows = mySql.SaveChanges(); Console.WriteLine(rows); //int rows = mySql.SaveChanges(); //Console.WriteLine(rows); } } Console.WriteLine(sw.ElapsedMilliseconds + "ms"); Console.ReadKey(); }