コード例 #1
0
ファイル: FormMasterData.cs プロジェクト: lscyane/KCBr
 /// <summary>
 /// 艦船マスターの更新
 /// </summary>
 /// <param name="shipMaster"></param>
 public void UpdateMaster(MasterData.Ship shipMaster, MasterData.Item itemMaster)
 {
     if (InvokeRequired)
         BeginInvoke((MethodInvoker)(() => _updateMasterData(shipMaster, itemMaster)));
     else
         _updateMasterData(shipMaster, itemMaster);
 }
コード例 #2
0
ファイル: Item.cs プロジェクト: lscyane/KCBr
        /// <summary>
        /// アイテム一覧の更新 /kcsapi/api_get_member/slot_item
        /// </summary>
        /// <param name="JSON"></param>
        /// <returns>成功すればtrue</returns>
        public bool UpdateItem(string JSON, MasterData.Item itemMaster)
        {
            var json = JsonConvert.DeserializeObject<KCB.api_get_member.Slot_Item>(JSON);
            if ((int)json.api_result != 1)
                return false;

            return UpdateItem(json.api_data,itemMaster);
        }
コード例 #3
0
ファイル: Item.cs プロジェクト: lscyane/KCBr
        /// <summary>
        /// /kcsapi/api_req_kousyou/getship で生成された新造艦娘の装備を一覧に追加
        /// </summary>
        /// <param name="items">api_slotitem</param>
        /// <param name="itemMaster">装備情報マスタ</param>
        public void AddNewSlotItems(List<KCB.api_get_member.Slot_Item.ApiData> items, MasterData.Item itemMaster)
        {
            if (items == null)
                return;

            foreach (var item in items)
            {
                var itemInfo = new Info(item, itemMaster);
                _itemDic[item.api_id] = itemInfo;
            }
        }
コード例 #4
0
ファイル: Item.cs プロジェクト: lscyane/KCBr
        /// <summary>
        /// アイテム一覧の更新 /kcsapi/api_get_member/require_info
        /// </summary>
        /// <param name="api_data"></param>
        /// <param name="itemMaster"></param>
        /// <returns></returns>
        public bool UpdateItem(List<KCB.api_get_member.Slot_Item.ApiData> api_data, MasterData.Item itemMaster)
        {
            _itemDic.Clear();

            foreach (var data in api_data)
            {
                var item = new Info(data, itemMaster);
                _itemDic[data.api_id] = item;
                //                    Debug.WriteLine("Item:" + item.ToString());
            }
            return true;
        }
コード例 #5
0
ファイル: Item.cs プロジェクト: lscyane/KCBr
        /// <summary>
        /// /kcsapi/api_req_kousyou/createitem 
        /// </summary>
        /// <param name="JSON"></param>
        /// <param name="itemMaster"></param>
        /// <returns></returns>
        public bool AddNewSlotItem(string JSON, MasterData.Item itemMaster)
        {
            var json = JsonConvert.DeserializeObject<KCB.api_req_kousyou.CreateItem>(JSON);
            if (json.api_result != 1)
                return false;
            if (json.api_data.api_create_flag != 1)
                return false;

            var item = new Info(json.api_data.api_slot_item, itemMaster);
            _itemDic[json.api_data.api_slot_item.api_id] = item;

            return true;
        }
コード例 #6
0
ファイル: GetApprovalInfo.cs プロジェクト: hijoy/CPL_ERS
    public XmlDocument GetApprovalInfoByFormID(int FormID)
    {
        MasterData myDS = new MasterData();
        MasterData.ApprovalInfoDataTable tbApprovalInfo = myDS.ApprovalInfo;
        AuthorizationDS.PositionDataTable tbPosition = null;
        int index = 1;

        AuthorizationBLL authBLL = new AuthorizationBLL();
        OUTreeBLL ouBLL = new OUTreeBLL();

        MasterData.ApprovalInfoRow rowApprovalInfo = tbApprovalInfo.NewApprovalInfoRow();

        FormDS.FormRow rowForm = new FormSaleBLL().GetFormByID(FormID)[0];
        rowApprovalInfo.ApprovalInfoID = index++;
        rowApprovalInfo.StuffName = authBLL.GetStuffUserById(rowForm.UserID).StuffName;
        rowApprovalInfo.ApprovalDate = rowForm.SubmitDate.ToString("yyyy-MM-dd HH:mm");
        rowApprovalInfo.Position = ouBLL.GetPositionById(rowForm.PositionID).PositionName;
        rowApprovalInfo.Comment = "";
        rowApprovalInfo.Status = "Submit";
        tbApprovalInfo.AddApprovalInfoRow(rowApprovalInfo);

        if (!rowForm.IsProcIDNull()) {
            APWorkFlow.NodeStatusDataTable nodeTable = new APHelper().getApprovalStatus(rowForm.ProcID);
            foreach (APWorkFlow.NodeStatusRow item in nodeTable) {
                if ((!item.IsSTATUSNull()) && item.STATUS != "ASSIGNED") {
                    rowApprovalInfo = tbApprovalInfo.NewApprovalInfoRow();
                    item.PARTICIPANT = item.PARTICIPANT.Replace("PP", "P");
                    rowApprovalInfo.ApprovalInfoID = index++;
                    int i = 0;
                    foreach (var userid in item.PARTICIPANT.Split('$')[0].Split('P')) {

                        if ((!string.IsNullOrEmpty(userid)) && authBLL.GetStuffUserById(int.Parse(userid)).StuffName.Trim().Equals(item.APPROVED_BY)) {
                            tbPosition = ouBLL.GetPositionsByID(int.Parse(item.PARTICIPANT.Split('$')[1].Split('P')[i]));
                            rowApprovalInfo.Position = tbPosition.Count > 0 ? tbPosition[0].PositionName : "";
                            break;
                        }
                        i++;
                    }
                    rowApprovalInfo.StuffName = item.APPROVED_BY;
                    rowApprovalInfo.ApprovalDate = item.IsCOMPLETED_DATENull() ? "" : item.COMPLETED_DATE;

                    rowApprovalInfo.Comment = item.IsCOMMENTSNull() ? "" : item.COMMENTS;
                    rowApprovalInfo.Status = item.IsSTATUSNull() ? "" : item.STATUS;
                    tbApprovalInfo.AddApprovalInfoRow(rowApprovalInfo);
                }
            }
        }

        return new XmlDataDocument(myDS);
    }
コード例 #7
0
        public IHttpActionResult GetMasterDatabyID(string id)
        {
            MasterData result = new MasterData();

            DBConnector.DBConnector conn = new DBConnector.DBConnector();
            string SQLString;

            if (conn.OpenConnection())
            {
                try
                {
                    MySqlCommand qExe = new MySqlCommand();
                    qExe.Connection  = conn.connection;
                    SQLString        = @"select * from masterdata";
                    qExe.CommandText = SQLString;
                    MySqlDataReader dataReader = qExe.ExecuteReader();
                    while (dataReader.Read())
                    {
                        result = new MasterData
                        {
                            PartyName   = dataReader["partyname"].ToString(),
                            HouseNumber = dataReader["housenumber"].ToString(),
                            Soi         = dataReader["soi"].ToString(),
                            Road        = dataReader["road"].ToString(),
                            Moo         = dataReader["moo"].ToString(),
                            Building    = dataReader["building"].ToString(),
                            Tambon      = dataReader["tambon"].ToString(),
                            Amphur      = dataReader["amphur"].ToString(),
                            Province    = dataReader["province"].ToString(),
                            Zipcode     = dataReader["zipcode"].ToString(),
                            Telephone   = dataReader["telephone"].ToString(),
                            Slogan      = dataReader["Slogan"].ToString(),
                            TaxID       = dataReader["TaxID"].ToString()
                        };
                    }
                    return(Json(result));
                }
                catch (Exception e)
                {
                    return(BadRequest(e.Message));
                }
            }
            else
            {
                return(BadRequest("Database connect fail!"));
            }
        }
コード例 #8
0
        private async Task <List <UseMobileSuitInfo> > getUseMobileSuitSeasonTop3List(long playerId)
        {
            var useMsTop3 = new List <UseMobileSuitInfo>();

            evolib.Services.MasterData.ISeason currentSeason = MasterData.GetCurrentSeason();

            //現在のシーズンが取得出来なかったなら、機体の使用率のリストを空で終了する
            if (currentSeason == null)
            {
                return(useMsTop3);
            }

            int seasonNoOfRankMatch = currentSeason.seasonNo;

            var db = PDBSM.PersonalDBContext(playerId);

            // 戦績から現在のシーズンの機体の使用時間のリストを取得する(使用時間の長い順にソート)
            var useMsList = await db.CareerRecords
                            .Where(x =>
                                   x.playerId == playerId &&
                                   x.matchType == evolib.Battle.MatchType.Rank &&
                                   x.seasonNo == seasonNoOfRankMatch &&
                                   x.recordItemId == evolib.CareerRecord.RECORD_ID_PLAY_TIME)
                            .OrderByDescending(x => x.value)
                            .ToListAsync();

            // プレイヤーがシーズンでプレイした時間(全機体の使用時間の合計)を取得する
            double totalUseTime = useMsList.Sum(x => x.value);

            // プレイヤーの使用時間の長い機体TOP3を取得する
            foreach (var playTime in useMsList)
            {
                useMsTop3.Add(new UseMobileSuitInfo
                {
                    mobileSuitId = playTime.mobileSuitId,
                    useRate      = (totalUseTime <= 0.0f) ? 0.0f :  (float)((playTime.value / totalUseTime) * 100.0f),
                });

                if (3 <= useMsTop3.Count())
                {
                    break;
                }
            }

            return(useMsTop3);
        }
コード例 #9
0
        protected override void OnRemoved()
        {
            base.OnRemoved();

            var masterData = new MasterData()
            {
                m_Owner = null,
                m_Value = new VFXSerializableObject(property.type, value),
                m_Space = (VFXCoordinateSpace)int.MaxValue,
            };

            PropagateToChildren(s => {
                s.m_MasterData = null;
                s.m_MasterSlot = this;
            });
            m_MasterData = masterData;
        }
