Example #1
0
        public object DelGameInfo(Dictionary <string, object> dicParas)
        {
            try
            {
                string errMsg = string.Empty;
                string id     = dicParas.ContainsKey("id") ? (dicParas["id"] + "") : string.Empty;
                if (string.IsNullOrEmpty(id))
                {
                    errMsg = "游戏机流水号不能为空";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }

                int iId = Convert.ToInt32(id);
                IData_GameInfoService data_GameInfoService = BLLContainer.Resolve <IData_GameInfoService>();
                if (!data_GameInfoService.Any(a => a.ID == iId))
                {
                    errMsg = "该游戏机信息不存在";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }

                var data_GameInfo = data_GameInfoService.GetModels(p => p.ID == iId).FirstOrDefault();
                if (!data_GameInfoService.Delete(data_GameInfo))
                {
                    errMsg = "删除游戏机信息失败";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }

                return(ResponseModelFactory.CreateSuccessModel(isSignKeyReturn));
            }
            catch (Exception e)
            {
                return(ResponseModelFactory.CreateReturnModel(isSignKeyReturn, Return_Code.F, e.Message));
            }
        }
Example #2
0
        public object GetStoreWeightGameList(Dictionary <string, object> dicParas)
        {
            try
            {
                string errMsg  = string.Empty;
                string storeId = dicParas.ContainsKey("storeId") ? (dicParas["storeId"] + "") : string.Empty;

                if (string.IsNullOrEmpty(storeId))
                {
                    errMsg = "门店ID不能为空";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }

                IData_GameInfoService         data_GameInfoService         = BLLContainer.Resolve <IData_GameInfoService>(resolveNew: true);
                IBase_StoreWeight_GameService base_StoreWeight_GameService = BLLContainer.Resolve <IBase_StoreWeight_GameService>(resolveNew: true);
                var result = from a in data_GameInfoService.GetModels(p => p.StoreID.Equals(storeId, StringComparison.OrdinalIgnoreCase))
                             join b in base_StoreWeight_GameService.GetModels() on a.ID equals b.GameID into b1
                             from b in b1.DefaultIfEmpty()
                             where b.GameID == (int?)null
                             select new
                {
                    GameName = a.GameName,
                    GameID   = a.ID
                };

                return(ResponseModelFactory.CreateSuccessModel(isSignKeyReturn, result));
            }
            catch (Exception e)
            {
                return(ResponseModelFactory.CreateReturnModel(isSignKeyReturn, Return_Code.F, e.Message));
            }
        }
Example #3
0
        public object GetStoreGameInfo(Dictionary <string, object> dicParas)
        {
            try
            {
                string errMsg = string.Empty;
                XCCloudUserTokenModel userTokenKeyModel = (XCCloudUserTokenModel)dicParas[Constant.XCCloudUserTokenModel];
                string storeId = (userTokenKeyModel.DataModel as UserDataModel).StoreID;
                IData_GameInfoService    data_GameInfoService = BLLContainer.Resolve <IData_GameInfoService>();
                Dictionary <int, string> gameInfo             = data_GameInfoService.GetModels(p => p.StoreID.Equals(storeId, StringComparison.OrdinalIgnoreCase)).Select(o => new
                {
                    ID       = o.ID,
                    GameName = o.GameName
                }).Distinct().ToDictionary(d => d.ID, d => d.GameName);

                return(ResponseModelFactory.CreateSuccessModel(isSignKeyReturn, gameInfo));
            }
            catch (Exception e)
            {
                return(ResponseModelFactory.CreateReturnModel(isSignKeyReturn, Return_Code.F, e.Message));
            }
        }
Example #4
0
        public object GetStoreWeightUserGameList(Dictionary <string, object> dicParas)
        {
            try
            {
                string errMsg  = string.Empty;
                string storeId = dicParas.ContainsKey("storeId") ? (dicParas["storeId"] + "") : string.Empty;
                string userId  = dicParas.ContainsKey("userId") ? (dicParas["userId"] + "") : string.Empty;

                if (string.IsNullOrEmpty(storeId))
                {
                    errMsg = "门店ID不能为空";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }

                if (string.IsNullOrEmpty(userId))
                {
                    errMsg = "用户ID不能为空";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }

                int iUserId = Convert.ToInt32(userId);
                IBase_StoreWeightService      base_StoreWeightService      = BLLContainer.Resolve <IBase_StoreWeightService>(resolveNew: true);
                IBase_StoreWeight_GameService base_StoreWeight_GameService = BLLContainer.Resolve <IBase_StoreWeight_GameService>(resolveNew: true);
                IData_GameInfoService         data_GameInfoService         = BLLContainer.Resolve <IData_GameInfoService>(resolveNew: true);
                var result = from a in base_StoreWeightService.GetModels(p => p.StoreID.Equals(storeId, StringComparison.OrdinalIgnoreCase) && p.BossID == iUserId)
                             join b in base_StoreWeight_GameService.GetModels() on a.ID equals b.WeightID
                             join c in data_GameInfoService.GetModels() on b.GameID equals c.ID
                             select new
                {
                    GameName = c.GameName,
                    GameID   = c.ID
                };

                return(ResponseModelFactory.CreateSuccessModel(isSignKeyReturn, result));
            }
            catch (Exception e)
            {
                return(ResponseModelFactory.CreateReturnModel(isSignKeyReturn, Return_Code.F, e.Message));
            }
        }
