CeramicProject/newyt/Report_File/ExternalRanking.aspx.cs

398 lines
16 KiB
C#
Raw Normal View History

2024-05-18 15:28:29 +08:00
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Ajax;
using System.Data;
using System.IO;
using System.Data.OleDb;
using System.Collections;
using System.Text;
public partial class ExternalRanking : System.Web.UI.Page
{
//创建一个操作记录模版
Maticsoft.Model.nr_sys_rizhi rizhi = new Maticsoft.Model.nr_sys_rizhi();
//创建一个操作记录bll
Maticsoft.BLL.nr_sys_rizhi rizhibll = new Maticsoft.BLL.nr_sys_rizhi();
int jsid = 0;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if (Session["user"] == null)
{
Response.Redirect("../index.aspx");
}
}
Utility.RegisterTypeForAjax(typeof(ExternalRanking));
Maticsoft.Model.nr_z_yhzh user = (Maticsoft.Model.nr_z_yhzh)(Session["user"]);
hiddenid.Value = user.juese.ToString();
Hiddenname.Value = user.zhanghao;
jsid = user.juese;
pdquanxian(jsid);
}
#region
[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.ReadWrite)]
public string page_change(int pg, int pageitem, string paixu, string tiaojian)
{
Maticsoft.Model.nr_z_yhzh zhanghao = (Maticsoft.Model.nr_z_yhzh)Session["user"];
string htmlcode = "";
string isexits = string.Format("select count(*) from nr_lt_paixu where userid='{0}' and tblname='{1}'", zhanghao.id, "view_Report_External");
int exitscount = DBHlper.getcount(isexits);
if (exitscount > 0)
{
string paixuselct = string.Format("select * from nr_lt_paixu where userid='{0}' and tblname='{1}' and isxianshi={2} order by shuixu ", zhanghao.id, "view_Report_External", 1);
DataTable dtselect = DBHlper.Execute(paixuselct).Tables[0];
string wherecode = string.Format("select top {0} ", pageitem);
foreach (DataRow dtr in dtselect.Rows)
{
wherecode += dtr["lieming"] + ",";
}
wherecode += "id";
if (DBHlper.getqx(zhanghao.juese, "外协数据统计", "view_Report_External", "查看全部"))
{
wherecode += string.Format(" from view_Report_External where " + tiaojian + " id not in(select top ({0}*{1}) id from view_Report_External)" + paixu, pg, pageitem);
}
else if (DBHlper.getqx(zhanghao.juese, "外协数据统计", "view_Report_External", "查看个人"))
{
wherecode += string.Format(" from view_Report_External where zdr='" + zhanghao.zhanghao + "' and " + tiaojian + " id not in(select top ({0}*{1}) id from view_Report_External)" + paixu, pg, pageitem);
}
DataTable dt_paixu = DBHlper.Execute(wherecode).Tables[0];
if (dt_paixu.Rows.Count == 0)
{
return "<tr><td>&nbsp&nbsp 没有数据</td></tr>";
}
for (int i = 0; i < dt_paixu.Rows.Count; i++)
{
htmlcode += "<tr tag='" + dt_paixu.Rows[i]["id"] + "' >";
htmlcode += " <td style='width:20px'><input type='checkbox' class='xz'/></td>";
for (int j = 0; j < dt_paixu.Columns.Count - 1; j++)
{
if (dt_paixu.Columns[j].ColumnName == "wangzhi")
{
htmlcode += "<td><a href='http://" + dt_paixu.Rows[i][j] + "'>" + dt_paixu.Rows[i][j] + "</a></td>";
}
else
{
htmlcode += "<td><span>" + dt_paixu.Rows[i][j] + "</span></td>";
}
}
htmlcode += "</tr>";
}
return htmlcode;
}
else
{
string lieselect = string.Format("select * from nr_sys_lieming where tblname='{0}' ORDER BY xh", "view_Report_External");
DataTable liedt = DBHlper.Execute(lieselect).Tables[0];
int lieshuixu = 0;
foreach (DataRow liedr in liedt.Rows)
{
lieshuixu++;
string cmdinsert = string.Format("insert into nr_lt_paixu values('{0}','{1}','{2}','{3}',{4},{5})", zhanghao.id, "view_Report_External", liedr["ywlieming"], liedr["zwlieming"], lieshuixu, 1);
DBHlper.excutecmd(cmdinsert);
}
return "";
}
}
#endregion
#region 便
[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.ReadWrite)]
public int maxpage(int count, string tj)
{
int fanhuizhi = 0;
string cmd = string.Format("select count(*) from view_Report_External " + tj);
Maticsoft.Model.nr_z_yhzh yhzh = (Maticsoft.Model.nr_z_yhzh)Session["user"];
if (!DBHlper.getqx(yhzh.juese, "外协数据统计", "view_Report_External", "查看全部"))
{
if (tj == "")
{
cmd += " where zdr='" + yhzh.zhanghao + "'";
}
else
{
cmd += " and zdr='" + yhzh.zhanghao + "'";
}
}
int sumcount = DBHlper.getcount(cmd);
if (sumcount > count)
{
fanhuizhi = sumcount / count;
}
return fanhuizhi;
}
#endregion
#region
[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.ReadWrite)]
public void itempaixu(string code)
{
Maticsoft.Model.nr_z_yhzh yhzh = (Maticsoft.Model.nr_z_yhzh)Session["user"];
string[] pxzu = code.Split(';');
string[] codezu = new string[4];
foreach (string px in pxzu)
{
codezu = px.Split('/');
string cmdexits = string.Format("select id from nr_lt_paixu where userid='{0}' and tblname='{1}' and lieming='{2}'", yhzh.id, "view_Report_External", codezu[2]);
DataTable paixutable = DBHlper.Execute(cmdexits).Tables[0];
if (paixutable.Rows.Count > 0)
{
int idfanhui = Convert.ToInt32(paixutable.Rows[0][0]);
string updatepaixu = string.Format("update nr_lt_paixu set shuixu={0},isxianshi={1} where id={2}", codezu[0], codezu[3], idfanhui);
DBHlper.excutecmd(updatepaixu);
}
else
{
string paixuinsert = string.Format("insert into nr_paixu (userid,tblname,lieming,zhongwen,shuixu,isxianshi) values('{0}','{1}','{2}','{3}',{4},{5})", yhzh.id, "view_Report_External", codezu[2], codezu[1], codezu[0], codezu[3]);
DBHlper.excutecmd(paixuinsert);
}
}
}
#endregion
#region
[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.ReadWrite)]
public string paixu()
{
Maticsoft.Model.nr_z_yhzh zhanghao = (Maticsoft.Model.nr_z_yhzh)Session["user"];
string paixuselct = string.Format("select * from nr_lt_paixu where userid='{0}' and tblname='{1}' and isxianshi={2} order by shuixu ", zhanghao.id, "view_Report_External", 1);
DataTable dtselect = DBHlper.Execute(paixuselct).Tables[0];
string htmlcode = "<td style='width:20px'><input onclick='selectall()' title='全选' type='checkbox' style='width:20px' id='cbo_selectall'/></td>";
foreach (DataRow dr in dtselect.Rows)
{
htmlcode += string.Format("<td tag='{0}'>{1}</td>", dr["lieming"], dr["zhongwen"]);
}
return htmlcode;
}
#endregion
#region
[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.ReadWrite)]
public string yincanglie(int endid)
{
Maticsoft.Model.nr_z_yhzh zhanghao = (Maticsoft.Model.nr_z_yhzh)Session["user"];
endid = endid - 1;
string displaycmd = "select * from nr_lt_paixu where isxianshi=0 and tblname='view_Report_External' and userid='" + zhanghao.id + "'";
DataTable distable = DBHlper.Execute(displaycmd).Tables[0];
string htmlcode = "";
foreach (DataRow dr in distable.Rows)
{
endid++;
htmlcode += "<tr class='tr_item' id='tr_" + endid + "'><td style='width:30%'>" + endid + "</td><td style='width:30%' tag=" + dr["lieming"] + ">" + dr["zhongwen"] + "</td><td style='width:30%'><input type='checkbox'/></td> </tr>";
}
return htmlcode;
}
#endregion
#region
[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.ReadWrite)]
public int sumitem(string wheretj)
{
string selectcmd = "select count(*) from view_Report_External " + wheretj;
Maticsoft.Model.nr_z_yhzh yhzh = (Maticsoft.Model.nr_z_yhzh)Session["user"];
if (!DBHlper.getqx(yhzh.juese, "外协数据统计", "view_Report_External", "查看全部"))
{
if (wheretj == "")
{
selectcmd += " where zdr='" + yhzh.zhanghao + "'";
}
else
{
selectcmd += " and zdr='" + yhzh.zhanghao + "'";
}
}
int sumcount = DBHlper.getcount(selectcmd);
return sumcount;
}
#endregion
#region
[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.ReadWrite)]
public string nowdaycount(int selmonth)
{
DateTime nowdt = DateTime.Now;
int days = DateTime.DaysInMonth(nowdt.Year, selmonth);
string yuechu = nowdt.Year + "-" + selmonth + "-" + "1";
string yuemo = Convert.ToDateTime(nowdt.Year + "-" + selmonth + "-" +days).AddDays(1).ToString("yyyy-MM-dd");
DateTime yc = Convert.ToDateTime(yuechu);
string cmd = string.Format("select CONVERT(varchar(12),riqi,111) as 'riqi' from view_Report_External where riqi>='{0}' and riqi<='{1}'", yuechu, yuemo);
Maticsoft.Model.nr_z_yhzh yhzh = (Maticsoft.Model.nr_z_yhzh)Session["user"];
if (!DBHlper.getqx(yhzh.juese, "外协数据统计", "view_Report_External", "查看全部"))
{
cmd += " and zdr='" + yhzh.zhanghao + "'";
}
DataTable dt = DBHlper.Execute(cmd).Tables[0];
var biao = "<table class='lbrilitb' id='tbl_yueli'>"
+ "<tr class='lbrilitbtou'><td width='50px' ><span>日期</span><div><span class='cursor' onclick='yl_up()' title='上月'><</span>&nbsp<span id='yl_nowmonth' title='" + selmonth + "月'>" + selmonth + "</span>&nbsp<span class='cursor' onclick='yl_next()' title='下月'>></span></div></td>";
for (var x = 1; x <= days; x++)
{
biao += "<td width='50px'>" + x + "</td>";
}
biao += "</tr><tr style='width:100%;height:37px;cursor:pointer'><td width='50px' id='td_sum' onclick='selectallday()' title='全部'>数量</td>";
for (var x = 1; x <= days; x++)
{
string str = yc.ToShortDateString();
int lenth = dt.Select("riqi='" + yc.ToShortDateString() + "'").Length;
string everday = yc.Year.ToString();
if (yc.Month < 10)
{
everday += "/0" + yc.Month;
}
else
{
everday += "/" + yc.Month;
}
if (yc.Day < 10)
{
everday += "/0" + yc.Day;
}
else
{
everday += "/" + yc.Day;
}
biao += "<td width='50px' onclick='selectnowday(this)' tag='" + everday + "'>" + dt.Select("riqi='" + everday + "'").Length + "</td>";
yc = yc.AddDays(1);
}
biao += "</tr></table>";
return biao;
}
#endregion
#region
void pdquanxian(int juese)
{
Maticsoft.Model.nr_z_yhzh user = (Maticsoft.Model.nr_z_yhzh)(Session["user"]);
if (DBHlper.getzt(user.id) != 1)
{
Response.Redirect("../index.aspx");
}
if (!DBHlper.getqx(juese, "外协数据统计", "view_Report_External", "查看全部") && !DBHlper.getqx(juese, "外协数据统计", "view_Report_External", "查看个人"))
{
Response.Redirect("../Common/nopower.htm");
}
if (DBHlper.getqx(juese, "外协数据统计", "view_Report_External", "导出"))
{
xiazai.Visible = true;
}
if (DBHlper.getqx(juese, "外协数据统计", "view_Report_External", "配置"))
{
leiset.Visible = true;
}
}
#endregion
#region
[Ajax.AjaxMethod]
public string isquanxian(int uid)
{
if (DBHlper.getqx(uid, "外协数据统计", "view_Report_External", "查看全部"))
{
return "1";
}
else if (DBHlper.getqx(uid, "外协数据统计", "view_Report_External", "查看个人"))
{
return "0";
}
else
{
return "";
}
}
#endregion
#region
public void DownLoad(object o, EventArgs e)
{
Maticsoft.Model.nr_z_yhzh zhanghao = (Maticsoft.Model.nr_z_yhzh)Session["user"];
string selectid = this.selectid.Value;
string colmn = "";
ArrayList sList = new ArrayList();
DataTable dtcolmnname = DBHlper.Execute("select lieming,zhongwen from nr_lt_paixu where tblname='view_Report_External' and isxianshi=1 and userid='" + ((Maticsoft.Model.nr_z_yhzh)Session["user"]).id + "' order by shuixu").Tables[0];
string tj = strwhere.Value;
foreach (DataRow r in dtcolmnname.Rows)
{
colmn += r["lieming"].ToString() + ',';
sList.Add(r["zhongwen"].ToString());
}
colmn = colmn.TrimEnd(',');
string selectcode = "select " + colmn + " from view_Report_External where 1=1 ";
if (tj != "")
{
selectcode += tj.Replace("where", "and");
}
if (selectid != "")
{
selectcode += " and id in(" + selectid.TrimEnd(',') + ")";
}
if (DBHlper.getqx(zhanghao.juese, "外协数据统计", "view_Report_External", "查看全部"))
{
}
else if (DBHlper.getqx(zhanghao.juese, "外协数据统计", "view_Report_External", "查看个人"))
{
selectcode += " and zdr='" + zhanghao.zhanghao + "'";
}
DataTable dt = DBHlper.Execute(selectcode + " order by id desc").Tables[0];
DBHlper.ExportByWeb(dt, "外协数据统计"+DateTime.Now, sList);
}
#endregion
#region
[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.ReadWrite)]
public string gethuizong(string tiaojian, string[] hzlie)
{
Maticsoft.Model.nr_z_yhzh zhanghao = (Maticsoft.Model.nr_z_yhzh)Session["user"];
string code = "<td></td>";
string paixuselct = string.Format("select * from nr_lt_paixu where userid='{0}' and tblname='{1}' and isxianshi={2} order by shuixu ", zhanghao.id, "view_Report_External", 1);
DataTable dtselect = DBHlper.Execute(paixuselct).Tables[0];
string datacolmn = "";
string wherecode = "";
int exits = 0;
foreach (DataRow dr in dtselect.Rows)
{
exits = 0;
foreach (string lie in hzlie)
{
if (dr["zhongwen"].ToString() == lie)
{
exits++;
}
}
if (exits == 0)
{
code += "<td></td>";
}
else
{
datacolmn = dr["lieming"].ToString();
wherecode = "select sum(" + datacolmn + ") ";
if (DBHlper.getqx(zhanghao.juese, "外协数据统计", "view_Report_External", "查看全部"))
{
wherecode += " from view_Report_External where " + tiaojian;
}
else if (DBHlper.getqx(zhanghao.juese, "外协数据统计", "view_Report_External", "查看个人"))
{
wherecode += " from view_Report_External where zdr='" + zhanghao.zhanghao + "' and " + tiaojian;
}
wherecode += " 1=1 ";
code += "<td class='blue'>" + DBHlper.getfirstcolmn(wherecode) +"</td>";
}
}
return code;
}
#endregion
}