コード例 #1
0
        /// <summary>
        /// 工时数量发生改变时金额也发生改变
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void dgvproject_CellValueChanged(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex < 0)
            {
                return;
            }
            //是否三包值
            string strIsThree = CommonCtrl.IsNullToString(dgvproject.Rows[e.RowIndex].Cells["three_warranty"].Value);

            if (!string.IsNullOrEmpty(CommonCtrl.IsNullToString(dgvproject.Rows[e.RowIndex].Cells["item_name"].Value)))
            {
                if (!string.IsNullOrEmpty(CommonCtrl.IsNullToString(dgvproject.Rows[e.RowIndex].Cells["man_hour_type"].Value)))//工时
                {
                    if (e.ColumnIndex == 5 || e.ColumnIndex == 6)
                    {
                        ControlsConfig.SetCellsValue(dgvproject, e.RowIndex, "man_hour_quantity,man_hour_norm_unitprice");
                        string strNum   = dgvproject.Rows[e.RowIndex].Cells["man_hour_quantity"].Value != null ? dgvproject.Rows[e.RowIndex].Cells["man_hour_quantity"].Value.ToString() : "0";
                        string strMoney = dgvproject.Rows[e.RowIndex].Cells["man_hour_norm_unitprice"].Value != null ? dgvproject.Rows[e.RowIndex].Cells["man_hour_norm_unitprice"].Value.ToString() : "0";
                        dgvproject.Rows[e.RowIndex].Cells["sum_money"].Value = Convert.ToString(Convert.ToDecimal(strNum = strNum == "" ? "0" : strNum) * Convert.ToDecimal(strMoney = strMoney == "" ? "0" : strMoney));
                    }
                }
            }
            if (e.ColumnIndex == 8)
            {
                if (CommonCtrl.IsNullToString(dgvproject.Rows[e.RowIndex].Cells["man_hour_type"].Value) == "工时")
                {
                    //工时时设置数量和金额均可修改
                    dgvproject.Rows[e.RowIndex].Cells["man_hour_norm_unitprice"].ReadOnly = strIsThree == "否" ? false : true;
                }
                dgvproject.Rows[e.RowIndex].Cells["man_hour_quantity"].ReadOnly = strIsThree == "否" ? false : true;
                if (strIsThree == "是")
                {
                    string strOId = CommonCtrl.IsNullToString(dgvproject.Rows[e.RowIndex].Cells["OldItem_id"].Value);
                    if (!string.IsNullOrEmpty(strOId))
                    {
                        DataTable dot = DBHelper.GetTable("", "v_workhours_users", "*", "whours_id='" + strOId + "'", "", "");
                        if (dot.Rows.Count > 0)
                        {
                            DataRow dpr = dot.Rows[0];
                            dgvproject.Rows[e.RowIndex].Cells["man_hour_quantity"].Value       = CommonCtrl.IsNullToString(dpr["whours_num_a"]);
                            dgvproject.Rows[e.RowIndex].Cells["man_hour_norm_unitprice"].Value = CommonCtrl.IsNullToString(dpr["quota_price"]);
                            dgvproject.Rows[e.RowIndex].Cells["sum_money"].Value = Convert.ToString(Convert.ToDecimal(!string.IsNullOrEmpty(CommonCtrl.IsNullToString(dpr["whours_num_a"])) ? CommonCtrl.IsNullToString(dpr["whours_num_a"]) : "0") * Convert.ToDecimal(!string.IsNullOrEmpty(CommonCtrl.IsNullToString(dpr["quota_price"])) ? CommonCtrl.IsNullToString(dpr["quota_price"]) : "0"));
                        }
                    }
                }
            }
        }
コード例 #2
0
 private void dgvMaterials_CellValueChanged(object sender, DataGridViewCellEventArgs e)
 {
     if (e.RowIndex < 0)
     {
         return;
     }
     if (!string.IsNullOrEmpty(CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["parts_code"].Value)) && !string.IsNullOrEmpty(CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["parts_name"].Value)))
     {
         if (e.ColumnIndex == 8 || e.ColumnIndex == 7)
         {
             ControlsConfig.SetCellsValue(dgvMaterials, e.RowIndex, "quantity,unit_price");
             string strNum       = !string.IsNullOrEmpty(CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["quantity"].Value)) ? dgvMaterials.Rows[e.RowIndex].Cells["quantity"].Value.ToString() : "0";
             string strUnitPrice = !string.IsNullOrEmpty(CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["unit_price"].Value)) ? dgvMaterials.Rows[e.RowIndex].Cells["unit_price"].Value.ToString() : "0";
             dgvMaterials.Rows[e.RowIndex].Cells["sum_money"].Value = Convert.ToString(Convert.ToDecimal(strNum = strNum == "" ? "0" : strNum) * Convert.ToDecimal(Convert.ToDecimal(strUnitPrice = strUnitPrice == "" ? "0" : strUnitPrice)));
         }
     }
 }
