Example #1
0
        public override IWorkResponseMessageBase OnLocationRequest(RequestMessageLocation requestMessage)
        {
            var responseMessage = this.CreateResponseMessage <ResponseMessageText>();

            var worker = _workManager.GetWorkerByCn(requestMessage.FromUserName);

            if (worker == null)
            {
                responseMessage.Content = "未登记在工作人员表中";
            }
            else
            {
                int depotId = _workManager.GetWorkerDepotId(worker.Id);
                if (_workManager.IsInDepotRadius(depotId, (float)requestMessage.Location_X, (float)requestMessage.Location_Y))
                {
                    responseMessage.Content = _workManager.DoSignin(1, depotId, worker.Id);
                }
                else
                {
                    responseMessage.Content = "你未在有效范围内";
                }
            }
            return(responseMessage);
        }