コード例 #10
0
    private void Page_Load(object sender, EventArgs e)
    {
        ReadQueryString();
        InitializeEvents();

        this.CanEdit       = UserManagement.UserCanEdit(WTSModuleOption.MasterData);
        spnTitle.InnerText = "Resource Allocation - " + this.Resource;

        DataTable dtRelease = MasterData.ProductVersionList_Get();

        if (dtRelease != null)
        {
            ddlReleaseQF.Items.Clear();
            ListItem li = null;

            foreach (DataRow dr in dtRelease.Rows)
            {
                li = new ListItem(dr["ProductVersion"].ToString(), dr["ProductVersionID"].ToString());
                if (QFRelease.Contains(dr["ProductVersionID"].ToString()))
                {
                    Releases += (dr["ProductVersionID"].ToString() + ",");
                }

                if (QFRelease.Count() == 0)
                {
                    if (dr["DefaultSelection"].ToString() == "1")
                    {
                        QFRelease = dr["ProductVersionID"].ToString().Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                        Releases += (dr["ProductVersionID"].ToString() + ",");
                    }
                }
                ddlReleaseQF.Items.Add(li);
            }
            Releases += "]";
        }

        DataTable dt = LoadData();

        if (dt != null)
        {
            this.DCC = dt.Columns;
        }

        grdData.DataSource = dt;
        grdData.DataBind();
    }
コード例 #11
0
    public static string FillCustomLists()
    {
        Dictionary <string, object> results = new Dictionary <string, object>();

        // functional rqmt priority
        DataTable dt = MasterData.PriorityList_Get(false, false, (int)WTS.Enums.PriorityTypeEnum.RQMT);

        dt.Columns.Add("Default");
        foreach (DataRow row in dt.Rows)
        {
            row["Default"] = row["Priority"].ToString() == "Major" ? "true" : "false";
        }
        dt.AcceptChanges();
        results["RQMTPriority"] = dt;

        return(WTSPage.SerializeResult(results));
    }
コード例 #12
0
    public static string DeleteItem(int itemId, string item)
    {
        Dictionary <string, string> result = new Dictionary <string, string>()
        {
            { "id", itemId.ToString() }
            , { "item", item }
            , { "exists", "" }
            , { "hasDependencies", "" }
            , { "deleted", "" }
            , { "archived", "" }
            , { "error", "" }
        };
        bool   exists = false, hasDependencies = false, deleted = false, archived = false;
        string errorMsg = string.Empty;

        try
        {
            //delete
            if (itemId == 0)
            {
                errorMsg = "You must specify an item to delete.";
            }
            else
            {
                deleted = MasterData.WorkType_Organization_Delete(itemId, out exists, out hasDependencies, out archived, out errorMsg);
                if (hasDependencies && errorMsg.Length == 0)
                {
                    errorMsg = "Record has dependencies and could not be permanently deleted. It has been archived instead.";
                }
            }
        }
        catch (Exception ex)
        {
            LogUtility.LogException(ex);
            deleted  = false;
            errorMsg = ex.Message;
        }

        result["exists"]          = exists.ToString();
        result["hasDependencies"] = hasDependencies.ToString();
        result["deleted"]         = deleted.ToString();
        result["archived"]        = archived.ToString();
        result["error"]           = errorMsg;

        return(JsonConvert.SerializeObject(result, Formatting.None));
    }
コード例 #13
0
ファイル: VFXSlot.cs プロジェクト: Vollga/Vrij_III_Bakcup
        // Create and return a slot hierarchy from a property info
        public static VFXSlot Create(VFXProperty property, Direction direction, object value = null)
        {
            var slot = CreateSub(property, direction); // First create slot tree

            var masterData = new MasterData()
            {
                m_Owner = null,
                m_Value = new VFXSerializableObject(property.type, value),
            };

            slot.PropagateToChildren(s => s.SetMasterSlotAndData(slot, null));

            slot.m_MasterData = masterData;
            slot.UpdateDefaultExpressionValue();
            slot.InitializeSpaceableCachedSlot();
            return(slot);
        }
コード例 #14
0
        public async Task <IActionResult> GetSelf([FromBody] GetSelf.Request req)
        {
            var res = new GetSelf.Response();

            var playerId = SelfHost.playerInfo.playerId;
            var db       = PDBSM.PersonalDBContext(playerId);

            // カジュアルマッチの戦績取得
            {
                int seasonNoOfCasualMatch = 0;
                var casualMatchRecords    = await db.CareerRecords
                                            .Where(x =>
                                                   x.playerId == playerId &&
                                                   x.matchType == evolib.Battle.MatchType.Casual &&
                                                   x.seasonNo == seasonNoOfCasualMatch)
                                            .ToListAsync();

                res.casual = createRecordInfoList(casualMatchRecords);
            }

            // ランクマッチの戦績取得
            {
                evolib.Services.MasterData.ISeason currentSeason = MasterData.GetCurrentSeason();

                //現在のシーズンが取得出来なかったなら、ランクマッチの戦績リストを空で終了する
                if (currentSeason == null)
                {
                    res.rank = new List <RecordInfo>();
                }
                else
                {
                    int seasonNoOfRankMatch = currentSeason.seasonNo;

                    var rankMatchRecords = await db.CareerRecords
                                           .Where(x =>
                                                  x.playerId == playerId &&
                                                  x.matchType == evolib.Battle.MatchType.Rank &&
                                                  x.seasonNo == seasonNoOfRankMatch)
                                           .ToListAsync();

                    res.rank = createRecordInfoList(rankMatchRecords);
                }
            }

            return(Ok(res));
        }
コード例 #15
0
    public static string ReviewResources(string systemSuiteID)
    {
        Dictionary <string, string> result = new Dictionary <string, string>()
        {
            { "saved", "0" }
            , { "id", "" }
            , { "error", "" }
        };
        bool   saved = false;
        int    SystemSuiteID = 0;
        string ids = systemSuiteID, failedIds = string.Empty, errorMsg = string.Empty, tempMsg = string.Empty;

        try
        {
            int.TryParse(systemSuiteID, out SystemSuiteID);

            if (SystemSuiteID == 0)
            {
                tempMsg = "Unable to find System Suite.";
                saved   = false;
            }
            else
            {
                saved = MasterData.SystemSuite_ReviewResources(SystemSuiteID, out tempMsg);
            }

            if (tempMsg.Length > 0)
            {
                errorMsg = string.Format("{0}{1}{2}", errorMsg, errorMsg.Length > 0 ? Environment.NewLine : "", tempMsg);
            }
        }
        catch (Exception ex)
        {
            LogUtility.LogException(ex);
            saved    = false;
            errorMsg = ex.Message;
        }

        result["savedIds"] = ids;
        result["saved"]    = saved.ToString();
        result["error"]    = errorMsg;

        WTS.Caching.WTSCache.Instance.ClearCache(WTSCacheType.WTS_SYSTEM);

        return(JsonConvert.SerializeObject(result, Formatting.None));
    }
コード例 #16
0
 public bool Delete_DanhMuc(MasterData obj)
 {
     try
     {
         DAL.ConnectData.getInstance().UpdateCommand(tableMasterData,
                                                     "id", SqlDbType.UniqueIdentifier, new Guid(obj.Id),
                                                     "update_date", SqlDbType.DateTime, obj.UpdateDate,
                                                     "update_by", SqlDbType.NVarChar, obj.UpdateBy,
                                                     "is_used", SqlDbType.Int, 0
                                                     );
     }
     catch (Exception)
     {
         return(false);
     }
     return(true);
 }
コード例 #17
0
    public static string GetPrimarySystem()
    {
        DataTable dtSystems = new DataTable();

        try
        {
            dtSystems = MasterData.SystemList_Get(includeArchive: false, cv: "0");
            dtSystems.DefaultView.Sort = "WTS_SystemSuite, WTS_SYSTEM";
            dtSystems = dtSystems.DefaultView.ToTable();
        }
        catch (Exception ex)
        {
            LogUtility.LogException(ex);
        }

        return(JsonConvert.SerializeObject(dtSystems, Newtonsoft.Json.Formatting.None));
    }
