Example #1
0
    public void InitObject(Fabric objF, ClickObjectType t, ClickObjectTrajectory tr, float vel)
    {
        if(convertObject == null)
        {
            convertObject = GameObject.Find("ConvertObject").GetComponent<ConvertObject>();
        }

        if (rb == null)
        {
            rb = GetComponent<Rigidbody2D>();
        }

        if (r == null)
        {
            r = GetComponent<SpriteRenderer>();
        }
        if(targetCollider == null)
        {
            targetCollider = GetComponent<Collider2D>();
        }

        objectFabric = objF;

        clickObject = new ClickObjectController(this, t, tr, vel);
    }
        private bool CheckData()
        {
            if (txt_UserId.Text.Trim().Equals(string.Empty))
            {
                MessageBox.Show("Please Input the User ID", "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                txt_UserId.Focus();
                return(false);
            }

            if (false == ConvertObject.IsInt(txt_UserId.Text.Trim()))
            {
                MessageBox.Show("User ID can only enter a number", "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                txt_UserId.Focus();
                return(false);
            }

            foreach (ListViewItem lvi in lvw_UserList.Items)
            {
                if (txt_UserId.Text.Trim().Equals(lvi.SubItems[1].Text))
                {
                    MessageBox.Show("The user ID already exists, please modify", "Prompt", MessageBoxButtons.OK,
                                    MessageBoxIcon.Warning);
                    txt_UserId.Focus();
                    return(false);
                }
            }

            if (txt_UserName.Text.Trim().Equals(string.Empty))
            {
                MessageBox.Show("Please input the user name", "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                txt_UserName.Focus();
                return(false);
            }
            return(true);
        }
Example #3
0
        private bool ProcessData(List <Record> recordList)
        {
            int    no   = 1;
            String time = String.Empty;

            foreach (Record record in recordList)
            {
                string type = ConvertObject.IOMode(record.Verify);
                string mode = ConvertObject.GLogType(record.Action);
                time = record.Clock.ToString("yyyy-MM-dd HH:mm:ss");
                String text = no.ToString() + "|" + record.DN.ToString() + "|" + record.DIN.ToString() + "|" + type + "|" + mode + "|" + time;

                if (type.Equals("Check in"))
                {
                    Logger.log(text);
                    if (AddToDatabase(record))
                    {
                        no++;
                        UpdateLastEntryTime(time);
                    }
                }
            }
            //Util.UpdateTime(time);
            return(true);
        }
Example #4
0
		public static void AddConverter(Type t, ConvertObject o)
		{
			if (converters == null)
				converters = new Dictionary<Type, ConvertObject>();

			converters[t]=o;
		}
Example #5
0
        public static Contract.Model.UserInfo ToModel(User deviceUser)
        {
            var userInfo = new  Contract.Model.UserInfo()
            {
                UserId = (int)deviceUser.DIN
            };

            try
            {
                userInfo.UserName         = deviceUser.UserName;
                userInfo.Role             = (UserRole)deviceUser.Privilege;
                userInfo.Comment          = deviceUser.Comment;
                userInfo.UserStatus       = deviceUser.Enable;
                userInfo.DepartmentId     = deviceUser.Department;
                userInfo.AccessTimeZoneId = deviceUser.AccessTimeZone;


                var enroll   = deviceUser.Enrolls.First();
                var services = new List <CredentialService>();

                if (!string.IsNullOrWhiteSpace(enroll.Password))
                {
                    services.Add(new PasswordService()
                    {
                        Enabled = true, Password = ConvertObject.ToPrettyString(enroll.Password)
                    });
                }

                if (!string.IsNullOrWhiteSpace(enroll.CardID))
                {
                    services.Add(new CredentialCardService()
                    {
                        Enabled = true, CardNumber = enroll.CardID
                    });
                }

                int enrollType = (Int32)enroll.EnrollType;
                for (int index = 0; index < Zd2911Utils.MaxFingerprintCount; index++)
                {
                    if (Zd2911Utils.BitCheck(enrollType, index) != 0)
                    {
                        byte[] fpBytes = enroll.Fingerprint.Skip(index * Zd2911Utils.MaxFingerprintLength).Take(Zd2911Utils.MaxFingerprintLength).ToArray();
                        services.Add(new FingerPrintService()
                        {
                            Enabled = true, FingerPrintData = ConvertObject.ConvertByteToHex(fpBytes)
                        });
                    }
                }

                userInfo.CredentialServices = services;
                return(userInfo);
            }
            catch (Exception ex)
            {
                Log.Error(ex);
                throw;
            }
        }
Example #6
0
        private void btnConnect_Click(object sender, EventArgs e)
        {
            try
            {
                device                 = new Device();
                device.DN              = 1;
                device.Password        = "******";
                device.Model           = "A-C030";
                device.ConnectionModel = 5;//等于5时才能正确加载ZD2911通讯模块

                if (rdb_Network.Checked == true)
                {
                    //ip address
                    if (string.IsNullOrEmpty(txt_IP.Text.Trim()))
                    {
                        MessageBox.Show("Please Input IP Address", "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        txt_IP.Focus();
                        return;
                    }

                    if (false == ConvertObject.IsCorrenctIP(txt_IP.Text.Trim()))
                    {
                        MessageBox.Show("Illegal IP Address", "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        txt_IP.Focus();
                        return;
                    }

                    device.IpAddress         = txt_IP.Text.Trim();
                    device.IpPort            = int.Parse(txt_Port.Text);
                    device.CommunicationType = CommunicationType.Tcp;
                }
                else
                {
                    device.CommunicationType = CommunicationType.Usb;
                }

                deviceConnection = DeviceConnection.CreateConnection(ref device);
                if (deviceConnection.Open() > 0)
                {
                    deviceEty                  = new DeviceComEty();
                    deviceEty.Device           = device;
                    deviceEty.DeviceConnection = deviceConnection;
                    MessageBox.Show("Device successfully connected", "System", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    btnBiometricData.Enabled = true;
                    btnDisconnect.Enabled    = true;
                    btnConnect.Enabled       = false;
                }
                else
                {
                    MessageBox.Show("Failed to Connect to Device", "System", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Example #7
0
        public static void AddConverter(Type t, ConvertObject o)
        {
            if (converters == null)
            {
                converters = new Dictionary <Type, ConvertObject>();
            }

            converters[t] = o;
        }
Example #8
0
        private void listener_ReceiveHandler(object sender, ReceiveEventArg e)
        {
            Record       record = e.record;
            string       verify = ConvertObject.IOMode(record.Verify);
            string       action = ConvertObject.GLogType(record.Action);
            ListViewItem lvi    = new ListViewItem(new string[] { no.ToString(), record.DN.ToString(), record.DIN.ToString(),
                                                                  string.Empty, verify, action, record.Clock.ToString("yyyy-MM-dd HH:mm:ss") });

            BeginInvoke(new AddRecord(AddRecordToListView), new object[] { lvi });
            no++;
        }
Example #9
0
		public Settings()
		{
			settings = new Dictionary<string,Setting>();
			propObj = new Dictionary<string,PropObj>();

			if(converters == null)
			{
				converters = new Dictionary<Type,ConvertObject>();
				converters[typeof(Color)]=new ConvertObject(convertColor);
			}
		}
Example #10
0
        public Settings()
        {
            settings = new Dictionary <string, Setting>();
            propObj  = new Dictionary <string, PropObj>();

            if (converters == null)
            {
                converters = new Dictionary <Type, ConvertObject>();
                converters[typeof(Color)] = new ConvertObject(convertColor);
            }
        }
Example #11
0
        private void btn_ParamSet_Click(object sender, EventArgs e)
        {
            if (-1 == cbo_Param.SelectedIndex)
            {
                MessageBox.Show("Please Select Parameter", "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Information);
                cbo_Param.Focus();
                return;
            }

            try
            {
                int paramValue = -1;
                switch (cbo_Param.SelectedIndex)
                {
                case 26:
                case 27:
                case 28:
                case 29:
                    if (false == ConvertObject.IsCorrenctIP(txt_ParamValue.Text.Trim()))
                    {
                        MessageBox.Show("Illegal IP address", "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        txt_ParamValue.Focus();
                        return;
                    }
                    paramValue = ConvertObject.ConvertIPAddressToNumber(txt_ParamValue.Text.Trim());
                    break;

                default:
                    paramValue = Convert.ToInt32(txt_ParamValue.Text.Trim());
                    break;
                }

                object extraProperty = new object();
                object extraData     = new object();
                byte[] data          = new byte[8];
                Array.Copy(BitConverter.GetBytes(cbo_Param.SelectedIndex), 0, data, 0, 4);
                Array.Copy(BitConverter.GetBytes(paramValue), 0, data, 4, 4);
                extraData = data;
                bool result = deviceConnection.SetProperty(DeviceProperty.SysParam, extraProperty, device, extraData);
                if (result)
                {
                    MessageBox.Show("Set Parameter Success", "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                else
                {
                    MessageBox.Show("Set Parameter Fail", "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Example #12
0
        private void AddRecordToListView(List <Record> recordList)
        {
            lvw_SLogList.Items.Clear();
            int no = 1;

            foreach (Record record in recordList)
            {
                string       operation = ConvertObject.SLogType(record.Action);
                ListViewItem item      = new ListViewItem(new string[] { no.ToString(), record.MDIN.ToString(), record.DIN.ToString(),
                                                                         operation, record.Verify.ToString(), record.Clock.ToString("yyyy-MM-dd HH:mm:ss") });
                lvw_SLogList.Items.Add(item);
                no++;
            }
        }
Example #13
0
        private void AddRecordToListView(List <Record> recordList)
        {
            lvw_GLogList.Items.Clear();
            int no = 1;

            foreach (Record record in recordList)
            {
                string       type = ConvertObject.IOMode(record.Verify);
                string       mode = ConvertObject.GLogType(record.Action);
                ListViewItem item = new ListViewItem(new string[] { no.ToString(), record.DN.ToString(), record.DIN.ToString(),
                                                                    type, mode, record.Clock.ToString("yyyy-MM-dd HH:mm:ss") });
                lvw_GLogList.Items.Add(item);
                no++;
            }
        }
Example #14
0
        public ResultModel <List <T> > ConvertToResultModel <T>(ApiResultModel <DataSet> model)
        {
            var result = new ResultModel <List <T> >();

            try
            {
                result.IsError = model.ErrorCode == 0;
                result.Message = model.Message;
                result.Data    = ConvertObject.DataSetToList <T>(model.Data);
            }
            catch (Exception ex)
            {
                HandleDAOExceptions(ex);
            }
            return(result);
        }
Example #15
0
        public static DuressService BuildService(byte[] deviceData)
        {
            var duressService = new DuressService();

            duressService.Enabled          = (deviceData[6] == 1);
            duressService.FingerPrintIndex = deviceData[5];
            duressService.IsOpenDoor       = (deviceData[1] == 1);
            duressService.IsTriggerAlarm   = (deviceData[2] == 1);
            var pwd = new StringBuilder();

            for (int i = 0; i < Zd2911Utils.PasswordLength; i++)
            {
                pwd.Append((char)deviceData[8 + i]);
            }
            duressService.Password = ConvertObject.ToPrettyString(pwd.ToString());

            return(duressService);
        }
Example #16
0
        /// <summary>
        ///
        /// </summary>
        private void Excate(SourceTaskItem sourceTask)
        {
            try
            {
                string sqlStr = "SELECT * FROM Users WHERE ISAsync='0'";

                _log.InfoFormat(DateTime.Now + Environment.NewLine + "WorkerInfoSyscTask sqlStr:{0}", sqlStr);

                DataTable dt = new SQLHelper(sourceTask.ConnectionString).ExecuteQuery(sqlStr, CommandType.Text);

                //DataTable dt = Query.ExecuteSQLQuery(sqlStr, SystemEnvironment.Instance.DefaultDataSource);
                List <WorkerInfo> WorkerInfos = dt.AsEnumerable().Select(x => new WorkerInfo()
                {
                    name      = ConvertObject.ToString(x["Names"]),
                    idCardNum = ConvertObject.ToString(x["ICNum"]),
                    gender    = ConvertObject.ToInt32(x["Sex"]),
                    //constructionPermitNum = "410185201903070501",
                    constructionPermitNum = "SGXKZZZ",
                    bankCardNum           = ConvertObject.ToString(x["CardNo"]),
                    attenNum      = ConvertObject.ToString(x["No"]),
                    nation        = ConvertObject.ToString(x["Nation"]),
                    headPicBase64 = PictureTools.GetBase64String(ConvertObject.ToString(x["Pic"])),//Pic
                    nativePlace   = "",
                    phone         = ConvertObject.ToString(x["Phone"]),
                    workState     = 1,
                    entranceTime  = ConvertObject.ToString(x["StartDate"]),
                }).ToList();
                //工人信息上传
                if (WorkerInfos.Count > 0)
                {
                    string result = new HttpMethod().SendWorkerInfo(WorkerInfos);
                    _log.InfoFormat("WorkerInfoSyscTask result:{0}", result);

                    sqlStr = string.Format("UPDATE Users SET ISAsync = '1' WHERE ISAsync = '0'");
                    int resultint = new SQLHelper(sourceTask.ConnectionString).ExecuteNonQuery(sqlStr, CommandType.Text);

                    _log.InfoFormat("WorkerInfoSyscTask resultint:{0}", resultint);
                }
            }
            catch (Exception ex)
            {
                _log.InfoFormat(DateTime.Now + Environment.NewLine + "WorkerInfoSyscTask 发生异常:{0}", ex.Message);
            }
        }
Example #17
0
        private void btn_ParamGet_Click(object sender, EventArgs e)
        {
            if (-1 == cbo_Param.SelectedIndex)
            {
                MessageBox.Show("Please Select Parameter", "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Information);
                cbo_Param.Focus();
                return;
            }

            try
            {
                object extraProperty = new object();
                object extraData     = new object();
                byte[] paramIndex    = BitConverter.GetBytes(cbo_Param.SelectedIndex);
                extraData = paramIndex;
                bool result = deviceConnection.GetProperty(DeviceProperty.SysParam, extraProperty, ref device, ref extraData);
                if (result)
                {
                    int paramValue = BitConverter.ToInt32((byte[])extraData, 0);
                    switch (cbo_Param.SelectedIndex)
                    {
                    case 26:
                    case 27:
                    case 28:
                    case 29:
                        txt_ParamValue.Text = ConvertObject.ConvertNumberToIPAddress(paramValue);
                        break;

                    default:
                        txt_ParamValue.Text = paramValue.ToString();
                        break;
                    }
                }
                else
                {
                    MessageBox.Show("Get Parameter Settings Fail", "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Example #18
0
        private bool SetSystemParameter(SystemParameters parameter, String parameterValue)
        {
            Log.InfoFormat("Setting system parameter: {0}", parameter.ToString());
            if (string.IsNullOrWhiteSpace(parameterValue))
            {
                Log.Info("parameter value is empty. skip the process");
                return(true);
            }

            int parameterIndex = (Int32)parameter;
            int paramValue     = -1;

            switch (parameterIndex)
            {
            case 26:
            case 27:
            case 28:
            case 29:
                paramValue = ConvertObject.ConvertIPAddressToNumber(parameterValue);
                break;

            default:
                paramValue = Convert.ToInt32(parameterValue);
                break;
            }

            var    device        = _deviceProxy.Device;
            object extraProperty = new object();
            object extraData     = new object();

            byte[] data = new byte[8];
            Array.Copy(BitConverter.GetBytes(parameterIndex), 0, data, 0, 4);
            Array.Copy(BitConverter.GetBytes(paramValue), 0, data, 4, 4);
            extraData = data;

            var  retryablePolicy = Policies.GetRetryablePolicy();
            bool result          = retryablePolicy.Execute(
                () => _deviceProxy.DeviceConnection.SetProperty(DeviceProperty.SysParam, extraProperty, device, extraData));

            Log.InfoFormat("Setting system parameter Result={0}", result);
            return(result);
        }
Example #19
0
        public async Task MapsObjects()
        {
            var val = new ConvertObject
            {
                Boolean  = false,
                DateTime = DateTime.Now,
                Int32    = 5,
                Decimal  = 5.5m,
                String   = "5.5",
                Child    = new ChildConvertObject
                {
                    String = "Lonely child"
                },
                Children = new List <ChildConvertObject>
                {
                    new ChildConvertObject {
                        String = "Child 1"
                    },
                    new ChildConvertObject {
                        String = "Child 2"
                    },
                    new ChildConvertObject {
                        String = "Child 3"
                    }
                }
            };

            using var bodyStream = new MemoryStream();
            using var writer     = new StreamWriter(bodyStream);
            var serialized = JsonSerializer.Serialize(new { obj = val }, new JsonSerializerOptions
            {
                PropertyNamingPolicy = JsonNamingPolicy.CamelCase
            });

            writer.Write(serialized);
            writer.Flush();
            bodyStream.Seek(0, SeekOrigin.Begin);
            var ctx = ContextWithServices("/object", "POST", bodyStream, "application/json");

            Assert.Equal(serialized, DispatchAndRead(ctx));
        }
Example #20
0
        private String GetSystemParameter(SystemParameters parameter)
        {
            Log.InfoFormat("Getting system parameter: {0}", parameter.ToString());
            var systemItemValue = "";
            var extraProperty   = new object();
            var extraData       = new object();
            var device          = _deviceProxy.Device;

            var index = (int)parameter;

            byte[] paramIndex      = BitConverter.GetBytes(index);
            var    retryablePolicy = Policies.GetRetryablePolicy();
            bool   result          = retryablePolicy.Execute(
                () =>
            {
                extraData = paramIndex;
                return(_deviceProxy.DeviceConnection.GetProperty(DeviceProperty.SysParam, extraProperty, ref device, ref extraData));
            });

            if (result)
            {
                int paramValue = BitConverter.ToInt32((byte[])extraData, 0);
                switch (index)
                {
                case 26:
                case 27:
                case 28:
                case 29:
                    systemItemValue = ConvertObject.ConvertNumberToIPAddress(paramValue);
                    break;

                default:
                    systemItemValue = paramValue.ToString();
                    break;
                }
            }

            Log.InfoFormat("Getting system parameter Result={0}, value={1}", result, systemItemValue);
            return(systemItemValue);
        }
Example #21
0
 private void btn_MacAddress_Click(object sender, EventArgs e)
 {
     try
     {
         object extraProperty = new object();
         object extraData     = new object();
         bool   result        = deviceConnection.GetProperty(DeviceProperty.MacAddress, extraProperty, ref device, ref extraData);
         if (result)
         {
             byte[] bytes = (byte[])extraData;
             MessageBox.Show("Mac Address: " + ConvertObject.ConvertByteToHex(bytes), "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Information);
         }
         else
         {
             MessageBox.Show("Get Mac Address Fail", "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Warning);
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
Example #22
0
        public static Contract.Model.SystemInfo ToModel(SystemEntity systemEntity)
        {
            var systemInfo = new Contract.Model.SystemInfo();

            try
            {
                systemInfo.DeviceId     = int.Parse(systemEntity.DeviceId);
                systemInfo.Mac          = systemEntity.Mac;
                systemInfo.SerialNumber = ConvertObject.ToPrettyString(systemEntity.SerialNumber);
                systemInfo.DeviceModel  = ConvertObject.ToPrettyString(systemEntity.Model);
                systemInfo.Password     = ConvertObject.ToPrettyString(systemEntity.Password);

                systemInfo.Services.Add(TcpConnectionServiceMapper.BuildService(systemEntity));
                systemInfo.Services.Add(UdpConnectionServiceMapper.BuildService(systemEntity));

                return(systemInfo);
            }
            catch (Exception ex)
            {
                Log.Error(ex);
                throw;
            }
        }
Example #23
0
        public SystemEntity GetSystemData()
        {
            var    entity = new SystemEntity();
            var    device = _deviceProxy.Device;
            bool   result;
            object extraProperty = new object();
            object extraData     = new object();

            using (var operation = new DeviceLockableOperation(_deviceProxy))
            {
                entity.DeviceId   = GetSystemParameter(SystemParameters.DeviceID);
                entity.BaudRate   = GetSystemParameter(SystemParameters.Baudrate);
                entity.Password   = GetSystemParameter(SystemParameters.DevicePassword);
                entity.IP         = GetSystemParameter(SystemParameters.IPAddress);
                entity.Port       = GetSystemParameter(SystemParameters.UDPPort);
                entity.ServerURL  = GetSystemParameter(SystemParameters.ServerIPAddress);
                entity.ServerPort = GetSystemParameter(SystemParameters.ServerUDPPort);


                extraData    = Zd2911Utils.DeviceModel;
                result       = _deviceProxy.DeviceConnection.GetProperty(DeviceProperty.Model, extraProperty, ref device, ref extraData);
                entity.Model = (string)extraData;

                extraData           = Zd2911Utils.DeviceSerialNo;
                result              = _deviceProxy.DeviceConnection.GetProperty(DeviceProperty.SerialNo, extraProperty, ref device, ref extraData);
                entity.SerialNumber = (string)extraData;

                result = _deviceProxy.DeviceConnection.GetProperty(DeviceProperty.MacAddress, extraProperty, ref device, ref extraData);
                if (result)
                {
                    var bytes = (byte[])extraData; //bytes.Length = 6 }
                    entity.Mac = ConvertObject.ConvertByteToHex(bytes);
                }

                return(entity);
            }
        }
Example #24
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sql">要执行的SQL语句</param>
        /// <param name="commandType">要执行的查询语句的类型,如存储过程或者SQL文本命令</param>
        /// <param name="parameters">Transact-SQL 语句或存储过程的参数数组</param>
        /// <returns></returns>
        public SqlResult ExecuteScalar(string sql, CommandType commandType, SqlParameter[] parameters)
        {
            SqlResult result = null;

            using (SqlConnection connection = new SqlConnection(connString))
            {
                using (SqlCommand command = new SqlCommand(sql, connection))
                {
                    command.CommandType = commandType;//设置command的CommandType为指定的CommandType
                    //如果同时传入了参数,则添加这些参数
                    if (parameters != null)
                    {
                        foreach (SqlParameter parameter in parameters)
                        {
                            command.Parameters.Add(parameter);
                        }
                    }
                    connection.Open();//打开数据库连接
                    result.status  = true;
                    result.context = ConvertObject.ToString(command.ExecuteScalar());
                }
            }
            return(result);//返回查询结果
        }
Example #25
0
    public void SendCollisionData(ConvertObject co, Collider2D targetCollider, Collider2D otherCollider, bool isEnter, ClickObjectController oc)
    {
        colData = new CollisionData(targetCollider, otherCollider, isEnter, oc, type, almostBonus, beingDestroyed);

        co.GetData(colData);
    }
Example #26
0
        private void RefreshOutboundPickingListDetail(string pickingListNo, string locationCode, string lpn, string itemNumber, string lotNumber)
        {
            try
            {
                this.dgvPickItem.DataSource = null;
                CreateTableOnGridView();
                var outboundPickListResult = Calbee.WMS.Services.Outbound.OutboundServiceProxy.WS.GetOutboundPickingListDetails(string.Empty, pickingListNo, locationCode, string.Empty, lpn, itemNumber, lotNumber, string.Empty, string.Empty);
                if (outboundPickListResult != null)
                {
                    // เอาข้อมูลมาใส่ Gridview Production
                    DataTable dtTempPickList = ConvertObject.ToTable(outboundPickListResult);
                    if (dtTempPickList != null)
                    {
                        // Sum pick qty
                        this.lblResultPickQty.Text = outboundPickListResult.Select(q => q.QuantityPick).Sum().ToString();
                        if (dtTempPickList.Rows.Count > 0)
                        {
                            //Add to datagrid.
                            DataRow AddAll;
                            foreach (DataRow item in dtTempPickList.Rows)
                            {
                                AddAll = dt.NewRow();
                                AddAll["PickStatus"]   = Convert.ToString(item["PickStatus"]).Trim();
                                AddAll["Lpn"]          = Convert.ToString(item["Lpn"]).Trim();
                                AddAll["ItemNumber"]   = Convert.ToString(item["ItemNumber"]).Trim();
                                AddAll["ItemName"]     = Convert.ToString(item["ItemName"]).Trim();
                                AddAll["QuantityPlan"] = Convert.ToString(item["QuantityPlan"]).Trim();
                                AddAll["QuantityPick"] = Convert.ToString(item["QuantityPick"]).Trim();
                                AddAll["UOM"]          = Convert.ToString(item["UOM"]).Trim();
                                AddAll["LocationPlan"] = Convert.ToString(item["LocationPlan"]).Trim();
                                AddAll["LotNumber"]    = Convert.ToString(item["LotNumber"]).Trim();
                                AddAll["ExpiryDate"]   = string.IsNullOrEmpty(item["ExpiryDate"].ToString()) ? DateTime.Now : Convert.ToDateTime(item["ExpiryDate"]);
                                dt.Rows.Add(AddAll);
                            }

                            dt.TableName           = "PickItems";
                            dgvPickItem.DataSource = dt;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                if (ex.InnerException != null)
                {
                    MsgBox.DialogError(ex.InnerException.Message.ToString());
                }
                else
                {
                    if (Calbee.Infra.Common.Constants.IConstants.CatchFlag.Equals("Y"))
                    {
                        // Show error description detail
                        MsgBox.DialogError(ex.GetBaseException().ToString());
                    }
                    else
                    {
                        // Show message error
                        MsgBox.DialogError(ex.Message.ToString());
                    }
                }
            }
        }
        public ActionResult DownloadDataBiometric()
        {
            //List<DownloadDataViewModel> list = new List<DownloadDataViewModel>();

            //------------------------------------------ BINUGO CODE
            device                 = new Device();
            device.DN              = 1;
            device.Model           = "A-C030";
            device.ConnectionModel = 5;

            device.IpAddress         = "192.168.005.001";
            device.IpPort            = 123;
            device.CommunicationType = CommunicationType.Tcp;
            deviceConnection         = DeviceConnection.CreateConnection(ref device);
            System.Diagnostics.Debug.WriteLine(deviceConnection.Open());
            deviceEty                  = new DeviceComEty();
            deviceEty.Device           = device;
            deviceEty.DeviceConnection = deviceConnection;
            //-----------------------------------------

            object extraProperty = new object();
            object extraData     = new object();

            extraData = Global.DeviceBusy;
            try
            {
                List <DateTime> dtList = new List <DateTime>();
                bool            result = deviceConnection.SetProperty(DeviceProperty.Enable, extraProperty, device, extraData);

                //------------------------------------------ BINUGO CODE
                dtList.Add(Convert.ToDateTime("08/01/2017"));
                dtList.Add(DateTime.Now);
                //-----------------------------------------

                //dtList.Add(model.TO.Date);
                //dtList.Add(model.TO.Date);
                extraProperty = false;
                extraData     = dtList;
                result        = deviceConnection.GetProperty(DeviceProperty.AttRecordsCount, extraProperty, ref device,
                                                             ref extraData);
                if (false == result)
                {
                    TempData["msg"] = "<script>alert('Download Failed');</script>";
                }

                int recordCount = (int)extraData;

                if (0 == recordCount)
                {//为0时说明没有新日志记录
                    ListDownloadData.Clear();
                }

                List <bool> boolList = new List <bool>();

                //----------------------------------------- BINUGO CODE
                boolList.Add(false); //所有日志
                boolList.Add(false); //清除新日志标记,false则不清除
                //-----------------------------------------
                extraProperty = boolList;
                extraData     = dtList;
                result        = deviceConnection.GetProperty(DeviceProperty.AttRecords, extraProperty, ref device, ref extraData);
                if (result)
                {
                    int           i          = 1;
                    int           y          = 0;
                    List <Record> recordList = (List <Record>)extraData;
                    ListDownloadData.Clear();
                    foreach (Record record in recordList)
                    {
                        ListDownloadData.Add(new DownloadDataViewModel {
                            SN    = i.ToString(),
                            DN    = record.DN.ToString(),
                            DIN   = record.DIN.ToString(),
                            Type  = ConvertObject.GLogType(record.Verify),
                            mode  = ConvertObject.IOMode(record.Action),
                            Clock = record.Clock.ToString("yyyy-MM-dd HH:mm:ss")
                        });
                        i++;
                    }
                    Session["SessionName"] = ListDownloadData;
                }
                else
                {
                    TempData["msg"] = "<script>alert('Download Failed');</script>";
                }
            }
            catch (Exception)
            {
                TempData["msg"] = "<script>alert('Download Failed');</script>";
            }


            return(View("ConnectBiometric", ListDownloadData));
        }
Example #28
0
        public static void UpdateSystemInfo(ref User deviceUser, Contract.Model.UserInfo userInfo)
        {
            if (!string.IsNullOrWhiteSpace(userInfo.UserName))
            {
                deviceUser.UserName = userInfo.UserName;
            }

            if (userInfo.Role != null)
            {
                deviceUser.Privilege = (Int32)userInfo.Role;
            }

            if (!string.IsNullOrWhiteSpace(userInfo.Comment))
            {
                deviceUser.Comment = userInfo.Comment;
            }

            if (userInfo.UserStatus != null)
            {
                deviceUser.Enable = userInfo.UserStatus.Value;
            }

            if (userInfo.DepartmentId != null)
            {
                deviceUser.Department = userInfo.DepartmentId.Value;
            }

            if (userInfo.AccessTimeZoneId != null)
            {
                deviceUser.AccessTimeZone = userInfo.AccessTimeZoneId.Value;
            }

            if (userInfo.CredentialServices != null)
            {
                var enroll     = deviceUser.Enrolls.First();
                int enrollType = (int)enroll.EnrollType;

                foreach (var service in userInfo.CredentialServices)
                {
                    if (service is PasswordService)
                    {
                        var passwordService = service as PasswordService;
                        if (passwordService.Enabled)
                        {
                            if (Zd2911Utils.BitCheck(enrollType, (int)EnrollType.Password) == 0)
                            {
                                enrollType += Zd2911Utils.SetBit(0, (int)EnrollType.Password);
                            }

                            enroll.Password = passwordService.Password;
                        }
                    }
                    else if (service is CredentialCardService)
                    {
                        var credentialCardService = service as CredentialCardService;
                        if (credentialCardService.Enabled)
                        {
                            if (Zd2911Utils.BitCheck(enrollType, (int)EnrollType.Card) == 0)
                            {
                                enrollType += Zd2911Utils.SetBit(0, (int)EnrollType.Card); //password is 10, fp0-fp9, card is 11
                            }
                            enroll.CardID = credentialCardService.CardNumber;
                        }
                    }
                    else if (service is FingerPrintService)
                    {
                        var fpService = service as FingerPrintService;
                        if (fpService.Enabled)
                        {
                            if (Zd2911Utils.BitCheck(enrollType, fpService.Index) == 0)
                            {
                                enrollType += Zd2911Utils.SetBit(0, fpService.Index);
                            }

                            byte[] bytesFromText = ConvertObject.ConvertStringToBytes(fpService.FingerPrintData);
                            Array.Copy(bytesFromText, 0, enroll.Fingerprint, fpService.Index * Zd2911Utils.MaxFingerprintLength, bytesFromText.Length);
                        }
                    }
                }

                enroll.EnrollType = (EnrollType)enrollType;
            }
        }
Example #29
0
        private void listener_ReceiveHandler(object sender, ReceiveEventArg e)
        {
            Record       record = e.record;
            string       verify = ConvertObject.IOMode(record.Verify);
            string       action = ConvertObject.GLogType(record.Action);
            ListViewItem lvi    = new ListViewItem(new string[] { no.ToString(), record.DN.ToString(), record.DIN.ToString(),
                                                                  string.Empty, verify, action, record.Clock.ToString("yyyy-MM-dd HH:mm:ss") });

            string sql = "insert into dbo.DeviceOriginalData(UserID,DeviceID,DateTime,Verify,Action,Remark,MDIN,DoorStatus,JobCode,Antipassback) " +
                         "values(@UserID,@DeviceID,@DateTime,@Verify,@Action,@Remark,@MDIN,@DoorStatus,@JobCode,@Antipassback)";
            SqlConnection connection = new SqlConnection(conn);
            SqlCommand    command    = new SqlCommand(sql, connection);

            connection.Open();
            command.Parameters.Add(new SqlParameter("@UserID", record.DIN.ToString()));
            command.Parameters.Add(new SqlParameter("@DeviceID", record.DN));
            command.Parameters.Add(new SqlParameter("@DateTime", record.Clock.ToString("yyyy-MM-dd HH:mm:ss")));
            command.Parameters.Add(new SqlParameter("@Verify", record.Verify));
            command.Parameters.Add(new SqlParameter("@Action", record.Action));
            command.Parameters.Add(new SqlParameter("@Remark", record.Remark));
            command.Parameters.Add(new SqlParameter("@MDIN", record.MDIN.ToString()));
            command.Parameters.Add(new SqlParameter("@DoorStatus", record.DoorStatus));
            command.Parameters.Add(new SqlParameter("@JobCode", record.JobCode));
            command.Parameters.Add(new SqlParameter("@Antipassback", record.Antipassback));

            command.ExecuteNonQuery();
            connection.Close();
            string sql1 = "select * from dbo.Staffs where PhysicalCardNumber='" + record.DIN.ToString() + "'";// + record.DIN.ToString();
            // connection.Open();
            SqlConnection connection1 = new SqlConnection(conn);

            connection1.Open();
            SqlCommand    command1    = new SqlCommand(sql1, connection1);
            SqlDataReader dataReader  = command1.ExecuteReader();
            string        staffNumber = null;

            if (dataReader.Read())
            {
                staffNumber = dataReader["StaffNumber"].ToString();
            }
            else
            {
                return;
            }
            SqlConnection sdb = new SqlConnection("Data Source = 211.149.199.42,1433;Initial Catalog = BonsaiiSystem;User ID = sa;Password = admin123@;");//连接平台数据库

            string conn1 = "Data Source = 211.149.199.42,1433;User ID = sa;Password = admin123@;Initial Catalog = Bonsaii0000000008;";
            string sql2  = "select * from dbo.BindCodes where ConnectionString='" + conn1 + "' and StaffNumber='" + staffNumber + "'";

            dataReader.Close();
            connection1.Close();
            sdb.Open();
            SqlCommand    command2    = new SqlCommand(sql2, sdb);
            SqlDataReader dataReader1 = command2.ExecuteReader();

            if (dataReader1.Read())
            {
                JPushClient client = new JPushClient(app_key, master_secret);
                // PushPayload payload = PushObject_all_alias_alert(dataReader1["Phone"].ToString(), record.Clock.ToString("yyyy-MM-dd HH:mm:ss"));//选择一种方式
                PushPayload pushPayload = new PushPayload();
                pushPayload.platform     = Platform.android();
                pushPayload.audience     = Audience.s_alias(dataReader1["Phone"].ToString());
                pushPayload.message      = cn.jpush.api.push.mode.Message.content("hello").AddExtras("Tag", "2").AddExtras("ComapnyTag", "3");
                pushPayload.notification = Notification.android("打卡完成!", "在" + record.Clock.ToString("yyyy-MM-dd HH:mm:ss"));
                try
                {
                    var result = client.SendPush(pushPayload);//推送
                }
                catch (APIRequestException eee)
                {
                    Console.WriteLine("Error response from JPush server. Should review and fix it. ");
                    Console.WriteLine("HTTP Status: " + eee.Status);
                    Console.WriteLine("Error Code: " + eee.ErrorCode);
                    Console.WriteLine("Error Message: " + eee.ErrorCode);
                }
                catch (APIConnectionException ee)
                {
                    Console.WriteLine(ee.Message);
                }
            }
            dataReader1.Close();
            sdb.Close();

            //connection.Close();
            BeginInvoke(new AddRecord(AddRecordToListView), new object[] { lvi });
            no++;
        }
Example #30
0
        private void btn_OpenDevice_Click(object sender, EventArgs e)
        {
            try
            {
                device = new Device();

                device.DN              = (int)nud_DN.Value;
                device.Password        = nud_Pwd.Value.ToString();
                device.Model           = "ZDC2911";
                device.ConnectionModel = 5;//等于5时才能正确加载ZD2911通讯模块

                if (rdb_USB.Checked)
                {
                    device.CommunicationType = CommunicationType.Usb;
                }
                else if (rdb_TCP.Checked)
                {
                    if (string.IsNullOrEmpty(txt_IP.Text.Trim()))
                    {
                        MessageBox.Show("Please Input IP Address", "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        txt_IP.Focus();
                        return;
                    }

                    if (false == ConvertObject.IsCorrenctIP(txt_IP.Text.Trim()))
                    {
                        MessageBox.Show("Illegal IP Address", "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        txt_IP.Focus();
                        return;
                    }

                    device.IpAddress         = txt_IP.Text.Trim();
                    device.IpPort            = (int)nud_Port.Value;
                    device.CommunicationType = CommunicationType.Tcp;
                }
                else if (rdb_COMM.Checked)
                {
                    device.SerialPort        = Convert.ToInt32(cbo_COMM.SelectedItem.ToString().Replace("COM", string.Empty));
                    device.Baudrate          = Convert.ToInt32(cbo_BaudRate.SelectedItem);
                    device.CommunicationType = CommunicationType.Serial;
                }
                else if (p2pRadioButton.Checked)
                {
                    device.CommunicationType = CommunicationType.P2P;
                    device.SerialNumber      = p2pAddrTextBox.Text.Trim(); //20130819
                    Riss.Devices.P2pUtils.SetP2pServerIpAddress(p2pServerTextBox.Text.Trim());
                }
                deviceConnection = DeviceConnection.CreateConnection(ref device);

                if (deviceConnection.Open() > 0)
                {
                    deviceEty                  = new DeviceCommEty();
                    deviceEty.Device           = device;
                    deviceEty.DeviceConnection = deviceConnection;
                    btn_CloseDevice.Enabled    = true;
                    SetButtonEnabled(true);
                    btn_OpenDevice.Enabled = false;
                }
                else
                {
                    MessageBox.Show("Connect Device Fail", "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error1", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        private void txtLPN_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                if (string.IsNullOrEmpty(this.txtLPN.Text.Trim()))
                {
                    MsgBox.DialogWarning("Please scan lpn");
                    this.txtLPN.Focus();
                    this.txtLPN.SelectAll();
                    return;
                }
                else
                {
                    try
                    {
                        var LpnDetailResult = Calbee.WMS.Services.Inventory.InventoryServiceProxy.WS.GetInventorys(Calbee.Infra.Common.Constants.WConstants.wareHouseDDL, string.Empty, string.Empty, this.txtLPN.Text.Trim(), string.Empty, string.Empty);
                        if (LpnDetailResult != null)
                        {
                            if (LpnDetailResult.Count() > 0)
                            {
                                // เอาข้อมูลมาใส่ Gridview Production
                                CreateTableDetailOnGridView();
                                DataTable dtTempProduction = ConvertObject.ToTable(LpnDetailResult);
                                if (dtTempProduction != null)
                                {
                                    if (dtTempProduction.Rows.Count > 0)
                                    {
                                        //Add to datagrid.
                                        DataRow AddAll;
                                        foreach (DataRow item in dtTempProduction.Rows)
                                        {
                                            AddAll                = dtDetail.NewRow();
                                            AddAll["Quantity"]    = Convert.ToString(item["Quantity"]).Trim();
                                            AddAll["ItemStatus"]  = Convert.ToString(item["StatusName"]).Trim();
                                            AddAll["UOM"]         = Convert.ToString(item["UOM"]).Trim();
                                            AddAll["ReceiveDate"] = Convert.ToString(item["ReceiveDate"]).Trim();
                                            dtDetail.Rows.Add(AddAll);
                                        }

                                        dtDetail.TableName = "Detail";
                                        dgvChangeStatusDetail.DataSource = dtDetail;
                                    }
                                }

                                this.txtLocation.Text        = string.IsNullOrEmpty(LpnDetailResult.FirstOrDefault().LocationCode) ? string.Empty : LpnDetailResult.FirstOrDefault().LocationCode;
                                this.txtLocation.ReadOnly    = true;
                                this.txtItemNumber.Text      = string.IsNullOrEmpty(LpnDetailResult.FirstOrDefault().ItemNumber) ? string.Empty : LpnDetailResult.FirstOrDefault().ItemNumber;
                                this.txtItemNumber.ReadOnly  = true;
                                this.txtDescription.Text     = string.IsNullOrEmpty(LpnDetailResult.FirstOrDefault().ItemName) ? string.Empty : LpnDetailResult.FirstOrDefault().ItemName;
                                this.txtDescription.ReadOnly = true;
                                this.txtLotNumber.Text       = string.IsNullOrEmpty(LpnDetailResult.FirstOrDefault().LotNumber) ? string.Empty : LpnDetailResult.FirstOrDefault().LotNumber;
                                this.txtLotNumber.ReadOnly   = true;
                                if (LpnDetailResult.FirstOrDefault().ExpiryDate != null)
                                {
                                    this.dtpExpiryDate.Value = LpnDetailResult.FirstOrDefault().ExpiryDate.Value;
                                }
                                else
                                {
                                    this.dtpExpiryDate.Value = AppContext.GetDateTimeServer();
                                }
                                this.toLpn                 = LpnDetailResult.FirstOrDefault().Lpn;
                                this.UOM                   = LpnDetailResult.FirstOrDefault().UOM;
                                this.expiryDateControl     = LpnDetailResult.FirstOrDefault().ExpiryDateControl;
                                this.dtpExpiryDate.Enabled = false;
                                this.txtQuantity.Text      = LpnDetailResult.FirstOrDefault().Quantity.ToString();
                                List <string> _listItemStatus = new List <string>();
                                foreach (var item in LpnDetailResult)
                                {
                                    _listItemStatus.Add(item.StatusName);
                                }

                                ComboBoxBinding.BindLStringToCombobox(_listItemStatus, this.cmbItemStatus);
                                this.txtQuantity.Focus();
                            }
                        }
                        else
                        {
                            MsgBox.DialogWarning("Not found lpn : " + this.txtLPN.Text);
                            this.txtItemNumber.Focus();
                            this.txtItemNumber.SelectAll();
                            return;
                        }
                    }
                    catch (Exception ex)
                    {
                        if (ex.InnerException != null)
                        {
                            MsgBox.DialogError(ex.InnerException.Message.ToString());
                        }
                        else
                        {
                            if (Calbee.Infra.Common.Constants.IConstants.CatchFlag.Equals("Y"))
                            {
                                // Show error description detail
                                MsgBox.DialogError(ex.GetBaseException().ToString());
                            }
                            else
                            {
                                // Show message error
                                MsgBox.DialogError(ex.Message.ToString());
                            }
                        }
                    }
                }
            }
        }
Example #32
0
        /// <summary>
        ///
        /// </summary>
        private void Excate(SourceTaskItem sourceTask)
        {
            string sqlStr = @"
                SELECT
	                ISNULL(TransToType.longitude,'0') AS longitude, ISNULL(TransToType.latitude,'0') AS latitude, C.*
                FROM
                (
	                SELECT 
		                *
	                FROM
	                (
	                SELECT ROW_NUMBER() OVER(PARTITION BY deviceAddress ORDER BY dataTime DESC) AS RowNumber, *FROM
	                (
		                SELECT
			                *
		                FROM  baseData

		                WHERE deviceAddress IN(SELECT deviceAddress FROM TransToType WHERE transTo1 = '11')
	                ) AS A
	                ) AS B WHERE RowNumber = 1 -- AND deviceAddress ='11004'
                ) AS C LEFT JOIN TransToType ON C.deviceAddress = TransToType.deviceAddress
                ";


            //_log.InfoFormat(DateTime.Now + Environment.NewLine + "DustMonitoringTask sqlStr:{0}", sqlStr);


            DataTable dt = new SQLHelper(sourceTask.ConnectionString).ExecuteQuery(sqlStr, CommandType.Text);

            DateTime now = DateTime.Now;

            _log.InfoFormat(DateTime.Now + Environment.NewLine + "DustMonitoringTask sqlStr:{0}", dt.Rows.Count);

            List <BaseDataModel> dataList = new List <BaseDataModel>();

            foreach (DataRow item in dt.Rows)
            {
                BaseDataModel baseDataModel = new BaseDataModel();
                baseDataModel.ID            = ConvertObject.ToInt32(item["ID"]);
                baseDataModel.deviceAddress = ConvertObject.ToString(item["deviceAddress"]);;
                baseDataModel.sensorCount   = ConvertObject.ToString(item["sensorCount"], "0");
                baseDataModel.PM25          = ConvertObject.ToString(item["PM25"], "0");
                baseDataModel.PM10          = ConvertObject.ToString(item["PM10"], "0");
                baseDataModel.noise         = ConvertObject.ToString(item["noise"], "0");
                baseDataModel.temperature   = ConvertObject.ToString(item["temperature"], "0");
                baseDataModel.humidity      = ConvertObject.ToString(item["humidity"], "0");
                baseDataModel.windSpeed     = ConvertObject.ToString(item["windSpeed"], "0");
                baseDataModel.windPower     = ConvertObject.ToString(item["windPower"], "0");
                baseDataModel.windDirection = ConvertObject.ToString(item["windDirection"], "0");
                baseDataModel.dataTime      = ConvertObject.ToDateTime(item["dataTime"]);
                baseDataModel.transTo       = ConvertObject.ToString(item["transTo"], "0");
                baseDataModel.transCode     = ConvertObject.ToString(item["transCode"], "0");

                baseDataModel.longitude = ConvertObject.ToString(item["longitude"], "0");
                baseDataModel.latitude  = ConvertObject.ToString(item["latitude"], "0");


                //十分钟之内的数据才会统计
                if (baseDataModel.dataTime >= now.AddMinutes(-10))
                {
                    dataList.Add(baseDataModel);
                }
            }
            foreach (BaseDataModel item in dataList)
            {
                MonitoringPollutantsService monitoringPollutantsService = new MonitoringPollutantsService();
                monitoringPollutantsService.UploadData(item);
                //sqlStr = string.Format("UPDATE baseData SET ISAsync='1' WHERE ID = '{0}'", baseDataModel.ID);
                //int result = new SQLHelper(sourceTask.ConnectionString).ExecuteNonQuery(sqlStr, CommandType.Text);
                //_log.InfoFormat("{0}{1}记录更新结果为:{2},{3}", DateTime.Now, Environment.NewLine, sqlStr, result);
                //Thread.Sleep(1000);
            }
        }
Example #33
0
 public void OnTrigger(ConvertObject co, Collider2D targetCollider, Collider2D otherCollider, bool isEnter)
 {
     clickObject.SendCollisionData(co, targetCollider, otherCollider, isEnter, this);
 }
        /// <summary>
        /// 执行
        /// DevID:|:911000011#|#Time:|:2016-06-29 12:48:33#|#HUMI:|:27#|#TEMP:|:30#|#PRE:|:150#|#WINDD:|:200#|#WINDS:|:3#|#NOISE:|:120#|#PM25:|:45#|#PM10:|:100.00#|#TSP:|:300
        /// </summary>
        private void Excate(SourceTaskItem sourceTask)
        {
            string sqlStr = "SELECT * FROM baseData WHERE ISAsync='0' OR ISAsync IS NULL";

            _log.InfoFormat(DateTime.Now + Environment.NewLine + "UpLoadSaveYCJCTask sqlStr:{0}", sqlStr);

            List <BaseDataModel> baseDataModels = new List <Models.SaveYCJCService.BaseDataModel>();

            DataTable dt = new SQLHelper(sourceTask.ConnectionString).ExecuteQuery(sqlStr, CommandType.Text);

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                baseDataModels.Add(new BaseDataModel()
                {
                    ID            = ConvertObject.ToInt32(dt.Rows[i]["ID"]),
                    deviceAddress = ConvertObject.ToString(dt.Rows[i]["deviceAddress"].ToString(), "-1"),
                    sensorCount   = ConvertObject.ToString(dt.Rows[i]["sensorCount"].ToString(), "-1"),
                    PM25          = ConvertObject.ToString(dt.Rows[i]["PM25"].ToString(), "-1"),
                    PM10          = ConvertObject.ToString(dt.Rows[i]["PM10"].ToString(), "-1"),
                    noise         = ConvertObject.ToString(dt.Rows[i]["noise"].ToString(), "-1"),
                    temperature   = ConvertObject.ToString(dt.Rows[i]["temperature"].ToString(), "-1"),
                    humidity      = ConvertObject.ToString(dt.Rows[i]["humidity"].ToString(), "-1"),
                    windSpeed     = ConvertObject.ToString(dt.Rows[i]["windSpeed"].ToString(), "-1"),
                    windPower     = ConvertObject.ToString(dt.Rows[i]["windPower"].ToString(), "-1"),
                    windDirection = ConvertObject.ToString(dt.Rows[i]["windDirection"].ToString(), "-1"),
                    dataTime      = ConvertObject.ToDateTime(dt.Rows[i]["dataTime"].ToString()),
                    transTo       = ConvertObject.ToString(dt.Rows[i]["transTo"].ToString(), "-1"),
                    transCode     = ConvertObject.ToString(dt.Rows[i]["transCode"].ToString(), "-1")
                });
            }
            foreach (BaseDataModel item in baseDataModels)
            {
                Dictionary <string, string> pairs = new Dictionary <string, string>();
                //获取数据源
                #region 参数
                pairs.Add(YCJCService.DevID, item.deviceAddress); //deviceAddress
                pairs.Add(YCJCService.Time, DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
                pairs.Add(YCJCService.HUMI, item.humidity);       //humidity
                pairs.Add(YCJCService.TEMP, item.temperature);    //temperature
                pairs.Add(YCJCService.PRE, "-1");
                pairs.Add(YCJCService.WINDD, item.windDirection); //windDirection
                pairs.Add(YCJCService.WINDS, item.windSpeed);     //windSpeed
                pairs.Add(YCJCService.NOISE, item.noise);         //noise
                pairs.Add(YCJCService.PM25, item.PM25);           //PM25
                pairs.Add(YCJCService.PM10, item.PM10);           //PM10
                pairs.Add(YCJCService.TSP, "-1");
                #endregion
                string resultStr = service.SaveYCJC(pairs, "Service_JZ");
                _log.InfoFormat("{0}{1}SaveYCJC 结果:{2}", DateTime.Now, Environment.NewLine, resultStr);

                ResultClass jsonObj = JsonConvert.DeserializeObject <ResultClass>(resultStr);
                if (string.IsNullOrEmpty(jsonObj.True))
                {
                    _log.InfoFormat("{0}{1}SaveYCJC 结果出现错误:{2}", DateTime.Now, Environment.NewLine, jsonObj.False);
                }
                else
                {
                    sqlStr = string.Format("UPDATE baseData SET ISAsync='1' WHERE ID = '{0}'", item.ID);
                    int result = new SQLHelper(sourceTask.ConnectionString).ExecuteNonQuery(sqlStr, CommandType.Text);
                    _log.InfoFormat("{0}{1}记录更新结果为:{2},{3}", DateTime.Now, Environment.NewLine, sqlStr, result);
                }
                Thread.Sleep(30000);
            }
        }
        public override void ExecuteProgramJob(SourceTaskItem sourceTask, LogTaskItem logTask)
        {
            string sqlStr = @"
                SELECT 
                    *
                FROM
                (
                SELECT ROW_NUMBER() OVER(PARTITION BY deviceAddress ORDER BY dataTime DESC) AS RowNumber, *FROM
                (
                    SELECT
                        *
                    FROM  baseData

                    WHERE deviceAddress IN(SELECT deviceAddress FROM TransToType WHERE transTo = '12')
                ) AS A
                ) AS B WHERE RowNumber = 1 AND deviceAddress ='11056'";


            //_log.InfoFormat(DateTime.Now + Environment.NewLine + "DustMonitoringTask sqlStr:{0}", sqlStr);


            DataTable dt = new SQLHelper(sourceTask.ConnectionString).ExecuteQuery(sqlStr, CommandType.Text);

            DateTime now = DateTime.Now;

            _log.InfoFormat(DateTime.Now + Environment.NewLine + "DustMonitoringTask sqlStr:{0}", dt.Rows.Count);

            List <BaseDataModel> dataList = new List <BaseDataModel>();

            foreach (DataRow item in dt.Rows)
            {
                BaseDataModel baseDataModel = new BaseDataModel();
                baseDataModel.ID            = ConvertObject.ToInt32(item["ID"]);
                baseDataModel.deviceAddress = ConvertObject.ToString(item["deviceAddress"]);;
                baseDataModel.sensorCount   = ConvertObject.ToString(item["sensorCount"], "0");
                baseDataModel.PM25          = ConvertObject.ToString(item["PM25"], "0");
                baseDataModel.PM10          = ConvertObject.ToString(item["PM10"], "0");
                baseDataModel.noise         = ConvertObject.ToString(item["noise"], "0");
                baseDataModel.temperature   = ConvertObject.ToString(item["temperature"], "0");
                baseDataModel.humidity      = ConvertObject.ToString(item["humidity"], "0");
                baseDataModel.windSpeed     = ConvertObject.ToString(item["windSpeed"], "0");
                baseDataModel.windPower     = ConvertObject.ToString(item["windPower"], "0");
                baseDataModel.windDirection = ConvertObject.ToString(item["windDirection"], "0");
                baseDataModel.dataTime      = ConvertObject.ToDateTime(item["dataTime"]);
                baseDataModel.transTo       = ConvertObject.ToString(item["transTo"], "0");
                baseDataModel.transCode     = ConvertObject.ToString(item["transCode"], "0");

                //十分钟之内的数据才会统计
                if (baseDataModel.dataTime >= now.AddMinutes(-10))
                {
                    dataList.Add(baseDataModel);
                }
            }
            foreach (BaseDataModel item in dataList)
            {
                DustMonitoringService dustMonitoringService = new DustMonitoringService();
                dustMonitoringService.Regester(item);
                while (true)
                {
                    if (dustMonitoringService._client.State == Cowboy.Sockets.TcpSocketConnectionState.Closed)
                    {
                        break;
                    }
                    Thread.Sleep(1000);
                }
                //sqlStr = string.Format("UPDATE baseData SET ISAsync='1' WHERE ID = '{0}'", baseDataModel.ID);
                //int result = new SQLHelper(sourceTask.ConnectionString).ExecuteNonQuery(sqlStr, CommandType.Text);
                //_log.InfoFormat("{0}{1}记录更新结果为:{2},{3}", DateTime.Now, Environment.NewLine, sqlStr, result);
                //Thread.Sleep(1000);
            }
        }