コード例 #3
0
        /// <summary>
        /// 数量、原始单价发生改变时金额也跟着改变
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void dgvMaterials_CellValueChanged(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex < 0)
            {
                return;
            }
            string strIsThree = CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["Mthree_warranty"].Value);

            if (dgvMaterials.Rows[e.RowIndex].Cells["parts_name"].Value != null)
            {
                if (e.ColumnIndex == 6 || e.ColumnIndex == 7)
                {
                    //if (strIsThree == "否")
                    //{
                    ControlsConfig.SetCellsValue(dgvMaterials, e.RowIndex, "quantity,unit_price");
                    string strNum    = !string.IsNullOrEmpty(CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["quantity"].Value)) ? CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["quantity"].Value) : "0";
                    string strUMoney = !string.IsNullOrEmpty(CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["unit_price"].Value)) ? CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["unit_price"].Value) : "0";
                    dgvMaterials.Rows[e.RowIndex].Cells["Msum_money"].Value = Convert.ToString(Convert.ToDecimal(strNum = strNum == "" ? "0" : strNum) * Convert.ToDecimal(strUMoney = strUMoney == "" ? "0" : strUMoney));
                    //}
                }
            }
            if (e.ColumnIndex == 11)
            {
                if (strIsThree == "否")
                {
                    dgvMaterials.Rows[e.RowIndex].Cells["quantity"].ReadOnly   = false;
                    dgvMaterials.Rows[e.RowIndex].Cells["unit_price"].ReadOnly = false;
                }
                else if (strIsThree == "是")
                {
                    dgvMaterials.Columns["quantity"].ReadOnly = false;
                    dgvMaterials.Rows[e.RowIndex].Cells["unit_price"].ReadOnly = true;
                    string    strMId = CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["M_Id"].Value);
                    DataTable dpt    = DBHelper.GetTable("", "v_parts", "*", " parts_id='" + strMId + "'", "", "");
                    if (dpt.Rows.Count > 0)
                    {
                        DataRow dpr = dpt.Rows[0];
                        dgvMaterials.Rows[e.RowIndex].Cells["unit_price"].Value = CommonCtrl.IsNullToString(dpr["highest_out_price"]);
                        string strUMoney = !string.IsNullOrEmpty(CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["unit_price"].Value)) ? CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["unit_price"].Value) : "0";
                        string strNum    = !string.IsNullOrEmpty(CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["quantity"].Value)) ? CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["quantity"].Value) : "0";
                        dgvMaterials.Rows[e.RowIndex].Cells["Msum_money"].Value = Convert.ToString(Convert.ToDecimal(strNum = strNum == "" ? "0" : strNum) * Convert.ToDecimal(strUMoney = strUMoney == "" ? "0" : strUMoney));
                    }
                }
            }
        }
コード例 #4
0
 private void dgvMaterials_CellValueChanged(object sender, DataGridViewCellEventArgs e)
 {
     if (e.RowIndex < 0)
     {
         return;
     }
     if (!string.IsNullOrEmpty(CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["parts_code"].Value)))
     {
         if (e.ColumnIndex == 4)
         {
             ControlsConfig.SetCellsValue(dgvMaterials, e.RowIndex, "quantity");
             string strNum  = !string.IsNullOrEmpty(CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["quantity"].Value)) ? dgvMaterials.Rows[e.RowIndex].Cells["quantity"].Value.ToString() : "0";
             string strWNum = !string.IsNullOrEmpty(CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["inventory_num"].Value)) ? dgvMaterials.Rows[e.RowIndex].Cells["inventory_num"].Value.ToString() : "0";
             if (Convert.ToDecimal(strNum) > Convert.ToDecimal(strWNum))
             {
                 MessageBoxEx.Show("领取数量不能大于库存数量!", "提示", MessageBoxButtons.OK, MessageBoxIcon.None);
                 return;
             }
             if (!string.IsNullOrEmpty(strBefore_orderId))//导入的数据计算
             {
                 string strShouldNum = !string.IsNullOrEmpty(CommonCtrl.IsNullToString(dgvMaterials.Rows[e.RowIndex].Cells["picking_num"].Value)) ? dgvMaterials.Rows[e.RowIndex].Cells["picking_num"].Value.ToString() : "0";
                 if (Convert.ToDecimal(strShouldNum) > 0)
                 {
                     if (Convert.ToDecimal(strNum) > Convert.ToDecimal(strShouldNum))
                     {
                         MessageBoxEx.Show("领取数量不能大于应领数量!", "提示", MessageBoxButtons.OK, MessageBoxIcon.None);
                         return;
                     }
                     dgvMaterials.Rows[e.RowIndex].Cells["received_num"].Value = strNum;
                     dgvMaterials.Rows[e.RowIndex].Cells["notFetchNum"].Value  = (Convert.ToDecimal(strShouldNum) - Convert.ToDecimal(strNum)).ToString();
                 }
             }
             else
             {
                 //普通的数据计算
                 dgvMaterials.Rows[e.RowIndex].Cells["picking_num"].Value  = strNum;
                 dgvMaterials.Rows[e.RowIndex].Cells["received_num"].Value = strNum;
                 dgvMaterials.Rows[e.RowIndex].Cells["notFetchNum"].Value  = "0";
             }
         }
     }
 }