示例#1
0
        public JsonResult Update(PosTerminalDetailView vm)
        {
            GetPosTerminalRequest request = new GetPosTerminalRequest();

            request.TerminalId = vm.TerminalId;

            ModifyPosTerminalRequest updateRequest = _posTerminalService.GetPosTerminal(request).PosTerminal.ConvertToModifyPosTerminalRequest();

            updateRequest.TerminalId             = vm.TerminalId;
            updateRequest.TerminalIdByHeadQuater = vm.TerminalIdByHeadQuater;
            updateRequest.InitializeCode         = vm.InitializeCode;
            GetPosDeviceRequest posDeviceRequest = new GetPosDeviceRequest();

            posDeviceRequest.DeviceId = vm.PosDeviceDeviceId;
            updateRequest.PosDevice   = _posDeviceService.GetPosDevice(posDeviceRequest).PosDevice;
            GetPosStatusTerminalRequest posStatusTerminalRequest = new GetPosStatusTerminalRequest();

            posStatusTerminalRequest.TerminalStatusId = vm.PosStatusTerminalTerminalStatusId;
            updateRequest.PosStatusTerminal           = _posStatusTerminalService.GetPosStatusTerminal(posStatusTerminalRequest).PosStatusTerminal;
            GetPosSimRequest posSimRequest = new GetPosSimRequest();

            posSimRequest.SimId       = vm.PosSimSimId;
            updateRequest.PosSim      = _posSimService.GetPosSim(posSimRequest).PosSim;
            updateRequest.ConnectType = vm.ConnectType;

            ModifyPosTerminalResponse response = _posTerminalService.ModifyPosTerminal(updateRequest);

            return(Json(response));
        }
        public ModifyPosTerminalResponse ModifyPosTerminal(ModifyPosTerminalRequest request)
        {
            ModifyPosTerminalResponse response = new ModifyPosTerminalResponse();

            PosTerminal posTerminal = _posTerminalRepository
                                      .FindBy(request.TerminalId);

            posTerminal.Id = request.TerminalId;
            posTerminal.TerminalIdByHeadQuater = request.TerminalIdByHeadQuater;
            posTerminal.InitializeCode         = request.InitializeCode;
            posTerminal.ConnectType            = request.ConnectType;
            posTerminal.PosReceiptOfDeliveries = request.PosReceiptOfDeliveries.ConvertToPosReceiptOfDeliveries();
            posTerminal.PosReceiptOfTestings   = request.PosReceiptOfTestings.ConvertToPosReceiptOfTestings();
            posTerminal.PosDevice         = request.PosDevice.ConvertToPosDevice();
            posTerminal.PosStatusTerminal = request.PosStatusTerminal.ConvertToPosStatusTerminal();
            posTerminal.PosSim            = request.PosSim.ConvertToPosSim();


            if (posTerminal.GetBrokenRules().Count() > 0)
            {
                response.Errors = posTerminal.GetBrokenRules().ToList();
            }
            else
            {
                try {
                    _posTerminalRepository.Save(posTerminal);
                    _uow.Commit();
                    response.Errors = new List <BusinessRule>();
                } catch (Exception ex)
                {
                    response.Errors = new List <BusinessRule>();
                    response.Errors.Add(new BusinessRule("DAL", "DAL_ERROR: " + ex.Message));
                }
            }


            return(response);
        }