yangle
2023-03-03 c2a9a460e38c7c196fe98a94e29e6330eac3626f
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
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
 
namespace OAM
{
    public partial class frmWorkBillList : Form
    {
        public frmWorkBillList()
        {
            InitializeComponent();
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            DBUtility.Gy_UserSelect oUser = new DBUtility.Gy_UserSelect();
            oUser.bSingle = true;
            oUser.ShowDialog();
            if (oUser.IsOk == 1)
            {
                txtEmp2.Text = oUser.sReturn;
            }
            else
            {
                txtEmp2.Text = "";
            }
        }
 
        private void timer1_Tick(object sender, EventArgs e)
        {
            timer1.Enabled = false;
            LoadData();
        }
 
        private void LoadData()
        {
            SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
            DataSet Ds;
            string sSQL;
            string sWhere = "";
            if (txtEmp.Text != "")
            {
                sWhere = " and roperator like '%" + txtEmp.Text + "%'";
            }
            if (txtEmp2.Text != "")
            {
                sWhere = sWhere + " and operator like '%" + txtEmp2.Text + "%'";
            }
            if (OpGG1.Checked == true)
            {
                sSQL = "select a.ID,a.Operator 发送人,a.rOperator 接收人,a.Context 主题,a.Description 内容,a.opdate 时间" +
                        ",case when isnull(a.isend,0)=0 then case when a.isread=0 then '未阅' else case when a.isBack=0 then '已阅' else '已回复' end  end else '结案' end 状态" +
                        ",a.hasten 催促次数 from(select distinct a.*,b.operator as boperator " +
                        "from(Select a.isend,a.isback,a.hasten,a.id,operator,context,Description,b.opdate,roperator,isread " +
                        "from (select * from oa_workbillmain  where ispublic<>0)as a left join (select mainid,max(opdate)as opdate from oa_workbillsub group by mainid)as b " +
                        "on a.id=b.mainid)as a left join oa_workbillsub  b on a.roperator=b.operator and a.id=b.mainid)as a " +
                        "where opdate between '" + DBUtility.ClsPub.isDate(dtpBDate.Value).ToShortDateString() + "' and '" + DBUtility.ClsPub.isDate(dtpEDate.Value).ToShortDateString() + " 23:59:59' " + sWhere + " order by opdate desc";
            }
            else
            {
                sSQL = "select  a.ID,a.Operator 发送人,a.rOperator 接收人,a.Context 主题,a.Description 内容,a.opdate 时间 " +
                    ",case when isnull(a.isend,0)=0 then case when a.isread=0 then '未阅' else case when a.isBack=0 then '已阅' else '已回复' end  end else '结案' end 状态,a.hasten 催促次数 " +
                    "from(select distinct a.roperator,id,operator,description,opdate,ispublic,a.isread,a.isend,context,isback,hasten from oa_workbillmain a,oa_workbillsub2 b where" +
                    " a.id=b.mainid and (''='" + txtHUser.Text + "' or a.operator='" + txtHUser.Text + "' or b.roperator='" + txtHUser.Text + "'))as a where opdate between '" + DBUtility.ClsPub.isDate(dtpBDate.Value).ToShortDateString() + "' and '" + DBUtility.ClsPub.isDate(dtpEDate.Value).ToShortDateString() + " 23:59:59'  " + sWhere + " order by opdate desc";
            }
            Ds = oCn.RunProcReturn(sSQL, "oa_workbillmain", ref DBUtility.ClsPub.sExeReturnInfo);
            if (Ds == null)
            {
                MessageBox.Show("显示失败!原因:" + DBUtility.ClsPub.sExeReturnInfo);
                return;
            }
            grdMain.DataSource = Ds.Tables[0].DefaultView;
            DBUtility.Xt_BaseBillFun.DisplayGrid(grdMain, this.Name, "", 0);
        }
 
        private void frmWorkBillList_Load(object sender, EventArgs e)
        {
            DBUtility.Xt_BaseBillFun.initGridList(grdMain, this.Name);
            txtHUser.Text = DBUtility.ClsPub.CurUserName;
            txtHUser.Enabled = false;
            button1.Enabled = false;
            dtpBDate.Value = DateTime.Now.AddDays(-30);
            dtpEDate.Value = DateTime.Now;
        }
 
        private void grdMain_DoubleClick(object sender, EventArgs e)
        {
            frmWorkBillView oWork = new frmWorkBillView();
            Int64 lngBillKey = 0;
            if (grdMain.CurrentRow == null)
                return;
            lngBillKey = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("id")].Value);
            if (lngBillKey == 0)
                return;
            oWork.ID = lngBillKey;
            oWork.Show();
            oWork.Display();
        }
        private Int32 Fun_GetCol(string sCol)
        {
            return DBUtility.Xt_BaseBillFun.Fun_GetCol(sCol, grdMain);
        }
 
        private void OpGG1_CheckedChanged(object sender, EventArgs e)
        {
            timer1.Enabled = true;
        }
 
        private void OpGG2_CheckedChanged(object sender, EventArgs e)
        {
            timer1.Enabled = true;
        }
 
        private void dtpBDate_ValueChanged(object sender, EventArgs e)
        {
            timer1.Enabled = true;
        }
 
        private void dtpEDate_ValueChanged(object sender, EventArgs e)
        {
            timer1.Enabled = true;
        }
 
        private void txtEmp_TextChanged(object sender, EventArgs e)
        {
            timer1.Enabled = true;
        }
 
        private void txtEmp2_TextChanged(object sender, EventArgs e)
        {
            timer1.Enabled = true;
        }
 
        private void tc_Click(object sender, EventArgs e)
        {
            this.Close();
        }
 
        private void bclk_Click(object sender, EventArgs e)
        {
            DBUtility.Xt_BaseBillFun.SaveGrid(grdMain, this.Name);
        }
 
        private void mrlk_Click(object sender, EventArgs e)
        {
            DBUtility.Xt_BaseBillFun.DefaultGridView(grdMain, this.Name);
        }
    }
}