コード例 #1
0
    protected void insertRecord()
    {
        int applyid = Convert.ToInt16(Request["applyid"]);
        int year    = Convert.ToInt16(Request["year"]);
        int month   = Convert.ToInt16(Request["month"]);

        SalaryDetail si = new SalaryDetail();

        si.ApplyID           = applyid;
        si.StaffName         = staffName.Value;
        si.SalaryDate        = new DateTime(year, month, 1);
        si.Department        = depList.SelectedValue;
        si.BasicSalary       = Convert.ToDouble(basicSalary.Value);
        si.PerformanceSalary = Convert.ToDouble(performanceSalary.Value);
        si.OtherWithHold     = Convert.ToDouble(otherWithHold.Value);
        si.OtherBonus        = Convert.ToDouble(otherBonus.Value);
        si.Endowment         = Convert.ToDouble(endowment.Value);
        si.Unemployed        = Convert.ToDouble(unemployed.Value);
        si.Medical           = Convert.ToDouble(medical.Value);
        si.House             = Convert.ToDouble(house.Value);
        si.TaxIncome         = si.BasicSalary + si.PerformanceSalary + si.OtherBonus - si.PerformanceSalary * 0.2 - si.OtherWithHold - si.Endowment - si.Unemployed - si.Medical - si.House;

        si.TaxRate    = getTaxRate(si.TaxIncome);
        si.QuickMinus = getQuickMinus(si.TaxIncome);
        si.Tax        = getTax(si.TaxIncome, si.TaxRate, si.QuickMinus);
        si.Income     = si.TaxIncome - si.Tax;
        si.Remark     = remark.Text;

        SalaryDetail.SetSalaryByID(si);
    }
コード例 #2
0
        public int AddDetail(SalaryDetail obj)
        {
            db.SalaryDetails.Add(obj);
            db.SaveChanges();

            return(obj.empId);
        }
