Example #1
0
        /// <summary>
        /// 更新一条数据
        /// </summary>
        public bool Update(ProjectProportion model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("update projectproportion set ");
            strSql.Append("PROJECTID=@PROJECTID,");
            strSql.Append("PROPORTION=@PROPORTION");
            strSql.Append(" where ID=@ID ");
            MySqlParameter[] parameters =
            {
                new MySqlParameter("@PROJECTID",  MySqlDbType.VarChar, 36),
                new MySqlParameter("@PROPORTION", MySqlDbType.Decimal,  3),
                new MySqlParameter("@ID",         MySqlDbType.VarChar, 36)
            };
            parameters[0].Value = model.PROJECTID;
            parameters[1].Value = model.PROPORTION;
            parameters[2].Value = model.ID;

            int rows = DbHelperMySQL.ExecuteSql(strSql.ToString(), parameters);

            if (rows > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Example #2
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public bool Add(ProjectProportion model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into projectproportion(");
            strSql.Append("ID,PROJECTID,PROPORTION)");
            strSql.Append(" values (");
            strSql.Append("@ID,@PROJECTID,@PROPORTION)");
            MySqlParameter[] parameters =
            {
                new MySqlParameter("@ID",         MySqlDbType.VarChar, 36),
                new MySqlParameter("@PROJECTID",  MySqlDbType.VarChar, 36),
                new MySqlParameter("@PROPORTION", MySqlDbType.Decimal, 3)
            };
            parameters[0].Value = model.ID;
            parameters[1].Value = model.PROJECTID;
            parameters[2].Value = model.PROPORTION;

            int rows = DbHelperMySQL.ExecuteSql(strSql.ToString(), parameters);

            if (rows > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Example #3
0
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public ProjectProportion DataRowToModel(DataRow row)
        {
            ProjectProportion model = new ProjectProportion();

            if (row != null)
            {
                if (row["ID"] != null)
                {
                    model.ID = row["ID"].ToString();
                }
                if (row["PROJECTID"] != null)
                {
                    model.PROJECTID = row["PROJECTID"].ToString();
                }
                if (row["PROPORTION"] != null && row["PROPORTION"].ToString() != "")
                {
                    model.PROPORTION = decimal.Parse(row["PROPORTION"].ToString());
                }
            }
            return(model);
        }
Example #4
0
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public ProjectProportion GetModel(string ID)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("select ID,PROJECTID,PROPORTION from projectproportion ");
            strSql.Append(" where ID=@ID ");
            MySqlParameter[] parameters =
            {
                new MySqlParameter("@ID", MySqlDbType.VarChar, 36)
            };
            parameters[0].Value = ID;

            ProjectProportion model = new ProjectProportion();
            DataSet           ds    = DbHelperMySQL.Query(strSql.ToString(), parameters);

            if (ds.Tables[0].Rows.Count > 0)
            {
                return(DataRowToModel(ds.Tables[0].Rows[0]));
            }
            else
            {
                return(null);
            }
        }
Example #5
0
        ///// <summary>
        ///// 页码跳转
        ///// </summary>
        ///// <param name="sender"></param>
        ///// <param name="e"></param>
        //protected void btnGoPage_Click(object sender, EventArgs e)
        //{
        //    try
        //    {
        //        int pageindex = int.Parse(tb_pageindex.Text);
        //        AspNetPager1.CurrentPageIndex = pageindex;
        //    }
        //    catch (FormatException)
        //    {
        //        lbl_error.Text = "输入的页索引格式不正确";
        //    }
        //}
        #endregion

        #region Repeat Databound,计算提成金额、任务剩余时间和修改剩余时间
        protected void gvProject_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                #region 设置任务状态样式
                Label lblTaskStatus = e.Row.FindControl("lblTaskStatus") as Label;
                if (lblTaskStatus != null && !string.IsNullOrEmpty(lblTaskStatus.Text.Trim()))
                {
                    if (lblTaskStatus.Text.Trim() == "暂停")
                    {
                        lblTaskStatus.ForeColor = System.Drawing.ColorTranslator.FromHtml("#FF0000");
                    }
                }
                #endregion

                #region 计算提成金额
                #region 预计提成
                string  prjId      = gvProject.DataKeys[e.Row.RowIndex].Values[0].ToString();
                decimal proportion = 0m;
                // 先看此项目是否单独设置了提成
                ProjectProportion projectProportion = lstPrjProportion?.Where(item => item.PROJECTID == prjId).FirstOrDefault();  // new ProjectProportionBLL().GetModelList(" projectId = '" + prjId + "'").FirstOrDefault();
                // 如果设置了单独提成,则采用单独设置的比例
                if (projectProportion != null)
                {
                    proportion = projectProportion.PROPORTION ?? 0m;
                }
                // 如果未设置,则采用默认提成
                else if (empProportion != null)
                {
                    proportion = empProportion?.PROPORTION ?? 0m;
                }
                Label       lblExpectAmount = e.Row.FindControl("lblExpectAmount") as Label;
                HiddenField hidOrderAmount  = e.Row.FindControl("hidOrderAmount") as HiddenField;
                decimal     orderAmount     = Convert.ToDecimal(hidOrderAmount.Value);
                //Project prj = new ProjectBLL().GetModel(prjId);
                lblExpectAmount.Text = (orderAmount * Convert.ToDecimal(proportion)).ToString();
                //2019-03-26,未转正期间的任务隐藏预计提成
                Project project = new ProjectBLL().GetModel(prjId);
                if (project.CREATEDATE != null && toRegularDate != null)
                {
                    if (project.CREATEDATE <= toRegularDate || toRegularDate == Convert.ToDateTime("2000/1/1 00:00:00"))
                    {
                        lblExpectAmount.Text = "--";
                    }
                }
                #endregion

                #region 实际提成
                //decimal tcje = new TransactionDetailsBLL().GetModelList(" AND employeeId = '" + Convert.ToString(EmployeeID ?? string.Empty) + "' AND TRANSACTIONTYPE = 7 AND PROJECTID = '" + prjId + "' ").Sum(item => item.TRANSACTIONAMOUNT) ?? 0m;
                Label lblProportionAmount = e.Row.FindControl("lblProportionAmount") as Label;
                //lblProportionAmount.Text = tcje.ToString();
                if (lstTcje != null && lstTcje.Count() > 0)
                {
                    decimal transactionAmount = lstTcje.Where(item => item.PROJECTID == prjId && item.EMPLOYEEID == EmployeeID).Sum(item => item.TRANSACTIONAMOUNT) ?? 0m;
                    lblProportionAmount.Text = transactionAmount.ToString();
                }
                else
                {
                    lblProportionAmount.Text = "0";
                }
                #endregion
                #endregion

                #region 计算任务剩余时间
                bool  isFinished    = Convert.ToInt32(gvProject.DataKeys[e.Row.RowIndex].Values[1]) == 1;
                Label lblTimeRemain = e.Row.FindControl("lblTimeRemain") as Label;
                //未完成的,才显示剩余时间
                if (lblTimeRemain != null && !isFinished)
                {
                    HiddenField hidExpireDate = e.Row.FindControl("hidExpireDate") as HiddenField;
                    DateTime    dtExpire      = Convert.ToDateTime(hidExpireDate.Value);
                    if (DateTime.Now < dtExpire)
                    {
                        TimeSpan ts = dtExpire - DateTime.Now;

                        //设置提醒label文本
                        lblTimeRemain.Text = string.Format("{0}小时", Math.Floor(ts.TotalHours));
                        if (ts.TotalHours <= 3)
                        {
                            lblTimeRemain.ForeColor = System.Drawing.ColorTranslator.FromHtml("#FF0000");//不足3小时,红色
                            lblTimeRemain.Font.Bold = true;
                        }
                        else if (ts.TotalHours <= 6)
                        {
                            lblTimeRemain.ForeColor = System.Drawing.ColorTranslator.FromHtml("#FF8800");//不足6小时,橙色
                            lblTimeRemain.Font.Bold = true;
                        }
                        else if (ts.TotalHours <= 12)
                        {
                            lblTimeRemain.ForeColor = System.Drawing.ColorTranslator.FromHtml("#EEEE00");//不足12小时,黄色
                            lblTimeRemain.Font.Bold = true;
                        }
                        else if (ts.TotalHours <= 24)
                        {
                            lblTimeRemain.ForeColor = System.Drawing.ColorTranslator.FromHtml("#FF77FF");//不足24小时,洋红色
                        }
                        else if (ts.TotalHours <= 48)
                        {
                            lblTimeRemain.ForeColor = System.Drawing.ColorTranslator.FromHtml("#57C600");//48小时以上,酸橙色(浅绿)
                        }
                        else
                        {
                            lblTimeRemain.Text = "&gt;2天";
                        }
                    }
                    else if (dtExpire < DateTime.Now)
                    {
                        TimeSpan ts = DateTime.Now - dtExpire;
                        lblTimeRemain.Text      = string.Format("逾期{0}", Common.TransformTimeSpan(ts));
                        lblTimeRemain.ForeColor = System.Drawing.Color.Red;
                    }
                }
                #endregion

                #region 计算修改剩余时间
                string    projectId = gvProject.DataKeys[e.Row.RowIndex].Values[0].ToString();
                Label     lblModifyTaskTimeRemain = e.Row.FindControl("lblModifyTaskTimeRemain") as Label;
                DataTable dt = new FileCategoryBLL().GetExpireDateByProjectId(projectId).Tables[0];
                if (dt.Rows.Count > 0)
                {
                    Button btnSetModifyTasksFinished = e.Row.FindControl("btnSetModifyTasksFinished") as Button;
                    btnSetModifyTasksFinished.Visible = true;
                    string folderName = Convert.ToString(dt.Rows[0]["folderName"]);
                    btnSetModifyTasksFinished.CommandArgument = projectId + "|" + folderName;
                    if (folderName.Contains("修改"))
                    {
                        string strExpireDate = Convert.ToString(dt.Rows[0]["expireDate"]);

                        DateTime dtExpire = Convert.ToDateTime(strExpireDate);
                        if (DateTime.Now < dtExpire)
                        {
                            TimeSpan ts = dtExpire - DateTime.Now;
                            //设置提醒label文本
                            lblModifyTaskTimeRemain.Text = string.Format("{0}剩余{1}小时", folderName, Math.Floor(ts.TotalHours));
                            if (ts.TotalHours <= 3)
                            {
                                lblModifyTaskTimeRemain.ForeColor = System.Drawing.ColorTranslator.FromHtml("#FF0000");//不足3小时,红色
                                lblModifyTaskTimeRemain.Font.Bold = true;
                            }
                            else if (ts.TotalHours <= 6)
                            {
                                lblModifyTaskTimeRemain.ForeColor = System.Drawing.ColorTranslator.FromHtml("#FF8800");//不足6小时,橙色
                                lblModifyTaskTimeRemain.Font.Bold = true;
                            }
                            else if (ts.TotalHours <= 12)
                            {
                                lblModifyTaskTimeRemain.ForeColor = System.Drawing.ColorTranslator.FromHtml("#EEEE00");//不足12小时,黄色
                                lblModifyTaskTimeRemain.Font.Bold = true;
                            }
                            else if (ts.TotalHours <= 24)
                            {
                                lblModifyTaskTimeRemain.ForeColor = System.Drawing.ColorTranslator.FromHtml("#FF77FF");//不足24小时,洋红色
                            }
                            else if (ts.TotalHours <= 48)
                            {
                                lblModifyTaskTimeRemain.ForeColor = System.Drawing.ColorTranslator.FromHtml("#57C600");//48小时以上,酸橙色(浅绿)
                            }
                            else
                            {
                                lblModifyTaskTimeRemain.Text = string.Format("{0}剩余&gt;2天", folderName);
                            }
                        }
                        else if (dtExpire < DateTime.Now)
                        {
                            TimeSpan ts = DateTime.Now - dtExpire;
                            lblModifyTaskTimeRemain.Text      = string.Format("{0}逾期{1}", folderName, Common.TransformTimeSpan(ts));
                            lblModifyTaskTimeRemain.ForeColor = System.Drawing.Color.Red;
                        }
                    }
                }
                #endregion
            }
        }
Example #6
0
 /// <summary>
 /// 更新一条数据
 /// </summary>
 public bool Update(ProjectProportion model)
 {
     return(dal.Update(model));
 }
Example #7
0
 /// <summary>
 /// 增加一条数据
 /// </summary>
 public bool Add(ProjectProportion model)
 {
     return(dal.Add(model));
 }