コード例 #18
0
        public List <MasterData> GetMasterData()
        {
            List <MasterData> masterlist = new List <MasterData>();
            OracleConnection  con        = new OracleConnection(connStr);

            con.Open();
            OracleCommand cmd = new OracleCommand("GET_MASTERDATA", con);

            cmd.CommandType = CommandType.StoredProcedure;

            try
            {
                cmd.Parameters.Add("E_DISPLAY", OracleDbType.RefCursor).Direction = ParameterDirection.Output;

                OracleDataReader reader = cmd.ExecuteReader();

                while (reader.Read())
                {
                    MasterData masterData = new MasterData();

                    if (!reader.IsDBNull(reader.GetOrdinal("KEY")))
                    {
                        masterData.Key = reader.GetString(reader.GetOrdinal("KEY"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("VALUE")))
                    {
                        masterData.Value = reader.GetString(reader.GetOrdinal("VALUE"));
                    }

                    masterlist.Add(masterData);
                }
                reader.Dispose();
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                con.Close();
                cmd.Dispose();
            }

            return(masterlist);
        }
コード例 #19
0
        public static DictionaryItemDto ToDictionaryItemDto(this MasterData entity)
        {
            if (entity == null)
            {
                return(null);
            }

            DictionaryItemDto dto = new DictionaryItemDto
            {
                Key         = entity.Key,
                Value       = entity.Text,
                DisplayText = entity.Text,
                Code        = entity.Value,
                TypeGroup   = entity.GroupName
            };

            return(dto);
        }
コード例 #20
0
    private void loadGridData()
    {
        DataTable dt = MasterData.AOREstimation_Get(0, false);

        if (dt != null)
        {
            this.DCC = dt.Columns;
            Page.ClientScript.RegisterArrayDeclaration("_dcc", JsonConvert.SerializeObject(DCC, Newtonsoft.Json.Formatting.None));

            InitializeColumnData(ref dt);
            dt.AcceptChanges();

            spanRowCount.InnerHtml = dt.Rows.Count.ToString();
        }

        grdMD.DataSource = dt;
        grdMD.DataBind();
    }
コード例 #21
0
ファイル: FormMasterData.cs プロジェクト: lscyane/KCBr
        void _updateMasterData(MasterData.Ship shipMaster,MasterData.Item itemMaster)
        {
            lvShip.BeginUpdate();
            lvShip.Items.Clear();
            lvShip.Items.AddRange(shipMaster.GetMasterLVItemList());
            lvShip.EndUpdate();

            lvSlotItem.BeginUpdate();
            lvSlotItem.Items.Clear();
            lvSlotItem.Items.AddRange(itemMaster.GetLVList());
            lvSlotItem.EndUpdate();

            lvSType.BeginUpdate();
            lvSType.Items.Clear();
            lvSType.Items.AddRange(shipMaster.GetMasterSTypeLVItems());
            lvSType.EndUpdate();

        }
コード例 #22
0
ファイル: WTSCache.cs プロジェクト: seangilbert250/WTS
        public object GetObjectFromCache(string cacheType, string propertyType, string key, bool loadIfEmpty = true)
        {
            object obj = null;

            if (string.IsNullOrWhiteSpace(cacheType))
            {
                throw new ArgumentException("CacheType cannot be NULL.");
            }

            if (string.IsNullOrWhiteSpace(propertyType))
            {
                throw new ArgumentException("PropertyType cannot be NULL.");
            }

            if (string.IsNullOrWhiteSpace(key))
            {
                throw new ArgumentException("Key cannot be NULL.");
            }

            string cacheKey = cacheType + "." + propertyType + "." + key;

            if (cache.ContainsKey(cacheKey))
            {
                obj = cache[cacheKey].ToString();
            }
            else if (loadIfEmpty)
            {
                if (masterDataTypes.Contains(cacheType))
                {
                    obj = MasterData.GetMasterDataProperty(cacheType, propertyType, key);
                }
                else if (rqmtDataTypes.Contains(cacheType))
                {
                    obj = RQMT.GetRQMTDataProperty(cacheType, propertyType, key);
                }

                if (obj != null) // ? allow nulls in the cache? if we keep reloading the same missing item over and over that might be bad
                {
                    cache[cacheKey] = obj;
                }
            }

            return(obj);
        }
コード例 #23
0
    private void loadQF()
    {
        DataTable dtSystem   = MasterData.SystemList_Get(includeArchive: true);
        DataTable dtContract = MasterData.ContractList_Get(includeArchive: true);

        HtmlSelect ddlSystem   = (HtmlSelect)Page.Master.FindControl("ms_Item0");
        HtmlSelect ddlContract = (HtmlSelect)Page.Master.FindControl("ms_Item1");

        Label lblSystem = (Label)Page.Master.FindControl("lblms_Item0");

        lblSystem.Text           = "Suite/System: ";
        lblSystem.Style["width"] = "150px";

        Label lblContract = (Label)Page.Master.FindControl("lblms_Item1");

        lblContract.Text           = "Contract: ";
        lblContract.Style["width"] = "150px";

        if (dtSystem != null)
        {
            ddlSystem.Items.Clear();

            foreach (DataRow dr in dtSystem.Rows)
            {
                ListItem li = new ListItem(dr["WTS_SYSTEM"].ToString(), dr["WTS_SystemID"].ToString());
                li.Selected = (QFSystem.Count() == 0 || QFSystem.Contains(dr["WTS_SystemID"].ToString()));
                li.Attributes.Add("OptionGroup", dr["WTS_SystemSuite"].ToString());
                ddlSystem.Items.Add(li);
            }
        }

        if (dtContract != null)
        {
            ddlContract.Items.Clear();

            foreach (DataRow dr in dtContract.Rows)
            {
                ListItem li = new ListItem(dr["CONTRACT"].ToString(), dr["CONTRACTID"].ToString());
                li.Selected = (QFContract.Count() == 0 || QFContract.Contains(dr["CONTRACTID"].ToString()));

                ddlContract.Items.Add(li);
            }
        }
    }
コード例 #24
0
        async Task <bool> Validation(
            List <string> mobileSuitIds,
            evolib.Item.Type itemType,
            List <string> itemIds,
            PersonalDBContext db)
        {
            for (int i = 0; i < mobileSuitIds.Count; i++)
            {
                var msId         = mobileSuitIds[i];
                var msMasterData = MasterData.GetMobileSuit(msId);
                if (msMasterData == null)
                {
                    return(false);
                }

                for (int j = 0; j < itemIds.Count; j++)
                {
                    var itemId = itemIds[j];
                    if (!msMasterData.CheckEnabledItemId(itemType, itemId))
                    {
                        return(false);
                    }
                }
            }

            var ownedRecords
                = await db.ItemInventories.Where(
                      r => r.playerId == SelfHost.playerInfo.playerId &&
                      r.itemType == itemType).ToListAsync();


            for (int i = 0; i < itemIds.Count; i++)
            {
                var itemId = itemIds[i];

                if (!MasterData.CheckDefaultOwnedItem(itemId) &&
                    null == ownedRecords.Find(r => r.itemId == itemId))
                {
                    return(false);
                }
            }

            return(true);
        }
コード例 #25
0
    public static string DeleteItem(int itemId, string item)
    {
        Dictionary <string, string> result = new Dictionary <string, string>()
        {
            { "id", itemId.ToString() }
            , { "item", item }
            , { "exists", "" }
            , { "deleted", "" }
            , { "hasDependencies", "" }
            , { "archived", "" }
            , { "error", "" }
        };
        bool   exists = false, deleted = false, archived = false, hasDependencies = false;
        string errorMsg = string.Empty;

        try
        {
            //delete
            if (itemId == 0)
            {
                errorMsg = "You must specify an item to delete.";
            }
            else
            {
                deleted = MasterData.RQMTType_Delete(itemId, out exists, out hasDependencies, out archived, out errorMsg);
            }
        }
        catch (Exception ex)
        {
            LogUtility.LogException(ex);
            deleted  = false;
            errorMsg = ex.Message;
        }

        result["exists"]          = exists.ToString();
        result["deleted"]         = deleted.ToString();
        result["archived"]        = archived.ToString();
        result["hasDependencies"] = hasDependencies.ToString();
        result["error"]           = errorMsg;

        WTS.Caching.WTSCache.Instance.ClearCache(WTSCacheType.RQMT_TYPE);

        return(JsonConvert.SerializeObject(result, Formatting.None));
    }
コード例 #26
0
        void LoadMasterData()
        {
            MasterDataList = new ObservableCollection <MasterData>();

            var ProductList = DataProvider.Ins.DB.PRODUCTs.Where(p => p.IsDeleted == false);

            int i = 1;

            foreach (var product in ProductList)
            {
                MasterData masterData = new MasterData();
                masterData.NumercialOrder = i;
                masterData.Product        = product;
                masterData.CatName        = product.CATEGORY.DisplayName;

                MasterDataList.Add(masterData);
                i++;
            }
        }
コード例 #27
0
    private void LoadData()
    {
        if (!this.NewDeliverable)
        {
            DataTable dtAOR = AOR.AORDeliverableList_Get(DeliverableID: this.DeliverableID);

            if (dtAOR != null)
            {
                this.AORCount = dtAOR.Rows.Count - 1;
            }

            DataTable dtContract = MasterData.DeploymentContractList_Get(DeliverableID: this.DeliverableID);

            if (dtContract != null)
            {
                this.ContractCount = dtContract.Rows.Count;
            }
        }
    }
コード例 #28
0
    private void loadGridData()
    {
        _dtStatus = MasterData.StatusList_Get(true);

        DataTable dt = null;

        if (_refreshData || Session["dtRelease"] == null)
        {
            dt = MasterData.ReleaseSchedule_ReleaseList_Get(includeArchive: false);
            HttpContext.Current.Session["dtRelease"] = dt;
        }
        else
        {
            dt = (DataTable)HttpContext.Current.Session["dtRelease"];
        }

        if (dt != null)
        {
            this.DCC = dt.Columns;
            Page.ClientScript.RegisterArrayDeclaration("_dcc", JsonConvert.SerializeObject(DCC, Newtonsoft.Json.Formatting.None));

            if (dt.Rows.Count > 0)
            {
                string filterSystem = !String.IsNullOrEmpty(_qfSystemID.ToString()) && _qfSystemID > 0 ? string.Format(" WTS_SystemID =  {0}", _qfSystemID.ToString()) : "";

                dt.DefaultView.RowFilter = filterSystem;
                dt = dt.DefaultView.ToTable();
            }

            InitializeColumnData(ref dt);
            dt.AcceptChanges();
        }

        if (_export)
        {
            ExportExcel(dt);
        }
        else
        {
            grdMD.DataSource = dt;
            grdMD.DataBind();
        }
    }
コード例 #29
0
    private void PopulateQuickFilters()
    {
        ListItem li;

        if (this.Type == "AOR") // for now, this is all we support; we can add more type support moving forward
        {
            DataTable  dtSystem  = MasterData.SystemList_Get(includeArchive: false, cv: "0");
            HtmlSelect ms_Item0  = (HtmlSelect)Page.Master.FindControl("ms_Item0");
            HtmlSelect ms_Item10 = (HtmlSelect)Page.Master.FindControl("ms_Item10");

            if (dtSystem != null)
            {
                ms_Item0.Items.Clear();
                foreach (DataRow dr in dtSystem.Rows)
                {
                    li          = new ListItem(dr["WTS_SYSTEM"].ToString(), dr["WTS_SystemID"].ToString());
                    li.Selected = (QFSystem.Count() == 0 || QFSystem.Contains(dr["WTS_SystemID"].ToString()));
                    li.Attributes.Add("OptionGroup", dr["WTS_SystemSuite"].ToString());
                    ms_Item0.Items.Add(li);
                }
            }

            DataTable dtRel        = MasterData.ProductVersionList_Get(includeArchive: false);
            DataTable dtCurrentRel = AOR.AORCurrentRelease_Get();
            var       currentRelID = "0";

            if (dtCurrentRel != null && dtCurrentRel.Rows.Count > 0)
            {
                currentRelID = dtCurrentRel.Rows[0]["ProductVersionID"].ToString();
            }

            if (dtRel != null)
            {
                ms_Item10.Items.Clear();
                foreach (DataRow dr in dtRel.Rows)
                {
                    li          = new ListItem(dr["ProductVersion"].ToString(), dr["ProductVersionID"].ToString());
                    li.Selected = ((QFRelease.Count() == 0 && dr["ProductVersionID"].ToString() == currentRelID) || QFRelease.Contains(dr["ProductVersionID"].ToString()));
                    ms_Item10.Items.Add(li);
                }
            }
        }
    }
コード例 #30
0
    public static string GetWorkloadAllocation(string aor, string aorRelease)
    {
        DataTable dtWorkloadAllocationContract = new DataTable();

        try
        {
            int AOR_ID        = 0;
            int AORRelease_ID = 0;

            int.TryParse(aor, out AOR_ID);
            int.TryParse(aorRelease, out AORRelease_ID);

            DataTable dtAORSystems     = AOR.AORSystemList_Get(AORID: AOR_ID, AORReleaseID: AORRelease_ID);
            DataTable dtSystemContract = new DataTable();
            dtAORSystems.DefaultView.RowFilter = "Primary IN (True)";
            dtAORSystems = dtAORSystems.DefaultView.ToTable();

            if (dtAORSystems != null && dtAORSystems.Rows.Count > 0)
            {
                int systemID = 0;
                int.TryParse(dtAORSystems.Rows[0]["WTS_SYSTEM_ID"].ToString(), out systemID);
                dtSystemContract = MasterData.WTS_System_ContractList_Get(systemID);
            }

            int primarySystemContractID = 0;
            if (dtSystemContract != null && dtSystemContract.Rows.Count > 1)
            {
                int.TryParse(dtSystemContract.Rows[1]["CONTRACTID"].ToString(), out primarySystemContractID);
            }

            dtWorkloadAllocationContract = MasterData.WorkloadAllocation_ContractList_Get();
            dtWorkloadAllocationContract.DefaultView.RowFilter = "CONTRACTID IN (0, " + primarySystemContractID + ")";
            dtWorkloadAllocationContract.DefaultView.Sort      = "ContractID";
            dtWorkloadAllocationContract = dtWorkloadAllocationContract.DefaultView.ToTable();
        }
        catch (Exception ex)
        {
            LogUtility.LogException(ex);
        }

        return(JsonConvert.SerializeObject(dtWorkloadAllocationContract, Newtonsoft.Json.Formatting.None));
    }
コード例 #31
0
    private void loadGridData()
    {
        _dtStatus = MasterData.StatusList_Get();
        _dtStatus.DefaultView.RowFilter = "StatusTypeID IN ('0', '13', '2', '3', '4', '5', '6', '7')";
        _dtStatus     = _dtStatus.DefaultView.ToTable();
        _dtStatusType = MasterData.StatusTypeList_Get();
        _dtStatusType.DefaultView.RowFilter = "StatusTypeID IN ('0', '13', '2', '3', '4', '5', '6', '7')";
        _dtStatusType = _dtStatusType.DefaultView.ToTable();
        DataTable dt = null;

        if (_refreshData || Session["WorkloadAllocation_Status"] == null)
        {
            dt = MasterData.WorkloadAllocation_StatusList_Get(workloadAllocationID: _workloadAllocationID);
            HttpContext.Current.Session["WorkloadAllocation_Status"] = dt;
        }
        else
        {
            dt = (DataTable)HttpContext.Current.Session["WorkloadAllocation_Status"];
        }

        if (dt != null)
        {
            this.DCC = dt.Columns;
            Page.ClientScript.RegisterArrayDeclaration("_dcc", JsonConvert.SerializeObject(DCC, Newtonsoft.Json.Formatting.None));
            spanRowCount.InnerText = dt.Rows.Count.ToString();

            InitializeColumnData(ref dt);
            dt.AcceptChanges();

            int count = dt.Rows.Count;
            count = count > 0 ? count - 1 : count;
            spanRowCount.InnerText = count.ToString();
        }

        if (_export && dt != null && CanView)
        {
            exportExcel(dt);
        }

        grdMD.DataSource = dt;
        grdMD.DataBind();
    }
コード例 #32
0
        public async Task <IActionResult> SetPlayerIcon([FromBody] SetPlayerIcon.Request req)
        {
            var db = PDBSM.PersonalDBContext(SelfHost.playerInfo.playerId);

            var item = MasterData.GetItemFromItemId(req.playerIconItemId);

            if (item == null || item.itemType != Item.Type.PlayerIcon)
            {
                return(BuildErrorResponse(Error.LowCode.BadParameter));
            }

            if (!MasterData.CheckDefaultOwnedItem(req.playerIconItemId) &&          //not default
                !await db.ItemInventories.AnyAsync(                   //don't have
                    i => i.playerId == SelfHost.playerInfo.playerId && i.itemId == req.playerIconItemId))
            {
                //don't have
                return(BuildErrorResponse(Error.LowCode.BadParameter));
            }

            var pbi = await db.PlayerBasicInformations.FindAsync(SelfHost.playerInfo.playerId);

            pbi.playerIconItemId = req.playerIconItemId;
            await db.SaveChangesAsync();

            await new Player(SelfHost.playerInfo.playerId).Invalidate();

            Logger.Logging(
                new LogObj().AddChild(new LogModels.ChangeCustomItem
            {
                PlayerId = SelfHost.playerInfo.playerId,
                Date     = DateTime.UtcNow,
                UnitId   = "",
                ItemType = evolib.Item.Type.PlayerIcon,
                ItemId   = req.playerIconItemId,
            })
                );

            return(Ok(new SetPlayerIcon.Response
            {
                playerIconItemId = req.playerIconItemId,
            }));
        }
コード例 #33
0
    private void loadGridData()
    {
        DataTable dt = null;

        if (_refreshData || Session["SystemSuite"] == null)
        {
            dt = MasterData.SystemSuiteList_Get(_qfReleaseID);
            HttpContext.Current.Session["SystemSuite"] = dt;
        }
        else
        {
            dt = (DataTable)HttpContext.Current.Session["SystemSuite"];
        }

        if (dt != null)
        {
            this.DCC = dt.Columns;
            Page.ClientScript.RegisterArrayDeclaration("_dcc", JsonConvert.SerializeObject(DCC, Newtonsoft.Json.Formatting.None));
            spanRowCount.InnerText = dt.Rows.Count.ToString();

            InitializeColumnData(ref dt);
            dt.AcceptChanges();

            int count = dt.Rows.Count;
            count = count > 0 ? count - 1 : count;
            spanRowCount.InnerText = count.ToString();

            DataTable dtSuite = dt.Copy();
            dtSuite.DefaultView.RowFilter = "WTS_SYSTEM_SUITEID NOT IN (-1) AND SYSTEM_COUNT NOT IN (0)";
            dtSuite             = dtSuite.DefaultView.ToTable();
            msSystemSuite.Items = dtSuite;
        }

        if (_export && dt != null && CanView)
        {
            exportExcel(dt);
        }


        grdMD.DataSource = dt;
        grdMD.DataBind();
    }
コード例 #34
0
        public async Task <IWrappedResponse> Get()
        {
            var countries = _olmaCountryRepo.FindAll()
                            .AsNoTracking()
                            .ProjectTo <Country>(Mapper.ConfigurationProvider)
                            .FromCache()
                            .ToList();

            var documentStates = _olmaDocumentStateRepo.FindAll()
                                 .AsNoTracking()
                                 .ProjectTo <DocumentState>(Mapper.ConfigurationProvider)
                                 .FromCache()
                                 .ToList();

            var languages = _olmaLanguagesRepo.FindAll()
                            .AsNoTracking()
                            .ProjectTo <Language>(Mapper.ConfigurationProvider)
                            .FromCache()
                            .ToList();

            var loadCarriersServiceResponse = (IWrappedResponse <IEnumerable <LoadCarrier> >)_loadCarriersService.GetAll().Result;
            var loadCarriers = loadCarriersServiceResponse.Data;

            var voucherReasonTypes = _olmaVoucherReasonTypeRepo.FindAll()
                                     .AsNoTracking()
                                     .OrderBy(v => v.Order)
                                     .ProjectTo <VoucherReasonType>(Mapper.ConfigurationProvider)
                                     .FromCache()
                                     .ToList();


            var masterData = new MasterData()
            {
                Countries          = countries,
                DocumentStates     = documentStates,
                Languages          = languages,
                LoadCarriers       = loadCarriers,
                VoucherReasonTypes = voucherReasonTypes
            };

            return(Ok(masterData));
        }
コード例 #35
0
ファイル: FrmProject.cs プロジェクト: 51erp/commission
        private void toolStripButton_Del_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("是否要删除 [ " + dataGridView_Project.CurrentRow.Cells["ColProjectName"].Value.ToString() + " ] 的信息?", "房地产销售佣金结算管理系统", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
            {
                if (dataGridView_Project.Rows.Count > 0)
                {
                    string ProjectID = dataGridView_Project.CurrentRow.Cells["ColProjectID"].Value.ToString();

                    if (MasterData.isReferred(MasterDataType.project, ProjectID))
                    {
                        return;
                    }

                    string sql = "delete Project where ProjectID = " + ProjectID;
                    SqlHelper.ExecuteNonQuery(sql);

                    getProjectInfo();
                }
            }
        }
コード例 #36
0
    private void loadGridData()
    {
        _dtWorkType     = MasterData.WorkTypeList_Get(includeArchive: false);
        _dtResourceType = MasterData.ResourceTypeList_Get(includeArchive: false);
        DataTable dt = MasterData.WorkType_ResourceTypeList_Get(workTypeID: this._qfWorkTypeID);

        if (dt != null)
        {
            this.DCC = dt.Columns;
            Page.ClientScript.RegisterArrayDeclaration("_dcc", JsonConvert.SerializeObject(DCC, Newtonsoft.Json.Formatting.None));

            ListItem item = null;
            foreach (DataRow row in _dtWorkType.Rows)
            {
                item = ddlQF_WorkType.Items.FindByValue(row["WorkTypeID"].ToString());
                if (item == null)
                {
                    ddlQF_WorkType.Items.Add(new ListItem(row["WorkType"].ToString(), row["WorkTypeID"].ToString()));
                }
            }
            item = ddlQF_WorkType.Items.FindByValue(_qfWorkTypeID.ToString());
            if (item != null)
            {
                item.Selected = true;
            }

            InitializeColumnData(ref dt);
            dt.AcceptChanges();
        }

        int count = dt.Rows.Count;

        count = count > 0 ? count - 1 : count;         //need to subtract the empty row
        spanRowCount.InnerText = count.ToString();

        _dtResourceType.DefaultView.RowFilter = "WTS_RESOURCE_TYPEID NOT IN ('4')";
        _dtResourceType = _dtResourceType.DefaultView.ToTable();

        grdMD.DataSource = dt;
        grdMD.DataBind();
    }
コード例 #37
0
    private void loadGridData()
    {
        _dtUser = UserManagement.LoadUserList(organizationId: 0, excludeDeveloper: false, loadArchived: false, userNameSearch: "");
        Page.ClientScript.RegisterArrayDeclaration("_userList", JsonConvert.SerializeObject(_dtUser, Newtonsoft.Json.Formatting.None));
        _dtAllocation_Unused = MasterData.Allocation_Get_All_Unused();
        Page.ClientScript.RegisterArrayDeclaration("_Allocation_Unused", JsonConvert.SerializeObject(_dtAllocation_Unused, Newtonsoft.Json.Formatting.None));
        DataTable dt = null;

        if (_refreshData || Session["AllocationGroup_Assignment"] == null)
        {
            dt = MasterData.AllocationGroup_Assignment_Get(this._qfWorkAreaID);
            HttpContext.Current.Session["AllocationGroup_Assignment"] = dt;
        }
        else
        {
            dt = (DataTable)HttpContext.Current.Session["AllocationGroup_Assignment"];
        }

        if (dt != null)
        {
            this.DCC = dt.Columns;
            Page.ClientScript.RegisterArrayDeclaration("_dcc", JsonConvert.SerializeObject(DCC, Newtonsoft.Json.Formatting.None));
            spanRowCount.InnerText = dt.Rows.Count.ToString();


            InitializeColumnData(ref dt);
            dt.AcceptChanges();
            iti_Tools_Sharp.DynamicHeader head = WTSUtility.CreateGridMultiHeader(dt);
            if (head != null)
            {
                grdMD.DynamicHeader = head;
            }

            int count = dt.Rows.Count;
            count = count > 0 ? count - 1 : count;
            spanRowCount.InnerText = count.ToString();
        }

        grdMD.DataSource = dt;
        grdMD.DataBind();
    }
コード例 #38
0
ファイル: BattleResult.cs プロジェクト: walkure/KCBr
        /// <summary>
        /// 砲雷撃戦の結果処理
        /// </summary>
        /// <param name="hougeki"></param>
        /// <param name="result"></param>
        private int getHougekiDamage(KCB.api_req_sortie.Battle.ApiData.ApiHougeki hougeki,
            Result result, MasterData.Item _masterItem)
        {
            if (hougeki == null)
                return 0;

            //長さが一致しない
            if (hougeki.api_damage.Count != hougeki.api_df_list.Count)
                return 0;

            int battleTime = 0;

            //攻撃先のHPを減算
            for (int i = 1; i < hougeki.api_damage.Count; i++)
            {
                var targets = (Newtonsoft.Json.Linq.JArray)hougeki.api_df_list[i];
                var damages = (Newtonsoft.Json.Linq.JArray)hougeki.api_damage[i];
                var weapons = (Newtonsoft.Json.Linq.JArray)hougeki.api_si_list[i];
                int from = hougeki.api_at_list[i];

                for (int j = 0; j < targets.Count; j++)
                {
                    int target = (int)targets[j];
                    double damage = (double)damages[j];
                    int weapon_id = (int)weapons[j];

                    var weapon = _masterItem.GetItemParam(weapon_id);

                    if(weapon == null)
                        Debug.WriteLine(string.Format("砲撃:{0}->{1} ダメージ:{2} 装備:なし", from, target, damage));
                    else
                        Debug.WriteLine(string.Format("砲撃:{0}->{1} ダメージ:{2} 装備:{3}", from, target, damage
                            , weapon.Name));

                    if (target > 0 && target <= 6)
                    {
                        var it = result.Friend.Ships[target - 1];

                        //敵→味方
                        var critical = it.AddDamage(damage);
                        if (critical)
                            battleTime += CriticalHitTime;

                        if(it.Submarine)
                            battleTime += HouRaiSubmarine;
                    }
                    else if (target > 0 && target <= 12)
                    {
                        var it = result.Enemy.Ships[target - 7];
                        //味方→敵
                        it.AddDamage(damage);

                        if (it.Submarine)
                            battleTime += HouRaiSubmarine;
                    }

                    battleTime += HouRai;
                }

            }
            return battleTime;
        }
コード例 #39
0
ファイル: BattleResult.cs プロジェクト: walkure/KCBr
        /// <summary>
        /// 内部状態の初期化
        /// </summary>
        /// <param name="result">戦闘結果</param>
        /// <param name="_memberShip"></param>
        /// <param name="fleetInfo">艦隊情報</param>
        /// <param name="_masterShip"></param>
        private void initializeShipData(KCB.api_req_sortie.Battle.ApiData result,
            MemberData.Deck.Fleet fleetInfo, MemberData.Ship _memberShip, MasterData.Ship _masterShip)
        {
            Debug.WriteLine("戦闘開始/艦隊番号:" + fleetInfo.Num.ToString());
            _battleResult = new Result(result.api_midnight_flag == 1,_practice);

            //戦闘形態を取得する

            _battleResult.Friend.Formation = (Result.FleetState.FormationType)result.api_formation[0];
            _battleResult.Enemy.Formation = (Result.FleetState.FormationType)result.api_formation[1];
            if (result.api_search != null)
            {
                _battleResult.Friend.SearchResult = (Result.FleetState.SearchResultType)result.api_search[0];
                _battleResult.Enemy.SearchResult = (Result.FleetState.SearchResultType)result.api_search[1];
            }
            else
            {
                _battleResult.Friend.SearchResult = Result.FleetState.SearchResultType.索敵なし;
                _battleResult.Enemy.SearchResult = Result.FleetState.SearchResultType.索敵なし;
            }

            _battleResult.MatchState = (Result.MatchType)result.api_formation[2];

            Debug.WriteLine(string.Format("自陣形:{0} {1}\n敵陣形:{2} {3}\n交戦形態:{4}\n夜戦:{5}",
                 _battleResult.Friend.Formation,_battleResult.Friend.SearchResult,
                 _battleResult.Enemy.Formation,_battleResult.Enemy.SearchResult,
                 _battleResult.MatchState, _battleResult.HasNightBattle));

            ///味方艦隊の情報を取得する
            for (int i = 0; i < fleetInfo.Member.Count; i++)
            {
                var ship_id = fleetInfo.Member[i];
                var ship = _memberShip.GetShip(ship_id);
                var info = _battleResult.Friend.Ships[i];

                info.Initialize(ship_id,ship.ShipNameId,ship.ShipName,ship.ShipTypeId,
                    result.api_maxhps[i + 1],result.api_nowhps[i + 1]);

                Debug.WriteLine(string.Format("No.{0} ID:{1} Name:{2} HP:{3}", i + 1,
                    ship_id, ship.ShipName,ship.HP.ToString()));
            }

            ///敵艦隊の情報を取得する
            for (int i = 0; i < 6; i++)
            {
                int ship_id = result.api_ship_ke[i + 1];
                if (ship_id < 0)
                    continue;

                var ship = _masterShip.LookupShipMaster(ship_id);
                var info = _battleResult.Enemy.Ships[i];
                string shipName;
                if(_practice)
                    shipName = ship.Name;
                else
                    shipName = string.Format("{0}{1}", ship.Name, ship.Yomi);

                info.Initialize(-1,ship_id,shipName,ship.ShipTypeId,
                    result.api_maxhps[i + 7],result.api_nowhps[i + 7]);

                Debug.WriteLine(string.Format("No.{0} Name:{1} HP:{2}/{3}",
                    i + 1, shipName, result.api_maxhps[i + 7], result.api_nowhps[i + 7]));
            }
        }
コード例 #40
0
ファイル: BattleResult.cs プロジェクト: walkure/KCBr
        /// <summary>
        /// /kcsapi/api_req_battle_midnight/sp_midnight
        /// 開幕夜戦
        /// </summary>
        /// <param name="JSON"></param>
        /// <param name="_memberShip"></param>
        /// <param name="_memberDeck"></param>
        /// <param name="_masterShip"></param>
        public void ProcessNightBattle(string JSON, MemberData.Ship _memberShip,
            MemberData.Deck _memberDeck, MasterData.Ship _masterShip, MasterData.Item _masterItem)
        {
            var json = JsonConvert.DeserializeObject<KCB.api_req_sortie.Battle>(JSON);
            if (json == null)
                return;
            if (json.api_result != 1)
                return;
            var deck_info = _memberDeck.GetFleet(json.api_data.api_deck_id);

            initializeShipData(json.api_data, deck_info, _memberShip, _masterShip);
            getHougekiDamage(json.api_data.api_hougeki, _battleResult,_masterItem);
        }
コード例 #41
0
ファイル: BattleResult.cs プロジェクト: walkure/KCBr
        /// <summary>
        /// /kcsapi/api_req_battle_midnight/battle
        /// 夜戦開始
        /// </summary>
        /// <param name="JSON"></param>
        public void SwitchNightBattle(string JSON, MasterData.Item _masterItem)
        {
            var json = JsonConvert.DeserializeObject<KCB.api_req_sortie.Battle>(JSON);
            if (json == null)
                return;
            if (json.api_result != 1)
                return;

            getHougekiDamage(json.api_data.api_hougeki, _battleResult, _masterItem);
        }
コード例 #42
0
ファイル: Item.cs プロジェクト: lscyane/KCBr
            /// <summary>
            /// マスタデータの装備情報を設定
            /// </summary>
            /// <param name="itemInfo"></param>
            private void SetSlotItemParam(MasterData.Item.Param itemInfo)
            {
                if (itemInfo == null)
                    return;

                Name = itemInfo.Name;
                TypeNum = itemInfo.TypeNum;
                TypeDetailNum = itemInfo.TypeDetailNum;
                Type = itemInfo.Type;
                Aircraft = MasterData.Item.Param.IsAircraft(TypeNum);

                対空 = itemInfo.対空;
                装甲 = itemInfo.装甲;
                火力 = itemInfo.火力;
                雷撃 = itemInfo.雷撃;
                爆装 = itemInfo.爆装;
                耐久 = itemInfo.耐久;
                対潜 = itemInfo.対潜;
                砲撃命中 = itemInfo.砲撃命中;
                砲撃回避 = itemInfo.砲撃回避;
                雷撃命中 = itemInfo.雷撃命中;
                雷撃回避 = itemInfo.雷撃回避;
                索敵 = itemInfo.索敵;
                運 = itemInfo.運;
                Rare = itemInfo.Rare;
                射程 = itemInfo.射程;

                Debug.WriteLine(string.Format("装備情報設定 ID:{0} 名前:{1} 種類:{2}", ItemUID, Name, Type));
            }
コード例 #43
0
ファイル: BattleResult.cs プロジェクト: walkure/KCBr
        /// <summary>
        /// /kcsapi/api_req_sortie/battle
        /// 戦闘開始
        /// </summary>
        /// <param name="JSON"></param>
        /// <param name="practice">演習の時true</param>
        /// <param name="_memberShip"></param>
        /// <param name="_memberDeck"></param>
        /// <param name="_masterShip"></param>
        public int ProcessBattle(string JSON,bool practice, MemberData.Ship _memberShip,
            MemberData.Deck _memberDeck, MasterData.Ship _masterShip,MasterData.Item _masterItem)
        {
            var json = JsonConvert.DeserializeObject<KCB.api_req_sortie.Battle>(JSON);
            if (json == null)
                return 0;
            if (json.api_result != 1)
                return 0;
            _practice = practice;

            var result = json.api_data;
            var deck_info = _memberDeck.GetFleet(result.api_dock_id);

            int estimatedBattleTime = InitialPhase;

            initializeShipData(result, deck_info, _memberShip, _masterShip);

            //索敵フェイズ
            if (_battleResult.Friend.SearchResult != Result.FleetState.SearchResultType.索敵なし)
                estimatedBattleTime += SearchPhase;

            //支援艦隊が来た
            if (result.api_support_flag > 0 && result.api_support_info != null)
            {
                //航空支援(flag=1)
                if (result.api_support_info.api_support_airatack != null)
                {
                    Debug.WriteLine("航空支援(味方から敵へ)");
                    getRaiDamage(result.api_support_info.api_support_airatack.api_stage3.api_edam,
                        _battleResult.Enemy.Ships);
                    estimatedBattleTime += SupportTime;
                }
                //砲雷撃支援(flag=2/雷撃,3/砲撃)
                if (result.api_support_info.api_support_hourai != null)
                {
                    Debug.WriteLine("砲雷支援(味方から敵へ)");
                    getRaiDamage(result.api_support_info.api_support_hourai.api_damage,
                        _battleResult.Enemy.Ships);
                    estimatedBattleTime += SupportTime;
                }
            }

            // 開幕雷撃
            if (result.api_opening_flag == 1 && result.api_opening_atack != null)
            {
                Debug.WriteLine("開幕雷撃(敵から味方へ)");
                estimatedBattleTime +=
                    getRaiDamage(result.api_opening_atack.api_fdam, _battleResult.Friend.Ships);

                Debug.WriteLine("開幕雷撃(味方から敵へ)");
                getRaiDamage(result.api_opening_atack.api_edam, _battleResult.Enemy.Ships);

            }
            estimatedBattleTime += Torpedo;

            // 航空戦
            if (result.api_stage_flag[2] == 1 && result.api_kouku.api_stage3 != null)
            {
                Debug.WriteLine("航空戦(敵から味方へ)");
                estimatedBattleTime +=
                    getRaiDamage(result.api_kouku.api_stage3.api_fdam, _battleResult.Friend.Ships);

                Debug.WriteLine("航空戦(味方から敵へ)");
                getRaiDamage(result.api_kouku.api_stage3.api_edam, _battleResult.Enemy.Ships);

            }
            estimatedBattleTime += AirBattle;

            // 砲撃1順目
            if (result.api_hourai_flag[0] == 1 && result.api_hougeki1 != null)
            {
                Debug.WriteLine("砲撃1順目");
                estimatedBattleTime += getHougekiDamage(result.api_hougeki1, _battleResult, _masterItem);
            }

            // 砲撃2順目
            if (result.api_hourai_flag[1] == 1 && result.api_hougeki2 != null)
            {
                Debug.WriteLine("砲撃2順目");
                estimatedBattleTime += getHougekiDamage(result.api_hougeki2, _battleResult, _masterItem);

            }

            // 砲撃3順目
            if (result.api_hourai_flag[2] == 1 && result.api_hougeki3 != null)
            {
                Debug.WriteLine("砲撃3順目");
                estimatedBattleTime += getHougekiDamage(result.api_hougeki3, _battleResult, _masterItem);
            }

            // 雷撃
            if (result.api_hourai_flag[3] == 1 && result.api_raigeki != null)
            {
                Debug.WriteLine("雷撃(敵から味方へ)");
                estimatedBattleTime +=
                    getRaiDamage(result.api_raigeki.api_fdam, _battleResult.Friend.Ships);

                Debug.WriteLine("雷撃(味方から敵へ)");
                getRaiDamage(result.api_raigeki.api_edam, _battleResult.Enemy.Ships);
            }
            estimatedBattleTime += Torpedo;

            //夜戦の場合は待つ必要がないから0を返す。
            return result.api_midnight_flag != 0 ? estimatedBattleTime : 0;
        }
コード例 #44
0
ファイル: Program.cs プロジェクト: hijoy/CPL_ERS
        /// <summary>
        /// Vendor导出
        /// </summary>
        /// <param name="FormID"></param>
        /// <returns></returns>
        private bool ExportVendorAVM(MasterData.VendorRow vendor, int logId)
        {
            string BakPath = ConfigurationManager.AppSettings["ExportService.BakPath"];
            FormVendorBLL formvendorbll = new FormVendorBLL();
            MasterDataBLL masterdatabll = new MasterDataBLL();
            try {
                string FileName = ConfigurationManager.AppSettings["ExportService.VendorAVMFileName"];
                string spit = "\t";
                MasterData.PaymentTermRow paymentTerm = null;
                MasterData.VendorTypeRow vendorType = null;
                MasterData.CompanyRow company = null;
                MasterData.CurrencyRow currency = null;
                MasterData.MethodPaymentRow paymentType = null;
                MasterData.VatTypeRow VatType = null;
                MasterData.BankCodeRow bankCode = null;
                MasterData.TransTypeRow transType = null;
                MasterData.ACTypeRow acType = null;

                paymentTerm = masterdatabll.GetPaymentTermById(vendor.PaymentTermID)[0];
                vendorType = masterdatabll.GetVendorTypeById(vendor.VendorTypeID);
                company = masterdatabll.GetCompanyById(vendor.CompanyID);
                currency = masterdatabll.GetCurrencyByID(vendorType.CurrencyID);
                paymentType = masterdatabll.GetMethodPaymentById(vendor.MethodPaymentID)[0];
                VatType = masterdatabll.GetVatTypeById(vendor.VATTypeID)[0];
                bankCode = masterdatabll.GetBankCodeById(vendor.BankCodeID)[0];
                transType = masterdatabll.GetTransTypeById(vendor.TransTypeID)[0];
                acType = masterdatabll.GetACTypeById(vendor.ACTypeID)[0];
                string ActionName = "";
                string content = "";
                switch (vendor.ActionType) {
                    case 0:
                        ActionName = "D";
                        #region 删除
                        content =
                           "" + spit +
                           ActionName + spit +
                           "" + spit +
                           "VZ" + spit +
                           bSubstring(vendor.VendorCode, 5) + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           0 + spit +
                           0 + spit +
                           0 + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           0 + spit +
                           "" + spit +
                          "" + spit +
                           "" + spit +
                           0 + spit +
                           "" + spit +
                           0 + spit +
                           0 + spit +
                           0 + spit +
                           0 + spit +
                           0 + spit +
                           0 + spit +
                           "" + spit +
                           "" + spit +
                           0 + spit +
                           "" + spit +
                           "" + spit +
                           0 + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           0 + spit +
                           0 + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           0 + spit +
                           0 + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + "\r\n";
                        #endregion
                        break;
                    case 1:
                        ActionName = "A";
                        #region 新增
                        content =
                           "" + spit +
                           ActionName + spit +
                           (vendor.IsActive ? "A" : "D") + spit +
                           (vendor.IsActive ? "VM" : "VZ") + spit +
                           bSubstring(vendor.VendorCode, 5) + spit +
                           bSubstring(vendor.VendorName, 28) + spit +
                           bSubstring(vendor.VendorAddress, 28) + spit +
                           SpitVendorAddress(vendor.VendorAddress) + spit +
                           bSubstring(vendor.City, 17) + spit +
                           "" + spit +
                           bSubstring(vendor.Postal, 9) + spit +
                           bSubstring(paymentTerm.PaymentTermName, 2) + spit +
                           bSubstring(vendorType.VendorTypeName, 4) + spit +
                           bSubstring(vendor.VendorCode, 5) + spit +
                           0 + spit +
                           0 + spit +
                           "" + spit +
                           "N" + spit +
                           "" + spit +
                           bSubstring(vendor.PhoneNumber, 15) + spit +
                           bSubstring(company.CompanyCode, 2) + spit +
                           bSubstring(currency.CurrencyShortName, 3) + spit +
                           bSubstring(paymentType.MethodPaymentName, 1) + spit +
                           (vendor.OneTimeVendor ? "Y" : "N") + spit +
                           0 + spit +
                           (vendor.HoldVendor ? "Y" : "N") + spit +
                           0 + spit +
                           0 + spit +
                           0 + spit +
                           0 + spit +
                           0 + spit +
                           0 + spit +
                           "N" + spit +
                           bSubstring(vendor.AlphaSearchKey, 10) + spit +
                           0 + spit +
                           bSubstring(vendor.ContactName, 30) + spit +
                           "" + spit +
                           0 + spit +
                           bSubstring(vendor.PurchasingAddress, 28) + spit +
                           SpitVendorAddress(vendor.PurchasingAddress) + spit +
                           bSubstring(vendor.PurchasingCity, 28) + spit +
                           "" + spit +
                           bSubstring(vendor.PurchaseingPostalCode, 9) + spit +
                           bSubstring(vendor.PurchasingContact, 30) + spit +
                           "" + spit +
                           0 + spit +
                           0 + spit +
                           "N" + spit +
                           bSubstring(vendor.PurchasePhoneNumber, 15) + spit +
                           "" + spit +
                           "" + spit +
                           bSubstring(VatType.VatTypeName, 5) + spit +
                           "" + spit +
                           "" + spit +
                           0 + spit +
                           0 + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           0 + "\r\n";
                        #endregion
                        break;
                    case 2:
                        ActionName = "U";
                        #region 修改
                        QueryDS.FormVendorViewDataTable l_dtformvendor = formvendorbll.GetApproveFormVendorByVendorID(vendor.VendorID);
                        if (l_dtformvendor.Rows.Count > 1) {

                            QueryDS.FormVendorViewRow l_drformvendor = l_dtformvendor[1];
                            content =
                               "" + spit +
                               ActionName + spit +
                               "" + spit +
                               (vendor.IsActive ? "VM" : "VZ") + spit +
                               bSubstring(vendor.VendorCode, 5) + spit +
                               (bSubstring(vendor.VendorName, 28) == bSubstring(l_drformvendor.VendorName, 28) ? "" : bSubstring(vendor.VendorName, 28)) + spit +
                               (bSubstring(vendor.VendorAddress, 28) == bSubstring(l_drformvendor.VendorAddress, 28) ? "" : vendor.VendorAddress) + spit +
                               (SpitVendorAddress(vendor.VendorAddress) == SpitVendorAddress(l_drformvendor.VendorAddress) ? "" : SpitVendorAddress(vendor.VendorAddress)) + spit +
                               (bSubstring(vendor.City, 17) == bSubstring(l_drformvendor.City, 17) ? "" : bSubstring(vendor.City, 17)) + spit +
                               "" + spit +
                               (bSubstring(vendor.Postal, 9) == bSubstring(l_drformvendor.Postal, 9) ? "" : bSubstring(vendor.Postal, 9)) + spit +
                              bSubstring(l_drformvendor.MethodPaymentID == vendor.MethodPaymentID ? "" : paymentTerm.PaymentTermName, 2) + spit +
                               bSubstring(vendor.VendorTypeID == l_drformvendor.VendorTypeID ? "" : vendorType.VendorTypeName, 4) + spit +
                               0 + spit +
                               0 + spit +
                               0 + spit +
                               "" + spit +
                               "" + spit +
                               "" + spit +
                               (bSubstring(vendor.PhoneNumber, 15) == bSubstring(l_drformvendor.PhoneNumber, 15) ? "" : bSubstring(vendor.PhoneNumber, 15)) + spit +
                               (bSubstring(company.CompanyCode, 2) == bSubstring(l_drformvendor.CompanyCode, 2) ? "0" : bSubstring(company.CompanyCode, 2)) + spit +
                               (bSubstring(currency.CurrencyShortName, 3) == bSubstring(l_drformvendor.CurrencyShortName, 3) ? "" : bSubstring(currency.CurrencyShortName, 3)) + spit +
                               bSubstring(l_drformvendor.MethodPaymentID == vendor.MethodPaymentID ? "" : paymentType.MethodPaymentName, 1) + spit +
                               (vendor.OneTimeVendor == l_drformvendor.OneTimeVendor ? "" : (vendor.OneTimeVendor ? "Y" : "N")) + spit +
                               0 + spit +
                               (vendor.HoldVendor == l_drformvendor.HoldVendor ? "" : (vendor.HoldVendor ? "Y" : "N")) + spit +
                               0 + spit +
                               0 + spit +
                               0 + spit +
                               0 + spit +
                               0 + spit +
                               0 + spit +
                               "" + spit +
                               (bSubstring(vendor.AlphaSearchKey, 10) == bSubstring(l_drformvendor.AlphaSearchKey, 10) ? "" : bSubstring(vendor.AlphaSearchKey, 10)) + spit +
                               0 + spit +
                               (bSubstring(vendor.ContactName, 30) == bSubstring(l_drformvendor.ContactName, 30) ? "" : bSubstring(vendor.ContactName, 30)) + spit +
                               "" + spit +
                               0 + spit +
                               (bSubstring(vendor.PurchasingAddress, 28) == bSubstring(l_drformvendor.PurchasingAddress, 28) ? "" : bSubstring(vendor.PurchasingAddress, 28)) + spit +
                               (SpitVendorAddress(vendor.PurchasingAddress) == SpitVendorAddress(l_drformvendor.PurchasingAddress) ? "" : SpitVendorAddress(vendor.PurchasingAddress)) + spit +
                              (bSubstring(vendor.PurchasingCity, 28) == bSubstring(l_drformvendor.PurchasingCity, 28) ? "" : bSubstring(vendor.PurchasingCity, 28)) + spit +
                               "" + spit +
                               (bSubstring(vendor.PurchaseingPostalCode, 9) == bSubstring(l_drformvendor.PurchaseingPostalCode, 9) ? "" : bSubstring(vendor.PurchaseingPostalCode, 9)) + spit +
                               (bSubstring(vendor.PurchasingContact, 30) == bSubstring(l_drformvendor.PurchasingContact, 30) ? "" : bSubstring(vendor.PurchasingContact, 30)) + spit +
                               "" + spit +
                               0 + spit +
                               0 + spit +
                               "" + spit +
                               (bSubstring(vendor.PurchasePhoneNumber, 15) == bSubstring(l_drformvendor.PurchasePhoneNumber, 15) ? "" : bSubstring(vendor.PurchasePhoneNumber, 15)) + spit +
                               "" + spit +
                               "" + spit +
                               bSubstring(l_drformvendor.VATTypeID == vendor.VATTypeID ? "" : VatType.VatTypeName, 5) + spit +
                               "" + spit +
                               "" + spit +
                               0 + spit +
                               0 + spit +
                               "" + spit +
                               "" + spit +
                               "" + spit +
                               "" + spit +
                               "" + spit +
                               "" + spit +
                               "" + "\r\n";
                        } else {
                            logbll.InsertExportLogDetail(logId, "未找到Vendor历史数据!");
                        }
                        #endregion
                        break;
                    case 3:
                        ActionName = "R";
                        #region 重新激活
                        content =
                           "" + spit +
                           ActionName + spit +
                           "" + spit +
                           "VM" + spit +
                           bSubstring(vendor.VendorCode, 5) + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           0 + spit +
                           0 + spit +
                           0 + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           0 + spit +
                           "" + spit +
                          "" + spit +
                           "" + spit +
                           0 + spit +
                           "" + spit +
                           0 + spit +
                           0 + spit +
                           0 + spit +
                           0 + spit +
                           0 + spit +
                           0 + spit +
                           "" + spit +
                           "" + spit +
                           0 + spit +
                           "" + spit +
                           "" + spit +
                           0 + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           0 + spit +
                           0 + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           0 + spit +
                           0 + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + spit +
                           "" + "\r\n";
                        #endregion
                        break;
                }
                content = content.Replace("\r", "").Replace("\n", "") + "\r\n";
                File.AppendAllText(path + FileName, content, Encoding.Default);
                File.AppendAllText(BakPath + DateTime.Now.ToString("yyyyMMddhhmmss") + FileName, content, Encoding.Default);
                UpdateVendorbyID(vendor.VendorID);
            } catch (Exception e) {
                logbll.InsertExportLogDetail(logId, "VendorCode:" + vendor.VendorCode + ",VendorName:" + vendor.VendorName + "" + ",错误信息:" + e.Message);
                return false;
            }
            return true;
        }
コード例 #45
0
ファイル: Dock.cs プロジェクト: lscyane/KCBr
        public bool UpdateBuildKDock(List<KCB.api_get_member.KDock.ApiData> json, MasterData.Ship shipMaster)
        {
            foreach (var data in json)
            {
                int ship_id = (int)data.api_created_ship_id;
                int dock_id = (int)data.api_id;

                lock (_kdock)
                {
                    KDock targetDock = _kdock[dock_id - 1];
                    if (ship_id == 0)
                        targetDock.Vacant = true;
                    else
                    {
                        var ship = shipMaster.LookupShipMaster(ship_id);
                        targetDock.Vacant = false;
                        targetDock.ShipID = ship_id;
                        targetDock.Name = ship.Name;
                        targetDock.Type = ship.ShipTypeName;
                        targetDock.Finish
                            = _epoch.AddMilliseconds(data.api_complete_time).ToLocalTime();
                        targetDock.UpdateMaterialParam(data);
                    }
                }
            }
            return true;
        }
コード例 #46
0
ファイル: Item.cs プロジェクト: lscyane/KCBr
 /// <summary>
 /// マスタデータから装備情報を取得して設定
 /// SlotItemTypeは設定済みと仮定
 /// </summary>
 /// <param name="itemMaster"></param>
 private void ApplyMasterSlotItemInfo(MasterData.Item itemMaster)
 {
     var itemInfo = itemMaster.GetItemParam(SlotItemType);
     SetSlotItemParam(itemInfo);
 }
コード例 #47
0
ファイル: Item.cs プロジェクト: lscyane/KCBr
        /// <summary>
        /// 装備を改装
        /// </summary>
        /// <param name="JSON"></param>
        /// <returns></returns>
        public bool RemodelSlotItem(string JSON,MasterData.Item itemMaster)
        {
            var json = JsonConvert.DeserializeObject<KCB.api_req_kousyou.RemodelSlot>(JSON);
            if ((int)json.api_result != 1)
                return false;
            var dat = json.api_data;

            if (dat.api_remodel_flag != 1)
                return false;

            var item = GetItem(dat.api_after_slot.api_id);
            item.Remodel(dat.api_after_slot,itemMaster);

            if (dat.api_use_slot_id != null)
                DestoryItem(dat.api_use_slot_id.ToArray());

            return true;
        }
コード例 #48
0
        /// <summary>
        /// Gets the master data asynchronous.
        /// </summary>
        /// <returns>The Master Data.</returns>
        public async Task<MasterData> RetrieveMasterDataAsync()
        {
            var masterData = new MasterData();
            var countryListTask = this.referenceDataRepository.ListCountryAsync();
            var personTypeListTask = this.referenceDataRepository.ListPersonTypeAsync();
            var documentTypeTask = this.referenceDataRepository.ListDocumentTypeAsync();
            var loyaltyTypesTask = this.referenceDataRepository.ListLoyaltyLevelTypeAsync();
            var shipTimeTask = this.shipTimeRepository.GetByIdAsync(this.applicationSettings.ShipId, null);
            var shipTask = this.shipRepository.GetByIdAsync(this.applicationSettings.ShipId, null, null);
            var voyageTask = this.voyageRepository.RetrieveVoyagesAsync(this.applicationSettings.ShipId);
            var visitorTypeTask = this.visitorRepository.ListVisitorTypeAsync();
            var visitPurposeTask = this.visitorRepository.ListVisitPurposeAsync();
            var deparmtentTask = this.visitorRepository.ListDepartmentsAsync();
            var crewDepartment = this.crewRepository.RetrieveCrewDepartmentsList();
            var alertTypes = this.alertRepository.ListAlertTypes();
            var gangwayLocations = this.shipRepository.RetrieveLocationsListAsync();
           
            masterData.AssignCountries((await countryListTask).Items);
            masterData.AssignPersonTypes((await personTypeListTask).Items);
            var documentTypes = await documentTypeTask;
            foreach (var documentType in documentTypes.Items)
            {
                masterData.IdTypes.Add(new IdType { IdTypeId = documentType.DocumentTypeId, Name = documentType.Name, CountryId = documentType.CountryId });
            }

            masterData.ShipTimeUtcOffset = await shipTimeTask;
            masterData.Ship = await shipTask;
            masterData.AssignVoyages(await this.MapVoyageData((await voyageTask).Items));
            masterData.AssignCrewDepartments((await crewDepartment).Items);
            masterData.AssignVisitorTypes((await visitorTypeTask).Items);
            masterData.AssignVisitPurposes((await visitPurposeTask).Items);
            masterData.AssignDepartments((await deparmtentTask).Items);
            masterData.AssignLoyaltyTypes((await loyaltyTypesTask).Items);
            masterData.AssignAlertTypes((await alertTypes).Items);
            masterData.AssignLocations((await gangwayLocations).Items);

            return masterData;
        }
コード例 #49
0
ファイル: FormMain.cs プロジェクト: lscyane/KCBr
 public void UpdateMasterData(MasterData.Ship shipMaster, MasterData.Item itemMaster)
 {
     if (_wndMaster != null)
         _wndMaster.UpdateMaster(shipMaster,itemMaster);
 }
コード例 #50
0
ファイル: Program.cs プロジェクト: hijoy/CPL_ERS
        private bool ExportVendorAVMX(MasterData.VendorRow vendor, int logId)
        {
            string BakPath = ConfigurationManager.AppSettings["ExportService.BakPath"];
            try {
                string FileName = ConfigurationManager.AppSettings["ExportService.VendorAVMXFileName"];
                string spit = "\t";
                MasterDataBLL masterdatabll = new MasterDataBLL();
                MasterData.CurrencyRow currency = null;
                MasterData.VendorTypeRow vendorType = null;
                MasterData.TransTypeRow transType = null;
                MasterData.BankCodeRow bankCode = null;
                MasterData.ACTypeRow acType = null;
                vendorType = masterdatabll.GetVendorTypeById(vendor.VendorTypeID);
                currency = masterdatabll.GetCurrencyByID(vendorType.CurrencyID);

                if (!vendor.IsBankCodeIDNull()) {
                    MasterData.BankCodeDataTable tbBankCode = masterdatabll.GetBankCodeById(vendor.BankCodeID);
                    bankCode = tbBankCode[0];
                    if (bankCode.BankCode.Equals("999")) {
                        throw new Exception("BankCode为999不导出!");
                    }
                }

                if (!vendor.IsTransTypeIDNull()) {
                    MasterData.TransTypeDataTable tbTransType = masterdatabll.GetTransTypeById(vendor.TransTypeID);
                    transType = tbTransType[0];
                }

                if (!vendor.IsACTypeIDNull()) {
                    MasterData.ACTypeDataTable tbACType = masterdatabll.GetACTypeById(vendor.ACTypeID);
                    acType = masterdatabll.GetACTypeById(vendor.ACTypeID)[0];
                }
                if (vendor.IsAccountNoNull()) {
                    throw new Exception("银行账号为空的不导出!");
                }

                string content =
                   (vendor.IsActive ? "VM" : "VZ") + spit +
                       bSubstring(vendor.VendorCode, 5) + spit +
                       bSubstring(currency.CurrencyShortName, 3) + spit +
                       bSubstring(bankCode.BankCode, 3) + spit +
                       bSubstring(transType == null ? "" : transType.TransTypeName, 2) + spit +
                       bSubstring(vendor.IsBankNameNull() ? "" : vendor.BankName, 68) + spit +
                       bSubstring(vendor.IsAccountNoNull() ? "" : vendor.AccountNo, 32) + spit +
                       bSubstring(vendor.VendorName, 58) + spit +
                       bSubstring(acType == null ? "" : acType.ACTypeName, 1) + spit +
                       0 + spit +
                       bSubstring(vendor.IsBankNoNull() ? "" : vendor.BankNo, 11);
                content = content.Replace("\r", "").Replace("\n", "") + "\r\n";
                File.AppendAllText(path + FileName, content, Encoding.Default);
                File.AppendAllText(BakPath + DateTime.Now.ToString("yyyyMMddhhmmss") + FileName, content, Encoding.Default);
            } catch (Exception e) {
                logbll.InsertExportLogDetail(logId, "VendorCode:" + vendor.VendorCode + ",VendorName:" + vendor.VendorName + "" + ",错误信息:" + e.Message);
                return false;
            }
            return true;
        }
コード例 #51
0
ファイル: LogGenerator.cs プロジェクト: lscyane/KCBr
        public LogData.CreateItemInfo CreateLogData(string responseJson,IDictionary<string,string> queryParam, MasterData.Item itemData,
            MemberData.Deck deckDat, MemberData.Ship shipDat,MemberData.Basic basicDat)
        {
//            var json = DynamicJson.Parse(oSession.ResponseJSON);
            var json = JsonConvert.DeserializeObject<KCB.api_req_kousyou.CreateItem>(responseJson);
            if ((int)json.api_result != 1)
                return null;

            var info = new LogData.CreateItemInfo(queryParam, json.api_data);

            info.OfficeLv = basicDat.Level;
            var secretary = shipDat.GetShip(deckDat.Secretary);
            info.SecretaryShip = string.Format("{0}(Lv{1})", secretary.ShipName,
                secretary.Level);
            info.MemberID = basicDat.MemberID;

            if (info.Succeess)
            {
                var it = itemData.GetItemParam(info.ItemNameID);
                info.ItemName = it.Name;
                info.ItemType = it.Type;
            }
            return info;
        }
コード例 #52
0
ファイル: LogGenerator.cs プロジェクト: lscyane/KCBr
        /// <summary>
        /// 戦闘終了 /kcsapi/api_req_sortie/battleresult
        /// </summary>
        /// <param name="JSON"></param>
        public LogData.BattleResultInfo Finish(string JSON, MemberData.Ship shipData,
            MemberData.Deck deckData,MasterData.Ship shipMaster,MemberData.Basic basicData)
        {
//            var json = DynamicJson.Parse(JSON);
            var json = JsonConvert.DeserializeObject<KCB.api_req_sortie.BattleResult>(JSON);
            if ((int)json.api_result != 1)
                return null;

            var data = json.api_data;

            LogData.BattleResultInfo result = new LogData.BattleResultInfo();
            result.MemberID = basicData.MemberID;
            result.Date = DateTime.Now;
            result.AreaName = data.api_quest_name;
            result.Rank = data.api_win_rank;

            //敵情報
            result.Foe.DeckName = data.api_enemy_info.api_deck_name;
            Debug.WriteLine("FoeDeckName:" + result.Foe.DeckName);
//            double[] enemylist = (double[])data.api_ship_id;

//            for (int i = 1; i < enemylist.Count(); i++)
            for (int i = 1; i < data.api_ship_id.Count(); i++)
            {
                int enemyID = data.api_ship_id[i];
                if (enemyID <= 0)
                {
                    result.Foe.ShipList[i - 1] = "";
                    continue;
                }

                //何故かeliteとかflagの文字は読みに入ってる
                var t = shipMaster.LookupShipMaster(enemyID);
                if (t.Yomi.Length == 1)
                    result.Foe.ShipList[i - 1] = t.Name;
                else
                    result.Foe.ShipList[i - 1] = string.Format("{0}({1})", t.Name, t.Yomi);

                Debug.WriteLine(string.Format("ShipList({0})={1}", i - 1, result.Foe.ShipList[i - 1]));
            }

            //自軍情報
            var fleet = deckData.GetFleet(battleFleetID);
            result.Friend.DeckName = fleet.Name;
            Debug.WriteLine("FriendDeckName:" + result.Friend.DeckName);
            for (int i = 0; i < fleet.Member.Count(); i++)
            {
                if (fleet.Member[i] <= 0)
                {
                    result.Friend.ShipList[i] = "";
                    continue;
                }

                string header = "";
                ///ロスト艦艇
                if (data.api_lost_flag != null && (int)data.api_lost_flag[i + 1] != 0)
                    header = "x";

                //MVPは1オリジン
                if ((int)data.api_mvp == i + 1)
                    header = "*";

                var t = shipData.GetShip(fleet.Member[i]);
                result.Friend.ShipList[i] = string.Format("{0}{1}(Lv{2} HP{3})",
                    header, t.ShipName, t.Level, t.HP);
                Debug.WriteLine(string.Format("ShipList({0})={1}", i, result.Friend.ShipList[i]));
            }

            ///ドロップ
//            if (data.IsDefined("api_get_ship"))
            if(data.api_get_ship != null)
                result.ShipDropped = string.Format("{0}({1})", data.api_get_ship.api_ship_name,
                    data.api_get_ship.api_ship_type);
            Debug.WriteLine("GetShip:" + result.ShipDropped);

            return result;
        }
コード例 #53
0
ファイル: Item.cs プロジェクト: lscyane/KCBr
            //                public Info(dynamic data)
            public Info(KCB.api_get_member.Slot_Item.ApiData data, MasterData.Item itemMaster)
            {
                Owner = null;
                ItemUID = data.api_id;
                SlotItemType = data.api_slotitem_id;
                Locked = data.api_locked == 1;

                if (data.api_alv == null)
                    Level = data.api_level;
                else if (data.api_alv > 0)
                    Level = (int) data.api_alv;
                else
                    Level = data.api_level;

                ApplyMasterSlotItemInfo(itemMaster);
            }
コード例 #54
0
ファイル: Item.cs プロジェクト: lscyane/KCBr
            /// <summary>
            /// 装備改装
            /// </summary>
            /// <param name="data">改装情報</param>
            /// <param name="itemMaster">マスタデータ</param>
            public void Remodel(KCB.api_req_kousyou.RemodelSlot.ApiData.ApiAfterSlot data,
                MasterData.Item itemMaster)
            {
                ItemUID = data.api_id;
                SlotItemType = data.api_slotitem_id;
                Locked = data.api_locked == 1;
                Level = data.api_level;

                ApplyMasterSlotItemInfo(itemMaster);
            }
コード例 #55
0
        /// <summary>
        /// Retrieves the master data.
        /// </summary>
        /// <returns>The Task.</returns>
        private async Task<MasterData> RetrieveMasterData()
        {
            var masterDataResult = new MasterData();
            try
            {
                masterDataResult = await this.masterDataManager.RetrieveAsync();
                if (masterDataResult != null)
                {
                    SessionData.Instance.ShipTimeInterval = Convert.ToInt32(this.ApplicationSettings.TimerInterval, CultureInfo.CurrentCulture);
                    this.localDateTimeManager.Start(masterDataResult.Ship.ShipId);
                }
            }
            catch (Exception ex)
            {
                LogManager.Write(ex.Message);
            }

            return masterDataResult;
        }
コード例 #56
0
ファイル: Dock.cs プロジェクト: lscyane/KCBr
        /// <summary>
        /// /kcsapi/api_get_member/kdock 建造ドック
        /// </summary>
        /// <param name="JSON">JSON</param>
        /// <param name="shipMaster">艦娘マスタ</param>
        /// <returns></returns>
        public bool UpdateBuildKDock(string JSON, MasterData.Ship shipMaster)
        {
            var json = JsonConvert.DeserializeObject<KCB.api_get_member.KDock>(JSON);
            if ((int)json.api_result != 1)
                return false;

            UpdateBuildKDock(json.api_data, shipMaster);

#if DEBUG
            for (int i = 0; i < _ndock.Count(); i++)
                Debug.WriteLine(_ndock[i]);
#endif
            return true;
        }