Example #5
0
        public object GetGameInfo(Dictionary <string, object> dicParas)
        {
            try
            {
                string errMsg = string.Empty;
                string id     = dicParas.ContainsKey("id") ? (dicParas["id"] + "") : string.Empty;
                if (string.IsNullOrEmpty(id))
                {
                    errMsg = "游戏机流水号不能为空";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }

                int iId = Convert.ToInt32(id);

                IData_GameInfoService data_GameInfoService = BLLContainer.Resolve <IData_GameInfoService>(resolveNew: true);
                if (!data_GameInfoService.Any(a => a.ID == iId))
                {
                    errMsg = "该游戏机信息不存在";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }

                IDict_SystemService dict_SystemService = BLLContainer.Resolve <IDict_SystemService>(resolveNew: true);
                int GameInfoId = dict_SystemService.GetModels(p => p.DictKey.Equals("游戏机档案维护")).FirstOrDefault().ID;
                var result     = from a in data_GameInfoService.GetModels(p => p.ID == iId).FirstOrDefault().AsDictionary()
                                 join b in dict_SystemService.GetModels(p => p.PID == GameInfoId) on a.Key equals b.DictKey into b1
                                 from b in b1.DefaultIfEmpty()
                                 select new {
                    name    = a.Key,
                    value   = a.Value,
                    comment = b != null ? b.Comment : string.Empty
                };

                return(ResponseModelFactory.CreateSuccessModel(isSignKeyReturn, result));
            }
            catch (Exception e)
            {
                return(ResponseModelFactory.CreateReturnModel(isSignKeyReturn, Return_Code.F, e.Message));
            }
        }
Example #6
0
        public object GetGameInfoList(Dictionary <string, object> dicParas)
        {
            try
            {
                XCCloudUserTokenModel userTokenKeyModel = (XCCloudUserTokenModel)dicParas[Constant.XCCloudUserTokenModel];
                string storeId = (userTokenKeyModel.DataModel as UserDataModel).StoreID;

                IDict_SystemService dict_SystemService = BLLContainer.Resolve <IDict_SystemService>(resolveNew: true);
                int GameTypeId = dict_SystemService.GetModels(p => p.DictKey.Equals("游戏机类型")).FirstOrDefault().ID;

                IData_GameInfoService data_GameInfoService = BLLContainer.Resolve <IData_GameInfoService>(resolveNew: true);
                var data_GameInfo = from a in data_GameInfoService.GetModels(p => p.StoreID.Equals(storeId, StringComparison.OrdinalIgnoreCase))
                                    join b in dict_SystemService.GetModels(p => p.PID == GameTypeId) on a.GameType equals b.DictValue into b1
                                    from b in b1.DefaultIfEmpty()
                                    orderby a.GameID
                                    select new
                {
                    ID                 = a.ID,
                    GameID             = a.GameID,
                    GameName           = a.GameName,
                    GameTypeStr        = b != null ? b.DictKey : string.Empty,
                    PushReduceFromCard = a.PushReduceFromCard,
                    AllowElecPushStr   = a.AllowElecPush != null ? (a.AllowElecPush == 1 ? "启用" : "禁用") : "",
                    LotteryModeStr     = a.LotteryMode != null ? (a.LotteryMode == 1 ? "启用" : "禁用") : "",
                    ReadCatStr         = a.ReadCat != null ? (a.ReadCat == 1 ? "启用" : "禁用") : "",
                    StateStr           = !string.IsNullOrEmpty(a.State) ? (a.State == "1" ? "启用" : "禁用") : ""
                };


                return(ResponseModelFactory.CreateSuccessModel(isSignKeyReturn, data_GameInfo));
            }
            catch (Exception e)
            {
                return(ResponseModelFactory.CreateReturnModel(isSignKeyReturn, Return_Code.F, e.Message));
            }
        }
