public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; var txt_acc = context.Request.Form["txt_acc"]; var txt_pwd = context.Request.Form["txt_pwd"]; var txt_Vallentity = context.Request.Form["txt_Vallentity"]; if (txt_Vallentity != context.Session["Catcha"].ToString()) { context.Response.Write("Valerror"); return; } Member m = new Member(); m.MAccount = txt_acc; m.MPassword = txt_pwd; MemberData md = new MemberData(); var message = md.Ismember(m); if (message[0] == "Find") { context.Session["Member"] = message[1]; context.Session["MName"] = message[2]; context.Response.Write("OK"); } else { context.Session["Member"] = ""; context.Response.Write("NO"); } }
public ActionResult CheckIsMemberName(string str) { Dictionary<string, object> dic = new Dictionary<string, object>(); MemberData md = new MemberData(); if (str != "") { var data = md.Get().ToList().Where(a => a.uName == str && (a.FacebookId == "" && a.GoogleId == "")); if (data.Count() > 0) { dic.Add("success", true); dic.Add("msg", "OK"); } else { dic.Add("success", false); dic.Add("msg", "查無此姓名"); } } else { dic.Add("success", false); dic.Add("msg", "Error"); } return Json(dic); }
public DockItem(MemberData.Dock.DockInfo dat) { Name = dat.Name; Finish = dat.Finish; Vacant = dat.Vacant; Order = dat.Order; }
/// <summary> /// parse member element (type, property, method, field) /// from the given elementName /// </summary> /// <param name="elementName"></param> /// <returns></returns> internal static MemberData ParseMemberElement(string elementName) { MemberData memberData = new MemberData(); char typeId = elementName[0]; string memberElement = GetMemberElement(elementName); var typeMember = GetTypeAndMemberName(memberElement); switch(typeId) { case 'F' : memberData.type = Type.Field; memberData.TypeName = typeMember.Item1; memberData.MemberName = typeMember.Item2; break; case 'M' : memberData.type = Type.Method; memberData.TypeName = typeMember.Item1; memberData.MemberName = typeMember.Item2; break; case 'P' : memberData.type = Type.Property; memberData.TypeName = typeMember.Item1; memberData.MemberName = typeMember.Item2; break; case 'T' : memberData.type = Type.Type; memberData.TypeName = memberElement; memberData.MemberName = ""; break; default : break; } return memberData; }
/// <summary> /// 資源情報を更新 /// </summary> /// <param name="data"></param> public void Update(MemberData.Material data) { if(InvokeRequired) BeginInvoke((MethodInvoker)(() => updateMaterialView(data))); else updateMaterialView(data); }
void updateMaterialView(MemberData.Material data) { lblFuel.Text = data.Fuel.ToString(); lblBullet.Text = data.Ammo.ToString(); lblSteel.Text = data.Steel.ToString(); lblBauxite.Text = data.Bauxite.ToString(); lblFastRepair.Text = data.FastRepair.ToString(); lblFastBuild.Text = data.FastBuild.ToString(); lblDevelop.Text = data.Developer.ToString(); lblUpdater.Text = data.Updater.ToString(); }
private static object Union(MemberData thisMembers, MemberData thatMembers) { if (thatMembers == null) { return(thisMembers); } if (thisMembers == null) { return(thatMembers.Clone()); } thisMembers.Indexers = ArrayUnion(thisMembers.Indexers, thatMembers.Indexers); thisMembers.Constructors = ParameterUnion(thisMembers.Constructors, thatMembers.Constructors); thisMembers.Events = DictionaryUnion(thisMembers.Events, thatMembers.Events); thisMembers.Fields = DictionaryUnion(thisMembers.Fields, thatMembers.Fields); thisMembers.Methods = DictionaryUnion(thisMembers.Methods, thatMembers.Methods, Union); thisMembers.NestedTypes = DictionaryUnion(thisMembers.NestedTypes, thatMembers.NestedTypes, Union); thisMembers.Properties = DictionaryUnion(thisMembers.Properties, thatMembers.Properties, Union); return(thisMembers); }
/// <summary> /// 會員登入 /// </summary> /// <param name="memberInfo">memberInfo</param> /// <returns>Tuple(string, string)</returns> public async Task <Tuple <string, string> > Login(MemberInfoDto memberInfo) { try { if (string.IsNullOrEmpty(memberInfo.Email) || string.IsNullOrEmpty(memberInfo.Password)) { return(Tuple.Create(string.Empty, "信箱或密碼無效.")); } MemberData memberData = await this.memberRepository.GetMemebrDataByEmail(memberInfo.Email); if (memberData == null) { return(Tuple.Create(string.Empty, "無法根據信箱查詢到相關會員.")); } if (!Utility.DecryptAES(memberData.Password).Equals(memberInfo.Password)) { return(Tuple.Create(string.Empty, "密碼驗證失敗.")); } bool updateMemebrLoginDateResult = await this.memberRepository.UpdateMemebrLoginDate(memberData.MemberID, DateTime.Now); if (!updateMemebrLoginDateResult) { return(Tuple.Create(string.Empty, "會員登入失敗.")); } return(Tuple.Create(memberData.MemberID, string.Empty)); } catch (Exception ex) { this.logger.LogError($"Login Error >>> Email:{memberInfo.Email} Password:{memberInfo.Password}\n{ex}"); return(Tuple.Create(string.Empty, "會員登入發生錯誤.")); } }
public PopupCheckCustomer() { try { InitializeComponent(); item = (CheckInsureCarData)DataCommon.Get("CHECK_INSURE_CAR_EDIT"); txtDate.Text = item.CREATE_DATE.ToString(); txtEMail.Text = item.CUSTOMER_EMAIL; txtName.Text = item.CUSTOMER_NAME; txtTel.Text = item.CUSTOMER_TEL; member = (MemberData)DataCommon.Get("DATA.MEMBER"); if (member.ROLE_CODE.ToUpper().Equals("Admin")) { btnCancel.Visibility = System.Windows.Visibility.Hidden; btnSave.Visibility = System.Windows.Visibility.Hidden; btnPing.Visibility = System.Windows.Visibility.Visible; } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
public static PortView GetOutputPort(MemberData inputValue, UGraphView graphView) { var outputNode = inputValue.GetTargetNode(); if (outputNode != null) { if (inputValue.IsTargetingNode) { switch (inputValue.targetType) { case MemberData.TargetType.FlowNode: return(GetSelfPort(outputNode, Orientation.Vertical, graphView)); case MemberData.TargetType.ValueNode: PortView port; if (graphView.portValueNodeAliases.TryGetValue(outputNode, out port) && port != null) { return(port); } return(GetSelfPort(outputNode, Orientation.Horizontal, graphView)); } } UNodeView nodeView; if (graphView.nodeViewsPerNode.TryGetValue(outputNode, out nodeView)) { foreach (var p in nodeView.outputPorts) { if (p.portData.portID == inputValue.startName) { return(p); } } } } return(null); }
public void TestGenerateMemberData() { MethodBase method = typeof(MethodTestClass).GetMethod("Method"); IReadOnlyList <MemberRef> expectedAttr = new MemberRef[] { new MemberRef("STAThreadAttribute", MemberRefType.Class, typeof(STAThreadAttribute).MetadataToken) }; docUtility.GenerateName(method).Returns("CSDocNet.TestDoc.MethodTestClass.Method"); docUtility.GenerateAttributes(method).Returns(expectedAttr); idGen.GenerateMemberID(method).Returns("M:CSDocNet.TestDoc.MethodTestClass.Method"); var name = methodUtility.GenerateName(method); var id = methodUtility.GenerateCommentID(method); var access = methodUtility.GenerateAccess(method); var modifiers = methodUtility.GenerateModifiers(method); var attr = methodUtility.GenerateAttributes(method); MemberData mData = methodUtility.GenerateMemberData(method); Assert.AreEqual(name, mData.Name); Assert.AreEqual(id, mData.CommentID); Assert.AreEqual(access, mData.Access); Assert.AreEqual(modifiers, mData.Modifiers); Assert.That(mData.Attributes, Is.EquivalentTo(attr)); }
///// <summary> ///// Получает количечство всех дочерних элементов (включая дочерних дочерних :)) ///// </summary> ///// <param name="memberItem"></param> ///// <param name="count"></param> ///// <param name="curent"></param> //static private void GetAllChildrenCount(PivotMemberItem memberItem, out int count, int curent) //{ // count = curent; // if (memberItem.Children.Count > 0) // { // curent = curent + memberItem.Children.Count; // foreach (PivotMemberItem v in memberItem.Children) // { // GetAllChildrenCount(v, out count, curent); // } // } //} /// <summary> /// Записывает область строк используя CellSetDataProvider по позициям (Positions). /// </summary> /// <param name="columnsCount">Количество колонок в области значений.</param> static private void WriteRowsByPositions(int columnsCount) { if (pivotDataProvider.Provider.CellSet_Description.Axes[1] != null) { //строка в pivotDataProvider.Provider.CellSet_Description.Cells int cellRowNumber = 0; foreach (PositionData position in pivotDataProvider.Provider.CellSet_Description.Axes[1].Positions) { //<Row> currentRow = document.CreateElement("s", "Row", spreadsheetNamespace); table.AppendChild(currentRow); int indexCell = 1; foreach (PositionMemberData pos_member in position.Members) { MemberData member = pivotDataProvider.Provider.CellSet_Description.Axes[1].Members[pos_member.Id]; string value = member.Caption; WriteCell(value, "String", axisStyle, indexCell, true); indexCell++; } WriteDataRow(cellRowNumber, columnsCount, indexCell); cellRowNumber++; } } }
public void TestGenerateMemberData() { FieldInfo field = typeof(FieldTestClass).GetField("StaticReadonlyField"); IReadOnlyList <MemberRef> expectedAttr = new MemberRef[] { new MemberRef("NonSerializedAttribute", MemberRefType.Class, typeof(NonSerializedAttribute).MetadataToken) }; utility.GenerateName(field).Returns("CSDocNet.TestDoc.FieldTestClass.StaticReadonlyField"); utility.GenerateAttributes(field).Returns(expectedAttr); idGen.GenerateMemberID(field).Returns("F:CSDocNet.TestDoc.FieldTestClass.StaticReadonlyField"); var name = gen.GenerateName(field); var id = gen.GenerateCommentID(field); var access = gen.GenerateAccess(field); var modifiers = gen.GenerateModifiers(field); var attr = gen.GenerateAttributes(field); MemberData mData = gen.GenerateMemberData(field); Assert.AreEqual(name, mData.Name); Assert.AreEqual(id, mData.CommentID); Assert.AreEqual(access, mData.Access); Assert.AreEqual(modifiers, mData.Modifiers); Assert.That(mData.Attributes, Is.EquivalentTo(attr)); }
public void TestGenerateMemberData() { EventInfo ev = typeof(EventTestClass).GetEvent("PublicEvent"); IReadOnlyList <MemberRef> expectedAttr = new MemberRef[] { new MemberRef("STAThreadAttribute", MemberRefType.Class, typeof(STAThreadAttribute).MetadataToken) }; docUtility.GenerateName(ev).Returns("CSDocNet.TestDoc.EventTestClass.Event"); docUtility.GenerateAttributes(ev).Returns(expectedAttr); idGen.GenerateMemberID(ev).Returns("M:CSDocNet.TestDoc.EventTestClass.Event"); var name = gen.GenerateName(ev); var id = gen.GenerateCommentID(ev); var access = gen.GenerateAccess(ev); var modifiers = gen.GenerateModifiers(ev); var attr = gen.GenerateAttributes(ev); MemberData mData = gen.GenerateMemberData(ev); Assert.AreEqual(name, mData.Name); Assert.AreEqual(id, mData.CommentID); Assert.AreEqual(access, mData.Access); Assert.AreEqual(modifiers, mData.Modifiers); Assert.That(mData.Attributes, Is.EquivalentTo(attr)); }
/// <summary> /// 遠征一覧を更新 /// </summary> /// <param name="deckList"></param> public void UpdateMissionList(IEnumerable<MemberData.Deck.Fleet> deckList, MemberData.Ship shipData) { Mission[] mission = new Mission[] { new Mission(), new Mission(), new Mission() }; if (deckList == null) return; lock (deckList) { foreach (var it in deckList) { switch (it.Num) { case 1: continue; case 2: case 3: case 4: mission[it.Num - 2].Name = it.Mission; mission[it.Num - 2].Detail = it.MissionDetail; mission[it.Num - 2].Finish = it.MissionFinish; mission[it.Num - 2].DeckName = it.Name; mission[it.Num - 2].Num = it.MissionNum; mission[it.Num - 2].SupplyStatus = CheckFleetStatus(it.Member, shipData); break; default: return; } } } if (InvokeRequired) BeginInvoke((MethodInvoker)(() => updateMissionView(mission))); else updateMissionView(mission); }
/// <summary> /// 搜尋好友 /// </summary> /// <param name="interactiveDto">interactiveDto</param> /// <returns>Tuple(MemberDto, string)</returns> public async Task <Tuple <MemberDto, string> > SearchFriend(InteractiveDto interactiveDto) { try { if (string.IsNullOrEmpty(interactiveDto.MemberID)) { return(Tuple.Create <MemberDto, string>(null, "會員編號無效.")); } if (string.IsNullOrEmpty(interactiveDto.SearchKey)) { return(Tuple.Create <MemberDto, string>(null, "請輸入搜尋條件.")); } MemberData memberData = await this.memberRepository.GetMemberDataByEmail(interactiveDto.SearchKey); if (memberData == null) { return(Tuple.Create <MemberDto, string>(null, "無會員資料.")); } InteractiveData interactiveData = await this.interactiveRepository.GetAppointInteractiveData(interactiveDto.MemberID, memberData.MemberID); if (interactiveData != null && interactiveData.Status == (int)InteractiveType.Friend) { return(Tuple.Create <MemberDto, string>(null, "已加入好友.")); } return(Tuple.Create(this.mapper.Map <MemberDto>(memberData), string.Empty)); } catch (Exception ex) { this.logger.LogError($"Search Friend Error >>> MemberID:{interactiveDto.MemberID} SearchKey:{interactiveDto.SearchKey}\n{ex}"); return(Tuple.Create <MemberDto, string>(null, "搜尋好友發生錯誤.")); } }
private ActionResult RedirectByPaymentChoice(RegisterModel model, MemberData memberData) { // NOTE: for now all $25 signups will be paid for by credit card string actionName = string.Empty; switch (model.PaymentChoice) { case PaymentChoices.CreditCard: actionName = "SignupCC"; //// override //OrderData orderData= this.AutoAddOrderRecord(model, memberData.MemberId); //actionName = "JumpToCartContainer"; //return RedirectToRoute(new { action = actionName, memberId = memberData.MemberId, orderId = orderData.OrderId }); break; case PaymentChoices.MoneyOrder: actionName = "SignupMO"; break; default: throw new ArgumentOutOfRangeException(); } return(RedirectToRoute(new { action = actionName, memberId = memberData.MemberId })); }
public LVItemParamsFactory(MemberData.Ship.Info shipInfo, ImageList imgSlotItem) { _pwupParams = new SlotItemPowerupParams(shipInfo.SlotItem); _imgSlotItem = imgSlotItem; _info = shipInfo; }
public ActionResult facebookJsLogin(string resid, string resemail, string resname) { Dictionary<string, object> dic = new Dictionary<string, object>(); Session["Account"] = resid; //取得用戶ID Session["uname"] = resname; //取得用戶名稱 Session["resAccount"] = "Facebook";//取得用戶來源 Member m = new Member(); MemberData md = new MemberData(); if (Session["Account"] != null) { var memberData = md.Get().ToList().Where(a => a.uAccount == Session["Account"].ToString()).SingleOrDefault(); if (memberData == null) { m.uAccount = Session["Account"].ToString(); m.uName = resname; m.wdate = DateTime.Now; m.udate = DateTime.Now; m.uPassWord = "******"; m.uphone = ""; m.memberID = DateTime.Now.ToString("yyyyMMdd") + (md.Get().Count + 1).ToString().PadLeft(3, '0'); m.isdel = 0; m.sort = 5000; m.FacebookId = resid; m.GoogleId = ""; m.uemail = resemail ?? ""; md.Create(m); dic.Add("Msg", "已成為會員"); } else { if (memberData.uemail == "" || memberData.uemail == null) { m.num = memberData.num; m.uemail = resemail; md.UpdateEmail(m); } dic.Add("Msg", ""); } } dic.Add("success", true); return Json(dic); }
public ActionResult ToUpdateMemberData(int num, string password = "", string new_password = "", string tel = "", string name = "", string Email = "") { Dictionary<string, object> dic = new Dictionary<string, object>(); Member m = new Member(); MemberData md = new MemberData(); var datacount = md.Get().ToList().Where(a => a.num == num).Count(); var data = md.Get().ToList().Where(a => a.num == num).FirstOrDefault(); if (datacount > 0) { if (password != "") { if (data.uPassWord != PassWordSecurity.Sha384Encode(PassWordSecurity.Sha256Encode(password))) { TempData["msg"] = "舊密碼錯誤"; } else { m.num = num; m.uPassWord = PassWordSecurity.Sha384Encode(PassWordSecurity.Sha256Encode(new_password)); m.uphone = tel; m.uName = name; m.uemail = Email; m.udate = DateTime.Now; md.Update(m); TempData["msg"] = "更新成功"; } } else { m.num = num; m.uPassWord = data.uPassWord; m.uphone = tel; m.uName = name; if (Email != "") { m.uemail = Email; } else { m.uemail = data.uemail; } m.udate = DateTime.Now; md.Update(m); TempData["msg"] = "更新成功"; } } else { TempData["msg"] = "不正常管道錯誤"; } return RedirectToAction("Index", "Member"); }
public JsonResult ToCheckOldPwdMatch(int num, string pwd) { Dictionary<string, object> dic = new Dictionary<string, object>(); MemberData md = new MemberData(); var data = md.Get().ToList().Where(a => a.num == num).SingleOrDefault(); if (data.uPassWord == PassWordSecurity.Sha384Encode(PassWordSecurity.Sha256Encode(pwd))) { dic.Add("success", true); dic.Add("isOldPwd", true); } else { dic.Add("success", false); dic.Add("isOldPwd", false); } return Json(dic); }
public ActionResult SendCheckPwdMail(string uname, string loginAccount, string code) { Dictionary<string, object> dic = new Dictionary<string, object>(); MemberData md = new MemberData(); Member m = new Member(); var data = md.Get().ToList().Where(a => a.uName == uname && a.uemail == loginAccount && (a.FacebookId == "" && a.GoogleId == "")).SingleOrDefault(); if (data != null) { m.num = data.num; var newPwd = RendomNum.GetRandomString(10); m.uPassWord = PassWordSecurity.Sha384Encode(PassWordSecurity.Sha256Encode(newPwd)); md.UpdatePassword(m); dic.Add("success", true); dic.Add("msg", "以寄到您的信箱,請自行前往確認"); SendMailToEveryOne.SendMail(loginAccount, "*****@*****.**", "Funmtb忘記密碼通知", "Funmtb忘記密碼通知", "因個資關係,再麻煩親愛的客戶自行到官網去更改密碼,您的新密碼是:" + newPwd, false); } else { dic.Add("success", false); dic.Add("msg", "發生錯誤"); } return Json(dic); }
public override void Write() { _worldPacket.WriteUInt32(MemberData.Count); MemberData.ForEach(p => p.Write(_worldPacket)); }
public static ICollection <ReceiptData> getAllUserRecipts(string userName) { MemberData member = getMember(userName); return(member.receipts); }
/// <summary> /// True if group node has instance variable. /// </summary> /// <param name="groupNode"></param> /// <returns></returns> public static bool NeedInstanceVariable <T>(T superNode) where T : ISuperNode { if (superNode != null) { var flows = new HashSet <NodeComponent>(); foreach (var n in superNode.nestedFlowNodes) { FindFlowConnectionAfterCoroutineNode(n, ref flows); } bool check = false; Func <object, bool> validation = null; validation = delegate(object obj) { if (obj is MemberData) { MemberData member = obj as MemberData; Node n = member.GetInstance() as Node; if (n != null) { if (n is IVariableSystem && n is T && n == superNode as UnityEngine.Object && (member.targetType == MemberData.TargetType.uNodeVariable || member.targetType == MemberData.TargetType.uNodeGroupVariable || member.targetType == MemberData.TargetType.uNodeLocalVariable)) { check = true; } else if (member.targetType == MemberData.TargetType.ValueNode) { AnalizerUtility.AnalizeObject(n, validation); } } } return(check); }; foreach (Node node in flows) { if (node == null) { continue; } AnalizerUtility.AnalizeObject(node, validation); if (check) { return(true); } } var allConnection = new HashSet <NodeComponent>(); foreach (var n in superNode.nestedFlowNodes) { FindAllNodeConnection(n, ref allConnection); } foreach (Node node in allConnection) { if (node == null) { continue; } AnalizerUtility.AnalizeObject(node, validation); if (check) { var nodes = GetFlowConnectedTo(node); if (nodes.Count > 0) { if (nodes.Any(n => !flows.Contains(n))) { return(true); } } if ((generatorData.ungroupedNode.Contains(node) || generatorData.portableActionInNode.Contains(node))) { return(true); } } } } return(false); }
/// <summary> /// Are the flow connection identifiead as coroutine? /// </summary> /// <param name="member"></param> /// <returns></returns> public static bool IsCoroutineFlow(MemberData member) { var node = member.GetTargetNode(); return(IsCoroutineFlow(node)); }
public static HashSet <NodeComponent> GetFlowConnectedTo(Node target) { if (target != null) { if (generatorData.FlowConnectedTo.TryGetValue(target, out var comp)) { return(comp); } comp = new HashSet <NodeComponent>(); Node currNode = null; Func <object, bool> validation = delegate(object obj) { if (obj is MemberData) { MemberData member = obj as MemberData; Node targetNode = member.GetTargetNode(); if (targetNode == target) { if (member.targetType == MemberData.TargetType.FlowNode || member.targetType == MemberData.TargetType.FlowInput) { comp.Add(currNode); return(true); } else if (member.targetType == MemberData.TargetType.ValueNode || member.targetType == MemberData.TargetType.NodeField || member.targetType == MemberData.TargetType.NodeFieldElement) { var connectedNodes = GetFlowConnectedTo(currNode); if (connectedNodes != null) { foreach (var n in connectedNodes) { comp.Add(n); } } } } } return(false); }; foreach (Node node in generatorData.allNode) { if (target == node) { continue; } if (node is StateNode) { StateNode eventNode = node as StateNode; TransitionEvent[] TE = eventNode.GetTransitions(); foreach (TransitionEvent transition in TE) { if (transition != null && transition.GetTargetNode() == target) { comp.Add(node); break; } } } else if (node is IMacro) { IMacro macro = node as IMacro; var outputFlows = macro.OutputFlows; foreach (var flow in outputFlows) { if (flow != null && flow.target.GetTargetNode() == target) { comp.Add(node); break; } } } currNode = node; AnalizerUtility.AnalizeObject(node, validation); } foreach (EventNode method in generatorData.eventNodes) { if (method == null) { continue; } foreach (var flow in method.GetFlows()) { if (flow.GetTargetNode() == target) { comp.Add(method); break; } } } generatorData.FlowConnectedTo[target] = comp; return(comp); } return(null); }
public JsonResult member(string MyChecked) { Member n = new Member(); MemberData nd = new MemberData(); var array = MyChecked.Split(','); if (MyChecked != "" && MyChecked != null) { for (var i = 0; i < array.Length; i++) { //var Original = nd.Get().ToList().Where(a => a.num.ToString() == array[i]).SingleOrDefault(); //var DelPath = System.IO.Path.Combine(Server.MapPath("~/upload/News/"), Original.pic1); //System.IO.File.Delete(DelPath); //if (Original.jsonimg != "no_img.jpg") //{ // var jsonstr = JsonConvert.DeserializeObject<List<jsonSer>>(Original.jsonimg); // var DelJsonPath = Server.MapPath("~/upload/photograhy/"); // foreach (var j in jsonstr) // { // var DelJsonPathing = System.IO.Path.Combine(DelJsonPath, j.content); // System.IO.File.Delete(DelJsonPathing); // } //} //n.isdel = 1; //n.udate = DateTime.Now; n.num = Convert.ToInt32(array[i]); nd.Delete(n); } } return Json(""); }
public SlotItemLVItem(string name,MemberData.Ship.Info.SlotItemInfo slotItem,ImageList imgSlotItem) { Text = name; SubItems.Add(new SlotItemNameLVSubItem(slotItem, imgSlotItem)); }
/// <summary> /// 艦隊の燃料と弾薬の補給状況を調べる /// </summary> /// <param name="fleetMember">艦隊メンバー</param> /// <param name="shipData">艦娘ステート一覧</param> /// <returns>どの燃料が消費されているか</returns> SupplyStatusFlags CheckFleetStatus(IEnumerable<int> fleetMember, MemberData.Ship shipData) { SupplyStatusFlags status = SupplyStatusFlags.None; foreach (var ship_id in fleetMember) { var dat = shipData.GetShip(ship_id); if (!dat.Fuel.Full) { Debug.WriteLine("Fuel not filled"); status |= SupplyStatusFlags.Fuel; } if (!dat.Bullet.Full) { Debug.WriteLine("Bullet not filled"); status |= SupplyStatusFlags.Bullet; } } return status; }
/// <summary> /// Return true on flow body can be simplify to lambda expression code. /// </summary> /// <param name="target"></param> /// <param name="returnType"></param> /// <param name="parameterTypes"></param> /// <returns></returns> public static bool CanSimplifyToLambda(MemberData target, Type returnType, IList <Type> parameterTypes) { if (target.IsTargetingNode) { var bodyNode = target.GetTargetNode(); if (bodyNode is MultipurposeNode) { var node = bodyNode as MultipurposeNode; if (node.target.target.isAssigned && !node.onFinished.isAssigned) { System.Type[] memberTypes = null; if (node.target.target.targetType == MemberData.TargetType.Method) { var members = node.target.target.GetMembers(false); if (members != null && members.Length > 0) { var lastMember = members.LastOrDefault() as System.Reflection.MethodInfo; if (lastMember != null && lastMember.ReturnType == returnType) { memberTypes = lastMember.GetParameters().Select(i => i.ParameterType).ToArray(); } } } else if (node.target.target.targetType == MemberData.TargetType.uNodeFunction) { uNodeFunction func = node.target.target.GetUnityObject() as uNodeFunction; if (func != null && func.ReturnType() == returnType) { memberTypes = func.parameters.Select(i => i.Type).ToArray(); } } if (memberTypes != null) { if (parameterTypes.Count == memberTypes.Length && node.target.parameters.Length == memberTypes.Length) { bool flag = true; for (int x = 0; x < parameterTypes.Count; x++) { if (parameterTypes[x] != memberTypes[x]) { flag = false; break; } } if (flag) { for (int x = 0; x < parameterTypes.Count; x++) { var p = node.target.parameters[x]; if (p.targetType != MemberData.TargetType.NodeFieldElement || p.GetAccessIndex() != x) { flag = false; break; } } if (flag) { return(true); } } } } } } } return(false); }
public async Task<ActionResult> ExternalLoginCallback(string returnUrl) { var loginInfo = await AuthenticationManager.GetExternalLoginInfoAsync(); if (loginInfo == null) { return RedirectToAction("Index", "login"); } //若使用者已經有登入資料,請使用此外部登入提供者登入使用者 if (loginInfo != null) { var id = new ClaimsIdentity(loginInfo.ExternalIdentity.Claims, DefaultAuthenticationTypes.ApplicationCookie); Session["Account"] = id.GetUserId(); Session["uname"] = loginInfo.DefaultUserName; //取得用戶名稱 Session["resAccount"] = loginInfo.Login.LoginProvider;//取得用戶來源 //var resourceAccount = loginInfo.Login.LoginProvider; //TODO: 驗證邏輯,註冊會員邏輯 Member m = new Member(); MemberData md = new MemberData(); if (Session["Account"] != null) { var memberData = md.Get().ToList().Where(a => a.uAccount == Session["Account"].ToString()).SingleOrDefault(); if (memberData == null) { m.uAccount = Session["Account"].ToString(); m.uName = loginInfo.DefaultUserName; m.wdate = DateTime.Now; m.udate = DateTime.Now; m.uPassWord = "******"; m.uphone = ""; m.memberID = DateTime.Now.ToString("yyyyMMdd") + (md.Get().Count + 1).ToString().PadLeft(3, '0'); m.isdel = 0; m.sort = 5000; switch (loginInfo.Login.LoginProvider) { case "Facebook": m.FacebookId = id.GetUserId(); m.GoogleId = ""; m.uemail = loginInfo.Email ?? ""; break; case "Google": m.FacebookId = ""; m.GoogleId = id.GetUserId(); m.uemail = loginInfo.Email; break; default: m.FacebookId = ""; m.GoogleId = ""; m.uemail = ""; break; } md.Create(m); TempData["Congu"] = "已成為會員"; } } //End: 加上你的驗證邏輯,或是註冊會員邏輯 AuthenticationManager.SignIn(id); return RedirectToLocal(returnUrl); } else { return RedirectToAction("Index", "login"); } // 若使用者已經有登入資料,請使用此外部登入提供者登入使用者 //var result = await SignInManager.ExternalSignInAsync(loginInfo, isPersistent: false); //switch (result) //{ // case SignInStatus.Success: // return RedirectToLocal(returnUrl); // case SignInStatus.LockedOut: // return View("Lockout"); // case SignInStatus.RequiresVerification: // return RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = false }); // case SignInStatus.Failure: // default: // // 若使用者沒有帳戶,請提示使用者建立帳戶 // ViewBag.ReturnUrl = returnUrl; // ViewBag.LoginProvider = loginInfo.Login.LoginProvider; // return View("ExternalLoginConfirmation", new ExternalLoginConfirmationViewModel { Email = loginInfo.Email }); //} }
/// <summary> /// Shows a context-sensitive menu for listing, viewing, creating, editing, or deleting members /// </summary> /// <param name="dataMode"></param> /// <param name="displayMode"></param> /// <param name="selectedID"></param> void ShowMemberMenu(DataMode dataMode, ListDisplayMode displayMode = ListDisplayMode.Compact, string selectedID = null) { Console.Clear(); string selected = selectedID; MemberData selectedData = null; if (dataMode != DataMode.Create) { if (selected == null) { selected = SelectMember($"Please select the member whose details you wish to {(dataMode == DataMode.View ? "view" : "edit")}:\n", displayMode); } selectedData = (MemberData)DataController.RetrieveByID(selected); } switch (dataMode) { case DataMode.Create: case DataMode.Edit: { Dictionary <string, object> arguments = new Dictionary <string, object>(); Console.WriteLine("Please fill out the following fields"); Console.Write("Name: "); arguments.Add("name", Console.ReadLine()); Console.Write("Personal Number: "); var pn = ReadValidInput((s) => { var res = s.Length != 10 || s.Sum(c => { return(("0123456789".Contains(c)) ? 0 : c); }) > 0; if (res) { Console.WriteLine("The personal number has to be all digits and ten digits long!"); } return(res); }); arguments.Add("personal-num", pn); if (dataMode == DataMode.Create) { DataController.CreateData(typeof(MemberData), arguments); } else { DataController.ChangeData(selected, arguments); } break; } case DataMode.View: { Console.Clear(); Console.Write( $"Member ID: {selectedData.ID}\n" + $"Time of creation: {selectedData.Timestamp}\n\n" + $"Name: {selectedData.Name}\n" + $"Personal Number: {selectedData.PersonalNumber}\n" + $"Boats: ({selectedData.Boats.Count})\n"); foreach (BoatData boat in selectedData.Boats) { Console.WriteLine($" - {boat.Length}m {boat.BoatType} (Boat ID: {boat.ID})"); } Console.WriteLine("\nPress E to edit this - Press D to delete this - Any else to return to main menu..."); var key = Console.ReadKey().Key; switch (key) { case ConsoleKey.E: ShowMemberMenu(DataMode.Edit, selectedID: selected); break; case ConsoleKey.D: ShowDeleteConfirmation(selected); break; default: return; } break; } } }
public void UpdateMaterialData(MemberData.Material dat) { materialList.Update(dat); }
public void UpdateRepairDock(MemberData.Dock dock) { dockRepair.UpdateDockList(dock.RepairDock); _timerRPC.UpdateNDock(dock); }
public void UpdateBasicInfo(MemberData.Basic basicInfo) { _timerRPC.UpdateParameters(basicInfo); }
public ActionResult register(string name, string account, string password, string tel) { Member m = new Member(); MemberData md = new MemberData(); var count = md.Get().ToList().Count; m.uName = name; m.uAccount = account; m.uPassWord = PassWordSecurity.Sha384Encode(PassWordSecurity.Sha256Encode(password)); m.uphone = tel; m.isdel = 0; m.memberID = DateTime.Now.ToString("yyyyMMdd") + (count + 1).ToString().PadLeft(3, '0'); m.wdate = DateTime.Now; m.udate = DateTime.Now; m.sort = 5000; m.GoogleId = ""; m.FacebookId = ""; m.uemail = account; md.Create(m); Session["resAccount"] = "natr"; Session["Account"] = account; return RedirectToAction("Index", "Member"); }
public MonobehaviourScriptCreator() { graphInheritFrom = MemberData.CreateFromType(typeof(MonoBehaviour)); graphInheritFilter.Types.Add(typeof(MonoBehaviour)); }
public ActionResult signin(string login_account, string login_password) { Member m = new Member(); MemberData md = new MemberData(); var memberdatacount = md.Get().ToList().Where(a => a.uAccount == login_account && a.uPassWord == PassWordSecurity.Sha384Encode(PassWordSecurity.Sha256Encode(login_password))).Count(); var memberdata = md.Get().ToList().Where(a => a.uAccount == login_account && a.uPassWord == PassWordSecurity.Sha384Encode(PassWordSecurity.Sha256Encode(login_password))).SingleOrDefault(); if (memberdatacount > 0) { TempData["isForgetPwd"] = false; Session["resAccount"] = "natr"; Session["Account"] = memberdata.uAccount; Session["uname"] = memberdata.uName; return RedirectToAction("Index", "Home"); } else { TempData["isForgetPwd"] = true; return RedirectToAction("Index", "login"); } }
public void PasteNode(Vector3 position) { if (nodeToCopy == null || nodeToCopy.Count == 0) { return; } if (uNodeEditorUtility.IsPrefab(editorData.graph.gameObject)) { throw new Exception("Editing graph prefab dirrectly is not supported."); } uNodeEditorUtility.RegisterUndo(editorData.graph, "Paste Node"); uNodeRoot UNR = editorData.graph; float progress = 0; int loopIndex = 0; if (nodeToCopy.Count > 5) { EditorUtility.DisplayProgressBar("Loading", "", progress); } Vector2 center = Vector2.zero; int centerLength = 0; Dictionary <uNodeComponent, uNodeComponent> CopyedObjectMap = new Dictionary <uNodeComponent, uNodeComponent>(EqualityComparer <uNodeComponent> .Default); foreach (uNodeComponent comp in nodeToCopy) { if (comp == null || comp is EventNode && editorData.selectedGroup != null) { continue; } Node node = comp as Node; if (!CopyedObjectMap.ContainsKey(comp)) { uNodeComponent com = Object.Instantiate(comp); com.gameObject.name = com.gameObject.name.Replace("(Clone)", ""); if (editorData.selectedGroup == null) { if (editorData.selectedRoot) { com.transform.parent = editorData.selectedRoot.transform; } else { com.transform.parent = NodeEditorUtility.GetNodeRoot(UNR).transform; } } else { com.transform.parent = editorData.selectedGroup.transform; } int index = 0; string nm = com.gameObject.name.TrimEnd(numberChar); while (true) { bool flag = false; string gName = com.gameObject.name; foreach (Transform t in com.transform.parent) { if (t != com.transform) { if (t.gameObject.name.Equals(gName)) { flag = true; break; } } } if (flag) { com.gameObject.name = nm + index.ToString(); index++; continue; } break; } CopyedObjectMap.Add(comp, com); if (comp is IMacro || comp is ISuperNode) { var fields = EditorReflectionUtility.GetFields(comp.GetType()); foreach (var field in fields) { if (field.FieldType == typeof(List <Nodes.MacroPortNode>)) { var value = field.GetValueOptimized(comp) as List <Nodes.MacroPortNode>; if (value != null) { var sourceValue = field.GetValueOptimized(com) as List <Nodes.MacroPortNode>; for (int i = 0; i < value.Count; i++) { if (value[i] == null) { continue; } CopyedObjectMap.Add(value[i], sourceValue[i]); } } } } } } if (node != null) { center.x += node.editorRect.x; center.y += node.editorRect.y; centerLength++; } else { BaseEventNode met = comp as BaseEventNode; if (met != null) { center.x += met.editorRect.x; center.y += met.editorRect.y; centerLength++; } } loopIndex++; progress = (float)loopIndex / (float)nodeToCopy.Count; if (nodeToCopy.Count > 5) { EditorUtility.DisplayProgressBar("Loading", "", progress); } } progress = 0; center /= centerLength; HashSet <uNodeComponent> needReflectedComponent = new HashSet <uNodeComponent>(); uNodeRoot compEvent = null; foreach (uNodeComponent com in nodeToCopy) { uNodeComponent comp = null; if (CopyedObjectMap.ContainsKey(com)) { comp = CopyedObjectMap[com]; if (comp == null) { loopIndex++; progress = (float)loopIndex / (float)nodeToCopy.Count; if (nodeToCopy.Count > 5) { EditorUtility.DisplayProgressBar("Loading", "", progress); } continue; } if (comp as Node) { Node node = comp as Node; Func <object, bool> validation = delegate(object o) { if (o is MemberData) { MemberData member = o as MemberData; if (member.IsTargetingPinOrNode) { NodeComponent n = member.GetInstance() as NodeComponent; if (n && n is uNodeComponent) { if (CopyedObjectMap.ContainsKey(n)) { member.instance = CopyedObjectMap[n] as NodeComponent; n.owner = UNR; return(true); } else if (n.owner != UNR || n.transform.parent != node.transform.parent) { member.instance = null; n.owner = UNR; return(true); } //return true; } } } return(false); }; if (node as StateNode) { StateNode eventNode = node as StateNode; TransitionEvent[] TE = eventNode.GetTransitions(); foreach (TransitionEvent n in TE) { var tn = n.GetTargetNode(); if (tn == null) { continue; } if (CopyedObjectMap.ContainsKey(tn)) { n.target = MemberData.CreateConnection(CopyedObjectMap[tn] as Node, true); n.owner = UNR; } else if (n.owner != UNR || tn != null && tn.owner != UNR || tn != null && tn.transform.parent != node.transform.parent) { n.target = MemberData.none; n.owner = UNR; } } } else if (node is IMacro || node is ISuperNode) { var fields = EditorReflectionUtility.GetFields(comp.GetType()); foreach (var field in fields) { if (field.FieldType == typeof(List <Nodes.MacroPortNode>)) { var value = field.GetValueOptimized(comp) as List <Nodes.MacroPortNode>; if (value != null) { foreach (var v in value) { AnalizerUtility.AnalizeObject(v, validation); } } } } } AnalizerUtility.AnalizeObject(node, validation); node.editorRect = new Rect(node.editorRect.x - center.x + position.x, node.editorRect.y - center.y + position.y, node.editorRect.width, node.editorRect.height); if (node.owner != UNR) { node.owner = UNR; } } else if (comp is BaseEventNode) { BaseEventNode method = comp as BaseEventNode; var flows = method.GetFlows(); for (int i = 0; i < flows.Count; i++) { var tn = flows[i].GetTargetNode(); if (tn != null && CopyedObjectMap.ContainsKey(tn)) { flows[i] = new MemberData(CopyedObjectMap[flows[i].GetTargetNode()], MemberData.TargetType.FlowNode); } else if (method.owner != UNR) { flows[i] = MemberData.none; } } method.owner = UNR; method.editorRect = new Rect(method.editorRect.x - center.x + position.x, method.editorRect.y - center.y + position.y, method.editorRect.width, method.editorRect.height); } } loopIndex++; progress = (float)loopIndex / (float)nodeToCopy.Count; if (nodeToCopy.Count > 5) { EditorUtility.DisplayProgressBar("Loading", "", progress); } } if (nodeToCopy.Count > 5) { EditorUtility.ClearProgressBar(); } if (needReflectedComponent.Count > 0) { NodeEditorUtility.PerformReflectComponent(needReflectedComponent.ToList(), compEvent, UNR); } foreach (KeyValuePair <uNodeComponent, uNodeComponent> keys in CopyedObjectMap) { if (keys.Value != null) { Undo.RegisterCreatedObjectUndo(keys.Value.gameObject, "Paste Node"); } } //allCopyedEvent.Clear(); Refresh(); }
public ActionResult ToMatchAccount(string account) { Dictionary<string, object> dic = new Dictionary<string, object>(); MemberData md = new MemberData(); var membercount = md.Get().ToList().Where(a => a.uAccount == account).Count(); if (membercount > 0) { dic.Add("success", false); } else { dic.Add("success", true); } return Json(dic); }
/// <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; }
public HPLVItem(MemberData.Ship.Info shipInfo) { Text = "HP"; UseItemStyleForSubItems = false; string valstr = shipInfo.HP.ToString(); if (shipInfo.RepairTime.TotalSeconds > 0) valstr += string.Format(" (入渠所要:{0})", shipInfo.RepairTimeString); SubItems.Add(valstr); SubItems[1].BackColor = shipInfo.HP.BackgroundColor; }
/// <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])); } }
public void UpdateDeckMemberList(MemberData.Ship shipData, IEnumerable<MemberData.Deck.Fleet> deckList) { deckMemberList.UpdateDeck(deckList, shipData); missionList.UpdateMissionList(deckList,shipData); _timerRPC.UpdateMission(deckList); }
public SlotItemNameLVSubItem(MemberData.Ship.Info.SlotItemInfo slotItem,ImageList imgSlotItem) { // this.imgSlotItem = imgSlotItem; imageNormal = new Bitmap(16, 16); imageSelected = new Bitmap(16, 16); if (slotItem == null) { Text = "(未装備)"; slotItemIndex = 0; } else { if(slotItem.Level > 0) Text = string.Format("[{1}]{0}", slotItem.Name ,slotItem.Level); else Text = slotItem.Name; slotItemIndex = slotItem.TypeNum; if (slotItemIndex < 0) slotItemIndex = 0; } DrawSlotItemImage(imgSlotItem, imageNormal, SystemBrushes.Window, slotItemIndex); DrawSlotItemImage(imgSlotItem, imageSelected, SystemBrushes.Highlight, slotItemIndex); }
public void UpdateBuildDock(MemberData.Dock dock) { dockBuild.UpdateDockList(dock.BuildDock); }
public removeOwnerPermissionData(MemberData myOwner, string store, string sponser) : this(store, sponser) { this.myOwner = myOwner; this.myOwnerName = myOwner.userName; }
public void UpdateShipListDeck(MemberData.Deck deckData) { if (_wndShipList != null) _wndShipList.UpdateShipListDeck(deckData); }
protected override void InitializeView() { HLNode node = targetNode as HLNode; node.Refresh(); var instance = node.instance; if (instance == null) { return; } if (instance is IStateNode || instance is IStateCoroutineNode) { AddOutputFlowPort( new PortData() { portID = nameof(node.onSuccess), onValueChanged = (o) => { RegisterUndo(); node.onSuccess = o as MemberData; }, getPortName = () => "Success", getPortType = () => typeof(FlowInput), getPortValue = () => node.onSuccess, getPortTooltip = () => "Flow to execute on success", } ); AddOutputFlowPort( new PortData() { portID = nameof(node.onFailure), onValueChanged = (o) => { RegisterUndo(); node.onFailure = o as MemberData; }, getPortName = () => "Failure", getPortType = () => typeof(FlowInput), getPortValue = () => node.onFailure, getPortTooltip = () => "Flow to execute on failure", } ); } if (node.IsFlowNode()) //Flow input { nodeFlowPort = AddInputFlowPort( new PortData() { portID = UGraphView.SelfPortID, getPortName = () => "", getConnection = () => { return(new MemberData(node, MemberData.TargetType.FlowNode)); }, } ); AddOutputFlowPort( new PortData() { portID = "onFinished", onValueChanged = (o) => { RegisterUndo(); node.onFinished = o as MemberData; }, getPortName = () => instance is IStateNode || instance is IStateCoroutineNode ? "Finished" : "", getPortType = () => typeof(FlowInput), getPortValue = () => node.onFinished, } ); } if (node.CanGetValue() || node.CanSetValue()) //Value output { nodeValuePort = AddOutputValuePort( new PortData() { portID = UGraphView.SelfPortID, getPortName = () => "Out", getPortType = () => node.ReturnType(), getPortValue = () => node, getConnection = () => { return(new MemberData(node, MemberData.TargetType.ValueNode)); }, } ); } Type type = instance.GetType(); var fields = EditorReflectionUtility.GetFields(type); foreach (var field in fields) { if (field.IsDefined(typeof(NonSerializedAttribute)) || field.IsDefined(typeof(HideAttribute))) { continue; } var option = field.GetCustomAttribute(typeof(NodePortAttribute), true) as NodePortAttribute; if (option != null && option.hideInNode) { continue; } var val = node.initializers.FirstOrDefault(d => d.name == field.Name); if (val == null) { val = new FieldValueData() { name = field.Name, value = MemberData.CreateFromValue(field.GetValue(instance), field.FieldType), }; node.initializers.Add(val); } AddInputValuePort( new PortData() { portID = field.Name, onValueChanged = (o) => { RegisterUndo(); val.value = o as MemberData; }, getPortName = () => option != null ? option.name : field.Name, getPortType = () => field.FieldType, getPortValue = () => val.value, getPortTooltip = () => { var tooltip = field.GetCustomAttribute(typeof(TooltipAttribute), true) as TooltipAttribute; return(tooltip != null ? tooltip.tooltip : string.Empty); }, }); } }
protected void CreateOverrideMembers(uNodeRoot graph) { foreach (var member in graphOverrideMembers) { if (member is MethodInfo method) { var func = CreateComponent <uNodeFunction>(method.Name, GetRootTransfrom(graph), (val) => { val.Name = method.Name; val.returnType = MemberData.CreateFromType(method.ReturnType); val.parameters = method.GetParameters().Select(p => new ParameterData(p.Name, p.ParameterType) { value = p.DefaultValue }).ToArray(); val.genericParameters = method.GetGenericArguments().Select(p => new GenericParameterData(p.Name)).ToArray(); }); CreateComponent <Nodes.NodeAction>("Entry", func, node => { func.startNode = node; }); } else if (member is PropertyInfo property) { var prop = CreateComponent <uNodeProperty>(property.Name, GetRootTransfrom(graph), (val) => { val.Name = property.Name; val.type = MemberData.CreateFromType(property.PropertyType); }); var getMethod = property.GetGetMethod(true); var setMethod = property.GetSetMethod(true); if (getMethod != null) { var func = CreateComponent <uNodeFunction>("Getter", GetRootTransfrom(graph), (val) => { val.Name = getMethod.Name; val.returnType = MemberData.CreateFromType(getMethod.ReturnType); val.parameters = getMethod.GetParameters().Select(p => new ParameterData(p.Name, p.ParameterType) { value = p.DefaultValue }).ToArray(); val.genericParameters = getMethod.GetGenericArguments().Select(p => new GenericParameterData(p.Name)).ToArray(); }); CreateComponent <Nodes.NodeAction>("Entry", func, node => { func.startNode = node; CreateComponent <NodeReturn>("Return", func, returnNode => { node.onFinished = MemberData.CreateConnection(returnNode, true); returnNode.returnValue = MemberData.CreateFromValue(null, property.PropertyType); }); }); prop.getRoot = func; } if (setMethod != null) { var func = CreateComponent <uNodeFunction>("Setter", GetRootTransfrom(graph), (val) => { val.Name = setMethod.Name; val.returnType = MemberData.CreateFromType(setMethod.ReturnType); val.parameters = setMethod.GetParameters().Select(p => new ParameterData(p.Name, p.ParameterType) { value = p.DefaultValue }).ToArray(); val.genericParameters = setMethod.GetGenericArguments().Select(p => new GenericParameterData(p.Name)).ToArray(); }); CreateComponent <Nodes.NodeAction>("Entry", func, node => { func.startNode = node; }); prop.setRoot = func; } } } }
public JsonResult SaveOrder(Models.m_YueBing model) { int orgID = int.Parse(DESEncrypt.Decrypt(ViewBag.EnOrgID)); var goods = sellBLL.GetModel(model.goodsID); if (null == goods) { throw new Exception("该商品已达上限"); } //if (goods.Balance.Value < model.Amount) //{ // return GetErrorResult("数量不足"); //} ShiMiao.Model.TD_Shop_Order_Consignee consignee = new Model.TD_Shop_Order_Consignee(); consignee.Address = model.useraddress; consignee.Name = model.username; consignee.Phone = model.userphone; var member = MemberData.GetMember(); Model.TD_Shop_Order order = new Model.TD_Shop_Order(); order.PayType = Constants.PayType.WeiXin; order.MemberID = member.MemberID; order.HeaderImage = member.HeaderImage; order.NickName = member.NickName; order.OrderType = (int)Constants.DonationType.Shop1; order.OrgID = orgID; //月饼常规价格 + 快递费 decimal ExtraPrice = 0; switch (model.ExtraPrice) { case 0: //自提 ExtraPrice = 0; break; case 1: //省内 ExtraPrice = 6; break; case 2: //省外 ExtraPrice = 8; break; default: //其他 ExtraPrice = 8; break; } order.ExtraPrice = ExtraPrice * model.Amount; order.OriPrice = goods.Price * model.Amount + order.ExtraPrice; decimal realPrice = goods.Price.Value; if (model.Amount >= 5) {//优惠价格 + 快递费 order.RealPrice = 88 * model.Amount + ExtraPrice * model.Amount; realPrice = 88; } else { order.RealPrice = order.OriPrice; } order.Status = (int)Constants.OrderStatus.WaitPay; IList <Model.TD_Shop_OrderGoods> orderGoodsList = new List <Model.TD_Shop_OrderGoods>(); Model.TD_Shop_OrderGoods orderGoods = new Model.TD_Shop_OrderGoods(); orderGoods.GoodsID = goods.GoodsID; orderGoods.Title = goods.Title; orderGoods.Amount = model.Amount; orderGoods.OrgID = orgID; orderGoods.OriPrice = goods.Price; orderGoods.RealPrice = realPrice;//goods.Price; orderGoodsList.Add(orderGoods); int result = orderBLL.Save(order, consignee, orderGoodsList); if (result > 0) { string url = string.Empty; if (order.PayType == Constants.PayType.WeiXin) { url = "/WeiXinPay/PayForShop?oid=" + ViewBag.EnOrgID + "&orderid=" + order.OrderID + "&url=" + HttpUtility.UrlEncode("/Shop/YueBing/Index?oid=" + ViewBag.EnOrgID); } return(GetSucceedResult(new { url = url }, "")); } else { return(GetErrorResult("保存失败,请稍候再试")); } }
private MemberInfoCollection CreateFields(int axisNum) { if (axisNum == 0) { m_Columns_LowestMembers.Clear(); m_Columns_Sorted_LowestMembers.Clear(); } if (axisNum == 1) { m_Rows_LowestMembers.Clear(); m_Rows_Sorted_LowestMembers.Clear(); } MemberInfoCollection fields = new MemberInfoCollection(null); DateTime start = DateTime.Now; // Формируем иерархию элементов MemberInfo if (m_CellSet_Descr != null && m_CellSet_Descr.Axes.Count > axisNum) { int position_Index = 0; // Проход по позиция оси foreach (PositionData pos in m_CellSet_Descr.Axes[axisNum].Positions) { // Глубина оси (кол-во элементов в позиции) int depth = pos.Members.Count; // Предыдущий элемент в данной позиции MemberInfo prev_member_in_position = null; // Проход по элементам в каждой позици for (int i = 0; i < depth; i++) { if (i > 0 && prev_member_in_position == null) { throw new Exception(String.Format("Ошибка построения иерархии элементов. Не найден описатель для элемента {0} в позиции {1}", i, position_Index)); } // Получаем элемент из хранилища, которое является общим для всей оси MemberData member = m_CellSet_Descr.Axes[axisNum].Members[pos.Members[i].Id]; if (member == null) { throw new Exception(String.Format("Ошибка построения иерархии элементов. На оси не найден элемент с Id: {0}", pos.Members[i].Id)); } if (DataReorganizationType == DataReorganizationTypes.MergeNeighbors) { #region Правила // Правила постоения иерархии: // 1. Получаем для данного элемента PARENT_UNIQUE_NAME. // 2. Определяем КОЛЛЕКЦИЮ, в которую должен попасть элемент: // - Если это элемент нулевой линии, то ПО УМОЛЧАНИЮ он является кандидатом // на добавление в коллекцию корневых MemberInfo // - Если это элемент не нулевой линии, то ПО УМОЛЧАНИЮ он явлется кандидатом // на добавление в коллекцию Children для MemberInfo предыдущего элемента данной позиции (prev_member_in_position) // 3. Берем последний элемент в КОЛЛЕКЦИИ. Проходим вглубь по его коллекции DrilledDownChildren и строим список из последних элементов каждой из них. // Проходим по полученному списку от самого глубокого вверх. Если находим элемент, который является родителем для текущего (UNIQUE_NAME совпадает c PARENT_UNIQUE_NAME текущего), // то КОЛЛЕКЦИЯ меняется на коллецию DrilledDownChildren родителя. // Правила объединения: // 1. Объединению подлежат только следующие друг за другом одинаковые элементы. Но только в том случае, если коллекция DrilledDownChildren у предыдущего является пустой (в противном случае произойдет перемещение ячеек и может потеряться ORDER запроса) // - В следующем запросе года не должны объединяться чтобы не потерять очередность ячеек, предусмотренную запросом // select [Measures].[Internet Sales Amount] DIMENSION PROPERTIES PARENT_UNIQUE_NAME , HIERARCHY_UNIQUE_NAME , CUSTOM_ROLLUP , UNARY_OPERATOR , KEY0 on 0, // {([Date].[Calendar].[Calendar Year].&[2001], [Product].[Product Categories].[Category].[Bikes]), // ([Date].[Calendar].[Calendar Semester].&[2001]&[2], [Product].[Product Categories].[Subcategory].[Mountain Bikes]), // ([Date].[Calendar].[Calendar Year].&[2001], [Product].[Product Categories].[Category].[Clothing])} // DIMENSION PROPERTIES PARENT_UNIQUE_NAME , HIERARCHY_UNIQUE_NAME , CUSTOM_ROLLUP , UNARY_OPERATOR , KEY0 on 1 // from [Adventure Works] // 2. Элементы последней линии (ближайшей к ячейкам) объединению не подлежат #endregion Правила #region Определение места элемента в иерархии // Уникальное имя родителя (Правила постоения иерархии - пункт 1) String parentUniqueName = GetMemberPropertyValue(member, "PARENT_UNIQUE_NAME"); // КОЛЛЕКЦИЯ (Правила постоения иерархии - пункт 2) MemberInfoCollection container = i == 0 ? fields : prev_member_in_position.Children; // Ищем родителя (Правила постоения иерархии - пункт 3) if (!String.IsNullOrEmpty(parentUniqueName)) { if (container.Count > 0) { MemberInfo last = container[container.Count - 1]; // Теперь строим коллекцию из последних в каждой коллекции DrilledDownChildren вглубь по всей ветке List <MemberInfo> dd_last_list = new List <MemberInfo>(); dd_last_list.Add(last); while (last.DrilledDownChildren.Count > 0) { dd_last_list.Add(last.DrilledDownChildren[last.DrilledDownChildren.Count - 1]); last = last.DrilledDownChildren[last.DrilledDownChildren.Count - 1]; } for (int x = dd_last_list.Count; x > 0; x--) { var info = dd_last_list[x - 1]; if (info.UniqueName == parentUniqueName) { container = info.DrilledDownChildren; break; } } } } #endregion #region Объединение элементов if (i != (depth - 1) && container.Count > 0 && container[container.Count - 1].UniqueName == member.UniqueName && container[container.Count - 1].DrilledDownChildren.Count == 0) { // Объединение элементов prev_member_in_position = container[container.Count - 1]; } else { // Создание нового элемента prev_member_in_position = CreateMemberInfo(member); container.Add(prev_member_in_position); } // Если элементы одной линии повторяются друг за другом, то свойство DrilledDown у них верное только у последнего if (prev_member_in_position != null && !prev_member_in_position.IsCalculated) { prev_member_in_position.DrilledDown = prev_member_in_position.DrilledDown | pos.Members[i].DrilledDown; } #endregion } if (DataReorganizationType == DataReorganizationTypes.None) { #region Правила // В данном режиме никакой реорганизации и объединения не производится #endregion #region Определение места элемента в иерархии // КОЛЛЕКЦИЯ MemberInfoCollection container = i == 0 ? fields : prev_member_in_position.Children; #endregion #region Объединение элементов // Создание нового элемента prev_member_in_position = CreateMemberInfo(member); container.Add(prev_member_in_position); #endregion } if (DataReorganizationType == DataReorganizationTypes.LinkToParent) { #region Правила // В данном режиме элементы выстраиваются в иерархию используя уникальное имя родителя. При этом в иерархию // выстраивается вся ось. // Например было: // 2002 a // Q1 b // H1 c // 2002 d // H2 e // Перегруппируется в: // 2002 a // 2002 d // H1 c // Q1 b // H2 e // 1. Собираем нервы в кулак. // 2. Определяем КОЛЛЕКЦИЮ, в которую должен попасть элемент: // - Если это элемент нулевой линии, то ПО УМОЛЧАНИЮ он является кандидатом // на добавление в коллекцию корневых MemberInfo // - Если это элемент не нулевой линии, то ПО УМОЛЧАНИЮ он явлется кандидатом // на добавление в коллекцию Children для MemberInfo предыдущего элемента данной позиции (prev_member_in_position) // 3. КОЛЛЕКЦИЮ выстраиваем в плоский список рекурсивно с учетом ТОЛЬКО DrilledDownChildren. // Создаем ТЕКУЩИЙ ОПИСАТЕЛЬ (MemberInfo) для данного элемнта // Проходим с конца списка в начало: // a) Если находим элемент, который является дочерним для ТЕКУЩЕГО ОПИСАТЕЛЯ, то удаляем его из коллекции, в которой он находился и вставлем его в 0 позицию в коллекцию DriDrilledDownChildren ТЕКУЩЕГО ОПИСАТЕЛЯ // CONTINUE // b) Если находим элемент с таким же уник. именем, то: // - если это последняя линия, то они объединению не подлежат. Коллекция DriDrilledDownChildren у двойника зануляется и ТЕКУЩИЙ ОПИСАТЕЛЬ добавляется следом за ним. // - если это не последняя линия то объекты объединяются, т.е. двойнику переходит коллекция DriDrilledDownChildren текущего описателя и он будет считаться далее как ТЕКУЩИЙ ОПИСАТЕЛЬ // CТОП ЦИКЛА // c) Если находим элемент, который является родителем для данного, то добавляем ТЕКУЩИЙ ОПИСАТЕЛЬ в коллекцию DrilledDownChildren родителя. // СТОП ЦИКЛА // d) Если ни 3b) ни 3c) не отработало, то ТЕКУЩИЙ ОПИСАТЕЛЬ добавляется в КОЛЛЕКЦИЮ с учетом номера уровня. Чтобы не получилось что перед ним есть элементы с большим по глубине номером уровня. // НО если элемент вычисляемый, то уровень не учитываем, а добавляем его в конец КОЛЛЕКЦИИ. // #endregion #region Определение места элемента в иерархии // Выполняем пункт 1 :) // КОЛЛЕКЦИЯ (Правила постоения иерархии - пункт 2) MemberInfoCollection container = i == 0 ? fields : prev_member_in_position.Children; // Выстраиваем в плоский список рекурсивно с учетом ТОЛЬКО DrilledDownChildren List <MemberInfo> line = new List <MemberInfo>(); foreach (var item in container) { line.Add(item); line.AddRange(item.CollectDrilledDownChildren()); } // Создание нового элемента prev_member_in_position = CreateMemberInfo(member); // Последний из обследуемых элементов КОЛЛЕКЦИИ, чья глубина больше чем у данного MemberInfo reverse_last_leveldepth_member = null; bool isOk = false; for (int indx = line.Count - 1; indx >= 0; indx--) { var mi = line[indx]; if (mi.Container == container && mi.LevelDepth > member.LevelDepth) { reverse_last_leveldepth_member = mi; } // 3a if (mi.ParentUniqueName == member.UniqueName) { // Нашли дочерний, цепляем его и тащим за собой mi.Container.Remove(mi); prev_member_in_position.DrilledDownChildren.Insert(0, mi); continue; } // 3b if (mi.UniqueName == member.UniqueName) { // Найден дубликат if (i != (depth - 1)) { // Не последняя линия mi.DrilledDownChildren.Clear(); foreach (var x in prev_member_in_position.DrilledDownChildren) { mi.DrilledDownChildren.Add(x); } prev_member_in_position = mi; } else { // Последняя линия mi.DrilledDownChildren.Clear(); mi.IsDublicate = true; // ДОБАВЛЕНИЕ В ИЕРАРХИЮ mi.Container.Insert(mi.Container.IndexOf(mi) + 1, prev_member_in_position); } isOk = true; break; } // 3c if (mi.UniqueName == prev_member_in_position.ParentUniqueName) { // Нашли родителя, цепляемся к нему // ДОБАВЛЕНИЕ В ИЕРАРХИЮ mi.DrilledDownChildren.Add(prev_member_in_position); isOk = true; break; } } // 3d // Более глубокий элемент уровня не найден, значит добавляем хвост КОЛЛЕКЦИИ if (!isOk) { // Если Key0 == null то элемент вычисляемый if (member.IsCalculated) { // ДОБАВЛЕНИЕ В ИЕРАРХИЮ container.Add(prev_member_in_position); } else { if (reverse_last_leveldepth_member != null && container.Contains(reverse_last_leveldepth_member)) { // ДОБАВЛЕНИЕ В ИЕРАРХИЮ container.Insert(container.IndexOf(reverse_last_leveldepth_member), prev_member_in_position); } else { // ДОБАВЛЕНИЕ В ИЕРАРХИЮ container.Add(prev_member_in_position); } } } #endregion } if (i == (depth - 1)) { if (prev_member_in_position == null) { throw new Exception("Ошибка. Не создан элемент последней линии."); } if (axisNum == 0) { m_Columns_LowestMembers.Add(position_Index, prev_member_in_position); m_Columns_Sorted_LowestMembers.Add(position_Index, prev_member_in_position); } if (axisNum == 1) { m_Rows_LowestMembers.Add(position_Index, prev_member_in_position); m_Rows_Sorted_LowestMembers.Add(position_Index, prev_member_in_position); } prev_member_in_position.MemberIndexInAxis = prev_member_in_position.Sorted_MemberIndexInAxis = position_Index; } } position_Index++; } if (DataReorganizationType == DataReorganizationTypes.LinkToParent) { // Операции по вставке объектов поперепутали MemberOrder для элементов. Исправляем это. // И заодно устанавливаем флаг DrilledDown в true только если у элемента не пустая коллекция DrilledDownChildren foreach (var x in fields) { x.RefreshMemberOrder(); x.CrackDrilledDown(); } } } DateTime stop = DateTime.Now; return(fields); }
public Admin(MemberData member) : base(member) { }
public void SelectConnectedNode(Component from, bool allConnection = false, Action <NodeComponent> callbackAction = null) { if (from == null) { return; } if (from is BaseEventNode) { BaseEventNode method = from as BaseEventNode; var flows = method.GetFlows(); foreach (var n in flows) { if (n == null || n.GetTargetNode() == null) { continue; } if (!editorData.selectedNodes.Contains(n.GetTargetNode())) { editorData.selectedNodes.Add(n.GetTargetNode()); editorData.selected = editorData.selectedNodes; if (allConnection) { SelectConnectedNode(n.GetTargetNode(), allConnection, callbackAction); } SelectionChanged(); if (callbackAction != null) { callbackAction(n.GetTargetNode()); } } } } else if (from is Node) { Node node = from as Node; if (node as StateNode) { StateNode eventNode = node as StateNode; TransitionEvent[] TE = eventNode.GetTransitions(); foreach (TransitionEvent T in TE) { if (T.GetTargetNode() != null) { if (!editorData.selectedNodes.Contains(T.GetTargetNode())) { editorData.selectedNodes.Add(T.GetTargetNode()); editorData.selected = editorData.selectedNodes; if (allConnection) { SelectConnectedNode(T.GetTargetNode(), allConnection, callbackAction); } SelectionChanged(); if (callbackAction != null) { callbackAction(T.GetTargetNode()); } } } } } Func <object, bool> validation = delegate(object o) { if (o is MemberData) { MemberData member = o as MemberData; if (member.targetType == MemberData.TargetType.FlowNode || member.targetType == MemberData.TargetType.ValueNode) { Node n = member.GetInstance() as Node; if (member.isAssigned && member.GetInstance() is Node) { if (!editorData.selectedNodes.Contains(n)) { editorData.selectedNodes.Add(n); editorData.selected = editorData.selectedNodes; if (allConnection) { SelectConnectedNode(n, allConnection, callbackAction); } SelectionChanged(); if (callbackAction != null) { callbackAction(n); } } //return true; } } } return(false); }; AnalizerUtility.AnalizeObject(node, validation); } }
public PlanData(MemberPlanData memberMemberPlanData = null, MemberPlanData associateMemberPlanData = null, MemberPlanData preliminaryMemberPlanData = null, MemberPlanData supporterMemberPlanData = null, MeetingProgramPlanData workerMeetingProgramPlanData = null, MeetingProgramPlanData dawahMeetingProgramPlanData = null, MeetingProgramPlanData stateLeaderMeetingProgramPlanData = null, MeetingProgramPlanData stateOutingMeetingProgramPlanData = null, MeetingProgramPlanData iftarMeetingProgramPlanData = null, MeetingProgramPlanData learningMeetingProgramPlanData = null, MeetingProgramPlanData socialDawahMeetingProgramPlanData = null, MeetingProgramPlanData dawahGroupMeetingProgramPlanData = null, MeetingProgramPlanData nextGMeetingProgramPlanData = null, MeetingProgramPlanData cmsMeetingProgramPlanData = null, MeetingProgramPlanData smMeetingProgramPlanData = null, MeetingProgramPlanData memberMeetingProgramPlanData = null, MeetingProgramPlanData tafsirMeetingProgramPlanData = null, MeetingProgramPlanData unitMeetingProgramPlanData = null, MeetingProgramPlanData familyVisitMeetingProgramPlanData = null, MeetingProgramPlanData eidReunionMeetingProgramPlanData = null, MeetingProgramPlanData bbqMeetingProgramPlanData = null, MeetingProgramPlanData gatheringMeetingProgramPlanData = null, MeetingProgramPlanData otherMeetingProgramPlanData = null, FinancePlanData baitulMalFinancePlanData = null, FinancePlanData aDayMasjidProjectFinancePlanData = null, FinancePlanData masjidTableBankFinancePlanData = null, SocialWelfarePlanData qardeHasanaSocialWelfarePlanData = null, SocialWelfarePlanData patientVisitSocialWelfarePlanData = null, SocialWelfarePlanData socialVisitSocialWelfarePlanData = null, SocialWelfarePlanData transportSocialWelfarePlanData = null, SocialWelfarePlanData shiftingSocialWelfarePlanData = null, SocialWelfarePlanData shoppingSocialWelfarePlanData = null, SocialWelfarePlanData foodDistributionSocialWelfarePlanData = null, SocialWelfarePlanData cleanUpAustraliaSocialWelfarePlanData = null, SocialWelfarePlanData otherSocialWelfarePlanData = null, MaterialPlanData bookSaleMaterialPlanData = null, MaterialPlanData bookDistributionMaterialPlanData = null, LibraryStockPlanData bookLibraryStockPlanData = null, MaterialPlanData otherSaleMaterialPlanData = null, MaterialPlanData otherDistributionMaterialPlanData = null, LibraryStockPlanData otherLibraryStockPlanData = null, MaterialPlanData vhsSaleMaterialPlanData = null, MaterialPlanData vhsDistributionMaterialPlanData = null, LibraryStockPlanData vhsLibraryStockPlanData = null, MaterialPlanData emailDistributionMaterialPlanData = null, MaterialPlanData ipdcLeafletDistributionMaterialPlanData = null, TeachingLearningProgramPlanData groupStudyTeachingLearningProgramPlanData = null, TeachingLearningProgramPlanData studyCircleTeachingLearningProgramPlanData = null, TeachingLearningProgramPlanData practiceDarsTeachingLearningProgramPlanData = null, TeachingLearningProgramPlanData stateLearningCampTeachingLearningProgramPlanData = null, TeachingLearningProgramPlanData quranStudyTeachingLearningProgramPlanData = null, TeachingLearningProgramPlanData quranClassTeachingLearningProgramPlanData = null, TeachingLearningProgramPlanData memorizingAyatTeachingLearningProgramPlanData = null, TeachingLearningProgramPlanData stateLearningSessionTeachingLearningProgramPlanData = null, TeachingLearningProgramPlanData stateQiyamulLailTeachingLearningProgramPlanData = null, TeachingLearningProgramPlanData studyCircleForAssociateMemberTeachingLearningProgramPlanData = null, TeachingLearningProgramPlanData hadithTeachingLearningProgramPlanData = null, TeachingLearningProgramPlanData weekendIslamicSchoolTeachingLearningProgramPlanData = null, TeachingLearningProgramPlanData memorizingHadithTeachingLearningProgramPlanData = null, TeachingLearningProgramPlanData memorizingDoaTeachingLearningProgramPlanData = null, TeachingLearningProgramPlanData otherTeachingLearningProgramPlanData = null) { AssociateMemberPlanData = associateMemberPlanData ?? MemberData.Default(); PreliminaryMemberPlanData = preliminaryMemberPlanData ?? MemberData.Default(); SupporterMemberPlanData = supporterMemberPlanData ?? MemberData.Default(); WorkerMeetingProgramPlanData = workerMeetingProgramPlanData ?? MeetingProgramData.Default(); DawahMeetingProgramPlanData = dawahMeetingProgramPlanData ?? MeetingProgramData.Default(); StateLeaderMeetingProgramPlanData = stateLeaderMeetingProgramPlanData ?? MeetingProgramData.Default(); StateOutingMeetingProgramPlanData = stateOutingMeetingProgramPlanData ?? MeetingProgramData.Default(); IftarMeetingProgramPlanData = iftarMeetingProgramPlanData ?? MeetingProgramData.Default(); LearningMeetingProgramPlanData = learningMeetingProgramPlanData ?? MeetingProgramData.Default(); SocialDawahMeetingProgramPlanData = socialDawahMeetingProgramPlanData ?? MeetingProgramData.Default(); DawahGroupMeetingProgramPlanData = dawahGroupMeetingProgramPlanData ?? MeetingProgramData.Default(); NextGMeetingProgramPlanData = nextGMeetingProgramPlanData ?? MeetingProgramData.Default(); CmsMeetingProgramPlanData = cmsMeetingProgramPlanData ?? MeetingProgramData.Default(); SmMeetingProgramPlanData = smMeetingProgramPlanData ?? MeetingProgramData.Default(); MemberMeetingProgramPlanData = memberMeetingProgramPlanData ?? MeetingProgramData.Default(); TafsirMeetingProgramPlanData = tafsirMeetingProgramPlanData ?? MeetingProgramData.Default(); UnitMeetingProgramPlanData = unitMeetingProgramPlanData ?? MeetingProgramData.Default(); FamilyVisitMeetingProgramPlanData = familyVisitMeetingProgramPlanData ?? MeetingProgramData.Default(); EidReunionMeetingProgramPlanData = eidReunionMeetingProgramPlanData ?? MeetingProgramData.Default(); BbqMeetingProgramPlanData = bbqMeetingProgramPlanData ?? MeetingProgramData.Default(); GatheringMeetingProgramPlanData = gatheringMeetingProgramPlanData ?? MeetingProgramData.Default(); OtherMeetingProgramPlanData = otherMeetingProgramPlanData ?? MeetingProgramData.Default(); MemberMemberPlanData = memberMemberPlanData ?? MemberData.Default(); BaitulMalFinancePlanData = baitulMalFinancePlanData ?? FinanceData.Default(); ADayMasjidProjectFinancePlanData = aDayMasjidProjectFinancePlanData ?? FinanceData.Default(); MasjidTableBankFinancePlanData = masjidTableBankFinancePlanData ?? FinanceData.Default(); QardeHasanaSocialWelfarePlanData = qardeHasanaSocialWelfarePlanData ?? SocialWelfareData.Default(); PatientVisitSocialWelfarePlanData = patientVisitSocialWelfarePlanData ?? SocialWelfareData.Default(); SocialVisitSocialWelfarePlanData = socialVisitSocialWelfarePlanData ?? SocialWelfareData.Default(); TransportSocialWelfarePlanData = transportSocialWelfarePlanData ?? SocialWelfareData.Default(); ShiftingSocialWelfarePlanData = shiftingSocialWelfarePlanData ?? SocialWelfareData.Default(); ShoppingSocialWelfarePlanData = shoppingSocialWelfarePlanData ?? SocialWelfareData.Default(); FoodDistributionSocialWelfarePlanData = foodDistributionSocialWelfarePlanData ?? SocialWelfareData.Default(); CleanUpAustraliaSocialWelfarePlanData = cleanUpAustraliaSocialWelfarePlanData ?? SocialWelfareData.Default(); OtherSocialWelfarePlanData = otherSocialWelfarePlanData ?? SocialWelfareData.Default(); BookSaleMaterialPlanData = bookSaleMaterialPlanData ?? MaterialData.Default(); BookDistributionMaterialPlanData = bookDistributionMaterialPlanData ?? MaterialData.Default(); BookLibraryStockPlanData = bookLibraryStockPlanData ?? LibraryStockData.Default(); OtherSaleMaterialPlanData = otherSaleMaterialPlanData ?? MaterialData.Default(); OtherDistributionMaterialPlanData = otherDistributionMaterialPlanData ?? MaterialData.Default(); OtherLibraryStockPlanData = otherLibraryStockPlanData ?? LibraryStockData.Default(); VhsSaleMaterialPlanData = vhsSaleMaterialPlanData ?? MaterialData.Default(); VhsDistributionMaterialPlanData = vhsDistributionMaterialPlanData ?? MaterialData.Default(); VhsLibraryStockPlanData = vhsLibraryStockPlanData ?? LibraryStockData.Default(); EmailDistributionMaterialPlanData = emailDistributionMaterialPlanData ?? MaterialData.Default(); IpdcLeafletDistributionMaterialPlanData = ipdcLeafletDistributionMaterialPlanData ?? MaterialData.Default(); GroupStudyTeachingLearningProgramPlanData = groupStudyTeachingLearningProgramPlanData ?? TeachingLearningProgramData.Default(); StudyCircleTeachingLearningProgramPlanData = studyCircleTeachingLearningProgramPlanData ?? TeachingLearningProgramData.Default(); PracticeDarsTeachingLearningProgramPlanData = practiceDarsTeachingLearningProgramPlanData ?? TeachingLearningProgramData.Default(); StateLearningCampTeachingLearningProgramPlanData = stateLearningCampTeachingLearningProgramPlanData ?? TeachingLearningProgramData.Default(); QuranStudyTeachingLearningProgramPlanData = quranStudyTeachingLearningProgramPlanData ?? TeachingLearningProgramData.Default(); QuranClassTeachingLearningProgramPlanData = quranClassTeachingLearningProgramPlanData ?? TeachingLearningProgramData.Default(); MemorizingAyatTeachingLearningProgramPlanData = memorizingAyatTeachingLearningProgramPlanData ?? TeachingLearningProgramData.Default(); StateLearningSessionTeachingLearningProgramPlanData = stateLearningSessionTeachingLearningProgramPlanData ?? TeachingLearningProgramData.Default(); StateQiyamulLailTeachingLearningProgramPlanData = stateQiyamulLailTeachingLearningProgramPlanData ?? TeachingLearningProgramData.Default(); StudyCircleForAssociateMemberTeachingLearningProgramPlanData = studyCircleForAssociateMemberTeachingLearningProgramPlanData ?? TeachingLearningProgramData.Default(); HadithTeachingLearningProgramPlanData = hadithTeachingLearningProgramPlanData ?? TeachingLearningProgramData.Default(); WeekendIslamicSchoolTeachingLearningProgramPlanData = weekendIslamicSchoolTeachingLearningProgramPlanData ?? TeachingLearningProgramData.Default(); MemorizingHadithTeachingLearningProgramPlanData = memorizingHadithTeachingLearningProgramPlanData ?? TeachingLearningProgramData.Default(); MemorizingDoaTeachingLearningProgramPlanData = memorizingDoaTeachingLearningProgramPlanData ?? TeachingLearningProgramData.Default(); OtherTeachingLearningProgramPlanData = otherTeachingLearningProgramPlanData ?? TeachingLearningProgramData.Default(); }
/// <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); }
private MemberInfoCollection CreateFields(int axisNum) { if (axisNum == 0) { m_Columns_LowestMembers.Clear(); } if (axisNum == 1) { m_Rows_LowestMembers.Clear(); } MemberInfoCollection fields = new MemberInfoCollection(null); Dictionary <int, List <MemberInfo> > tmp = new Dictionary <int, List <MemberInfo> >(); if (m_CellSet_Descr != null && m_CellSet_Descr.Axes.Count > axisNum) { int position_Index = 0; foreach (PositionData pos in m_CellSet_Descr.Axes[axisNum].Positions) { MemberInfoCollection container = fields; int depth = pos.Members.Count; for (int i = 0; i < pos.Members.Count; i++) { List <MemberInfo> line = null; if (tmp.ContainsKey(i)) { line = tmp[i]; } else { line = new List <MemberInfo>(); tmp.Add(i, line); } MemberData member = m_CellSet_Descr.Axes[axisNum].Members[pos.Members[i].Id]; // Если PARENT_UNIQUE_NAME запрашивалось то берем его, иначе будем спрашивать у куба String parentUniqueName = GetMemberPropertyValue(member, "PARENT_UNIQUE_NAME"); // Если родитель является DrilledDown, то данный элемент должен попасть в коллекцию DrilledDownChildren MemberInfo parentInfo = null; try { if (!String.IsNullOrEmpty(parentUniqueName)) { int posIndex = ReversePos(line, parentUniqueName); if (posIndex > -1) { parentInfo = line[posIndex]; } if (parentInfo != null && parentInfo.DrilledDown) { // Если линия не нулевая. То объект должен попать в коллекцию DrilledDown только в том случае если и владелец данной коллекции и сам элемент, который мы проверяем пересекаются с одним и тем же элементом // Ситуацию можно увидеть в запросе /*select [Measures].[Internet Sales Amount] on 0, * {([Date].[Calendar].[Calendar Year].&[2001], [Product].[Product Categories].[Category].[Bikes]), * ([Date].[Calendar].[Calendar Semester].&[2001]&[2], [Product].[Product Categories].[Subcategory].[Mountain Bikes]), * ([Date].[Calendar].[Calendar Year].&[2001], [Product].[Product Categories].[Category].[Clothing])} * on 1 * from [Adventure Works]*/ if (i == 0 || (i > 0 && tmp[i - 1][posIndex] != null && tmp[i - 1][position_Index] != null && tmp[i - 1][posIndex] == tmp[i - 1][position_Index])) { container = parentInfo.DrilledDownChildren; } } } else { // Если это нулевой элемент на линии, то он однозначно должен находиться в коллекции Children // Иначе он может попасть в коллекцию DrilledDown если у предыдущего элемента установлен флаг DrilledDown if (position_Index > 0) { MemberInfo prevInLine = line[line.Count - 1]; if (prevInLine != null && prevInLine.UniqueName != member.UniqueName && prevInLine.DrilledDown) { // Для вычисляемых элементов свойство DrilledDown работает неправильно. И в этом случае считаем что для того чтобы элемент попал в коллекцию DrilledDown у него должна быть и глубина уровня больше чем у предыдущего if (prevInLine.LevelDepth < member.LevelDepth) { // Если линия не нулевая. То объект должен попать в коллекцию DrilledDown только в том случае если и владелец данной коллекции и сам элемент, который мы проверяем пересекаются с одним и тем же элементом // Ситуацию можно увидеть в запросе /*select [Measures].[Internet Sales Amount] on 0, * {([Date].[Calendar].[Calendar Year].&[2001], [Product].[Product Categories].[Category].[Bikes]), * ([Date].[Calendar].[Calendar Semester].&[2001]&[2], [Product].[Product Categories].[Subcategory].[Mountain Bikes]), * ([Date].[Calendar].[Calendar Year].&[2001], [Product].[Product Categories].[Category].[Clothing])} * on 1 * from [Adventure Works]*/ if (i == 0 || (i > 0 && tmp[i - 1][line.Count - 1] != null && tmp[i - 1][position_Index] != null && tmp[i - 1][line.Count - 1] == tmp[i - 1][position_Index])) { container = prevInLine.DrilledDownChildren; } } else { // Пытаемся исправить то, что для вычисляемых элементов свойство DrilledDown работает неправильно. prevInLine.DrilledDown = false; } } } } } catch (System.NotSupportedException) { } // Если элемент существует, то он должен быть последним // Если он окажется не последним, то это значит что эти элементы объединению не подлежат и нужно создавать новый элемент MemberInfo field = null; if (line.Count > 0) { field = line[line.Count - 1]; } // Элементы последней линии объединению не подлежат if (field == null || field.UniqueName != member.UniqueName || i == (depth - 1) || (field.Parent != null && container.m_Owner != null && field.Parent != container.m_Owner)) { field = CreateMemberInfo(member); line.Add(field); // Важно чтобы добавление в контейнер было после добавления в линию, т.к. в Add идет установка Parent container.Add(field); if (i == (depth - 1)) { if (axisNum == 0) { m_Columns_LowestMembers.Add(field); } if (axisNum == 1) { m_Rows_LowestMembers.Add(field); } } } else { line.Add(field); } if (field != null && !field.IsCalculated) { field.DrilledDown = field.DrilledDown | pos.Members[i].DrilledDown; } container = field.Children; } position_Index++; } } return(fields); }
public void InsertList(List <InsureCarData> listItem) { try { MemberData member = (MemberData)DataCommon.Get("DATA.MEMBER"); int row = 1; SqlCommand cmd; string query = ""; StringBuilder sql; foreach (InsureCarData item in listItem) { DBbase.Connect(); sql = new StringBuilder(); sql.Append(@"INSERT INTO MA_INSURE_CAR (INSURE_CAR_CODE, COMPANY_CODE, PACKAGE_NAME, CAR_ID, INSURE_CATEGORY,INSURE_TYPE_REPAIR,CAR_YEAR,LIVE_COVERAGE_PEOPLE, LIVE_COVERAGE_TIME,ASSET_TIME,DAMAGE_TO_VEHICLE,MISSING_FIRE_CAR,FIRST_DAMAGE_PRICE,PERSONAL_ACCIDENT_AMT,PERSONAL_ACCIDENT_PEOPLE,MEDICAL_FEE_AMT, MEDICAL_FEE_PEOPLE,DRIVER_INSURANCE_AMT,NET_PRICE,TOTAL_PRICE,PRICE_ROUND,CAPITAL_INSURANCE,INSURE_PRIORITY,EFFECTIVE_DATE,EXPIRE_DATE,CONFIDENTIAL_STATUS, INSURE_CAR_STATUS,CREATE_DATE,CREATE_USER,UPDATE_DATE,UPDATE_USER) VALUES "); string INSURE_CAR_CODE = DateTime.Now.ToString("yyyyMMdd") + "-" + item.COMPANY_CODE.ToUpper() + "-" + item.PACKAGE_NAME; INSURE_CAR_CODE += "-" + item.CAR_ID + "-" + item.INSURE_CATEGORY; INSURE_CAR_CODE += (item.INSURE_TYPE_REPAIR == "ศูนย์") ? "C" : "G" + "-" + item.CAR_YEAR; sql.Append("( N'" + INSURE_CAR_CODE + "',"); sql.Append(" N'" + item.COMPANY_CODE.ToUpper() + "',"); sql.Append(" N'" + item.PACKAGE_NAME + "',"); sql.Append(" '" + item.CAR_ID + "',"); sql.Append(" N'" + item.INSURE_CATEGORY + "',"); sql.Append(" N'" + item.INSURE_TYPE_REPAIR + "',"); sql.Append(" N'" + item.CAR_YEAR + "',"); sql.Append(" '" + item.LIVE_COVERAGE_PEOPLE + "',"); sql.Append(" '" + item.LIVE_COVERAGE_TIME + "',"); sql.Append(" '" + item.ASSET_TIME + "',"); sql.Append(" '" + item.DAMAGE_TO_VEHICLE + "',"); sql.Append(" '" + item.MISSING_FIRE_CAR + "',"); sql.Append(" '" + item.FIRST_DAMAGE_PRICE + "',"); sql.Append(" '" + item.PERSONAL_ACCIDENT_AMT + "',"); sql.Append(" '" + item.PERSONAL_ACCIDENT_PEOPLE + "',"); sql.Append(" '" + item.MEDICAL_FEE_AMT + "',"); sql.Append(" '" + item.MEDICAL_FEE_PEOPLE + "',"); sql.Append(" '" + item.DRIVER_INSURANCE_AMT + "',"); sql.Append(" '" + item.NET_PRICE + "',"); sql.Append(" '" + item.TOTAL_PRICE + "',"); sql.Append(" '" + item.PRICE_ROUND + "',"); sql.Append(" '" + item.CAPITAL_INSURANCE + "',"); sql.Append(" '" + item.INSURE_PRIORITY + "',"); sql.Append(" '" + ConvertCommon.ConvertDateTime(item.EFFECTIVE_DATE) + "',"); sql.Append(" '" + ConvertCommon.ConvertDateTime(item.EXPIRE_DATE) + "',"); sql.Append(" '" + item.CONFIDENTIAL_STATUS + "',"); sql.Append(" '" + item.INSURE_CAR_STATUS + "',"); sql.Append(" '" + ConvertCommon.ConvertDateTime(DateTime.Now) + "',"); sql.Append(" '" + member.MEMBER_USER + "',"); sql.Append(" '" + ConvertCommon.ConvertDateTime(DateTime.Now) + "',"); sql.Append(" '" + member.MEMBER_USER + "') "); row++; try { query = sql.ToString(); cmd = new SqlCommand(query.Remove(query.Length - 1), DBbase.con); cmd.ExecuteNonQuery(); } catch (SqlException exception) { if (exception.Number == 1062) // Cannot insert duplicate key row in object error { } else { throw exception; // throw exception if this exception is unexpected } } DBbase.DisConnect(); } } catch (Exception ex) { throw ex; } }
public EndpointException(string message, MemberData method) : base($"An error occurred while creating the endpoint {method.Path}: {message}") { }