old_flsystem/FLSystem/Forms/member_inviter_control.cs

175 lines
8.1 KiB
C#

using Api.Framework;
using Api.Framework.Model;
using Api.Framework.Tools;
using DevExpress.XtraEditors;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using UI.Framework.Forms;
namespace FLSystem.Forms
{
public partial class member_inviter_control : BaseForm
{
private int id = 0;
public member_inviter_control(int id)
{
InitializeComponent();
this.id = id;
}
List<fl_member_group> groups = null;
private void member_inviter_control_Load(object sender, EventArgs e)
{
try
{
if (id != 0)
{
var session = ApiClient.GetSession();
var member = session.FindMemberInfoById(id);
if (member == null) return;
this.pageControl1.Bind(delegate (int page, int pagesize)
{
try
{
session = ApiClient.GetSession();
this.groups = session.FindGroups();
var map = session.NewParamMap();
map.setPageParamters(page, pagesize);
string where = string.Empty;
where = " where inviter_id = @inviter_id";
map.setParameter("inviter_id", member.id);
if (!string.IsNullOrEmpty(this.textEdit1.Text))
{
switch (this.comboBoxEdit1.Text)
{
case "客户账号":
{
where += " and username = @username ";
map.setParameter("username", this.textEdit1.Text);
break;
}
case "客户昵称":
{
where += " and usernick like @usernick or remark like @remark";
map.setParameter("usernick", "%" + this.textEdit1.Text + "%");
map.setParameter("remark", "%" + this.textEdit1.Text + "%");
break;
}
case "客户编号":
{
where += " and id = @id ";
map.setParameter("id", this.textEdit1.Text);
break;
}
case "支付宝账号":
{
where += " and alipay_num = @alipay_num";
map.setParameter("alipay_num", this.textEdit1.Text);
break;
}
case "支付宝姓名":
{
where += " and alipay_name = @alipay_name";
map.setParameter("alipay_name", this.textEdit1.Text);
break;
}
case "上级编号":
{
where += " and inviter_id = @inviter_id";
map.setParameter("inviter_id", this.textEdit1.Text);
break;
}
case "上级账号":
{
var friend = session.FindSingle<fl_member_info>("select * from fl_member_info where username = @username", new { username = this.textEdit1.Text });
where += " and inviter_id = @inviter_id";
map.setParameter(" inviter_id", friend != null ? friend.id : 0);
break;
}
case "上级昵称":
{
var friend = session.FindSingle<fl_member_info>("usernick like @usernick", new { usernick = "%" + this.textEdit1.Text + "%" });
where += " and inviter_id = @inviter_id";
map.setParameter("inviter_id", friend != null ? friend.id : 0);
break;
}
}
}
switch (this.comboBoxEdit2.Text)
{
case "最近新增":
{
map.setOrderFields("crt_time", true);
break;
}
case "最早聊天":
{
map.setOrderFields("upd_time", true);
break;
}
case "最近聊天":
{
map.setOrderFields("upd_time", false);
break;
}
case "消费最多":
{
map.setOrderFields("buy_point", true);
break;
}
}
var rest = session.FindPage<fl_member_info>($"select * from fl_member_info {where} ", map);
return new UI.Framework.Controls.PageControl.SerchResult() { Result = rest.DataList, Total = rest.Total };
}
catch (Exception ex)
{
XtraMessageBox.Show(ex.Message, "搜索标题", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
return new UI.Framework.Controls.PageControl.SerchResult() { Result = null, Total = 0 };
}, this.gridControl1, 50, true, true);
}
}
catch (Exception ex)
{
ShowError(ex);
}
}
private void simpleButton1_Click(object sender, EventArgs e)
{
this.pageControl1.GotoPage(1);
}
private void gridView1_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e)
{
if (e.Column.Caption == "邀请人编号" && e.Value.ToString() == "0") e.DisplayText = "无";
}
private void gridView1_CustomUnboundColumnData(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDataEventArgs e)
{
if (e.Column.Caption == "分组等级")
{
var row = e.Row as fl_member_info;
if (row != null)
{
var group = groups.FirstOrDefault(f => f.id == row.group_id);
e.Value = group == null ? "未分组" : group.name;
}
}
}
private void comboBoxEdit1_SelectedIndexChanged(object sender, EventArgs e)
{
this.textEdit1.Enabled = comboBoxEdit1.SelectedIndex != 0;
if (!textEdit1.Enabled) textEdit1.Text = string.Empty;
}
}
}