コード例 #3
0
        public async Task <IActionResult> Edit(int id, [Bind("NIC,Name,ID,WorkingHrs,Rating")] SalaryDetail salaryDetail)
        {
            if (id != salaryDetail.ID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(salaryDetail);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!SalaryDetailExists(salaryDetail.ID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(salaryDetail));
        }
コード例 #4
0
    /// <summary>
    /// 根据编号获取工资表
    /// </summary>
    /// <param name="id"></param>
    /// <returns></returns>
    public static SalaryApply GetSalaryApplyByID(int id)
    {
        SqlConnection conn = new SqlConnection(connString);
        SqlCommand    cmd  = new SqlCommand("SELECT * FROM [SalaryMonthly] WHERE [ApplyID] = @ApplyID", conn);

        cmd.Parameters.Add("@ApplyID", SqlDbType.Int).Value = id;
        conn.Open();
        SqlDataReader sdr = cmd.ExecuteReader();
        SalaryApply   si  = null;

        if (sdr.Read())
        {
            si = new SalaryApply();
            si.staffSalaryList = new List <SalaryDetail>();
            si.staffName       = (string)sdr["StaffName"];
            si.applyDate       = Convert.ToDateTime(sdr["ApplyDate"]);
            si.ApproveProcess  = sdr["ApproveProcess"] == DBNull.Value ? "" : (string)sdr["ApproveProcess"];
        }
        sdr.Close();
        conn.Close();

        List <SalaryDetail> result = SalaryDetail.GetSalaryListByID(id);

        si.staffSalaryList.AddRange(result);

        return(si);
    }
コード例 #5
0
        public ActionResult Edit(SalaryDetail objSalaryDetail)
        {
            if (ModelState.IsValid)
            {
                SalaryDetailBLL objSalaryDetailBLL = new SalaryDetailBLL();

                objSalaryDetailBLL.UpdateSalaryDetail(objSalaryDetail);
            }
            return(RedirectToAction("Index", "SalaryDetail"));
        }
コード例 #6
0
        public ActionResult Save()
        {
            SalaryDetailBLL objSalaryDetailBLL = new SalaryDetailBLL();
            var             model = new SalaryDetail
            {
                EmployeeInfo = objSalaryDetailBLL.GetEmployeeDetailName()
            };

            return(View(model));
        }
コード例 #7
0
        public async Task <IActionResult> Create([Bind("NIC,Name,ID,WorkingHrs,Rating")] SalaryDetail salaryDetail)
        {
            if (ModelState.IsValid)
            {
                _context.Add(salaryDetail);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(salaryDetail));
        }
コード例 #8
0
        public string Delete(int id)
        {
            SalaryDetail obj = con.SalaryDetails.Find(id);

            if (obj != null)
            {
                con.SalaryDetails.Remove(obj);
                con.SaveChanges();
                return("Record Deleted");
            }

            return("Record Not Found");
        }
コード例 #9
0
        public JsonResult DesignationAndTotalSalaryById(int?EmployeeId)
        {
            SalaryDetailBLL objSalaryDetailBLL = new SalaryDetailBLL();

            if (EmployeeId != null)
            {
                SalaryDetail salaryDetail = objSalaryDetailBLL.GetDesignationAndTotalSalaryById(EmployeeId);
                return(Json(salaryDetail, JsonRequestBehavior.AllowGet));
            }
            else
            {
                return(Json(JsonRequestBehavior.AllowGet));
            }
        }
コード例 #10
0
        // DELETE: odata/SalaryDetails(5)
        public IHttpActionResult Delete([FromODataUri] int key)
        {
            SalaryDetail salaryDetail = db.SalaryDetails.Find(key);

            if (salaryDetail == null)
            {
                return(NotFound());
            }

            db.SalaryDetails.Remove(salaryDetail);
            db.SaveChanges();

            return(StatusCode(HttpStatusCode.NoContent));
        }
コード例 #11
0
        public string Put(int id, [FromBody] SalaryDetail sal)
        {
            SalaryDetail obj = con.SalaryDetails.Find(id);

            if (obj != null)
            {
                obj.empId  = sal.empId;
                obj.date   = sal.date;
                obj.salary = sal.salary;
                con.SaveChanges();
                return("Record Updated");
            }

            return("Record Not Found");
        }
コード例 #12
0
        public int UpdateDetail(int id, SalaryDetail obj)
        {
            if (db != null)
            {
                var obj1 = db.SalaryDetails.Where(x => x.salaryId == id).FirstOrDefault();
                if (obj1 != null)
                {
                    obj1.empId  = obj.empId;
                    obj1.salary = obj.salary;
                    obj1.date   = obj.date;

                    db.SaveChanges();
                    return(1);
                }
                return(0);
            }

            return(0);
        }
コード例 #13
0
        public SalaryDetail GetDesignationAndTotalSalaryById(int?id)
        {
            objDataAccess = DataAccess.NewDataAccess();
            objDbCommand  = objDataAccess.GetCommand(true, IsolationLevel.ReadCommitted);
            DbDataReader objDbDataReader = null;

            List <SalaryDetail> objSalaryDetailList = new List <SalaryDetail>();

            SalaryDetail objSalaryDetail = new SalaryDetail();

            try
            {
                objDbCommand.AddInParameter("EmployeeId", id);
                objDbDataReader = objDataAccess.ExecuteReader(objDbCommand, "[dbo].[uspGetDesignationAndTotalSalaryById]", CommandType.StoredProcedure);

                if (objDbDataReader.HasRows)
                {
                    while (objDbDataReader.Read())
                    {
                        objSalaryDetail = new SalaryDetail();
                        //this.BuildModelForSalaryDetail(objDbDataReader, objSalaryDetail);
                        objSalaryDetail.DesignationName = objDbDataReader["DesignationName"].ToString();
                        objSalaryDetail.MonthlySalary   = Convert.ToDecimal(objDbDataReader["MonthlySalary"]);
                        objSalaryDetailList.Add(objSalaryDetail);
                    }
                }
            }
            catch (Exception ex)
            {
                throw new Exception("Error : " + ex.Message);
            }
            finally
            {
                if (objDbDataReader != null)
                {
                    objDbDataReader.Close();
                }
                objDataAccess.Dispose(objDbCommand);
            }

            return(objSalaryDetail);
        }
コード例 #14
0
        private SalaryDetail convertToSalaryObject(DataRow dr)
        {
            SalaryDetail salaryDetail = new SalaryDetail();

            salaryDetail.Id                         = dr.Field <int>("ID");
            salaryDetail.Pid                        = dr.Field <int>("PID");
            salaryDetail.IncomeId                   = dr.Field <int>("IncomeId");
            salaryDetail.Ctc                        = double.Parse(dr["Ctc"].ToString());
            salaryDetail.Reimbursement              = double.Parse(dr["Reimbursement"].ToString());
            salaryDetail.EmployeePFContribution     = double.Parse(dr["EmployeePFContribution"].ToString());
            salaryDetail.EmployerPFContribution     = double.Parse(dr["EmployerPFContribution"].ToString());
            salaryDetail.Superannuation             = double.Parse(dr["Superannuation"].ToString());
            salaryDetail.OtherDeduction             = double.Parse(dr["OtherDeduction"].ToString());
            salaryDetail.NetTakeHome                = double.Parse(dr["NetTakeHome"].ToString());
            salaryDetail.NextIncrementMonthYear     = dr.Field <string>("NextIncrementMonthYear");
            salaryDetail.ExpectedGrowthInPercentage = dr.Field <decimal>("ExpectedGrowthInPercentage");
            salaryDetail.BonusAmt                   = double.Parse(dr["BonusAmt"].ToString());
            salaryDetail.BonusMonthYear             = dr.Field <string>("BonusMonthYear");
            return(salaryDetail);
        }
コード例 #15
0
        public SalaryDetail GetSalaryDetailById(int id)
        {
            objDataAccess = DataAccess.NewDataAccess();
            objDbCommand  = objDataAccess.GetCommand(true, IsolationLevel.ReadCommitted);
            DbDataReader objDbDataReader = null;

            List <SalaryDetail> objSalaryDetailList = new List <SalaryDetail>();

            SalaryDetail objSalaryDetail = new SalaryDetail();

            try
            {
                objDbCommand.AddInParameter("SalaryDetailId", id);
                objDbDataReader = objDataAccess.ExecuteReader(objDbCommand, "[dbo].[uspGetSalaryDetailById]", CommandType.StoredProcedure);

                if (objDbDataReader.HasRows)
                {
                    while (objDbDataReader.Read())
                    {
                        objSalaryDetail = new SalaryDetail();
                        this.BuildModelForSalaryDetail(objDbDataReader, objSalaryDetail);
                        objSalaryDetailList.Add(objSalaryDetail);
                    }
                }
            }
            catch (Exception ex)
            {
                throw new Exception("Error : " + ex.Message);
            }
            finally
            {
                if (objDbDataReader != null)
                {
                    objDbDataReader.Close();
                }
                objDataAccess.Dispose(objDbCommand);
            }

            return(objSalaryDetail);
        }
コード例 #16
0
        private SalaryDetail getSalaryDetails(int incomeId, int plannerId)
        {
            try
            {
                SalaryDetail salaryDetail = new SalaryDetail();

                DataTable dtAppConfig = DataBase.DBService.ExecuteCommand(string.Format(SELECT_SALARY_DETAIL, incomeId, plannerId));
                foreach (DataRow dr in dtAppConfig.Rows)
                {
                    salaryDetail = convertToSalaryObject(dr);
                }
                return(salaryDetail);
            }
            catch (Exception ex)
            {
                StackTrace st = new StackTrace();
                StackFrame sf = st.GetFrame(0);
                MethodBase currentMethodName = sf.GetMethod();
                LogDebug(currentMethodName.Name, ex);
                return(null);
            }
        }
コード例 #17
0
        public string UpdateSalaryDetail(SalaryDetail objSalaryDetail)
        {
            int noRowCount = 0;

            objDataAccess = DataAccess.NewDataAccess();
            objDbCommand  = objDataAccess.GetCommand(true, IsolationLevel.Serializable);
            objDbCommand.AddInParameter("SalaryDetailId", objSalaryDetail.SalaryDetailId);
            objDbCommand.AddInParameter("AdvancedPayment", objSalaryDetail.AdvancedPayment);
            objDbCommand.AddInParameter("WorkingDays", objSalaryDetail.WorkingDays);
            objDbCommand.AddInParameter("AbsentDays", objSalaryDetail.AbsentDays);
            objDbCommand.AddInParameter("PaidSalary", objSalaryDetail.PaidSalary);
            objDbCommand.AddInParameter("IsActive", objSalaryDetail.IsActive);
            objDbCommand.AddInParameter("UpdatedBy", SessionUtility.STSessionContainer.UserID);

            try
            {
                noRowCount = objDataAccess.ExecuteNonQuery(objDbCommand, "[dbo].uspUpdateSalaryDetail", CommandType.StoredProcedure);

                if (noRowCount > 0)
                {
                    objDbCommand.Transaction.Commit();
                    return("Save Successfully");
                }
                else
                {
                    objDbCommand.Transaction.Rollback();
                    return("Save Failed");
                }
            }
            catch (Exception ex)
            {
                objDbCommand.Transaction.Rollback();
                throw new Exception("Database Error Occured", ex);
            }
            finally
            {
                objDataAccess.Dispose(objDbCommand);
            }
        }
コード例 #18
0
 public string Post([FromBody] SalaryDetail obj)
 {
     con.SalaryDetails.Add(obj);
     con.SaveChanges();
     return("Record Added");
 }
コード例 #19
0
        protected override List <SalaryTree> GetItem(DataRow row)
        {
            List <SalaryTree> result = new List <SalaryTree>();

            try
            {
                SalaryTree sT = new SalaryTree();
                sT.Basic             = new EmployeeSalary();
                sT.Details           = new List <SalaryDetail>();
                sT.Basic.EmpRef      = row[0].ToString();
                sT.Basic.currencyRef = row[1].ToString();
                //int bulk;

                //if (int.TryParse(row[2].ToString(), out bulk))
                //    sT.Basic.scrId = bulk;
                sT.Basic.scrName          = row[2].ToString();
                sT.Basic.effectiveDate    = DateTime.Parse(row[3].ToString());
                sT.Basic.salaryType       = Convert.ToInt16(row[4].ToString());
                sT.Basic.paymentFrequency = Convert.ToInt16(row[5].ToString());
                sT.Basic.paymentMethod    = Convert.ToInt16(row[6].ToString());

                if (sT.Basic.paymentMethod == 2)
                {
                    sT.Basic.bankName      = row[7].ToString();
                    sT.Basic.accountNumber = row[8].ToString();
                }
                sT.Basic.basicAmount = Convert.ToDouble(row[9].ToString());
                int    i = 10;
                double ens = 0, deds = 0;
                while (i < row.Table.Columns.Count)
                {
                    SalaryDetail det = new SalaryDetail();
                    det.edName      = row[i].ToString();
                    det.fixedAmount = Convert.ToDouble(row[i + 1].ToString());
                    det.isTaxable   = row[i + 2].ToString() == "1";

                    det.type = (row[i + 3]).ToString() == "1" ? 1 : 2;

                    if (det.type == 1)
                    {
                        ens += det.fixedAmount;
                    }
                    else
                    {
                        deds += det.fixedAmount;
                    }

                    det.includeInTotal = true;
                    sT.Details.Add(det);
                    i += 4;
                }
                sT.Basic.eAmount     = ens;
                sT.Basic.dAmount     = deds;
                sT.Basic.finalAmount = sT.Basic.basicAmount + sT.Basic.eAmount - sT.Basic.dAmount;
                result.Add(sT);
                return(result);
            }
            catch (Exception exp)
            {
            }
            return(result);
        }