YL
2021-12-16 96fa1feae3bd8888de0b4fdaf9bd2e84866013dd
WebAPI/Controllers/BaseSet/Gy_EmployeeController.cs
@@ -7,6 +7,8 @@
using System.Data.SqlClient;
using System.Web.Http;
using WebAPI.Models;
using WebAPI.Service;
namespace WebAPI.Controllers
{
    public class Gy_EmployeeController : ApiController
@@ -25,36 +27,26 @@
        /// </summary>
        [Route("Gy_Employee/list")]
        [HttpGet]
        public object list(string sWhere)
        public object list(string sWhere,string Organization)
        {
            try
            {
                string sql1 = string.Format(@"select * from h_v_IF_EmployeeList where 组织名称='" + Organization + "'");
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("select * from h_v_IF_EmployeeList " + sWhere, "h_v_IF_EmployeeList");
                    ds = oCN.RunProcReturn(sql1 + sWhere + "order by HItemID desc", "h_v_IF_EmployeeList");
                }
                else
                {
                    string sql1 = "select * from h_v_IF_EmployeeList where 1 = 1 ";
                    string sql = sql1 + sWhere;
                    string sql = sql1 + sWhere + "order by HItemID desc";
                    ds = oCN.RunProcReturn(sql, "h_v_IF_EmployeeList");
                }
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "false!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "Sucess!";
                    objJsonResult.data = ds.Tables[0];
                    return objJsonResult;
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                return objJsonResult;
            }
            catch (Exception e)
            {
@@ -66,8 +58,743 @@
            }
        }
        /// <summary>
        /// 新增职员-保存按钮
        ///参数:string sql。
        ///返回值:object。
        /// </summary>
        [Route("Gy_Employee/AddNew")]
        [HttpPost]
        public object AddNew([FromBody] JObject oMain)
        {
            try
            {
                var _value = oMain["oMain"].ToString();
                string msg1 = _value.ToString();
                //反序列化
                msg1 = "[" + msg1.ToString() + "]";
                DAL.ClsGy_Employee_Ctl oDept = new DAL.ClsGy_Employee_Ctl();
                DAL.ClsGy_Employee_View oDeptHlp = new DAL.ClsGy_Employee_View();
                List<Gy_Employee> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Gy_Employee>>(msg1);
                long HItemID = list[0].HItemID;
                string HNumber = list[0].HNumber;
                string HName = list[0].HName;
                string HShortNumber = list[0].HNumber;
                long HParentID = list[0].HParentID;
                long HLevel = 1;
                string HHelpCode = list[0].HHelpCode;
                bool HEndFlag = list[0].HEndFlag;
                bool HStopflag = list[0].HStopflag;
                string HRemark = list[0].HRemark;
                string HUseFlag = list[0].HUseFlag;
                string HSex = list[0].HSex;
                string HIDCard = list[0].HIDCard;
                string HBirthDay = list[0].HBirthDay;
                string HAddress = list[0].HAddress;
                string HLinkPhone = list[0].HLinkPhone;
                string HMobilePhone = list[0].HMobilePhone;
                string HFax = list[0].HFax;
                string HPostalCode = list[0].HPostalCode;
                string HEmail = list[0].HEmail;
                string HBank = list[0].HBank;
                string HBankAccount = list[0].HBankAccount;
                long HGroupID = list[0].HGroupID;
                long HDeptID = list[0].HDeptID;
                long HPostID = list[0].HPostID;
                long HWorkTypeID = list[0].HWorkTypeID;
                long HCTPrjID = list[0].HCTPrjID;
                long HProcID = list[0].HProcID;
                string HBasePay = list[0].HBasePay;
                DateTime HInComDate = list[0].HInComDate;
                DateTime HDimissionDate = list[0].HDimissionDate;
                bool HOverType = list[0].HOverType;
                string HEmpType = list[0].HEmpType;
                string HOtherDeduct3 = list[0].HOtherDeduct3;
                string HDrydock = list[0].HDrydock;
                string HInsurance = list[0].HInsurance;
                string HMedicare = list[0].HMedicare;
                bool HNoBrushFlag = list[0].HNoBrushFlag;
                bool HShiftFlag = list[0].HShiftFlag;
                DateTime HContactDate = list[0].HContactDate;
                bool HStopwagesFlag = list[0].HStopwagesFlag;
                string HDimissionReason = list[0].HDimissionReason;
                long HDormID = list[0].HDormID;
                string HArchivesNo = list[0].HArchivesNo;
                DateTime HStayCardEDate = list[0].HStayCardEDate;
                DateTime HCheckCardEDate = list[0].HCheckCardEDate;
                string HJobCardNo = list[0].HJobCardNo;
                DateTime HJobCardEDate = list[0].HJobCardEDate;
                string HWorkType = list[0].HWorkType;
                long HContractYear = list[0].HContractYear;
                DateTime HContractBDate = list[0].HContractBDate;
                DateTime HContractEDate = list[0].HContractEDate;
                string HInsuranceNo = list[0].HInsuranceNo;
                DateTime HInsuranceDate = list[0].HInsuranceDate;
                string HInsuranceStatus = list[0].HInsuranceStatus;
                DateTime HSignDate = list[0].HSignDate;
                bool HSignStatus = list[0].HSignStatus;
                string HOldCompany = list[0].HOldCompany;
                string HMarr = list[0].HMarr;
                string HHomeAdd = list[0].HHomeAdd;
                string HNowAdd = list[0].HNowAdd;
                string HSpec = list[0].HSpec;
                string HCompLev = list[0].HCompLev;
                string HEngLev = list[0].HEngLev;
                DateTime HGradDate = list[0].HGradDate;
                string HGradSchool = list[0].HGradSchool;
                string HSalaryLev = list[0].HSalaryLev;
                long HDutyID = list[0].HDutyID;
                string HProTitleID = list[0].HProTitleID;
                string HKnowLev = list[0].HKnowLev;
                string HAvoird = list[0].HAvoird;
                string HStature = list[0].HStature;
                string HBloodType = list[0].HBloodType;
                string HBlightyType = list[0].HBlightyType;
                string HGovStatus = list[0].HGovStatus;
                string HNation = list[0].HNation;
                string HBlighty = list[0].HBlighty;
                long HAge = list[0].HAge;
                string HExamLevPostMoney = list[0].HExamLevPostMoney;
                string HBSTDeptID = list[0].HBSTDeptID;
                string HRelDate = list[0].HRelDate;
                string HHighestPay = list[0].HHighestPay;
                string HOverPayRate = list[0].HOverPayRate;
                string HLeftMoneyRate = list[0].HLeftMoneyRate;
                string HInsuranceSubsidy = list[0].HInsuranceSubsidy;
                string HPayType = list[0].HPayType;
                string HStdDayTimes = list[0].HStdDayTimes;
                string HStdDayPay = list[0].HStdDayPay;
                string HMinDayPay = list[0].HMinDayPay;
                string HMinMonthPay = list[0].HMinMonthPay;
                DateTime HMadeDate = list[0].HMadeDate;
                string HEmpRate = list[0].HEmpRate;
                string HExamRate = list[0].HExamRate;
                DateTime HHealthCardEDate = list[0].HHealthCardEDate;
        //
                if (!DBUtility.ClsPub.AllowNumber(HNumber))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "代码中不能出现连续‘.’并且首位末位不能为‘.’!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //若MAINDI重复则重新获取
                oCN.BeginTran();
                oCN.RunProc("Insert into Gy_Employee (" +
                      "HNumber,HName,HShortNumber,HEmpRate,HExamRate" +
                      ",HLevel,HParentID,HEndflag,HHighestPay,HOverPayRate" +
                      ",HStopflag,HRemark,HHelpCode,HInsuranceSubsidy" +
                      ",HBirthday,HGradDate,HInsuranceDate,HContractBDate,HContractEDate" +
                      ",HJobCardEDate,HCheckCardEDate,HStayCardEDate,HHealthCardEDate" +
                      ",HAge,HSalaryLev,HContractYear,HInsuranceStatus,HSignStatus" +
                      ",HSex,HMarr,HBlighty,HNation,HBlightyType" +
                      ",HGovStatus,HBloodType,HStature,HAvoird,HKnowLev" +
                      ",HProTitleID,HGradSchool,HEngLev,HCompLev,HSpec" +
                      ",HEmail,HNowAdd,HHomeAdd,HIDCard,HLinkPhone,HMobilePhone,HFax" +
                      ",HOldCompany,HInsuranceNo,HJobCardNo,HArchivesNo,HWorkType,HDimissionReason" +
                      ",HDimissionDate,HInComDate,HSignDate,HRelDate" +
                      ",HPostID,HDormID,HDutyID,HLeftMoneyRate" +
                      ",HEmpType,HPayType,HOverType,HNoBrushFlag,HShiftFlag,HStopwagesFlag" +
                      ",HPostalCode,HBank,HBasePay,HExamLevPostMoney,HBSTDeptID" +
                      ",HOtherDeduct3,HInsurance,HMedicare,HDrydock" +
                      ",HBankAccount,HGroupID,HDeptID,HWorkTypeID,HCTPrjID,HAddress" +
                      ") " +
                      " Values('" + HNumber + "','" + HName + "','" + HShortNumber + "'," + HEmpRate.ToString() + "," + HExamRate.ToString() +
                      "," + HLevel + "," + HParentID + "," + Convert.ToString(HEndFlag ? 1 : 0) + "," + HHighestPay.ToString() + "," + HOverPayRate.ToString() +
                      "," + Convert.ToString(HStopflag ? 1 : 0) + ",'" + HRemark + "'" + ",'" + HHelpCode + "'," + HInsuranceSubsidy.ToString() + "" +
                      ",'" + HBirthDay + "','" + HGradDate + "','" + HInsuranceDate + "','" + HContractBDate + "','" + HContractEDate + "'" +
                      ",'" + HJobCardEDate + "','" + HCheckCardEDate + "','" + HStayCardEDate + "','" + HHealthCardEDate + "'" +
                      "," + HAge.ToString() + ",'" + HSalaryLev + "'," + HContractYear.ToString() + "," + HInsuranceStatus + "," + Convert.ToString(HSignStatus ? 1 : 0) +
                      ",'" + HSex + "','" + HMarr + "','" + HBlighty + "','" + HNation + "','" + HBlightyType + "'" +
                      ",'" + HGovStatus + "','" + HBloodType + "','" + HStature + "','" + HAvoird + "','" + HKnowLev + "'" +
                      ",'" + HProTitleID + "','" + HGradSchool + "','" + HEngLev + "','" + HCompLev + "','" + HSpec + "'" +
                      ",'" + HEmail + "','" + HNowAdd + "','" + HHomeAdd + "','" + HIDCard + "','" + HLinkPhone + "','" + HMobilePhone + "','" + HFax + "'" +
                      ",'" + HOldCompany + "','" + HInsuranceNo + "','" + HJobCardNo + "','" + HArchivesNo + "','" + HWorkType + "','" + HDimissionReason + "'" +
                      ",'" + HDimissionDate + "','" + HInComDate + "','" + HSignDate + "','" + HRelDate + "'" +
                      "," + HPostID.ToString() + "," + HDormID.ToString() + "," + HDutyID.ToString() + "," + HLeftMoneyRate.ToString() +
                      ",'" + HEmpType + "'" + ",'" + HPayType + "'" + "," + DBUtility.ClsPub.BoolToString(HOverType) + "" + "," + DBUtility.ClsPub.BoolToString(HNoBrushFlag) + "" + "," + DBUtility.ClsPub.BoolToString(HShiftFlag) + "" + "," + DBUtility.ClsPub.BoolToString(HStopwagesFlag) + "" +
                      ",'" + HPostalCode + "','" + HBank + "'," + HBasePay.ToString() + "," + HExamLevPostMoney.ToString() + ",'" + HBSTDeptID + "'" +
                      "," + HOtherDeduct3.ToString() + "" + "," + HInsurance.ToString() + "" + "," + HMedicare.ToString() + "" + "," + HDrydock.ToString() + "" +
                      ",'" + HBankAccount + "'" + "," + HGroupID.ToString() + "" + "," + HDeptID.ToString() + "," + HWorkTypeID.ToString() + "," + HCTPrjID.ToString() + ",'" + HAddress + "'" +
                      ")");
                //修改上级为非末级代码
                oCN.RunProc("Update Gy_Employee  set HEndflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
                oCN.Commit();
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "新增单据成功!";
                //objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                oCN.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.Message;
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        /// <summary>
        /// 保存按钮
        ///参数:string sql。
        ///返回值:object。
        /// </summary>
        [Route("Gy_Employee/ModifyByID")]
        [HttpPost]
        public object ModifyByID([FromBody] JObject oMain)
        {
            try
            {
                DAL.ClsGy_Employee_Ctl oDept = new DAL.ClsGy_Employee_Ctl();
                DAL.ClsGy_Employee_View oDeptHlp = new DAL.ClsGy_Employee_View();
                var _value = oMain["oMain"].ToString();
                string msg1 = _value.ToString();
                string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
                string msg2 = sArray[0].ToString();
                //string msg3 = sArray[1].ToString();
                //string msg4 = sArray[2].ToString();
                //string msg5 = sArray[3].ToString();
                //反序列化
                msg2 = "[" + msg2.ToString() + "]";
                List<Gy_Employee> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Gy_Employee>>(msg2);
                long HItemID = list[0].HItemID;
                string HNumber = list[0].HNumber;
                string HName = list[0].HName;
                string HShortNumber = list[0].HNumber;
                long HParentID = list[0].HParentID;
                long HLevel = 1;
                string HHelpCode = list[0].HHelpCode;
                bool HEndFlag = list[0].HEndFlag;
                bool HStopflag = list[0].HStopflag;
                string HRemark = list[0].HRemark;
                string HUseFlag = list[0].HUseFlag;
                string HSex = list[0].HSex;
                string HIDCard = list[0].HIDCard;
                string HBirthDay = list[0].HBirthDay;
                string HAddress = list[0].HAddress;
                string HLinkPhone = list[0].HLinkPhone;
                string HMobilePhone = list[0].HMobilePhone;
                string HFax = list[0].HFax;
                string HPostalCode = list[0].HPostalCode;
                string HEmail = list[0].HEmail;
                string HBank = list[0].HBank;
                string HBankAccount = list[0].HBankAccount;
                long HGroupID = list[0].HGroupID;
                long HDeptID = list[0].HDeptID;
                long HPostID = list[0].HPostID;
                long HWorkTypeID = list[0].HWorkTypeID;
                long HCTPrjID = list[0].HCTPrjID;
                long HProcID = list[0].HProcID;
                string HBasePay = list[0].HBasePay;
                DateTime HInComDate = list[0].HInComDate;
                DateTime HDimissionDate = list[0].HDimissionDate;
                bool HOverType = list[0].HOverType;
                string HEmpType = list[0].HEmpType;
                string HOtherDeduct3 = list[0].HOtherDeduct3;
                string HDrydock = list[0].HDrydock;
                string HInsurance = list[0].HInsurance;
                string HMedicare = list[0].HMedicare;
                bool HNoBrushFlag = list[0].HNoBrushFlag;
                bool HShiftFlag = list[0].HShiftFlag;
                DateTime HContactDate = list[0].HContactDate;
                bool HStopwagesFlag = list[0].HStopwagesFlag;
                string HDimissionReason = list[0].HDimissionReason;
                long HDormID = list[0].HDormID;
                string HArchivesNo = list[0].HArchivesNo;
                DateTime HStayCardEDate = list[0].HStayCardEDate;
                DateTime HCheckCardEDate = list[0].HCheckCardEDate;
                string HJobCardNo = list[0].HJobCardNo;
                DateTime HJobCardEDate = list[0].HJobCardEDate;
                string HWorkType = list[0].HWorkType;
                long HContractYear = list[0].HContractYear;
                DateTime HContractBDate = list[0].HContractBDate;
                DateTime HContractEDate = list[0].HContractEDate;
                string HInsuranceNo = list[0].HInsuranceNo;
                DateTime HInsuranceDate = list[0].HInsuranceDate;
                string HInsuranceStatus = list[0].HInsuranceStatus;
                DateTime HSignDate = list[0].HSignDate;
                bool HSignStatus = list[0].HSignStatus;
                string HOldCompany = list[0].HOldCompany;
                string HMarr = list[0].HMarr;
                string HHomeAdd = list[0].HHomeAdd;
                string HNowAdd = list[0].HNowAdd;
                string HSpec = list[0].HSpec;
                string HCompLev = list[0].HCompLev;
                string HEngLev = list[0].HEngLev;
                DateTime HGradDate = list[0].HGradDate;
                string HGradSchool = list[0].HGradSchool;
                string HSalaryLev = list[0].HSalaryLev;
                long HDutyID = list[0].HDutyID;
                string HProTitleID = list[0].HProTitleID;
                string HKnowLev = list[0].HKnowLev;
                string HAvoird = list[0].HAvoird;
                string HStature = list[0].HStature;
                string HBloodType = list[0].HBloodType;
                string HBlightyType = list[0].HBlightyType;
                string HGovStatus = list[0].HGovStatus;
                string HNation = list[0].HNation;
                string HBlighty = list[0].HBlighty;
                long HAge = list[0].HAge;
                string HExamLevPostMoney = list[0].HExamLevPostMoney;
                string HBSTDeptID = list[0].HBSTDeptID;
                string HRelDate = list[0].HRelDate;
                string HHighestPay = list[0].HHighestPay;
                string HOverPayRate = list[0].HOverPayRate;
                string HLeftMoneyRate = list[0].HLeftMoneyRate;
                string HInsuranceSubsidy = list[0].HInsuranceSubsidy;
                string HPayType = list[0].HPayType;
                string HStdDayTimes = list[0].HStdDayTimes;
                string HStdDayPay = list[0].HStdDayPay;
                string HMinDayPay = list[0].HMinDayPay;
                string HMinMonthPay = list[0].HMinMonthPay;
                DateTime HMadeDate = list[0].HMadeDate;
                string HEmpRate = list[0].HEmpRate;
                string HExamRate = list[0].HExamRate;
                DateTime HHealthCardEDate = list[0].HHealthCardEDate;
                ////判断权限
                //if (!ClsPub.Security_Log(msg5, 1, true, msg4))
                //{
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 0;
                //    objJsonResult.Message = "没有找到该功能模块!";
                //    objJsonResult.data = null;
                //    return objJsonResult;
                //}
                //if (!DBUtility.ClsPub.AllowNumber(HNumber))
                //{
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 0;
                //    objJsonResult.Message = "代码中不能出现连续‘.’并且首位末位不能为‘.’!";
                //    objJsonResult.data = null;
                //    return objJsonResult;
                //}
                //if (oDept.HavSameNumber(HItemID, HNumber))
                //{
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 0;
                //    objJsonResult.Message = "代码重复!";
                //    objJsonResult.data = null;
                //    return objJsonResult;
                //}
                //保存
                //保存完毕后处理
                if (HItemID == 0)
                {
                    oCN.BeginTran();
                    oCN.RunProc("Insert into Gy_Employee (" +
                      "HNumber,HName,HShortNumber,HEmpRate,HExamRate" +
                      ",HLevel,HParentID,HEndflag,HHighestPay,HOverPayRate" +
                      ",HStopflag,HRemark,HHelpCode,HInsuranceSubsidy" +
                      ",HBirthday,HGradDate,HInsuranceDate,HContractBDate,HContractEDate" +
                      ",HJobCardEDate,HCheckCardEDate,HStayCardEDate,HHealthCardEDate" +
                      ",HAge,HSalaryLev,HContractYear,HInsuranceStatus,HSignStatus" +
                      ",HSex,HMarr,HBlighty,HNation,HBlightyType" +
                      ",HGovStatus,HBloodType,HStature,HAvoird,HKnowLev" +
                      ",HProTitleID,HGradSchool,HEngLev,HCompLev,HSpec" +
                      ",HEmail,HNowAdd,HHomeAdd,HIDCard,HLinkPhone,HMobilePhone,HFax" +
                      ",HOldCompany,HInsuranceNo,HJobCardNo,HArchivesNo,HWorkType,HDimissionReason" +
                      ",HDimissionDate,HInComDate,HSignDate,HRelDate" +
                      ",HPostID,HDormID,HDutyID,HLeftMoneyRate" +
                      ",HEmpType,HPayType,HOverType,HNoBrushFlag,HShiftFlag,HStopwagesFlag" +
                      ",HPostalCode,HBank,HBasePay,HExamLevPostMoney,HBSTDeptID" +
                      ",HOtherDeduct3,HInsurance,HMedicare,HDrydock" +
                      ",HBankAccount,HGroupID,HDeptID,HWorkTypeID,HCTPrjID,HAddress" +
                      ") " +
                    " Values('" + HNumber + "','" + HName + "','" + HShortNumber + "'," + HEmpRate.ToString() + "," + HExamRate.ToString() +
                      "," + HLevel + "," + HParentID + "," + Convert.ToString(HEndFlag ? 1 : 0) + "," + HHighestPay.ToString() + "," + HOverPayRate.ToString() +
                      "," + Convert.ToString(HStopflag ? 1 : 0) + ",'" + HRemark + "'" + ",'" + HHelpCode + "'," + HInsuranceSubsidy.ToString() + "" +
                      ",'" + HBirthDay + "','" + HGradDate + "','" + HInsuranceDate + "','" + HContractBDate + "','" + HContractEDate + "'" +
                      ",'" + HJobCardEDate + "','" + HCheckCardEDate + "','" + HStayCardEDate + "','" + HHealthCardEDate + "'" +
                      "," + HAge.ToString() + ",'" + HSalaryLev + "'," + HContractYear.ToString() + "," + HInsuranceStatus + "," + Convert.ToString(HSignStatus ? 1 : 0) +
                      ",'" + HSex + "','" + HMarr + "','" + HBlighty + "','" + HNation + "','" + HBlightyType + "'" +
                      ",'" + HGovStatus + "','" + HBloodType + "','" + HStature + "','" + HAvoird + "','" + HKnowLev + "'" +
                      ",'" + HProTitleID + "','" + HGradSchool + "','" + HEngLev + "','" + HCompLev + "','" + HSpec + "'" +
                      ",'" + HEmail + "','" + HNowAdd + "','" + HHomeAdd + "','" + HIDCard + "','" + HLinkPhone + "','" + HMobilePhone + "','" + HFax + "'" +
                      ",'" + HOldCompany + "','" + HInsuranceNo + "','" + HJobCardNo + "','" + HArchivesNo + "','" + HWorkType + "','" + HDimissionReason + "'" +
                      ",'" + HDimissionDate + "','" + HInComDate + "','" + HSignDate + "','" + HRelDate + "'" +
                      "," + HPostID.ToString() + "," + HDormID.ToString() + "," + HDutyID.ToString() + "," + HLeftMoneyRate.ToString() +
                      ",'" + HEmpType + "'" + ",'" + HPayType + "'" + "," + DBUtility.ClsPub.BoolToString(HOverType) + "" + "," + DBUtility.ClsPub.BoolToString(HNoBrushFlag) + "" + "," + DBUtility.ClsPub.BoolToString(HShiftFlag) + "" + "," + DBUtility.ClsPub.BoolToString(HStopwagesFlag) + "" +
                      ",'" + HPostalCode + "','" + HBank + "'," + HBasePay.ToString() + "," + HExamLevPostMoney.ToString() + ",'" + HBSTDeptID + "'" +
                      "," + HOtherDeduct3.ToString() + "" + "," + HInsurance.ToString() + "" + "," + HMedicare.ToString() + "" + "," + HDrydock.ToString() + "" +
                      ",'" + HBankAccount + "'" + "," + HGroupID.ToString() + "" + "," + HDeptID.ToString() + "," + HWorkTypeID.ToString() + "," + HCTPrjID.ToString() + ",'" + HAddress + "'" + "')", ref DBUtility.ClsPub.sExeReturnInfo);
                    //修改上级为非末级代码
                    oCN.RunProc("Update Gy_Employee set HStopflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
                    oCN.Commit();
                }
                else
                {
                    //若MAINDI重复则重新获取
                    oCN.BeginTran();
                    oCN.RunProc("Update Gy_Employee set " +
                      "HNumber,HName,HShortNumber,HEmpRate,HExamRate" +
                      ",HLevel,HParentID,HEndflag,HHighestPay,HOverPayRate" +
                      ",HStopflag,HRemark,HHelpCode,HInsuranceSubsidy" +
                      ",HBirthday,HGradDate,HInsuranceDate,HContractBDate,HContractEDate" +
                      ",HJobCardEDate,HCheckCardEDate,HStayCardEDate,HHealthCardEDate" +
                      ",HAge,HSalaryLev,HContractYear,HInsuranceStatus,HSignStatus" +
                      ",HSex,HMarr,HBlighty,HNation,HBlightyType" +
                      ",HGovStatus,HBloodType,HStature,HAvoird,HKnowLev" +
                      ",HProTitleID,HGradSchool,HEngLev,HCompLev,HSpec" +
                      ",HEmail,HNowAdd,HHomeAdd,HIDCard,HLinkPhone,HMobilePhone,HFax" +
                      ",HOldCompany,HInsuranceNo,HJobCardNo,HArchivesNo,HWorkType,HDimissionReason" +
                      ",HDimissionDate,HInComDate,HSignDate,HRelDate" +
                      ",HPostID,HDormID,HDutyID,HLeftMoneyRate" +
                      ",HEmpType,HPayType,HOverType,HNoBrushFlag,HShiftFlag,HStopwagesFlag" +
                      ",HPostalCode,HBank,HBasePay,HExamLevPostMoney,HBSTDeptID" +
                      ",HOtherDeduct3,HInsurance,HMedicare,HDrydock" +
                      ",HBankAccount,HGroupID,HDeptID,HWorkTypeID,HCTPrjID,HAddress" + "'  Where HItemID=" + HItemID, ref DBUtility.ClsPub.sExeReturnInfo);
                    oCN.RunProc("Update Gy_Employee set HStopflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
                    oCN.Commit();
                }
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "保存成功!";
                //WebAPIController.Add_Log("送货单下推", UserName, "生成送货单");
                objJsonResult.data = 1;
                return objJsonResult;
            }
            catch (Exception e)
            {
                oCN.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.Message;
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        ///// <summary>
        ///// 保存职员
        ///// </summary>
        ///// <param name="msg"></param>
        ///// <returns></returns>
        //[Route("SaveGy_EmployeeList")]
        //[HttpPost]
        //public object SaveGy_EmployeeList([FromBody] JObject msg)
        //{
        //    DataSet ds;
        //    var _value = msg["msg"].ToString();
        //    string msg1 = _value.ToString();
        //    //string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
        //    //string msg2 = sArray[0].ToString();
        //    //string msg3 = sArray[1].ToString();
        //    Int64 HItemID = 0;
        //    SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
        //    //获取最大ID值赋值
        //    DataSet Maxds = oCN.RunProcReturn("select MAX(HItemID) HItemID from Gy_Employee ", "Gy_Employee");
        //    if (Maxds != null || Maxds.Tables[0].Rows.Count > 0)
        //    {
        //        //HItemID= Maxds.Tables[0].Rows[0]["HItemID"]
        //        var maxid = Convert.ToInt32(Maxds.Tables[0].Rows[0]["HItemID"]);
        //        maxid += 1;
        //        HItemID = maxid;
        //    }
        //    ListModels oListModels = new ListModels();
        //    try
        //    {
        //        DAL.ClsGy_Employee_Ctl oBill = new DAL.ClsGy_Employee_Ctl();
        //        List<Model.ClsGy_Employee_Model> lsmain = new List<Model.ClsGy_Employee_Model>();
        //        msg1 = msg1.Replace("\\", "");
        //        msg1 = msg1.Replace("\n", "");  //\n
        //        lsmain = oListModels.getObjectByJson_Gy_Employee(msg1);
        //        foreach (Model.ClsGy_Employee_Model oItem in lsmain)
        //        {
        //            if (oItem.HNumber.Trim() == "")
        //            {
        //                objJsonResult.code = "0";
        //                objJsonResult.count = 0;
        //                objJsonResult.Message = "保存失败!代码不能为空!";
        //                objJsonResult.data = 1;
        //                return objJsonResult;
        //            }
        //            if (oItem.HName.Trim() == "")
        //            {
        //                objJsonResult.code = "0";
        //                objJsonResult.count = 0;
        //                objJsonResult.Message = "保存失败!名称不能为空!";
        //                objJsonResult.data = 1;
        //                return objJsonResult;
        //            }
        //            //txtHInsuranceDate
        //            if (oItem.HInsuranceDate.Trim() != "")
        //            {
        //                if (DBUtility.ClsPub.isStrNull(DBUtility.ClsPub.isDate(oItem.HInsuranceDate.Trim())) == "1900-01-01 0:00:00")
        //                {
        //                    objJsonResult.code = "0";
        //                    objJsonResult.count = 0;
        //                    objJsonResult.Message = "保存失败!参保日期格式不对!";
        //                    objJsonResult.data = 1;
        //                    return objJsonResult;
        //                }
        //            }
        //            //txtHDimissionDate
        //            if (oItem.HDimissionDate.Trim() != "")
        //            {
        //                if (DBUtility.ClsPub.isStrNull(DBUtility.ClsPub.isDate(oItem.HDimissionDate.Trim())) == "1900-01-01 0:00:00")
        //                {
        //                    objJsonResult.code = "0";
        //                    objJsonResult.count = 0;
        //                    objJsonResult.Message = "保存失败!离职日期格式不对!!";
        //                    objJsonResult.data = 1;
        //                    return objJsonResult;
        //                }
        //            }
        //            //txtHStayCardEDate
        //            if (oItem.HStayCardEDate.Trim() != "")
        //            {
        //                if (DBUtility.ClsPub.isStrNull(DBUtility.ClsPub.isDate(oItem.HStayCardEDate.Trim())) == "1900-01-01 0:00:00")
        //                {
        //                    objJsonResult.code = "0";
        //                    objJsonResult.count = 0;
        //                    objJsonResult.Message = "保存失败!暂住证到期日格式不对!!";
        //                    objJsonResult.data = 1;
        //                    return objJsonResult;
        //                }
        //            }
        //            if (!DBUtility.ClsPub.AllowNumber(oItem.HNumber.Trim()))
        //            {
        //                objJsonResult.code = "0";
        //                objJsonResult.count = 0;
        //                objJsonResult.Message = "保存失败!代码中不能出现连续‘.’并且首位末位不能为‘.’!";
        //                objJsonResult.data = 1;
        //                return objJsonResult;
        //            }
        //            //查询数据中是否存在重复代码
        //            ds = oCN.RunProcReturn("select * from  Gy_Employee where HStopflag=0 and HNumber='" + oItem.HNumber.Trim() + "'", "Gy_Employee");
        //            if (oItem.HNumber.Trim() == "")
        //            {
        //                objJsonResult.code = "0";
        //                objJsonResult.count = 0;
        //                objJsonResult.Message = "保存失败!代码为空!";
        //                objJsonResult.data = 1;
        //                return objJsonResult;
        //            }
        //            //新增时判断
        //            if (oItem.HItemID == 0)
        //            {
        //                if (ds == null || ds.Tables[0].Rows.Count == 0)
        //                {
        //                }
        //                else
        //                {
        //                    objJsonResult.code = "0";
        //                    objJsonResult.count = 0;
        //                    objJsonResult.Message = "保存失败!代码重复!";
        //                    objJsonResult.data = 1;
        //                    return objJsonResult;
        //                }
        //                //检查父级是否存在
        //                string sParent;
        //                sParent = DBUtility.ClsPub.GetParentCode(oItem.HNumber.Trim());
        //                if (sParent.Trim() == "")
        //                {
        //                    oBill.oModel.HParentID = 0;
        //                }
        //                else
        //                {
        //                    if (oBill.HavParentCode(sParent.Trim(), HItemID))
        //                    {
        //                        oBill.oModel.HParentID = oBill.oModel.HItemID;
        //                    }
        //                    else
        //                    {
        //                        objJsonResult.code = "0";
        //                        objJsonResult.count = 0;
        //                        objJsonResult.Message = "保存失败!上级代码不存在或被禁用!";
        //                        objJsonResult.data = 1;
        //                        return objJsonResult;
        //                    }
        //                }
        //            }
        //            else//编辑时判断
        //            {
        //                //检查父级是否存在
        //                string sParent;
        //                sParent = DBUtility.ClsPub.GetParentCode(oItem.HNumber.Trim());
        //                if (sParent.Trim() == "")
        //                {
        //                    oBill.oModel.HParentID = 0;
        //                }
        //                else
        //                {
        //                    if (oBill.HavParentCode(sParent.Trim(), oItem.HItemID))
        //                    {
        //                        oBill.oModel.HParentID = oBill.oModel.HItemID;
        //                    }
        //                    else
        //                    {
        //                        objJsonResult.code = "0";
        //                        objJsonResult.count = 0;
        //                        objJsonResult.Message = "保存失败!上级代码不存在或被禁用!";
        //                        objJsonResult.data = 1;
        //                        return objJsonResult;
        //                    }
        //                }
        //            }
        //            //得到短代码
        //            string sShortNumber;
        //            sShortNumber = DBUtility.ClsPub.GetShortNumber(oItem.HNumber.Trim());
        //            if (sShortNumber.Trim() == "")
        //            {
        //                objJsonResult.code = "0";
        //                objJsonResult.count = 0;
        //                objJsonResult.Message = "保存失败!短代码为空!";
        //                objJsonResult.data = 1;
        //                return objJsonResult;
        //            }
        //            if (DBUtility.ClsPub.isDate(oBill.oModel.HDimissionDate) < Convert.ToDateTime("1950-01-01"))
        //            {
        //                oBill.oModel.HDimissionDate = "2050-01-01";
        //            }
        //            oItem.HShortNumber = sShortNumber;//短代码
        //            oItem.HEndFlag = true;//末级标志
        //            oItem.HLevel = DBUtility.ClsPub.GetLevel(oItem.HNumber.Trim()); //等级
        //            oBill.oModel = oItem;
        //        }
        //        //保存
        //        //保存完毕后处理
        //        bool bResult;
        //        if (oBill.oModel.HItemID == 0)
        //        {
        //            // bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
        //            bResult = oBill.AddNew();
        //        }
        //        else
        //        {
        //            bResult = oBill.ModifyByID(oBill.oModel.HItemID);
        //        }
        //        if (bResult)
        //        {
        //            objJsonResult.code = "0";
        //            objJsonResult.count = 1;
        //            objJsonResult.Message = "保存成功!";
        //            //WebAPIController.Add_Log("送货单下推", UserName, "生成送货单");
        //            objJsonResult.data = 1;
        //            return objJsonResult;
        //        }
        //        else
        //        {
        //            objJsonResult.code = "0";
        //            objJsonResult.count = 0;
        //            objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.sExeReturnInfo;
        //            objJsonResult.data = 1;
        //            return objJsonResult;
        //        }
        //    }
        //    catch (Exception e)
        //    {
        //        objJsonResult.code = "0";
        //        objJsonResult.count = 0;
        //        objJsonResult.Message = "保存失败!" + e.ToString();
        //        objJsonResult.data = 1;
        //        return objJsonResult;
        //    }
        //}
        /// <summary>
        /// 职员设置获取信息
        /// </summary>
        /// <returns></returns>
        [Route("GetGy_EmployeeDetail")]
        [HttpGet]
        public ApiResult<DataSet> GetGy_EmployeeDetail(string HID)
        {
            var model = LuBaoSevice.GetGy_EmployeeBillDetail(HID);
            return model;
        }
        /// <summary>
        /// 职员设置删除功能
        /// </summary>
        /// <returns></returns>
        [Route("DeltetGy_Employee")]
        [HttpGet]
        public object DeltetGy_Employee(string HItemID)
        {
            DataSet ds;
            //string ModRightNameCheck = "Sc_ProcessReport_check";
            try
            {
                //删除权限
                //if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, true, CurUserName))
                //{
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 0;
                //    objJsonResult.Message = "审核失败!无权限!";
                //    objJsonResult.data = null;
                //    return objJsonResult;
                //}
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (string.IsNullOrWhiteSpace(HItemID))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "HItemID为空!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                oCN.BeginTran();//开始事务
                ds = oCN.RunProcReturn("select * from Gy_Employee where HItemID=" + HItemID, "Gy_Employee");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有数据,无法删除!";
                    objJsonResult.data = null;
                    return objJsonResult; ;
                }
                var HStopflag = Convert.ToBoolean(ds.Tables[0].Rows[0]["HStopflag"]);
                if (HStopflag)
                {
                    oCN.RollBack();//回滚事务
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "数据已删除无法再次删除!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                oCN.RunProc("update Gy_Employee set HStopflag=1 where HItemID=" + HItemID);
                oCN.Commit();//提交事务
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "* 数据删除成功!";
                objJsonResult.data = null;
                return objJsonResult; ;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "删除失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
    }
}