Esempio n. 1
0
        private async void UpdateManagersTree()
        {
            btnUpdate.Enabled = false;
            treeView1.Nodes.Clear();
            cbbDepartments.Items.Clear();
            var r = new Dictionary <string, object>();

            r["if-self"] = false;
            var p = await CrmInvestor.GetAllRelations(r);

            if (p.IsOk)
            {
                var dl       = JArray.Parse(p.AsString).ToList();
                var treeList = new List <Tuple <string, string> >();
                foreach (var d in dl)
                {
                    var uName      = d["uName"].ToStdString();
                    var pName      = d["pName"].ToStdString();
                    var department = d["department"].ToStdString();
                    treeList.Add(Tuple.Create(uName, pName));
                    m_Managers[uName] = department == "" ? "无" : department;
                }
                CrmCommons.GetTreeView(treeView1, treeList, "", (int)CrmCommons.ExtraItem.AddSelf);
                GetAllNodes();
                SetCbbDepartments();
                SetDepartment();
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
            btnUpdate.Enabled = true;
        }
Esempio n. 2
0
        private async void UpdateTable()
        {
            var r = new Dictionary <string, object>();

            r["if-self"] = false;
            var p = await CrmInvestor.GetAllRelations(r);

            if (p.IsOk)
            {
                var dl       = JArray.Parse(p.AsString).ToList();
                var treeList = new List <Tuple <string, string> >();
                foreach (var d in dl)
                {
                    treeList.Add(Tuple.Create(d["uName"].ToStdString(), d["pName"].ToStdString()));
                }
                CrmCommons.GetTreeView(treeView1, treeList, "", m_extraItems);
                var f = treeView1.Nodes.Find(CrmCommons.TextFromValue(SelManager), true);
                if (f.Length != 0)
                {
                    treeView1.SelectedNode = f[0];
                }
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
        }
        private async void SaveData()
        {
            var remark = tbRemark.Text.Trim().LeftStr(2000);
            var action = cbbFollowRecord.GetSelectedValue();

            if (action == "")
            {
                if (remark == "")
                {
                    Commons.ShowInfoBox(this, "备注不能为空");
                    return;
                }
            }

            var d = new Dictionary <string, object>();

            d["remark"] = remark;
            d["action"] = action == "" ? "-1" : action;

            var p = await CrmInvestor.SaveRemark(m_ciId, d);

            if (p.IsOk)
            {
                if (p.AsInt > 0)
                {
                    UpdateTable();
                    tbRemark.Clear();
                }
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
        }
Esempio n. 4
0
        private async void UpdateTable1()
        {
            treeView1.Nodes.Clear();
            listView1.Items.Clear();
            setButton(false);
            btnUpdateInfo.Enabled = false;
            var r = new Dictionary <string, object>();

            r["if-self"] = false;
            var p = await CrmInvestor.GetAllRelations(r);

            if (p.IsOk)
            {
                var dl       = JArray.Parse(p.AsString).ToList();
                var treeList = new List <Tuple <string, string> >();
                foreach (var d in dl)
                {
                    treeList.Add(Tuple.Create(d["uName"].ToStdString(), d["pName"].ToStdString()));
                    m_viewData[d["uName"].ToStdString()] = Tuple.Create(d["department"].ToStdString(), d["position"].ToStdString(),
                                                                        d["enabled"].ToBoolean() ? "已启用" : "未启用", d["rCode"].ToStdString());
                }
                CrmCommons.GetTreeView(treeView1, treeList, "", (int)CrmCommons.ExtraItem.NoExtra);
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
            btnUpdateInfo.Enabled = true;
        }
Esempio n. 5
0
        private async void AssUpper()
        {
            var uname    = treeView1.SelectedNode.Text;
            var newUName = Commons.ShowInputDialog(this, string.Format("为客户经理 {0} 指定新的上级:", uname), "指定上级", 300).Trim();

            if (newUName == "")
            {
                return;
            }
            var d = new Dictionary <string, object>();

            d["p-name"] = newUName;
            d["u-name"] = uname;

            var p = await CrmInvestor.MoveManager(d);

            if (p.IsOk)
            {
                UpdateTable1();
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
        }
Esempio n. 6
0
        private async void UpdateTable()
        {
            var p = await CrmInvestor.Account(m_ciId);

            if (p.IsOk)
            {
                var d = p.AsDictionary;
                tbRealName.Text = d.GetOrDefault <string>("realName");
                tbMobile.Text   = d.GetOrDefault <string>("mobile");
                tbCompany.Text  = d.GetOrDefault <string>("company");
                tbPosition.Text = d.GetOrDefault <string>("position");
                tbCity.Text     = d.GetOrDefault <string>("city");
                if (m_ciId == 0)
                {
                    nudAge.Value = nudAge.Minimum;
                }
                else
                {
                    nudAge.SetValue(DateTime.Now.Year - Commons.FromTimestamp(d.GetOrDefault <long>("birth")).Year);
                }
                cbbGender.SetSelectedValue(d.GetOrDefault <string>("gender"));
                tbSourceType.Text = d.GetOrDefault <string>("originType");
                cbbPrLevel.SetSelectedValue(d.GetOrDefault <string>("prLevel"));
                tbRemark.Text = d.GetOrDefault <string>("remark");
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
        }
Esempio n. 7
0
        private void btnBatchCommit_Click(object sender, EventArgs e)
        {
            if (listView1.CheckedItems.Count == 0)
            {
                return;
            }
            var ids = new List <long>();

            for (int i = 0; i < listView1.CheckedItems.Count; ++i)
            {
                ids.Add(Convert.ToInt64(listView1.CheckedItems[i].Text));
            }
            var dlg = new BatchProcessDlg(ids);

            dlg.StartPosition = FormStartPosition.CenterParent;
            var d = new Dictionary <string, object>();

            d["remark"] = "批量操作";
            d["action"] = Commons.NormalNumberStr(((Button)listView1.Tag).Name);

            dlg.RunSingle += (id) => CrmInvestor.SaveRemark(id, d).Result;
            dlg.ShowDialog();
            Updatetable1();
            ((Button)listView1.Tag).PerformClick();
        }
Esempio n. 8
0
        private async void ChangeMobile()
        {
            var phone = Commons.ShowInputDialog(this, "请输入新手机号:", "修改手机号", 300,
                                                new Regex("^((11)|(12)|(13)|(14)|(15)|(16)|(17)|(18)|(19))\\d{9}$")).Trim();

            if (phone == "")
            {
                return;
            }

            var d = new Dictionary <string, object>();

            d["ci-id"]  = m_ciId;
            d["mobile"] = phone;

            var p = await CrmInvestor.ChangeMobile(d);

            if (p.IsOk)
            {
                UpdateTable();
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
        }
Esempio n. 9
0
        private async void Delete(IList <long> idArray)
        {
            btnDelete.Enabled = false;
            var ss = idArray.JoinSome();

            if (Commons.ShowConfirmBox(this, "删除以下投资客户:" + ss + " 此操作不可恢复!确认吗?"))
            {
                foreach (var id in idArray)
                {
                    var p = await CrmInvestor.DelAccount(id);

                    if (p.IsOk)
                    {
                        myGridViewBinding1.BindTo(p, Commons.BindFlag.Delete, "ciId");
                    }
                    else
                    {
                        Commons.ShowResultErrorBox(this, p);
                    }
                }

                Commons.ShowInfoBox(this, "投资客户:" + ss + " 已被删除。");
            }
            btnDelete.Enabled = true;
        }
Esempio n. 10
0
        private void btnAssignManager_Click(object sender, EventArgs e)
        {
            if (treeView1.SelectedNode == null || string.IsNullOrWhiteSpace(treeView1.SelectedNode.Text))
            {
                Commons.ShowInfoBox(this, "请选择一位新的客户经理");
                return;
            }

            var newMgr = treeView1.SelectedNode.Text;

            var dlg = new BatchProcessDlg(m_ids);

            dlg.StartPosition = FormStartPosition.CenterParent;
            dlg.RunSingle    += (id) => {
                if (m_type)
                {
                    var d = new Dictionary <string, object>();
                    d["au-id"]  = id;
                    d["u-name"] = newMgr;
                    return(CrmInvestor.BindMgrWithRegUser(d).Result);
                }
                else
                {
                    var d = new Dictionary <string, object>();
                    d["ci-id"]  = id;
                    d["u-name"] = newMgr;
                    return(CrmInvestor.BindMgr(d).Result);
                }
            };
            dlg.ShowDialog(this);

            DialogResult = DialogResult.OK;
        }
        private async void UpdateTable()
        {
            var p = await CrmInvestor.Remarks(m_ciId);

            if (p.IsOk)
            {
                myGridViewBinding1.BindTo(p);
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
        }
        private async void GetAuID()
        {
            var p = await CrmInvestor.GetAuIdOfAccount(m_ciId);

            if (p.IsOk)
            {
                m_auId = p.AsLong;
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
        }
Esempio n. 13
0
        private async void UpdateTable()
        {
            btnSearch.Enabled = false;
            var department = cbbDepartment.ComboBox.Text;

            if (department == "全部")
            {
                department = "*";
            }
            else if (department == "无")
            {
                department = "";
            }

            if (m_selUName == CrmCommons.ALL_VALUE && department == "*")
            {
                if (string.IsNullOrWhiteSpace(tbKey.Text))
                {
                    Commons.ShowInfoBox(this, "请输入关键字!");
                    btnSearch.Enabled = true;
                    return;
                }
            }

            var status = cbbJxStatus.ComboBox.GetSelectedValue();

            var d = new Dictionary <string, object>();

            d["u-name"]      = m_selUName;
            d["department"]  = department;
            d["start-date1"] = startDate.Value.TruncToStart();
            d["end-date1"]   = endDate.Value.TruncToEnd();
            d["search-key"]  = tbKey.Text.Trim();
            if (status != Commons.AllValue)
            {
                d["jx-status"] = status;
            }

            var p = await CrmInvestor.RegUsers(d);

            if (p.IsOk)
            {
                myGridViewBinding1.BindTo(p);
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
            btnSearch.Enabled = true;
        }
Esempio n. 14
0
        private async void UpdateTable1()
        {
            if (m_selUName == CrmCommons.ALL_VALUE && string.IsNullOrWhiteSpace(tbKey.Text))
            {
                Commons.ShowInfoBox(this, "请输入关键字");
                return;
            }
            btnSearch.Enabled = false;
            var prLevel = cbbPrLevels.ComboBox.GetSelectedValue();
            var age     = cbbAge.ComboBox.GetSelectedValue();
            var gender  = cbbGenders.ComboBox.GetSelectedValue();
            var status  = cbbAccStatus.ComboBox.GetSelectedValue();

            var p = new Dictionary <string, object>();

            p["u-name"]       = m_selUName;
            p["assign-time1"] = startDate.Value.TruncToStart();
            p["assign-time2"] = endDate.Value.TruncToEnd();
            p["search-key"]   = tbKey.Text.Trim();
            p["origin-type"]  = cbbCustomerSource.Text.Trim();
            if (prLevel != Commons.AllValue)
            {
                p["pr-level"] = prLevel;
            }
            if (age != Commons.AllValue)
            {
                p["age"] = age;
            }
            if (gender != Commons.AllValue)
            {
                p["gender"] = gender;
            }
            if (status != Commons.AllValue)
            {
                p["status"] = status;
            }

            var r = await CrmInvestor.MyInvestors(p);

            if (r.IsOk)
            {
                this.myGridViewBinding1.BindTo(r);
            }
            else
            {
                Commons.ShowResultErrorBox(this, r);
            }
            btnSearch.Enabled = true;
        }
Esempio n. 15
0
        private async void UpdateTable1()
        {
            btnSearch.Enabled = false;
            var r = await CrmInvestor.GetInvestors2To1();

            if (r.IsOk)
            {
                this.myGridViewBinding1.BindTo(r);
            }
            else
            {
                Commons.ShowResultErrorBox(this, r);
            }
            btnSearch.Enabled = true;
        }
Esempio n. 16
0
        private async void UpdateTable()
        {
            var p = await CrmInvestor.GetManager(m_mgr);

            if (p.IsOk)
            {
                var d = p.AsDictionary;
                cbbDepartmentType.Text = d.GetOrDefault <string>("department");
                cbbPositionType.Text   = d.GetOrDefault <string>("position");
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
        }
        private async void AssignManager()
        {
            if (treeView1.SelectedNode == null || string.IsNullOrWhiteSpace(treeView1.SelectedNode.Text))
            {
                Commons.ShowInfoBox(this, "请选择一位新的客户经理");
                return;
            }
            btnAssignManager.Enabled = false;
            var newMgr = treeView1.SelectedNode.Text;

            if (newMgr == CrmCommons.SELF_TEXT)
            {
                newMgr = CrmCommons.SELF_VALUE;
            }

            var d = new Dictionary <string, object>();

            Rpc.IResult p;
            if (m_type)
            {
                d["au-id"]  = m_id;
                d["u-name"] = newMgr;
                p           = await CrmInvestor.BindMgrWithRegUser(d);
            }
            else
            {
                d["ci-id"]  = m_id;
                d["u-name"] = newMgr;
                p           = await CrmInvestor.BindMgr(d);
            }

            if (p.IsOk)
            {
                if (p.AsInt == 0)
                {
                    Commons.ShowInfoBox(this, "绑定客户经理失败!");
                }
                else
                {
                    DialogResult = DialogResult.OK;
                }
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
            btnAssignManager.Enabled = true;
        }
Esempio n. 18
0
        private async void Details(object sender, bool showBatch = false)
        {
            SetBtnsEnabled(false);
            listView1.Items.Clear();
            listView1.Tag = sender;
            if (showBatch)
            {
                btnBatchCommit.Visible = true;
                ckbAll.Visible         = true;
            }
            else
            {
                btnBatchCommit.Visible = false;
                ckbAll.Visible         = false;
            }

            ckbAll.Checked = false;

            var r = new Dictionary <string, object>();

            r["action"] = Commons.NormalNumberStr(((Button)sender).Name);
            r["u-name"] = m_uName;

            var p = await CrmInvestor.GetInvestorByStatus(r);

            if (p.IsOk)
            {
                var dl = JArray.Parse(p.AsString).ToList();
                foreach (var d in dl)
                {
                    ListViewItem lvi = new ListViewItem();
                    lvi.Text = d["ciId"].ToStdString();
                    lvi.SubItems.Add(d["loginName"].ToStdString());
                    lvi.SubItems.Add(d["realName"].ToStdString());
                    lvi.SubItems.Add(d["mobile"].ToStdString());
                    lvi.SubItems.Add(CrmCommons.PrLevels.FindByValue(d["prLevel"].ToStdString()));

                    listView1.Items.Add(lvi);
                }
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
            SetBtnsEnabled(true);
        }
Esempio n. 19
0
        private async void Del()
        {
            var delMgr = treeView1.SelectedNode.Text;

            if (Commons.ShowConfirmBox(this, string.Format("确认删除{0}吗?此操作无法被撤销。", delMgr)))
            {
                var p = await CrmInvestor.DeleteManager(delMgr);

                if (p.IsOk)
                {
                    UpdateTable1();
                }
                else
                {
                    Commons.ShowResultErrorBox(this, p);
                }
            }
        }
Esempio n. 20
0
        private async void CancelAssign()
        {
            btnCancelAssign.Enabled = false;
            if (Commons.ShowConfirmBox(this, "确定取消该客户经理?"))
            {
                var p = await CrmInvestor.UnBindMgr(m_ciId);

                if (p.IsOk)
                {
                    DialogResult = DialogResult.OK;
                }
                else
                {
                    Commons.ShowResultErrorBox(this, p);
                }
            }
            btnCancelAssign.Enabled = true;
        }
Esempio n. 21
0
        private async void UpdateTable1()
        {
            btnSearch.Enabled = false;
            var p = new Dictionary <string, object>();

            p["datepoint"] = startDate.Value.TruncToStart();

            var r = await CrmInvestor.GetNewRegs(p);

            if (r.IsOk)
            {
                this.myGridViewBinding1.BindTo(r);
            }
            else
            {
                Commons.ShowResultErrorBox(this, r);
            }
            btnSearch.Enabled = true;
        }
Esempio n. 22
0
        private async void UpdateTable1()
        {
            if (m_selUName == CrmCommons.ALL_VALUE && string.IsNullOrWhiteSpace(tbKey.Text))
            {
                Commons.ShowInfoBox(this, "请输入关键字");
                return;
            }
            btnSearch.Enabled = false;
            var dateType = cbDateTypes.ComboBox.GetSelectedValue();
            var prLevel  = cbPrLevels.ComboBox.GetSelectedValue();

            var p = new Dictionary <string, object>();

            p["u-name"] = m_selUName;
            if (dateType == "1")
            {
                p["start-date1"] = startDate.Value.TruncToStart();
                p["end-date1"]   = endDate.Value.TruncToEnd();
            }
            else
            {
                p["start-date2"] = startDate.Value.TruncToStart();
                p["end-date2"]   = endDate.Value.TruncToEnd();
            }
            if (prLevel != Commons.AllValue)
            {
                p["pr-levels"] = prLevel;
            }
            p["search-key"] = tbKey.Text.Trim();

            var r = await CrmInvestor.GetAccounts(p);

            if (r.IsOk)
            {
                this.myGridViewBinding1.BindTo(r);
            }
            else
            {
                Commons.ShowResultErrorBox(this, r);
            }
            btnSearch.Enabled = true;
        }
Esempio n. 23
0
        private async void SaveData()
        {
            var d = new Dictionary <string, object>();

            d["u-name"]   = tbManager.Text;
            d["position"] = cbbPositionType.Text;
            d["p-name"]   = tbPName.Text;
            d["r-code"]   = tbRCode.Text;

            var p = await CrmInvestor.CreateManager(d);

            if (p.IsOk)
            {
                DialogResult = DialogResult.OK;
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
        }
Esempio n. 24
0
        private async void SaveData()
        {
            var d = new Dictionary <string, object>();

            d["u-name"]     = m_mgr;
            d["position"]   = cbbPositionType.Text;
            d["department"] = cbbDepartmentType.Text;
            d["recursive"]  = ckbSubDepartment.Checked;

            var p = await CrmInvestor.UpdateManager(d);

            if (p.IsOk)
            {
                DialogResult = DialogResult.OK;
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
        }
Esempio n. 25
0
        private async void SaveData()
        {
            var d = new Dictionary <string, object>();

            d["real-name"]  = tbUserName.Text.Trim();
            d["mobile"]     = tbMobile.Text.Trim();
            d["u-name"]     = tbUName.Text.Trim();
            d["department"] = cbbDepartment.Text;

            var p = await CrmInvestor.CreateAssignOfRegUser(d);

            if (p.IsOk)
            {
                DialogResult = DialogResult.OK;
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
        }
Esempio n. 26
0
        private async void UpdateTable()
        {
            Rpc.IResult p;
            if (m_type)
            {
                p = await CrmInvestor.GetHistoryMgrsOfRegUser(m_id);
            }
            else
            {
                p = await CrmInvestor.GetHistoryMgrs(m_id);
            }

            if (p.IsOk)
            {
                myGridViewBinding1.BindTo(p);
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
        }
Esempio n. 27
0
        private async void UpdateTable()
        {
            var r = new Dictionary <string, object>();

            r["if-self"] = true;
            var p = await CrmInvestor.GetAllRelations(r);

            if (p.IsOk)
            {
                var dl       = JArray.Parse(p.AsString).ToList();
                var treeList = new List <Tuple <string, string> >();
                foreach (var d in dl)
                {
                    treeList.Add(Tuple.Create(d["uName"].ToStdString(), d["pName"].ToStdString()));
                }
                CrmCommons.GetTreeView(treeView1, treeList, "", (int)CrmCommons.ExtraItem.NoExtra);
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
        }
        private async void GetAccount()
        {
            var p = await CrmInvestor.Account(m_ciId);

            if (p.IsOk)
            {
                var d = p.AsDictionary;
                tbName.Text             = d.GetOrDefault <string>("realName");
                btnAdd.Enabled          = !m_readOnly;
                cbbFollowRecord.Enabled = !m_readOnly;
                if (m_auId > 0)
                {
                    btnAccount.Enabled           = true;
                    btnInvestsDepository.Enabled = true;
                    btnInvestsPlatform.Enabled   = true;
                    btnRunnings.Enabled          = true;
                }
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
        }
Esempio n. 29
0
        private async void Updatetable1()
        {
            var r = new Dictionary <string, object>();

            r["u-name"] = m_uName;
            var p = await CrmInvestor.GetNumInStatus(r);

            if (p.IsOk)
            {
                var dl = p.AsDictionary;
                foreach (var btn in panel2.Controls)
                {
                    if (btn is Button)
                    {
                        ((Button)btn).Text = string.Format(Convert.ToString(((Button)btn).Tag), dl.GetOrDefault <string>(Commons.NormalNumberStr(((Button)btn).Name)));
                    }
                }
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
        }
Esempio n. 30
0
        private async void EditRcode()
        {
            string newRcode = "";

            if (Commons.ShowConfirmBox(this, "确认修改编号嘛?", "编号"))
            {
                newRcode = Commons.ShowInputDialog(this, "请输入新编号(只能输入大写字母和数字):", "修改编号", 300, new Regex("^[A-Z\\d]{0,11}$"));
            }
            if (newRcode == "")
            {
                return;
            }

            var d = new Dictionary <string, object>();

            d["u-name"] = treeView1.SelectedNode.Text;
            d["r-code"] = newRcode;

            var p = await CrmInvestor.EditRCode(d);

            if (p.IsOk)
            {
                if (Convert.ToBoolean(p.AsString))
                {
                    UpdateTable1();
                    Commons.ShowInfoBox(this, "修改成功");
                }
                else
                {
                    Commons.ShowInfoBox(this, "修改失败");
                }
            }
            else
            {
                Commons.ShowResultErrorBox(this, p);
            }
        }