1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using CY.BLL;
using CY.Model;
using CY.Infrastructure.Query;
using CY.Infrastructure.Common;
using CY.BLL.Sys;
using CY.BLL.OA;
using System.Data;
 
namespace CY.WebForm.Pages.procurement
{
    public partial class GoodsInfoList : BasePage
    {
        OA_GoodsInfoBLL _OA_GoodsInfoBLL = null;
        OA_GoodsInfo goodsInfo = null;
        OA_CommodityBLL _OA_CommodityBLL = null;
        Sys_DictionaryBLL _Sys_DictionaryBLL = null;
 
        public GoodsInfoList()
        {
            goodsInfo = new OA_GoodsInfo();
            _OA_GoodsInfoBLL = new OA_GoodsInfoBLL();
            _OA_CommodityBLL = new OA_CommodityBLL();
            _Sys_DictionaryBLL = new Sys_DictionaryBLL();
        }
 
        protected void Page_Load(object sender, EventArgs e)
        {
            UCPager1.AspNetPager.PageChanged += AspNetPager1_PageChanged;
            if (!IsPostBack)
            {
                DataTable ds = _OA_CommodityBLL.SelectModelPage(CurrentUser.MemberId, "", "true");
                GetDataByLevel(dwCommity, ds, 0, 0);
                dwCommity.Items.Insert(0, new ListItem("请选择", ""));
                this.selGoodsStatus.DataSource = _Sys_DictionaryBLL.GetDataByType("货品状态");
                this.selGoodsStatus.DataBind();
                selGoodsStatus.Items.Insert(0, new ListItem("请选择", ""));
 
                if (Request["Keyid"].ToInt32() > 0) //如果keyid>0 则删除对应对象
                {
                    goodsInfo = _OA_GoodsInfoBLL.SelectSingleModel(Request["Keyid"].ToString2());
                    if (_OA_GoodsInfoBLL.DeleteModel(goodsInfo))
                    {
                        JavaScript.MessageBox("删除成功", this);
                        Response.Redirect("/Pages/procurement/GoodsInfoList.aspx");
                    }
                    else
                    {
                        JavaScript.MessageBox("删除失败", this);
                        BindList();
                    }
                }
                else
                {
                    BindList();
                }
            }
        }
 
        private void BindList()
        {
            Pagination pa = new Pagination();
            pa.PageSize = this.UCPager1.AspNetPager.PageSize;
            pa.PageIndex = this.UCPager1.AspNetPager.CurrentPageIndex;
            this.ReGoodList.DataSource = _OA_GoodsInfoBLL.SelectModelPage(pa, CurrentUser.MemberId, this.txtGoodName.Value, this.dwCommity.SelectedValue, this.selGoodsStatus.Value);
            this.ReGoodList.DataBind();
            UCPager1.AspNetPager.RecordCount = pa.RecordCount;
        }
 
        protected void AspNetPager1_PageChanged(object src, EventArgs e)
        {
            BindList();
        }
 
        protected void btn_Register_Click1(object sender, EventArgs e)
        {
            BindList();
        }
 
        #region 上级父类数据初始化
        public static void GetDataByLevel(System.Web.UI.WebControls.DropDownList dwCommity, DataTable data, int parentId, int level)
        {
            DataRow[] result = data.Select(string.Format("ParentId={0}", parentId));
            int i = -1;
            while (++i < result.Length)
            {
                dwCommity.Items.Add(new ListItem(GetSplitChar(level) + result[i]["CommodityName"].ToString2(), result[i]["Keyid"].ToString2()));
                GetDataByLevel(dwCommity, data, result[i]["Keyid"].ToInt32().Value, level + 1);
 
            }
        }
        public static string GetSplitChar(int level)
        {
            string splitchar = "";
            int i = -1;
            while (++i < level)
            {
                splitchar += ".";
            }
            return splitchar;
        }
 
        #endregion
    }
}