奖惩单-cs
//修改奖惩生效日期,将本月26号改至次月1号@alina 2014-12-30
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Text;
using System.IO;
using System.Data.OracleClient;
using System.Data.OleDb;
using System.Data.Odbc;
using System.Configuration;
using tw.com.dsc.dscDotNet.kernelBasePage;
using tw.com.dsc.dscDotNet.common;
using tw.com.dsc.dscDotNet.db;
using tw.com.dsc.dscDotNet.dscData;
using tw.com.dsc.dscDotNet.dscWeb;
using tw.com.dsc.dscDotNet.dscWebControls;
using tw.com.dsc.dscDotNet.grid;
using tw.com.dsc.dscDotNet.tool;
using tw.com.dsc.dscDotNet.util;
namespace tw.com.dsc.easyflowDotNet.forms
{
/// <summary>
/// HRF008 的摘要描述。
/// </summary>
public partial class HRF008 : tw.com.dsc.easyflowDotNet.kernelBasePage.EFBasePage
{
DBCommand m_dbCommand = DscDBData.GetDataDBCommand();
public string sqlHRConn = ConfigurationManager.ConnectionStrings["HRSqlServer"].ConnectionString; //连接HR的数据库连接字符串
#region Page_Load
/// <summary>
/// Page_Load
/// </summary>
protected override void Page_Load(object sender, EventArgs e)
{
base.Page_Load(sender, e);
AjaxPro.Utility.RegisterTypeForAjax(typeof(HRF008));
UserInfoClass tClass = (UserInfoClass)Session["UserInfo"];
string tLanguageType = tClass.Language;
//多國語系
this.TabStrip1.Items[0].Text = MultiLanguage.GetComment("FD", "HRF008", "TabStrip1", tLanguageType);
//this.text1.Title = MultiLanguage.GetComment("FD", "HRF008", "text1", tLanguageType);
this.Title= MultiLanguage.GetComment("FD","HRF008","lblTitle",this.UserInfo.Language);
#region 註冊使用者自訂檢查 Javascript
if (base.FormStatus.ToString() == "CREATE")
{
string tParentScript = base.BtnCreateToolSendForm.Attributes["onclick"].ToString();
tParentScript = "if (!CustomerSaveCheck('" + base.FormStatus.ToString() + "')) {return false; }" + tParentScript + "";
base.BtnCreateToolSendForm.Attributes.Add("onclick", tParentScript);
base.BtnCreateToolSendForm.Attributes["onclick"] = "SetCustomSubject();" + base.BtnCreateToolSendForm.Attributes["onclick"];
}
else if (base.FormStatus.ToString() == "APPROVE")
{
string tParentScript = base.BtnApproveToolDecide.Attributes["onclick"].ToString();
tParentScript = "if (!CustomerSaveCheck('" + base.FormStatus.ToString() + "')) {return false; }" + tParentScript + "";
base.BtnApproveToolDecide.Attributes.Add("onclick", tParentScript);
tParentScript = base.BtnApproveToolAgree.Attributes["onclick"].ToString();
tParentScript = "if (!CustomerSaveCheck('" + base.FormStatus.ToString() + "')) {return false; }" + tParentScript + "";
base.BtnApproveToolAgree.Attributes.Add("onclick", tParentScript);
tParentScript = base.BtnApproveToolDone.Attributes["onclick"].ToString();
tParentScript = "if (!CustomerSaveCheck('" + base.FormStatus.ToString() + "')) {return false; }" + tParentScript + "";
base.BtnApproveToolDone.Attributes.Add("onclick", tParentScript);
}
#endregion
#region 自訂排序
#endregion 自訂排序
#region 限制修改欄位
this.hrf008003.InputEnabled = false;
this.hrf008004.InputEnabled = false;
this.hrf008005.InputEnabled = false;
this.hrf008007.InputEnabled = false;
this.hrf008008.InputEnabled = false;
this.hrf008009.InputEnabled = false;
this.hrf008010.InputEnabled = false;
this.hrf008011.InputEnabled = false;
this.hrf008012.InputEnabled = false;
this.hrf008043.InputEnabled = false;
this.hrf008032.InputEnabled = false;
this.hrf008033.InputEnabled = false;
#endregion 限制修改欄位
#region 增加初始設定
if (!IsPostBack)
{
BindData();
}
#endregion 增加初始設定
}
#endregion
#region 打开页面时,绑定数据
public void BindData()
{
string str = checkt(hrf008006.Text);
hrf008036.Text = str;
}
#endregion
#region Web Form 設計工具產生的程式碼
/// <summary>
/// OnInit
/// </summary>
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 此為 ASP.NET Web Form 設計工具所需的呼叫。
//
base.registChildObj(Page);
base.OnInit(e);
}
#endregion
#region PreRender做的事
/// <summary>
/// Page_Prender
/// </summary>
protected override void Page_Prender(object sender, EventArgs e)
{
string tReturnValue = "";
string tSQL = "";
base.Page_Prender(sender, e);
#region 自訂下拉選項
#endregion
}
#endregion
#region setBasicInfo , 設定表單的基本屬性
/// <summary>
/// 設定表單的基本屬性 (setBasicInfo)
/// </summary>
protected override void setBasicInfo()
{
// 作業代號
this.TaskId = "HRF008";
// 表單代號
this.formID = "HRF008";
// 有幾個單身 ex.0-->單檔, 1-->雙檔(一個單身), 2-->雙檔(二個單身)
this.detailDepth = 0;
}
#endregion
#region 屬性 (Property) 用來 Instance EasyFlow 流程引擎所需的元件
//屬性 (Property), 基本上應該只會用到 get {} 方法, set {} 方法寫來備用的!
private string _strProcID = null;
private string _strConn = "";
//EasyFlow 流程引擎元件宣告
private PublicUTIL.DBProcessor _Processor = null; //DB Transaction
private EF2KWeb.Class1 _objWeb = null;
private EF2KPublic.DataBase _objDB = null;
private EF2KEngine.Class1 _objRE = null;
/// <summary>
/// get ProcessID
/// </summary>
protected string m_strProcID
{
get
{
if (_strProcID == null)
{
_strProcID = m_objWeb.Init("Administrator", "EF.NET", 0);
}
return _strProcID;
}
}
/// <summary>
/// get/set EF2KWeb 物件實例
/// </summary>
protected EF2KWeb.Class1 m_objWeb
{
get
{
if (_objWeb == null)
{
_objWeb = new EF2KWeb.Class1();
}
return _objWeb;
}
set
{
if (_objWeb == value)
return;
_objWeb = value;
}
}
/// <summary>
/// get/set EF2KPublic 物件實例
/// </summary>
protected EF2KPublic.DataBase m_objDB
{
get
{
if (_objDB == null)
{
_objDB = new EF2KPublic.DataBase(m_strProcID, m_processor);
}
return _objDB;
}
set
{
if (_objDB == value)
{
return;
}
_objDB = value;
}
}
/// <summary>
/// get/set EF2KEngine 物件實例
/// </summary>
protected EF2KEngine.Class1 m_objRE
{
get
{
if (_objRE == null)
{
_objRE = new EF2KEngine.Class1(m_strProcID, m_processor);
}
return _objRE;
}
set
{
if (_objRE == value)
{
return;
}
_objRE = value;
}
}
/// <summary>
/// get/set PublicUTIL 物件實例 (DB Transaction)
/// </summary>
protected PublicUTIL.DBProcessor m_processor
{
get
{
if (_Processor == null)
{
_Processor = new PublicUTIL.DBProcessor(m_strConn);
}
return _Processor;
}
set
{
if (value == null)
{
return;
}
_Processor = value;
}
}
/// <summary>
/// Connenction String
/// </summary>
protected string m_strConn
{
get
{
if (string.IsNullOrEmpty(_strConn))
{
DBCommand dbCommand = DscDBData.GetDataDBCommand();
_strConn = dbCommand.DBAccess.ConnString.ToString().Trim();
dbCommand = null;
}
return _strConn;
}
set
{
if (value == null)
{
return;
}
_strConn = value;
}
}
#endregion
#region AjaxMethod()
#region GetEmployeeId
/// <summary>
/// 取得員工 ID
/// </summary>
/// <returns>回傳員工 ID(string)</returns>
[AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.ReadWrite)]
public string ajaxGetEmployeeId()
{
return this.UserInfo.EmployeeId.ToString().Trim();
}
#endregion
#region GetLoginName
/// <summary>
/// 取得登入者員工姓名
/// </summary>
/// <returns>回傳員工姓名(string)</returns>
[AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.ReadWrite)]
public string ajaxGetLoginName()
{
return this.UserInfo.LoginName.ToString().Trim();
}
#endregion
#region GetAgentID
/// <summary>
/// 取得代理人員工 ID
/// </summary>
/// <returns>回傳代理人員工 ID(string)</returns>
[AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.ReadWrite)]
public string ajaxGetAgentID()
{
return base.StrAgentID.ToString().Trim();
}
#endregion
#region GetAgentName
/// <summary>
/// 取得代理人姓名
/// </summary>
/// <returns>回傳代理人姓名(string)</returns>
[AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.ReadWrite)]
public string ajaxGetAgentName()
{
string tAgentName = "";
UserInfoClass tClass = (UserInfoClass)Session["UserInfo"];
string mCompany = tClass.Company;
DBCommand dbCommand = DscDBData.GetDataDBCommand();
DataTable tDt = new DataTable();
StringBuilder tSql = new StringBuilder();
tSql.AppendFormat("SELECT resak002 FROM {0}..resak AS resak ", mCompany);
tSql.AppendFormat("WHERE resak001 = '{0}' ", base.StrAgentID.ToString().Trim());
tDt = dbCommand.Query(tSql.ToString());
if (tDt.Rows.Count > 0)
{
tAgentName = tDt.Rows[0]["resak002"].ToString().Trim();
}
return tAgentName;
}
#endregion
#region GetDepartmentId
/// <summary>
/// 取得部門 ID
/// </summary>
/// <returns>回傳部門 ID(string)</returns>
[AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.ReadWrite)]
public string ajaxGetDepartmentId()
{
string tDeptID = "";
UserInfoClass tClass = (UserInfoClass)Session["UserInfo"];
tDeptID = m_objRE.FindEmplDeptID(tClass.EmployeeId.ToString().Trim(), m_strProcID);
return tDeptID;
}
#endregion
#region GetDepartmentName
/// <summary>
/// 取得部門名稱
/// </summary>
/// <returns>回傳部門名稱(string)</returns>
[AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.ReadWrite)]
public string ajaxGetDepartmentName()
{
string tDeptName = "";
string tDeptID = "";
UserInfoClass tClass = (UserInfoClass)Session["UserInfo"];
tDeptID = m_objRE.FindEmplDeptID(tClass.EmployeeId.ToString().Trim(), m_strProcID);
tDeptName = m_objRE.FindDeptName(tDeptID, m_strProcID);
return tDeptName;
}
#endregion
#region GetEFDBFieldValue
[AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.ReadWrite)]
public string ajaxGetEFDBFieldValue(string pSql, string pFieldName)
{
string tResult = "";
UserInfoClass tClass = (UserInfoClass)Session["UserInfo"];
string mCompany = tClass.Company;
DBCommand dbCommand = DscDBData.GetDataDBCommand();
DataTable tDt = new DataTable();
string tSql = pSql;
tDt = dbCommand.Query(tSql);
if (tDt.Rows.Count > 0)
{
tResult = tDt.Rows[0]["\""+pFieldName+"\""].ToString().Trim();
}
return tResult;
}
#endregion
#region GetOtherDBFieldValue
[AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.ReadWrite)]
public string ajaxGetOtherDBFieldValue(string pDBType,string pSql,string pConn,string pFieldName)
{
string tResult = "";
DataSet tDs = new DataSet();
if (pDBType == "SqlServer")
{
SqlConnection tDbConnection = new SqlConnection(pConn);
tDbConnection.Open();
SqlDataAdapter tAdpt = new SqlDataAdapter(pSql, pConn);
tAdpt.Fill(tDs, "Result");
}
else if (pDBType == "Oracle")
{
OracleConnection tDbConnection = new OracleConnection (pConn);
tDbConnection.Open();
OracleDataAdapter tAdpt = new OracleDataAdapter (pSql, pConn);
tAdpt.Fill(tDs, "Result");
}
else if (pDBType == "OleDb")
{
OleDbConnection tDbConnection = new OleDbConnection (pConn);
tDbConnection.Open();
OleDbDataAdapter tAdpt = new OleDbDataAdapter (pSql, pConn);
tAdpt.Fill(tDs, "Result");
}
else if (pDBType == "Odbc")
{
OdbcConnection tDbConnection = new OdbcConnection (pConn);
tDbConnection.Open();
OdbcDataAdapter tAdpt = new OdbcDataAdapter (pSql, pConn);
tAdpt.Fill(tDs, "Result");
}
DataTable tDt = tDs.Tables["Result"];
if (tDt != null)
{
if (tDt.Rows.Count > 0)
{
tResult = tDt.Rows[0]["\""+pFieldName+"\""].ToString().Trim();
}
}
return tResult;
}
#endregion
#endregion
#region 自訂Ajax
//得到入职日
//<param name="">工号</param>
[AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.ReadWrite)]
public string getname(string code)
{
string name = "";
try
{
string sql = "select CONVERT(VARCHAR(10),Date,120)Date from HR.HRMDB.dbo.Employee where Code='" + code + "'";
DataTable dt = new DataTable();
dt = m_dbCommand.Query(sql);
name = dt.Rows[0]["Date"].ToString();
//name = code;
return name;
}
catch (Exception ex)
{
Response.Write(ex.Message);
name = "";
return name;
}
}
//得到奖励条例
//<param code1="">编号1</param>
//<param code2="">编号2</param>
[AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.ReadWrite)]
public string getreward1(string code1,string code2)
{
string remark = "";
string code = "9." + code1.Trim();
string name = code2.Trim();
try
{
if (code1.Trim() == "" || code2.Trim() == "")
{
}
else
{
string sql = "select Remark from HR.HRMDB.dbo.EmployeeRewardsItem where Code='" + code + "' and Name='" + name + "' and Flag='1'";
DataTable dt = new DataTable();
dt = m_dbCommand.Query(sql);
if (dt.Rows.Count > 0)
{
remark = dt.Rows[0]["Remark"].ToString();
}
else
{
remark = "无此奖励条款编号,请重新填写!!";
}
}
return remark;
}
catch (Exception ex)
{
Response.Write(ex.Message);
remark = "";
return remark;
}
}
//得到惩罚条例
//<param code1="">编号1</param>
//<param code2="">编号2</param>
[AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.ReadWrite)]
public string getreward2(string code1, string code2)
{
string remark = "";
string code = "10." + code1.Trim();
string name = code2.Trim();
try
{
if (code1.Trim() == "" || code2.Trim() == "")
{
}
else
{
string sql = "select Remark from HR.HRMDB.dbo.EmployeeRewardsItem where Code='" + code + "' and Name='" + name + "' and Flag='1'";
DataTable dt = new DataTable();
dt = m_dbCommand.Query(sql);
if (dt.Rows.Count > 0)
{
remark = dt.Rows[0]["Remark"].ToString();
}
else
{
remark = "无此惩罚条款编号,请重新填写!!";
}
}
return remark;
}
catch (Exception ex)
{
Response.Write(ex.Message);
remark = "";
return remark;
}
}
//员工本年度奖惩记录
[AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.ReadWrite)]
public string checkt(string code)
{
StringBuilder str = new StringBuilder();
string err = "";
string btime = DateTime.Now.Year.ToString() + "-01-01";
string etime = DateTime.Now.AddYears(1).Year.ToString() + "-01-01";
string strsql = " select Deptname, Code,User_name,Ondate, Offdate,Type_dg,Type_kdg,Type_xg,Type_jg,Type_bgg,Type_bxg,Type_bjg,Type_jy " +
" from " +
" (select c.Name as Deptname " +
" ,b.Code as Code,b.CnName as User_name " +
" ,CONVERT(VARCHAR(10),b.JobDate,111) as Ondate " +
" ,(CASE When b.LastWorkDate < '9999-12-31' Then CONVERT(VARCHAR(10),b.LastWorkDate,111) Else Null End ) as Offdate " +
" ,(CASE When b.LastWorkDate < '9999-12-31' Then 2 Else 1 End ) as Jobstatus " +
" , sum(case when d.Name= N'大过' then a.Times else 0 end ) as Type_dg " +
" , sum(case when d.Name= N'旷工大过' then a.Times else 0 end ) as Type_kdg " +
" , sum(case when d.Name= N'小过' then a.Times else 0 end ) as Type_xg " +
" , sum(case when d.Name= N'警告' then a.Times else 0 end ) as Type_jg " +
" , sum(case when d.Name= N'大功' then a.Times else 0 end ) as Type_bgg " +
" , sum(case when d.Name= N'小功' then a.Times else 0 end ) as Type_bxg " +
" , sum(case when d.Name= N'嘉奖' then a.Times else 0 end ) as Type_bjg " +
" , sum(case when d.Name= N'违纪解约' then a.Times else 0 end) as Type_jy " +
" from HR.HRMDB.dbo.EmployeeRewards a " +
" left join HR.HRMDB.dbo.Employee b on a.EmployeeId=b.EmployeeId " +
" left join HR.HRMDB.dbo.Department c on c.DepartmentId=b.DepartmentId " +
" left join HR.HRMDB.dbo.EmployeeRewardsItem d on d.EmployeeRewardsItemId=a.EmployeeRewardsItemId " +
" where b.Code like '%" + code + "%'" +
" AND a.InureDate>= '" + btime + "'" +
" AND a.InureDate< '" + etime + "'" +
" group by c.Name,b.Code,b.CnName,b.JobDate,b.LastWorkDate ) as qq ";
DataTable dt = new DataTable();
dt = m_dbCommand.Query(strsql);
DataTable dt_new = new DataTable();
dt_new.Columns.Add("工号");
dt_new.Columns.Add("姓名");
dt_new.Columns.Add("大过");
dt_new.Columns.Add("旷工大过");
dt_new.Columns.Add("小过");
dt_new.Columns.Add("警告");
dt_new.Columns.Add("大功");
dt_new.Columns.Add("小功");
dt_new.Columns.Add("嘉奖");
dt_new.Columns.Add("违纪解约");
if (dt.Rows.Count > 0)
{
for (int i = 0; i < dt.Rows.Count; i++)
{
DataRow dr_new = dt_new.NewRow();
dr_new["工号"] = dt.Rows[i]["Code"].ToString();
dr_new["姓名"] = dt.Rows[i]["User_name"].ToString();
dr_new["大过"] = dt.Rows[i]["Type_dg"].ToString();
dr_new["旷工大过"] = dt.Rows[i]["Type_kdg"].ToString();
dr_new["小过"] = dt.Rows[i]["Type_xg"].ToString();
dr_new["警告"] = dt.Rows[i]["Type_jg"].ToString();
dr_new["大功"] = dt.Rows[i]["Type_bgg"].ToString();
dr_new["小功"] = dt.Rows[i]["Type_bxg"].ToString();
dr_new["嘉奖"] = dt.Rows[i]["Type_bjg"].ToString();
dr_new["违纪解约"] = dt.Rows[i]["Type_jy"].ToString();
dt_new.Rows.Add(dr_new);
//str.Append("人员本年度已生效的奖惩记录:");
//str.Append("<table border=\"1\">");
//str.Append(" <tr>");
//for (int j = 0; j < dt_new.Columns.Count; j++)
//{
// str.Append("<td>");
// str.Append(dt_new.Columns[j].ColumnName.ToString());
// str.Append("</td>");
//}
//str.Append(" </tr>");
//for (int t = 0; t < dt_new.Rows.Count; t++)
//{
// str.Append("<tr>");
// //列的循环,把内容填进来
// for (int k = 0; k < dt_new.Columns.Count; k++)
// {
// str.Append("<td>");
// str.Append(dt_new.Rows[t][k].ToString());
// str.Append("</td>");
// }
// str.Append(" </tr>");
//}
for (int j = 0; j < dt_new.Columns.Count; j++)
{
str.Append(dt_new.Columns[j].ColumnName.ToString());
for (int t = 0; t < dt_new.Rows.Count; t++)
{
str.Append(dt_new.Rows[t][j].ToString());
str.Append(";");
}
}
}
}
else
{
str.Append("该人员本年度无奖惩记录");
}
return str.ToString();
}
#endregion 自訂Ajax
#region settingClientFunction , 註冊onclick、onblur、onchange事件
/// <summary>
/// 註冊onclick、onblur、onchange事件
/// </summary>
protected override void settingClientFunction()
{
hrf008006.Attributes.Add("onblur", "check()");
hrf008006.Attributes.Add("onclick", "check()");
hrf008006.Attributes.Add("onchange", "check()");
hrf008006.Attributes.Add("onkeydown", "check()");
hrf008017.Attributes.Add("onblur", "check1()");
hrf008017.Attributes.Add("onclick", "check1()");
hrf008017.Attributes.Add("onchange", "check1()");
hrf008017.Attributes.Add("onkeydown", "check1()");
hrf008017.Attributes.Add("onkeyup", "check1()");
hrf008020.Attributes.Add("onblur", "check2()");
hrf008020.Attributes.Add("onclick", "check2()");
hrf008020.Attributes.Add("onchange", "check2()");
hrf008020.Attributes.Add("onkeydown", "check2()");
hrf008020.Attributes.Add("onkeyup", "check2()");
hrf008006.HtmImg.Attributes.Add("onclick", MIMJUtil.getClickParams("MasterPage_MasterPageContent_hrf008006_btn", "MasterPage_MasterPageContent_hrf008006_txt", "S"));
hrf008006.TxtInput.Attributes.Add("onblur", MIMJUtil.getBlurParams("MasterPage_MasterPageContent_hrf008006_txt", "hrf008006_人员信息",
"MasterPage_MasterPageContent_hrf008006_txt"));
hrf008006.TxtInput.Attributes.Add("onchange", "AddtoHash('MasterPage_MasterPageContent_hrf008006_txt')");
}//settingClientFunction結尾
/// <summary>
/// %%必填%%
/// </summary>
/// <param name="pMiMjManager"></param>
protected override void buildMiMjManager(Hashtable pMiMjManager)
{
//IsStoredMIMJ
if ( FormStatus == EFFormStatus.CREATE ) {
}
}
#endregion
#region SetDefaultValue , 設定表單欄位的初始值
protected override void SetDefaultValue(Hashtable defalutHash)
{
defalutHash.Add("hrf008001", this.formID);
defalutHash.Add("hrf008002", this.SheetNo);
defalutHash.Add("hrf008005", DateTime.Now.ToString("yyyy-MM-dd")); //申请日期
defalutHash.Add("hrf008003", this.UserInfo.EmployeeId); //填单工号
defalutHash.Add("hrf008004", this.UserInfo.LoginName); //填单姓名
defalutHash.Add("hrf008008", this.UserInfo.DepartmentId); //部门ID
defalutHash.Add("hrf008009", this.UserInfo.DepartmentName); //部门名称
defalutHash.Add("hrf008006", this.UserInfo.EmployeeId); //申请工号
defalutHash.Add("hrf008007", this.UserInfo.LoginName); //申请姓名
defalutHash.Add("hrf008027", "0"); //
defalutHash.Add("hrf008029", "0"); //
defalutHash.Add("hrf008031", "0"); //
defalutHash.Add("hrf008038", "0"); //
defalutHash.Add("hrf008040", "0"); //
defalutHash.Add("hrf008042", "0"); //
//取登录人在HR中的职位代号
string strEmployeeId = this.UserInfo.EmployeeId;
string strSql = " select B.Code as JobCode,B.JobId as JobId,B.Name as JobName from Employee A " +
" left join Job B on B.JobId = A.JobId" +
" where A.Code='" + strEmployeeId + "'";
string strJobId = createSQLSERVERDataTable(strSql, sqlHRConn, "JobCode", "JobName");
defalutHash.Add("hrf008010", strJobId.Split('Φ')[0].ToString());//职等
defalutHash.Add("hrf008011", strJobId.Split('Φ')[1].ToString());//职称
string strSql1 = " select convert(varchar(10),JobDate,120)JobDate,Code from Employee " +
" where Code='" + strEmployeeId + "'";
string strJobdate = createSQLSERVERDataTable(strSql1, sqlHRConn, "JobDate", "Code");
defalutHash.Add("hrf008012", strJobdate.Split('Φ')[0].ToString());//入职日
//判断生效日期
double day = 0;
double hour = 0;
double minute = 0;
double month = 0;
string sxdate = "";
month = double.Parse(DateTime.Now.Month.ToString());
day = double.Parse(DateTime.Now.Day.ToString());
hour = double.Parse(DateTime.Now.Hour.ToString());
minute = double.Parse(DateTime.Now.Minute.ToString());
if (day > 1)
{
sxdate = DateTime.Now.ToString("yyyy-MM") + "-01";
}
if (day == 1)
{
if (hour < 20)
{
//sxdate = DateTime.Now.ToString("yyyy-MM") + "-01";
if (month > 1)
{
sxdate = DateTime.Now.AddMonths(-1).ToString("yyyy-MM") + "-01";
}
else
{
sxdate = DateTime.Now.AddYears(-1).ToString("yyyy") + "-12-01";
}
}
if (hour == 20)
{
if (minute == 0)
{
//sxdate = DateTime.Now.ToString("yyyy-MM") + "-01";
if (month > 1)
{
sxdate = DateTime.Now.AddMonths(-1).ToString("yyyy-MM") + "-01";
}
else
{
sxdate = DateTime.Now.AddYears(-1).ToString("yyyy") + "-12-01";
}
}
else
{
sxdate = DateTime.Now.ToString("yyyy-MM") + "-01";
}
}
if (hour > 20)
{
sxdate = DateTime.Now.ToString("yyyy-MM") + "-01";
}
}
defalutHash.Add("hrf008043", sxdate); //生效日期
}
//草稿儲存後要將主旨清除
protected override void AfterCreateToolSaveForm()
{
base.TxtCreateToolSubject.Text = String.Empty;
}
#endregion
#region DB 相關 Method
#region 取得EasyFlow資料庫欄位(1欄位)
/// <summary>
/// 取得EasyFlow資料庫欄位(1欄位)
/// </summary>
/// <param name="pSQLString">SQL Command</param>
/// <param name="pValue">欄位 ID</param>
/// <returns>欄位值</returns>
public string getEasyFlowDataFieldValue(string pSQLString,string pValue)
{
string tResult = "";
try
{
UserInfoClass tClass = (UserInfoClass)Session["UserInfo"];
DBCommand dbCommand = DscDBData.GetDataDBCommand();
//2010/12/27:3.2.1.15:hiro:Q00-20101227002:修正下拉選單預設值中包含「+」、「-」字元,無法新增表單↓
//pSQLString = pSQLString.ToLower().Replace("from", "from " + tClass.Company.ToString().Trim() + "..");
bool bHaveTwinSpace = true;
while(bHaveTwinSpace){
if(pSQLString.IndexOf(" ")!=-1 || pSQLString.IndexOf("\r\n")!=-1){
pSQLString=pSQLString.Replace("\r\n"," ").Replace(" "," ");
}
else{
bHaveTwinSpace=false;
}
}
int intFromPosition = pSQLString.ToLower().IndexOf("from");
pSQLString = pSQLString.Substring(0, intFromPosition) + "from " + tClass.Company.ToString().Trim() + ".." +pSQLString.Substring(intFromPosition+5);
//2010/12/27:3.2.1.15:hiro:Q00-20101227002:修正下拉選單預設值中包含「+」、「-」字元,無法新增表單↑
DataTable tDt = dbCommand.Query(pSQLString);
if (tDt != null)
{
for (int i = 0; i < tDt.Rows.Count; i++)
{
tResult = tDt.Rows[0]["" + pValue + ""].ToString().Trim();
}
}
}
catch (Exception e)
{
}
return tResult;
}
#endregion
#region 取得EasyFlow資料庫欄位(2欄位)
/// <summary>
/// 取得EasyFlow資料庫欄位(2欄位)
/// </summary>
/// <param name="pSQLString">SQL Command</param>
/// <param name="pValue">欄位 ID</param>
/// <param name="pText">欄位 ID</param>
/// <returns>欄位值(以 § 分隔)</returns>
public string createEasyFlowDataTable(string pSQLString, string pValue, string pText)
{
string tResult = "";
try
{
UserInfoClass tClass = (UserInfoClass)Session["UserInfo"];
DBCommand dbCommand = DscDBData.GetDataDBCommand();
//2010/12/27:3.2.1.15:hiro:Q00-20101227002:修正下拉選單預設值中包含「+」、「-」字元,無法新增表單↓
//pSQLString = pSQLString.ToLower().Replace("from ", "from " + tClass.Company.ToString().Trim() + "..");
bool bHaveTwinSpace = true;
while(bHaveTwinSpace){
if(pSQLString.IndexOf(" ")!=-1 || pSQLString.IndexOf("\r\n")!=-1){
pSQLString=pSQLString.Replace("\r\n"," ").Replace(" "," ");
}
else{
bHaveTwinSpace=false;
}
}
int intFromPosition = pSQLString.ToLower().IndexOf("from");
pSQLString = pSQLString.Substring(0, intFromPosition) + "from " + tClass.Company.ToString().Trim() + ".." +pSQLString.Substring(intFromPosition+5);
//2010/12/27:3.2.1.15:hiro:Q00-20101227002:修正下拉選單預設值中包含「+」、「-」字元,無法新增表單↑
DataTable tDt = dbCommand.Query(pSQLString);
if (tDt != null)
{
for (int i = 0; i < tDt.Rows.Count; i++)
{
if (i != tDt.Rows.Count - 1)
tResult += tDt.Rows[i]["" + pValue + ""].ToString().Trim() + "Φ" + tDt.Rows[i]["" + pText + ""].ToString().Trim() + "§";
else
tResult += tDt.Rows[i]["" + pValue + ""].ToString().Trim() + "Φ" + tDt.Rows[i]["" + pText + ""].ToString().Trim();
}
}
}
catch (Exception e)
{
}
return tResult;
}
#endregion
#region 取得EasyFlow資料庫欄位自訂連線字串(1欄位)
/// <summary>
/// 取得EasyFlow資料庫欄位自訂連線字串(1欄位)
/// </summary>
/// <param name="pSQLString">SQL Command</param>
/// <param name="pConn">連線字串</param>
/// <param name="pValue">欄位 ID</param>
/// <returns>欄位值</returns>
public string getSQLSERVERDataField(string pSQLString, string pConn, string pValue)
{
string tResult = "";
try
{
DataSet tDs = new DataSet();
SqlConnection tDbConnection = new SqlConnection(pConn);//來源資料庫連線資訊
tDbConnection.Open();
SqlDataAdapter tAdpt = new SqlDataAdapter(pSQLString, pConn);//來源資料表配接器
tAdpt.Fill(tDs, "Result");
DataTable tDt = tDs.Tables["Result"];//離線來源資料"表"生出
if (tDt != null)
{
for (int i = 0; i < tDt.Rows.Count; i++)
{
tResult = tDt.Rows[0]["" + pValue + ""].ToString().Trim();
}
}
}
catch (Exception e)
{
}
return tResult;
}
#endregion
#region 取得EasyFlow資料庫欄位自訂連線字串(2欄位)
/// <summary>
/// 取得EasyFlow資料庫欄位自訂連線字串(2欄位)
/// </summary>
/// <param name="pSQLString">SQL Command</param>
/// <param name="pConn">連線字串</param>
/// <param name="pValue">欄位 ID</param>
/// <param name="pText">欄位 ID</param>
/// <returns>欄位值(以 § 分隔)</returns>
public string createSQLSERVERDataTable(string pSQLString, string pConn, string pValue, string pText)
{
string tResult = "";
try
{
DataSet tDs = new DataSet();
SqlConnection tDbConnection = new SqlConnection(pConn);//來源資料庫連線資訊
tDbConnection.Open();
SqlDataAdapter tAdpt = new SqlDataAdapter(pSQLString, pConn);//來源資料表配接器
tAdpt.Fill(tDs, "Result");
DataTable tDt = tDs.Tables["Result"];//離線來源資料"表"生出
if (tDt != null)
{
for (int i = 0; i < tDt.Rows.Count; i++)
{
if (i != tDt.Rows.Count - 1)
tResult += tDt.Rows[i]["" + pValue + ""].ToString().Trim() + "Φ" + tDt.Rows[i]["" + pText + ""].ToString().Trim() + "§";
else
tResult += tDt.Rows[i]["" + pValue + ""].ToString().Trim() + "Φ" + tDt.Rows[i]["" + pText + ""].ToString().Trim();
}
}
}
catch (Exception e)
{
}
return tResult;
}
#endregion
#region 取得Oracle資料庫(1欄位)
/// <summary>
/// 取得Oracle資料庫欄位(1欄位)
/// </summary>
/// <param name="pSQLString">SQL Command</param>
/// <param name="pConn">連線字串</param>
/// <param name="pValue">欄位 ID</param>
/// <returns>欄位值</returns>
public string getOracleDataField(string pSQLString, string pConn, string pValue)
{
string tResult = "";
try
{
DataSet tDs = new DataSet();
OracleConnection tDbConnection = new OracleConnection(pConn);//來源資料庫連線資訊
tDbConnection.Open();
OracleDataAdapter tAdpt = new OracleDataAdapter(pSQLString, pConn);//來源資料表配接器
tAdpt.Fill(tDs, "Result");
DataTable tDt = tDs.Tables["Result"];//離線來源資料"表"生出
if (tDt != null)
{
for (int i = 0; i < tDt.Rows.Count; i++)
{
tResult = tDt.Rows[0]["" + pValue + ""].ToString().Trim();
}
}
}
catch (Exception e)
{
}
return tResult;
}
#endregion
#region 取得Oracle資料庫(2欄位)
/// <summary>
/// 取得Oracle資料庫欄位(2欄位)
/// </summary>
/// <param name="pSQLString">SQL Command</param>
/// <param name="pConn">連線字串</param>
/// <param name="pValue">欄位 ID</param>
/// <param name="pText">欄位 ID</param>
/// <returns>欄位值(以 § 分隔)</returns>
public string createOracleDataTable(string pSQLString, string pConn, string pValue, string pText)
{
string tResult = "";
try
{
DataSet tDs = new DataSet();
OracleConnection tDbConnection = new OracleConnection(pConn);//來源資料庫連線資訊
tDbConnection.Open();
OracleDataAdapter tAdpt = new OracleDataAdapter(pSQLString, pConn);//來源資料表配接器
tAdpt.Fill(tDs, "Result");
DataTable tDt = tDs.Tables["Result"];//離線來源資料"表"生出
if (tDt != null)
{
for (int i = 0; i < tDt.Rows.Count; i++)
{
if (i != tDt.Rows.Count - 1)
tResult += tDt.Rows[i]["" + pValue + ""].ToString().Trim() + "Φ" + tDt.Rows[i]["" + pText + ""].ToString().Trim() + "§";
else
tResult += tDt.Rows[i]["" + pValue + ""].ToString().Trim() + "Φ" + tDt.Rows[i]["" + pText + ""].ToString().Trim();
}
}
}
catch (Exception e)
{
}
return tResult;
}
#endregion
#region 取得Access資料庫欄位(1欄位)
/// <summary>
/// 取得Access資料庫欄位(1欄位)
/// </summary>
/// <param name="pSQLString">SQL Command</param>
/// <param name="pConn">連線字串</param>
/// <param name="pValue">欄位 ID</param>
/// <returns>欄位值</returns>
public string getAccessDataField(string pSQLString, string pConn, string pValue)
{
string tResult = "";
try
{
DataSet tDs = new DataSet();
OleDbConnection tDbConnection = new OleDbConnection(pConn);//來源資料庫連線資訊
tDbConnection.Open();
OleDbDataAdapter tAdpt = new OleDbDataAdapter(pSQLString, pConn);//來源資料表配接器
tAdpt.Fill(tDs, "Result");
DataTable tDt = tDs.Tables["Result"];//離線來源資料"表"生出
if (tDt != null)
{
for (int i = 0; i < tDt.Rows.Count; i++)
{
tResult = tDt.Rows[0]["" + pValue + ""].ToString().Trim();
}
}
}
catch (Exception e)
{
}
return tResult;
}
#endregion
#region 取得Access資料庫欄位(2欄位)
/// <summary>
/// 取得Access資料庫欄位(2欄位)
/// </summary>
/// <param name="pSQLString">SQL Command</param>
/// <param name="pConn">連線字串</param>
/// <param name="pValue">欄位 ID</param>
/// <param name="pText">欄位 ID</param>
/// <returns>欄位值(以 § 分隔)</returns>
public string createAccessDataTable(string pSQLString, string pConn, string pValue, string pText)
{
string tResult = "";
try
{
DataSet tDs = new DataSet();
OleDbConnection tDbConnection = new OleDbConnection(pConn);//來源資料庫連線資訊
tDbConnection.Open();
OleDbDataAdapter tAdpt = new OleDbDataAdapter(pSQLString, pConn);//來源資料表配接器
tAdpt.Fill(tDs, "Result");
DataTable tDt = tDs.Tables["Result"];//離線來源資料"表"生出
if (tDt != null)
{
for (int i = 0; i < tDt.Rows.Count; i++)
{
if (i != tDt.Rows.Count - 1)
tResult += tDt.Rows[i]["" + pValue + ""].ToString().Trim() + "Φ" + tDt.Rows[i]["" + pText + ""].ToString().Trim() + "§";
else
tResult += tDt.Rows[i]["" + pValue + ""].ToString().Trim() + "Φ" + tDt.Rows[i]["" + pText + ""].ToString().Trim();
}
}
}
catch (Exception e)
{
}
return tResult;
}
#endregion
#region 取得ODBC資料庫欄位(1欄位)
/// <summary>
/// 取得ODBC資料庫欄位(1欄位)
/// </summary>
/// <param name="pSQLString">SQL Command</param>
/// <param name="pConn">連線字串</param>
/// <param name="pValue">欄位 ID</param>
/// <returns>欄位值</returns>
public string getODBCDataField(string pSQLString, string pConn, string pValue)
{
string tResult = "";
try
{
DataSet tDs = new DataSet();
OdbcConnection tDbConnection = new OdbcConnection(pConn);//來源資料庫連線資訊
tDbConnection.Open();
OdbcDataAdapter tAdpt = new OdbcDataAdapter(pSQLString, pConn);//來源資料表配接器
tAdpt.Fill(tDs, "Result");
DataTable tDt = tDs.Tables["Result"];//離線來源資料"表"生出
if (tDt != null)
{
for (int i = 0; i < tDt.Rows.Count; i++)
{
tResult = tDt.Rows[0]["" + pValue + ""].ToString().Trim();
}
}
}
catch (Exception e)
{
}
return tResult;
}
#endregion
#region 取得ODBC資料庫欄位(2欄位)
/// <summary>
/// 取得ODBC資料庫欄位(2欄位)
/// </summary>
/// <param name="pSQLString">SQL Command</param>
/// <param name="pConn">連線字串</param>
/// <param name="pValue">欄位 ID</param>
/// <param name="pText">欄位 ID</param>
/// <returns>欄位值(以 § 分隔)</returns>
public string createODBCDataTable(string pSQLString, string pConn, string pValue, string pText)
{
string tResult = "";
try
{
DataSet tDs = new DataSet();
OdbcConnection tDbConnection = new OdbcConnection(pConn);//來源資料庫連線資訊
tDbConnection.Open();
OdbcDataAdapter tAdpt = new OdbcDataAdapter(pSQLString, pConn);//來源資料表配接器
tAdpt.Fill(tDs, "Result");
DataTable tDt = tDs.Tables["Result"];//離線來源資料"表"生出
if (tDt != null)
{
for (int i = 0; i < tDt.Rows.Count; i++)
{
if (i != tDt.Rows.Count - 1)
tResult += tDt.Rows[i]["" + pValue + ""].ToString().Trim() + "Φ" + tDt.Rows[i]["" + pText + ""].ToString().Trim() + "§";
else
tResult += tDt.Rows[i]["" + pValue + ""].ToString().Trim() + "Φ" + tDt.Rows[i]["" + pText + ""].ToString().Trim();
}
}
}
catch (Exception e)
{
}
return tResult;
}
#endregion
#endregion
#region createSelectItemFromDB 產生下拉式選項的值
/// <summary>
/// 產生下拉式選項的值
/// </summary>
/// <param name="pReturnValue">要產生的選項字串</param>
/// <param name="pDDL">DropDownList 控制項 ID</param>
/// <returns>true=成功; false=失敗</returns>
public bool createSelectItemFromDB(string pReturnValue, DscDropDownList pDDL)
{
bool tRet = false;
string[] temptArray = pReturnValue.Split('§');
string[] tArray;
string tValue = "";
string tText = "";
int iCount = temptArray.Length;
ListItem tList = null;
try
{
for (int i = 0; i < temptArray.Length; i++)
{
tArray = temptArray[i].Split('Φ');
tValue = tArray[0].Trim(); //Value (內存)
tText = tArray[1].Trim(); //Text (外顯)
if (!string.IsNullOrEmpty(tValue))
{
tList = new ListItem(tText, tValue);
pDDL.Items.Add(tList);
}
}
tRet = true;
}
catch (Exception e)
{
tRet = false;
}
return tRet;
}
#endregion
#region ReGetCondValue , 設定條件欄位陣列
protected override void ReGetCondValue(object[,] pAryCondValue)
{
string tValue = string.Empty;
string tTemp = string.Empty;
double tDbl = 0;
base.ReGetCondValue(pAryCondValue);
}
#endregion
#region 重設表單代理人, 表單關係人
//重設表單代理人
protected override string ReGetAgentID()
{
return base.AryFormProperty.Filler.ToString().Trim();;
}
//重設表單關係人
protected override string ReGetParserRoleID()
{
return base.AryFormProperty.Filler.ToString().Trim();;
}
#endregion
protected override void BeforePrint(ref string pReport, ref string pReportID, ref string pWhere, ref string pOrder, ref string pReportDirectory)
{
pReport = "HRF008";
pReportID = "HRF008_02";//憑證式
pWhere = "AND (hrf008001='" + this.formID + "') AND (hrf008002='" + this.SheetNo + "')";
pReportDirectory = "HRF008";
base.BeforePrint(ref pReportID, ref pWhere, ref pOrder, ref pOrder, ref pReportDirectory);
}
/// <summary>
/// 审批完成后所作的操作
/// </summary>
protected override void AfterApprove()
{
//判断是否结案
if (this.BlnCaseClosed)
{
switch (AryFlowProperty.SerialSignResult)
{
case "2"://同意
//dbComment.ExeNonQuery(sql.ToString());//执行SQL语句将数据插入TotalInfo表中
try
{
//要INSERT的sql语句
StringBuilder sql = GetInsertSql(this.formID, this.SheetNo);
InsertLog(sql.ToString()); //写Log
string issucess = getSQLSERVERDataField(sql.ToString(), sqlHRConn, "AttendanceCollectId");
Response.Write("<script>alert('数据已经全部送到HR!!!')</script>");
}
catch
{
}
break;
}
}
}
/// <summary>
/// 把要塞入HR的SQL语句写进来
/// </summary>
/// <param name="sql"></param>
public void InsertLog(string sql)
{
sql = sql.Replace("'", "''");
StringBuilder sqlInsert = new StringBuilder();
sqlInsert.Append("Insert into " + this.UserInfo.Company + "..hrformslog(");
sqlInsert.Append("hrformslog001,"); //表单代号
sqlInsert.Append("hrformslog002,");//表单单号
sqlInsert.Append("hrformslog003,");//登录人
sqlInsert.Append("hrformslog004,");//时间
sqlInsert.Append("hrformslog005");//sql语句
sqlInsert.Append(")values(");
sqlInsert.Append("N'" + this.formID + "',");
sqlInsert.Append("N'" + this.SheetNo + "',");
sqlInsert.Append("N'" + this.UserInfo.LoginId + "',");
sqlInsert.Append("N'" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "',");
sqlInsert.Append("N'" + sql + "')");
// this.m_dbCommand.Query(sqlInsert.ToString());
this.m_dbCommand.ExeNonQuery(sqlInsert.ToString());
}
/// <summary>
/// 根据员工工号,得到employeeid
/// </summary>
/// <param name="Code"></param>
/// <returns></returns>
public string GetEmployeeId(string Code)
{
string strSql = "";
strSql = "select EmployeeId,Code from HR.HRMDB.dbo.Employee where Code='" + Code + "'";
string employeeid = "";
DataTable dt = new DataTable();
dt = m_dbCommand.Query(strSql);
if (dt.Rows.Count > 0)
{
employeeid = dt.Rows[0]["EmployeeId"].ToString();
}
return employeeid;
}
/// <summary>
/// 根据年月,得到薪资月
/// </summary>
/// <param name="Code"></param>
/// <returns></returns>
public string GetSalaryMonthId(string year, string month)
{
string strSql = "";
strSql = " select SalaryMonthId from HR.HRMDB.dbo.SalaryMonth where SalaryYear='" + year + "' and Month='" + month + "'";
DataTable dt = new DataTable();
dt = m_dbCommand.Query(strSql);
string SalaryMonthId = "";
if (dt.Rows.Count > 0)
{
SalaryMonthId = dt.Rows[0]["SalaryMonthId"].ToString();
}
return SalaryMonthId;
}
public StringBuilder GetInsertSql(string hrf008001, string hrf008002)
{
//得到个人奖惩单的表单数据
string strsql = "";
strsql = " select * from " + this.UserInfo.Company + "..hrf008 where hrf008001='" + hrf008001 + "' and hrf008002='" + hrf008002 + "'";
DataTable dt_hrf008 = new DataTable();
dt_hrf008 = m_dbCommand.Query(strsql);
string hrf008026 = dt_hrf008.Rows[0]["hrf008026"].ToString();
string hrf008028 = dt_hrf008.Rows[0]["hrf008028"].ToString();
string hrf008030 = dt_hrf008.Rows[0]["hrf008030"].ToString();
string hrf008037 = dt_hrf008.Rows[0]["hrf008037"].ToString();
string hrf008039 = dt_hrf008.Rows[0]["hrf008039"].ToString();
string hrf008041 = dt_hrf008.Rows[0]["hrf008041"].ToString();
string hrf008051 = dt_hrf008.Rows[0]["hrf008051"].ToString();
string hrf008043 = dt_hrf008.Rows[0]["hrf008043"].ToString();
string EmployeeId = GetEmployeeId(dt_hrf008.Rows[0]["hrf008006"].ToString());
string RecordDate = dt_hrf008.Rows[0]["hrf008005"].ToString();
string IsSalary = "1";
//string InureDate = DateTime.Parse(RecordDate).Year.ToString() + "-" + DateTime.Parse(RecordDate).Month.ToString() + "-01";
string InureDate = hrf008043;
string Remark = dt_hrf008.Rows[0]["hrf008013"].ToString();
string year = DateTime.Parse(InureDate).Year.ToString();
string month = DateTime.Parse(InureDate).Month.ToString();
string BeginMonth = GetSalaryMonthId(year, month);
string EndMonth = BeginMonth;
string Flag = "1";
string CreateDate = RecordDate;
string CreateBy = GetEmployeeId(dt_hrf008.Rows[0]["hrf008003"].ToString());
StringBuilder sql = new StringBuilder();
if (hrf008026 == "Y")
{
string EmployeeRewardsId = dt_hrf008.Rows[0]["hrf008001"].ToString() + dt_hrf008.Rows[0]["hrf008002"].ToString() + "01";
string EmployeeRewardsItemId = "1252476218318db794b359ea12c95d3b7ccb2";
string Times = dt_hrf008.Rows[0]["hrf008045"].ToString();
double money1 = 0;
money1 = double.Parse(Times) * 50 + double.Parse(dt_hrf008.Rows[0]["hrf008027"].ToString());
string Money = money1.ToString();
sql.Append(" INSERT INTO EmployeeRewards(");
sql.Append(" EmployeeRewardsId,"); //Id
sql.Append(" EmployeeId,"); //
sql.Append(" EmployeeRewardsItemId,"); //
sql.Append(" RecordDate,"); //
sql.Append(" IsSalary,"); //
sql.Append(" InureDate,"); //
sql.Append(" Remark,"); //
sql.Append(" BeginMonth,"); //
sql.Append(" EndMonth,"); //
sql.Append(" Flag,"); //
sql.Append(" CreateDate,"); //
sql.Append(" CreateBy,"); //
sql.Append(" Times,"); //
sql.Append(" Money "); //
sql.Append(")values(");//
sql.Append("N'" + EmployeeRewardsId + "',");//
sql.Append("N'" + EmployeeId + "',");//
sql.Append("N'" + EmployeeRewardsItemId + "',");//
sql.Append("N'" + RecordDate + "',");//
sql.Append("N'" + IsSalary + "',");//
sql.Append("N'" + InureDate + "',");//
sql.Append("N'" + Remark + "',");//
sql.Append("N'" + BeginMonth + "',");//
sql.Append("N'" + EndMonth + "',");//
sql.Append("N'" + Flag + "',");//
sql.Append("N'" + CreateDate + "',");//
sql.Append("N'" + CreateBy + "',");//
sql.Append("N'" + Times + "',");//
sql.Append("N'" + Money + "')");//
sql.Append("\r\n");
}
if (hrf008028 == "Y")
{
string EmployeeRewardsId = dt_hrf008.Rows[0]["hrf008001"].ToString() + dt_hrf008.Rows[0]["hrf008002"].ToString() + "02";
string EmployeeRewardsItemId = "125249250382f4b8a4997b41950826596e4f8";
string Times = dt_hrf008.Rows[0]["hrf008046"].ToString();
double money1 = 0;
money1 = double.Parse(Times) * 100 + double.Parse(dt_hrf008.Rows[0]["hrf008029"].ToString());
string Money = money1.ToString();
sql.Append(" INSERT INTO EmployeeRewards(");
sql.Append(" EmployeeRewardsId,"); //Id
sql.Append(" EmployeeId,"); //
sql.Append(" EmployeeRewardsItemId,"); //
sql.Append(" RecordDate,"); //
sql.Append(" IsSalary,"); //
sql.Append(" InureDate,"); //
sql.Append(" Remark,"); //
sql.Append(" BeginMonth,"); //
sql.Append(" EndMonth,"); //
sql.Append(" Flag,"); //
sql.Append(" CreateDate,"); //
sql.Append(" CreateBy,"); //
sql.Append(" Times,"); //
sql.Append(" Money "); //
sql.Append(")values(");//
sql.Append("N'" + EmployeeRewardsId + "',");//
sql.Append("N'" + EmployeeId + "',");//
sql.Append("N'" + EmployeeRewardsItemId + "',");//
sql.Append("N'" + RecordDate + "',");//
sql.Append("N'" + IsSalary + "',");//
sql.Append("N'" + InureDate + "',");//
sql.Append("N'" + Remark + "',");//
sql.Append("N'" + BeginMonth + "',");//
sql.Append("N'" + EndMonth + "',");//
sql.Append("N'" + Flag + "',");//
sql.Append("N'" + CreateDate + "',");//
sql.Append("N'" + CreateBy + "',");//
sql.Append("N'" + Times + "',");//
sql.Append("N'" + Money + "')");//
sql.Append("\r\n");
}
if (hrf008030 == "Y")
{
string EmployeeRewardsId = dt_hrf008.Rows[0]["hrf008001"].ToString() + dt_hrf008.Rows[0]["hrf008002"].ToString() + "03";
string EmployeeRewardsItemId = "125243d69c95762424b7685afa62cec1a784e";
string Times = dt_hrf008.Rows[0]["hrf008047"].ToString();
double money1 = 0;
money1 = double.Parse(Times) * 200 + double.Parse(dt_hrf008.Rows[0]["hrf008031"].ToString());
string Money = money1.ToString();
sql.Append(" INSERT INTO EmployeeRewards(");
sql.Append(" EmployeeRewardsId,"); //Id
sql.Append(" EmployeeId,"); //
sql.Append(" EmployeeRewardsItemId,"); //
sql.Append(" RecordDate,"); //
sql.Append(" IsSalary,"); //
sql.Append(" InureDate,"); //
sql.Append(" Remark,"); //
sql.Append(" BeginMonth,"); //
sql.Append(" EndMonth,"); //
sql.Append(" Flag,"); //
sql.Append(" CreateDate,"); //
sql.Append(" CreateBy,"); //
sql.Append(" Times,"); //
sql.Append(" Money "); //
sql.Append(")values(");//
sql.Append("N'" + EmployeeRewardsId + "',");//
sql.Append("N'" + EmployeeId + "',");//
sql.Append("N'" + EmployeeRewardsItemId + "',");//
sql.Append("N'" + RecordDate + "',");//
sql.Append("N'" + IsSalary + "',");//
sql.Append("N'" + InureDate + "',");//
sql.Append("N'" + Remark + "',");//
sql.Append("N'" + BeginMonth + "',");//
sql.Append("N'" + EndMonth + "',");//
sql.Append("N'" + Flag + "',");//
sql.Append("N'" + CreateDate + "',");//
sql.Append("N'" + CreateBy + "',");//
sql.Append("N'" + Times + "',");//
sql.Append("N'" + Money + "')");//
sql.Append("\r\n");
}
if (hrf008037 == "Y")
{
string EmployeeRewardsId = dt_hrf008.Rows[0]["hrf008001"].ToString() + dt_hrf008.Rows[0]["hrf008002"].ToString() + "04";
string EmployeeRewardsItemId = "1252423f5906b904a40a38d683ca265bc71d8";
string Times = dt_hrf008.Rows[0]["hrf008048"].ToString();
double money1 = 0;
money1 = double.Parse(Times) * 50 + double.Parse(dt_hrf008.Rows[0]["hrf008038"].ToString());
string Money = money1.ToString();
sql.Append(" INSERT INTO EmployeeRewards(");
sql.Append(" EmployeeRewardsId,"); //Id
sql.Append(" EmployeeId,"); //
sql.Append(" EmployeeRewardsItemId,"); //
sql.Append(" RecordDate,"); //
sql.Append(" IsSalary,"); //
sql.Append(" InureDate,"); //
sql.Append(" Remark,"); //
sql.Append(" BeginMonth,"); //
sql.Append(" EndMonth,"); //
sql.Append(" Flag,"); //
sql.Append(" CreateDate,"); //
sql.Append(" CreateBy,"); //
sql.Append(" Times,"); //
sql.Append(" Money "); //
sql.Append(")values(");//
sql.Append("N'" + EmployeeRewardsId + "',");//
sql.Append("N'" + EmployeeId + "',");//
sql.Append("N'" + EmployeeRewardsItemId + "',");//
sql.Append("N'" + RecordDate + "',");//
sql.Append("N'" + IsSalary + "',");//
sql.Append("N'" + InureDate + "',");//
sql.Append("N'" + Remark + "',");//
sql.Append("N'" + BeginMonth + "',");//
sql.Append("N'" + EndMonth + "',");//
sql.Append("N'" + Flag + "',");//
sql.Append("N'" + CreateDate + "',");//
sql.Append("N'" + CreateBy + "',");//
sql.Append("N'" + Times + "',");//
sql.Append("N'" + Money + "')");//
sql.Append("\r\n");
}
if (hrf008039 == "Y")
{
string EmployeeRewardsId = dt_hrf008.Rows[0]["hrf008001"].ToString() + dt_hrf008.Rows[0]["hrf008002"].ToString() + "05";
string EmployeeRewardsItemId = "12524ec0526e4995643f7b26a7825e6a3310b";
string Times = dt_hrf008.Rows[0]["hrf008049"].ToString();
double money1 = 0;
money1 = double.Parse(Times) * 100 + double.Parse(dt_hrf008.Rows[0]["hrf008040"].ToString());
string Money = money1.ToString();
sql.Append(" INSERT INTO EmployeeRewards(");
sql.Append(" EmployeeRewardsId,"); //Id
sql.Append(" EmployeeId,"); //
sql.Append(" EmployeeRewardsItemId,"); //
sql.Append(" RecordDate,"); //
sql.Append(" IsSalary,"); //
sql.Append(" InureDate,"); //
sql.Append(" Remark,"); //
sql.Append(" BeginMonth,"); //
sql.Append(" EndMonth,"); //
sql.Append(" Flag,"); //
sql.Append(" CreateDate,"); //
sql.Append(" CreateBy,"); //
sql.Append(" Times,"); //
sql.Append(" Money "); //
sql.Append(")values(");//
sql.Append("N'" + EmployeeRewardsId + "',");//
sql.Append("N'" + EmployeeId + "',");//
sql.Append("N'" + EmployeeRewardsItemId + "',");//
sql.Append("N'" + RecordDate + "',");//
sql.Append("N'" + IsSalary + "',");//
sql.Append("N'" + InureDate + "',");//
sql.Append("N'" + Remark + "',");//
sql.Append("N'" + BeginMonth + "',");//
sql.Append("N'" + EndMonth + "',");//
sql.Append("N'" + Flag + "',");//
sql.Append("N'" + CreateDate + "',");//
sql.Append("N'" + CreateBy + "',");//
sql.Append("N'" + Times + "',");//
sql.Append("N'" + Money + "')");//
sql.Append("\r\n");
}
if (hrf008041 == "Y")
{
string EmployeeRewardsId = dt_hrf008.Rows[0]["hrf008001"].ToString() + dt_hrf008.Rows[0]["hrf008002"].ToString() + "06";
string EmployeeRewardsItemId = "12524545c094a4e3d49e48e9a967090a63a66";
string Times = dt_hrf008.Rows[0]["hrf008050"].ToString();
double money1 = 0;
money1 = double.Parse(Times) * 200 + double.Parse(dt_hrf008.Rows[0]["hrf008042"].ToString());
string Money = money1.ToString();
sql.Append(" INSERT INTO EmployeeRewards(");
sql.Append(" EmployeeRewardsId,"); //Id
sql.Append(" EmployeeId,"); //
sql.Append(" EmployeeRewardsItemId,"); //
sql.Append(" RecordDate,"); //
sql.Append(" IsSalary,"); //
sql.Append(" InureDate,"); //
sql.Append(" Remark,"); //
sql.Append(" BeginMonth,"); //
sql.Append(" EndMonth,"); //
sql.Append(" Flag,"); //
sql.Append(" CreateDate,"); //
sql.Append(" CreateBy,"); //
sql.Append(" Times,"); //
sql.Append(" Money "); //
sql.Append(")values(");//
sql.Append("N'" + EmployeeRewardsId + "',");//
sql.Append("N'" + EmployeeId + "',");//
sql.Append("N'" + EmployeeRewardsItemId + "',");//
sql.Append("N'" + RecordDate + "',");//
sql.Append("N'" + IsSalary + "',");//
sql.Append("N'" + InureDate + "',");//
sql.Append("N'" + Remark + "',");//
sql.Append("N'" + BeginMonth + "',");//
sql.Append("N'" + EndMonth + "',");//
sql.Append("N'" + Flag + "',");//
sql.Append("N'" + CreateDate + "',");//
sql.Append("N'" + CreateBy + "',");//
sql.Append("N'" + Times + "',");//
sql.Append("N'" + Money + "')");//
sql.Append("\r\n");
}
if (hrf008051 == "Y")
{
string EmployeeRewardsId = dt_hrf008.Rows[0]["hrf008001"].ToString() + dt_hrf008.Rows[0]["hrf008002"].ToString() + "07";
string EmployeeRewardsItemId = "138292dbacda3a9514e7eb70e383759de86ea";
string Times = "1";
double money1 = 0;
string Money = money1.ToString();
sql.Append(" INSERT INTO EmployeeRewards(");
sql.Append(" EmployeeRewardsId,"); //Id
sql.Append(" EmployeeId,"); //
sql.Append(" EmployeeRewardsItemId,"); //
sql.Append(" RecordDate,"); //
sql.Append(" IsSalary,"); //
sql.Append(" InureDate,"); //
sql.Append(" Remark,"); //
sql.Append(" BeginMonth,"); //
sql.Append(" EndMonth,"); //
sql.Append(" Flag,"); //
sql.Append(" CreateDate,"); //
sql.Append(" CreateBy,"); //
sql.Append(" Times,"); //
sql.Append(" Money "); //
sql.Append(")values(");//
sql.Append("N'" + EmployeeRewardsId + "',");//
sql.Append("N'" + EmployeeId + "',");//
sql.Append("N'" + EmployeeRewardsItemId + "',");//
sql.Append("N'" + RecordDate + "',");//
sql.Append("N'" + IsSalary + "',");//
sql.Append("N'" + InureDate + "',");//
sql.Append("N'" + Remark + "',");//
sql.Append("N'" + BeginMonth + "',");//
sql.Append("N'" + EndMonth + "',");//
sql.Append("N'" + Flag + "',");//
sql.Append("N'" + CreateDate + "',");//
sql.Append("N'" + CreateBy + "',");//
sql.Append("N'" + Times + "',");//
sql.Append("N'" + Money + "')");//
sql.Append("\r\n");
}
return sql;
}
// <summary>
/// 根据工号得到对应级别的所有主管
/// </summary>
/// <param name="resak001"></param>
/// <returns></returns>
protected ArrayList get_leads(string para_user_no)
{
UserInfoClass tClass = (UserInfoClass)Session["UserInfo"];
ArrayList arr = new ArrayList();
//arr.Add(para_user_no);
string user_no = para_user_no;
DataTable dt_dep = new DataTable();
dt_dep = m_dbCommand.Query("select substring(b.Code,1,4)depCode from HR.HRMDB.dbo.Employee a left join HR.HRMDB.dbo.Department b on a.DepartmentId=b.DepartmentId where a.Code='" + user_no + "'");
int level = 0;
string depcode = dt_dep.Rows[0][0].ToString();
while (level <= 1301)
{
DataTable dt = new DataTable();
//得到直属主管的工号,职等
dt = m_dbCommand.Query("select b.resak001,b.resak006,a.resak001,a.resak006 from " + tClass.Company + "..resak a," + tClass.Company
+ "..resak b where a.resak013=b.resak001 and a.resak001='" + user_no + "'");
if (dt.Rows.Count > 0)
{
user_no = dt.Rows[0][0].ToString();
level = Int16.Parse(dt.Rows[0][1].ToString());
if (level <= 1301)
{
arr.Add(user_no);
}
}
else
{
level = 99999;
}
}
if (depcode == "C0HR")
{
arr.Add("CY100116");
}
if (depcode == "C0GS")
{
arr.Add("CY100025");
}
return arr;
}
/// 表单送签后塞的流程
protected override void BeforeSendNewFormAddFlow(tw.com.dsc.easyflowDotNet.kernelBasePage.EFBasePage.TRFlowRESDB[] xFlowData, ref bool xBlnFlowChanged)
{
xBlnFlowChanged = false;
ArrayList list = new ArrayList();
list = get_leads(hrf008006.Text);
xFlowData = new TRFlowRESDB[list.Count];
for (int i = 0; i < list.Count; i++)
{
xFlowData[i].resdb001 = this.formID;
xFlowData[i].resdb002 = this.SheetNo;
xFlowData[i].resdb003 = (i + 1).ToString("0000");
xFlowData[i].resdb004 = "0010";
xFlowData[i].resdb005 = 1;
xFlowData[i].resdb006 = 1;
xFlowData[i].resdb007 = list[i].ToString();//工号
xFlowData[i].resdb008 = "";
xFlowData[i].resdb009 = "";
xFlowData[i].resdb010 = "";
xFlowData[i].resdb011 = 0;
xFlowData[i].resdb012 = "N";
xFlowData[i].resdb013 = "0";
xFlowData[i].resdb014 = "Y";
xFlowData[i].resdb015 = "N";
xFlowData[i].resdb016 = "N";
xFlowData[i].resdb017 = "Y";
xFlowData[i].resdb018 = "Y";
xFlowData[i].resdb019 = "Y";
xFlowData[i].resdb020 = "Y";
xFlowData[i].resdb021 = "Y";//是否可以增加附档
xFlowData[i].resdb022 = "N";
xFlowData[i].resdb023 = "N";
xFlowData[i].resdb024 = "Y";
xFlowData[i].resdb025 = "N";
xFlowData[i].resdb026 = "N";
xFlowData[i].resdb027 = "";
xFlowData[i].resdb028 = "";
xFlowData[i].resdb029 = "";
xFlowData[i].resdb030 = "Y";//是否必填签核意见
}
base.BeforeSendNewFormAddFlow(xFlowData, ref xBlnFlowChanged);
}
}
}