Example #7
0
        public object ReloadDevice(Dictionary <string, object> dicParas)
        {
            try
            {
                XCCloudUserTokenModel userTokenKeyModel = (XCCloudUserTokenModel)dicParas[Constant.XCCloudUserTokenModel];
                string storeId = (userTokenKeyModel.DataModel as UserDataModel).StoreID;
                string userId  = userTokenKeyModel.LogId;
                int    iUserId = 0;
                int.TryParse(userId, out iUserId);

                string errMsg = string.Empty;
                string goodId = dicParas.ContainsKey("goodId") ? Convert.ToString(dicParas["goodId"]) : string.Empty;
                string deviceId = dicParas.ContainsKey("deviceId") ? Convert.ToString(dicParas["deviceId"]) : string.Empty;
                string deviceType = dicParas.ContainsKey("deviceType") ? Convert.ToString(dicParas["deviceType"]) : string.Empty;
                string reloadType = dicParas.ContainsKey("reloadType") ? Convert.ToString(dicParas["reloadType"]) : string.Empty;
                string reloadCount = dicParas.ContainsKey("reloadCount") ? Convert.ToString(dicParas["reloadCount"]) : string.Empty;
                string note = dicParas.ContainsKey("note") ? Convert.ToString(dicParas["note"]) : string.Empty;
                int    iDeviceId = 0, iGoodId = 0;
                int.TryParse(deviceId, out iDeviceId);
                int.TryParse(goodId, out iGoodId);

                #region 参数验证

                if (string.IsNullOrEmpty(goodId))
                {
                    errMsg = "商品索引goodId不能为空";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }

                //if (string.IsNullOrEmpty(deviceId))
                //{
                //    errMsg = "设备索引deviceId不能为空";
                //    return ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg);
                //}

                if (string.IsNullOrEmpty(deviceType))
                {
                    errMsg = "设备类型deviceType不能为空";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }

                if (string.IsNullOrEmpty(reloadType))
                {
                    errMsg = "安装类别reloadType不能为空";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }

                if (string.IsNullOrEmpty(reloadCount))
                {
                    errMsg = "安装数量reloadCount不能为空";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }

                if (!Utils.isNumber(reloadCount))
                {
                    errMsg = "安装数量reloadCount格式不正确";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }

                int iReloadCount = Convert.ToInt32(reloadCount);
                if (iReloadCount < 0)
                {
                    errMsg = "安装数量reloadCount不能为负数";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }

                #endregion

                IBase_StorageInfoService    base_StorageInfoService    = BLLContainer.Resolve <IBase_StorageInfoService>();
                IData_Storage_RecordService data_Storage_RecordService = BLLContainer.Resolve <IData_Storage_RecordService>();
                IData_ReloadService         data_ReloadService         = BLLContainer.Resolve <IData_ReloadService>();
                IData_HeadService           data_HeadService           = BLLContainer.Resolve <IData_HeadService>(resolveNew: true);
                IData_GameInfoService       data_GameInfoService       = BLLContainer.Resolve <IData_GameInfoService>(resolveNew: true);
                int?iDepotId = (from a in data_HeadService.GetModels(p => p.ID == iDeviceId)
                                join b in data_GameInfoService.GetModels() on a.GameIndexID equals b.ID
                                select b.DepotID).FirstOrDefault();

                //开启EF事务
                using (TransactionScope ts = new TransactionScope())
                {
                    try
                    {
                        var data_Reload = new Data_Reload();
                        data_Reload.StoreID     = storeId;
                        data_Reload.GoodID      = Convert.ToInt32(goodId);
                        data_Reload.DeviceID    = !string.IsNullOrEmpty(deviceId) ? Convert.ToInt32(deviceId) : (int?)null;
                        data_Reload.DeviceType  = Convert.ToInt32(deviceType);
                        data_Reload.ReloadType  = Convert.ToInt32(reloadType);
                        data_Reload.ReloadCount = iReloadCount;
                        data_Reload.Note        = note;
                        data_Reload.RealTime    = DateTime.Now;
                        data_Reload.UserID      = iUserId;
                        if (!data_ReloadService.Add(data_Reload))
                        {
                            errMsg = "添加设备安装信息失败";
                            return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                        }

                        //更新库存
                        if (base_StorageInfoService.Any(a => a.DepotID == iDepotId && a.GoodID == iGoodId))
                        {
                            var base_StorageInfo = base_StorageInfoService.GetModels(p => p.DepotID == iDepotId && p.GoodID == iGoodId).FirstOrDefault();
                            base_StorageInfo.Surplus -= iReloadCount;
                            if (!base_StorageInfoService.Update(base_StorageInfo))
                            {
                                errMsg = "更新库存信息失败";
                                return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                            }

                            //添加库存记录
                            var data_Storage_Record = new Data_Storage_Record();
                            data_Storage_Record.StorageCount = iReloadCount;
                            data_Storage_Record.StorageFlag  = (int)StockFlag.Out;
                            data_Storage_Record.StorageID    = base_StorageInfo.ID;
                            data_Storage_Record.CreateTime   = DateTime.Now;
                            if (!data_Storage_RecordService.Add(data_Storage_Record))
                            {
                                errMsg = "添加库存记录失败";
                                return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                            }
                        }

                        ts.Complete();
                    }
                    catch (Exception ex)
                    {
                        return(ResponseModelFactory.CreateReturnModel(isSignKeyReturn, Return_Code.F, ex.Message));
                    }
                }

                return(ResponseModelFactory.CreateSuccessModel(isSignKeyReturn));
            }
            catch (DbEntityValidationException e)
            {
                return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, e.EntityValidationErrors.ToErrors()));
            }
            catch (Exception e)
            {
                return(ResponseModelFactory.CreateReturnModel(isSignKeyReturn, Return_Code.F, e.Message));
            }
        }
Example #8
0
        public object SaveGameInfo(Dictionary <string, object> dicParas)
        {
            try
            {
                XCCloudUserTokenModel userTokenKeyModel = (XCCloudUserTokenModel)dicParas[Constant.XCCloudUserTokenModel];
                string storeId = (userTokenKeyModel.DataModel as UserDataModel).StoreID;

                string errMsg   = string.Empty;
                string gameId   = dicParas.ContainsKey("GameID") ? (dicParas["GameID"] + "") : string.Empty;
                string id       = dicParas.ContainsKey("ID") ? (dicParas["ID"] + "") : string.Empty;
                string gameName = dicParas.ContainsKey("GameName") ? (dicParas["GameName"] + "") : string.Empty;

                if (string.IsNullOrEmpty(gameId))
                {
                    errMsg = "游戏机编号GameID不能为空";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }
                if (gameId.Length > 4)
                {
                    errMsg = "游戏机编号GameID不能超过4个字符";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }
                if (string.IsNullOrEmpty(gameName))
                {
                    errMsg = "游戏机名称GameName不能为空";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }
                if (!string.IsNullOrEmpty(id) && !Utils.isNumber(id))
                {
                    errMsg = "游戏机参数ID格式不正确";
                    return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                }

                IData_GameInfoService data_GameInfoService = BLLContainer.Resolve <IData_GameInfoService>();
                var data_GameInfo = new Data_GameInfo();
                if (string.IsNullOrEmpty(id))
                {
                    if (data_GameInfoService.Any(a => a.GameID.Equals(gameId, StringComparison.OrdinalIgnoreCase)))
                    {
                        errMsg = "该游戏机编号已使用";
                        return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                    }

                    Utils.GetModel(dicParas, ref data_GameInfo);
                    data_GameInfo.StoreID = storeId;
                    if (!data_GameInfoService.Add(data_GameInfo))
                    {
                        errMsg = "新增游戏机信息失败";
                        return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                    }
                }
                else
                {
                    int iId = Convert.ToInt32(id);
                    if (!data_GameInfoService.Any(a => a.ID == iId))
                    {
                        errMsg = "该游戏机不存在";
                        return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                    }
                    if (data_GameInfoService.Any(a => a.ID != iId && a.GameID.Equals(gameId, StringComparison.OrdinalIgnoreCase)))
                    {
                        errMsg = "该游戏机编号已使用";
                        return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                    }

                    data_GameInfo = data_GameInfoService.GetModels(p => p.ID == iId).FirstOrDefault();
                    Utils.GetModel(dicParas, ref data_GameInfo);
                    data_GameInfo.StoreID = storeId;
                    if (!data_GameInfoService.Update(data_GameInfo))
                    {
                        errMsg = "修改游戏机信息失败";
                        return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, errMsg));
                    }
                }

                return(ResponseModelFactory.CreateSuccessModel(isSignKeyReturn));
            }
            catch (DbEntityValidationException e)
            {
                return(ResponseModelFactory.CreateFailModel(isSignKeyReturn, e.EntityValidationErrors.ToErrors()));
            }
            catch (Exception e)
            {
                return(ResponseModelFactory.CreateReturnModel(isSignKeyReturn, Return_Code.F, e.Message));
            }
        }