📄 com_systemworkplan.asmx.cs
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Web;
using System.Web.Services;
using System.Data.SqlClient;
using System.IO;
using System.Xml;
namespace ERPWebService.BdStudio
{
/// <summary>
/// COM_SystemWorkPlan 的摘要说明。
/// </summary>
public class COM_SystemWorkPlan : System.Web.Services.WebService
{
protected sysbase.COM_BASE COM_BASE = new sysbase.COM_BASE();
protected sysbase.COMSoft COMSoft = new sysbase.COMSoft();
protected SqlConnection SqlConn;
protected BdStudioSoft.COM_NumToChina COM_NumToChina=new BdStudioSoft.COM_NumToChina();
protected WhiteForumServer.BdStudioSoft.COMInterface COMInterface=new WhiteForumServer.BdStudioSoft.COMInterface();
public COM_SystemWorkPlan()
{
//CODEGEN:该调用是 ASP.NET Web 服务设计器所必需的
InitializeComponent();
}
#region Component Designer generated code
//Web 服务设计器所必需的
private IContainer components = null;
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.SqlConn = new SqlConnection((string)Application["db_connstring"]);
}
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
protected override void Dispose( bool disposing )
{
if(disposing && components != null)
{
components.Dispose();
}
base.Dispose(disposing);
}
#endregion
[WebMethod]
public DataSet DsMainListForAll(string[] str_FieldValue)
{
string[] str_FieldName = {"work_type","receive_emp","start_emp"};
string[] str_FieldType = {"string","string","string"};
string[] str_SearchType = {"=","like","like"};
DataSet ds = new DataSet();
string str_Sql = string.Format("select * from system_work_plan ");
string strWhere = this.COM_BASE.CreateSqlString(str_FieldValue,str_FieldName,str_SearchType,str_FieldType);
if (strWhere.Trim() != string.Empty && strWhere != null )
{
str_Sql = string.Format(" {0} where {1} order by work_num DESC",str_Sql,strWhere);
}
else if (strWhere.Trim() == string.Empty)
{
str_Sql = string.Format(" {0} order by work_num DESC",str_Sql);
}
ds = this.COM_BASE.CreateDataSetFromSql(str_Sql);
this.COM_NumToChina.DataSetReSet(ref ds);
/*DataRow row=ds.Tables[0].NewRow();
row["work_topic"]=strWhere;
ds.Tables[0].Rows.Add(row);*/
return ds;
}
[WebMethod]
public DataSet DsMainReplyForAll(string sPlanNum)
{
DataSet ds = new DataSet();
string str_Sql = "select * from system_work_plan_detail where work_num='"+sPlanNum+"'"+" order by r_num DESC";
ds = this.COM_BASE.CreateDataSetFromSql(str_Sql);
this.COM_NumToChina.DataSetReSet(ref ds);
return ds;
}
[WebMethod]
public void DsMainListForDataSet(string[] FieldValue,ref DataSet ds)
{
string[] str_FieldName = {"work_num","c_name"};
string[] str_FieldType = {"string","string"};
string str_SearchType = "like";
string str_Sql = string.Format(" {0} ",this.COM_BASE.CreateSql(FieldValue,str_FieldName,str_SearchType,str_FieldType));
ds.Tables[0].Select(str_Sql);
}
[WebMethod]
public DataSet DsSelectSingleData(string[] str_FieldValue,string SearchType,ref string sReturn)
{
string[] str_FieldName = {"work_num"};
string[] str_FieldType = {"string"};
string str_SearchType = "=";
DataSet ds = new DataSet();
string str_Sql = string.Format("select * from system_work_plan ");
string str_Sql1 = string.Format("select work_num from system_work_plan order by work_num");
switch (SearchType)
{
case "0":
str_Sql = string.Format(" {0} where {1} ",str_Sql,this.COM_BASE.CreateSql(str_FieldValue,str_FieldName,str_SearchType,str_FieldType));
str_Sql+=" order by work_num DESC";
ds = this.COM_BASE.CreateDataSetFromSql(str_Sql);
sReturn = string.Empty;
break;
case "1":
DataSet dsPrev = this.COM_BASE.CreateDataSetFromSql(str_Sql1);
string str_Prev = string.Empty;
for (int i=0;i<dsPrev.Tables[0].Rows.Count;i++)
{
if (str_FieldValue[0] == dsPrev.Tables[0].Rows[i]["work_num"].ToString() && i > 0)
{
str_Prev = dsPrev.Tables[0].Rows[i-1]["work_num"].ToString();
break;
}
else if (str_FieldValue[0] == dsPrev.Tables[0].Rows[i]["work_num"].ToString())
{
sReturn = "没有上一条!";
}
}
string[] str_FieldValuePrev = {str_Prev};
if( str_FieldValuePrev != null)
{
str_Sql = string.Format(" {0} where {1} ",str_Sql,this.COM_BASE.CreateSql(str_FieldValuePrev,str_FieldName,str_SearchType,str_FieldType));
ds = this.COM_BASE.CreateDataSetFromSql(str_Sql);
}
break;
case "2":
DataSet dsNext = this.COM_BASE.CreateDataSetFromSql(str_Sql1);
string str_Next = string.Empty;
for (int i=0;i<dsNext.Tables[0].Rows.Count;i++)
{
if (str_FieldValue[0] == dsNext.Tables[0].Rows[i]["work_num"].ToString() && (i+1) < dsNext.Tables[0].Rows.Count)
{
str_Next = dsNext.Tables[0].Rows[i+1]["work_num"].ToString();
break;
}
else if (str_FieldValue[0] == dsNext.Tables[0].Rows[i]["work_num"].ToString())
{
sReturn = "没有下一条!";
}
}
string[] str_FieldValueNext = {str_Next};
if( str_FieldValueNext != null)
{
str_Sql = string.Format(" {0} where {1} ",str_Sql,this.COM_BASE.CreateSql(str_FieldValueNext,str_FieldName,str_SearchType,str_FieldType));
ds = this.COM_BASE.CreateDataSetFromSql(str_Sql);
}
break;
}
return ds;
}
[WebMethod]
public void InsertData(DataSet ds,string InsertType,ref string sReturn)
{
SqlCommand mySqlCommand = new SqlCommand();
SqlTransaction myTrans;
string SqlString = string.Empty;
this.SqlConn.Open();//启动连接
myTrans = this.SqlConn.BeginTransaction();//建立事务
mySqlCommand.Connection = this.SqlConn;//建立sql命令连接
mySqlCommand.Transaction = myTrans;//绑定事务
string str_TableName = "system_work_plan";
string str_work_num = string.Empty;
DataTable dt = ds.Tables[0];
foreach(DataRow row in ds.Tables[0].Rows)
{
if(row[0].ToString()=="系统设定")
{
row[0]=this.COMSoft.T_Maxnum(str_TableName);
str_work_num = row[0].ToString();
}
}
int nErr;
try
{
nErr= this.COM_BASE.InsertTableBase(ref mySqlCommand,ref SqlConn,ref myTrans,str_TableName,dt,ref SqlString);
}
catch (Exception e)
{
nErr = 1;
}
if (nErr == 1)
{
sReturn = "增加失败";
}
else
{
myTrans.Commit();
this.SqlConn.Close();
switch (InsertType)
{
case "0":
sReturn = "增加成功";
break;
case "1":
sReturn = "增加成功";
break;
case "2":
sReturn = str_work_num;
break;
}
}
}
[WebMethod]
public void InsertReplyData(DataSet ds,ref string sReturn)
{
SqlCommand mySqlCommand = new SqlCommand();
SqlTransaction myTrans;
string SqlString = string.Empty;
this.SqlConn.Open();//启动连接
myTrans = this.SqlConn.BeginTransaction();//建立事务
mySqlCommand.Connection = this.SqlConn;//建立sql命令连接
mySqlCommand.Transaction = myTrans;//绑定事务
string str_TableName = "system_work_plan_detail";
string str_work_num = string.Empty;
DataTable dt = ds.Tables[0];
foreach(DataRow row in ds.Tables[0].Rows)
{
if(row[0].ToString()=="自动生成")
{
ds.Tables[0].Columns.Remove("r_num");
}
}
int nErr;
try
{
nErr= this.COM_BASE.InsertTableBase(ref mySqlCommand,ref SqlConn,ref myTrans,str_TableName,dt,ref SqlString);
}
catch (Exception e)
{
nErr = 1;
}
if (nErr == 1)
{
sReturn = "增加失败";
}
else
{
sReturn = "增加成功";
}
if(nErr!=1)
{
myTrans.Commit();//提交事务
this.SqlConn.Close();//终止连接
}
}
[WebMethod]
public void EditData(DataSet ds,string EditType,ref string sReturn)
{
SqlCommand mySqlCommand = new SqlCommand();
SqlTransaction myTrans;
string SqlString = string.Empty;
this.SqlConn.Open();//启动连接
myTrans = this.SqlConn.BeginTransaction();//建立事务
mySqlCommand.Connection = this.SqlConn;//建立sql命令连接
mySqlCommand.Transaction = myTrans;//绑定事务
string str_TableName = "system_work_plan";
string s_pk = "work_num";
DataTable dt = ds.Tables[0];
string str_work_num = string.Empty;
int nErr;
try
{
str_work_num = dt.Rows[0]["work_num"].ToString();
nErr = this.COM_BASE.UpdateTableBase(ref mySqlCommand,ref SqlConn,ref myTrans,str_TableName,dt,ref SqlString,ref s_pk);
}
catch (Exception e)
{
string str = e.Message.ToString();
nErr = 1;
}
if (nErr == 1)
{
sReturn = "修改失败";
}
else
{
switch (EditType)
{
case "0":
sReturn = "修改成功";
break;
case "1":
sReturn = "修改成功";
break;
case "2":
sReturn = str_work_num;
break;
}
}
if(nErr!=1)
{
myTrans.Commit();//提交事务
this.SqlConn.Close();//终止连接
}
}
[WebMethod]
public void DeleteData(string WhereString,ref string sReturn)
{
SqlCommand mySqlCommand = new SqlCommand();
SqlTransaction myTrans;
string SqlString = WhereString;
string SqlString1 = WhereString;
this.SqlConn.Open();//启动连接
myTrans = this.SqlConn.BeginTransaction();//建立事务
mySqlCommand.Connection = this.SqlConn;//建立sql命令连接
mySqlCommand.Transaction = myTrans;//绑定事务
//string str_TableName = "system_work_plan";
string str_TableNameMain = "system_work_plan";
string str_TableNameDetail = "system_work_plan_detail";
//int nErr = this.COM_BASE.DeleteTableBase(ref mySqlCommand,ref SqlConn,ref myTrans,str_TableName,ref SqlString);
int nErrMain = this.COM_BASE.DeleteTableBase(ref mySqlCommand,ref SqlConn,ref myTrans,str_TableNameMain,ref SqlString);
int nErrDetail = this.COM_BASE.DeleteTableBase(ref mySqlCommand,ref SqlConn,ref myTrans,str_TableNameDetail,ref SqlString1);
int nErr = nErrMain + nErrDetail;
if (nErr == 1)
{
sReturn = "删除失败";
}
else
{
sReturn = "删除成功";
}
if(nErr!=1)
{
myTrans.Commit();//提交事务
this.SqlConn.Close();//终止连接
}
}
[WebMethod]
public DataSet DsUnderWorkPlan(string WorkPlanType,string accname,string depNum)
{
DataSet dsUnRes = new DataSet();
string strsql = string.Empty;
string str = string.Empty;
string strsql1 = string.Format(" select under_res from system_account where acc_name = '{0}'",accname);
DataSet ds = this.COM_BASE.CreateDataSetFromSql(strsql1);
if(ds.Tables[0].Rows.Count == 1)
{
string under_res = ds.Tables[0].Rows[0]["under_res"].ToString();
if(under_res.Trim() != "[ALL]" && under_res.Trim() != "W")
{
// under_res = under_res.Replace("[",string.Empty);
// under_res = under_res.Replace("]",string.Empty);
// string[] acc_name = under_res.Split(new char[]{','});
// for(int j=0;j<acc_name.Length;j++)
// {
// strsql = string.Format(" {0} acc_name = '{1}' or ",strsql,acc_name[j]);
// }
// strsql = strsql.Remove(strsql.Length-3,3);
// strsql = string.Format(" select * from system_account where {0}",strsql);
under_res = under_res.Replace("[","'");
under_res = under_res.Replace("]","'");
strsql = string.Format(" acc_name in ({0})",under_res);
strsql = string.Format(" select acc_name from system_account where {0}",strsql);
if(depNum.Trim() != string.Empty)
{
string sqlwhere = string.Format("dep_num = '{0}'",depNum);
strsql = string.Format("{0} and {1}",strsql,sqlwhere);
}
}
else if (under_res.Trim() == "[ALL]")
{
strsql = string.Format(" select acc_name from system_account");
if(depNum.Trim() != string.Empty)
{
string sqlwhere = string.Format("dep_num = '{0}'",depNum);
strsql = string.Format("{0} where {1}",strsql,sqlwhere);
}
}
if (strsql.Trim() != string.Empty)
{
str = string.Format("select * from system_work_plan where start_emp in ({0}) and work_type = '{1}'",strsql,WorkPlanType);
}
else
{
str = string.Format("select * from system_work_plan where 1=0");
}
dsUnRes = this.COM_BASE.CreateDataSetFromSql(str);
this.COM_NumToChina.DataSetReSet(ref ds);
}
return dsUnRes;
}
[WebMethod]
public void EditViewEmp(string work_num,string viewemp)
{
string SqlString="select view_emp from system_work_plan where work_num='"+work_num+"'";
DataSet dsOld=this.COMInterface.CreateDataSetFromSql(SqlString);
if(dsOld.Tables[0].Rows.Count>0)
{
string sViewEmp="";
sViewEmp=dsOld.Tables[0].Rows[0]["view_emp"].ToString();
if(sViewEmp.IndexOf("["+viewemp+"]")==-1)
{
sViewEmp+=",["+viewemp+"]";
SqlString="update system_work_plan set view_emp='"+sViewEmp+"'where work_num='"+work_num+"'";
SqlCommand mySqlCommand = new SqlCommand();
SqlTransaction myTrans;
this.SqlConn.Open();//启动连接
myTrans = this.SqlConn.BeginTransaction();//建立事务
mySqlCommand.Connection = this.SqlConn;//建立sql命令连接
mySqlCommand.Transaction = myTrans;//绑定事务
int nErr=0;
try
{
nErr= this.COM_BASE.UpdateTableBaseFromSQL(ref mySqlCommand,ref SqlConn,ref myTrans,SqlString);
}
catch (Exception e)
{
nErr = 1;
}
if (nErr == 1)
{
//sReturn = "修改浏览人失败";
}
else
{
myTrans.Commit();
this.SqlConn.Close();
//sReturn = "增加成功";
//break;
}
}
}
}
[WebMethod]
public DataSet DsView(ref DataSet ds,string accname)
{
ds.Tables[0].Columns.Add(new DataColumn("view",typeof(string)));
if(ds.Tables[0].Rows.Count>0)
{
for(int i=0;i<ds.Tables[0].Rows.Count;i++)
{
string str = ds.Tables[0].Rows[i]["view_emp"].ToString();
if(str.IndexOf("["+accname+"]")<0)
{
ds.Tables[0].Rows[i]["view"] = "0";
}
else
{
ds.Tables[0].Rows[i]["view"] = "1";
}
}
}
return ds;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -