|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176 |
- using CnasSynchronusClient;
- using CnasSynchrousModel;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Windows.Forms;
-
- namespace CNAS_BalanceClient
- {
- public class HuiFenUIOperation
- {
- /// <summary>
- /// 更改灰分数据
- /// </summary>
- /// <param name="dgvShuiFen"></param>
- /// <param name="balanceWeight"></param>
- /// <param name="laboratoryTests"></param>
- public void UpdateHuifenData(System.Windows.Forms.DataGridView dgvShuiFen, double balanceWeight, List<LaboratoryTest> laboratoryTests)
- {
- //更改内存值
- bool bIfUpdate = true;
- string strID = dgvShuiFen.Rows[dgvShuiFen.CurrentCell.RowIndex].Cells[0].Value.ToString();
- var query = laboratoryTests.Where(s => s.GUID == strID).ToList<LaboratoryTest>();
- if (query.Count == 1)
- {
- switch (dgvShuiFen.CurrentCell.ColumnIndex.ToString())
- {
- case "4": //空坩埚重
- query[0].Empty_Crucible_Weight = CalculateOperation.GetShowDoubleValueN4(balanceWeight);
- dgvShuiFen.CurrentRow.Cells[6].Value = CalculateOperation.GetShowDoubleValueN4(query[0].Empty_Crucible_Weight + query[0].Sample_Weight);
- break;
- case "5": //样重
- if (balanceWeight < 0.9 || balanceWeight > 1.1)
- {
- MessageBox.Show("样重范围是0.9g~1.1g", "提示");
- bIfUpdate = false;
- }
- else
- {
- query[0].Sample_Weight = CalculateOperation.GetShowDoubleValueN4(balanceWeight);
- dgvShuiFen.CurrentRow.Cells[6].Value = CalculateOperation.GetShowDoubleValueN4(query[0].Empty_Crucible_Weight + query[0].Sample_Weight);
- }
- break;
- case "6"://加样重
- //query[0].AddSample_Weight = balanceWeight;
- break;
- case "7"://烘干重
- if (query[0].AddSample_Weight != 0 && balanceWeight > query[0].AddSample_Weight)
- {
- MessageBox.Show("烘干重不能大于加样重,请调整后再传入。", "提示");
- bIfUpdate = false;
- }
- else
- {
- double oldvaue = query[0].BurningResidue_Weight;
- query[0].BurningResidue_Weight = CalculateOperation.GetShowDoubleValueN4(balanceWeight);
- if (!UpdateAshPercentColumn(dgvShuiFen, laboratoryTests, dgvShuiFen.CurrentCell.RowIndex))
- {
- query[0].BurningResidue_Weight = CalculateOperation.GetShowDoubleValueN4(oldvaue);
- bIfUpdate = false;
- }
- }
- break;
- case "8"://二次烘干重
- if (query[0].AddSample_Weight != 0 && balanceWeight > query[0].AddSample_Weight)
- {
- MessageBox.Show("烘干重不能大于加样重,请调整后再传入。", "提示");
- bIfUpdate = false;
- }
- else
- {
- double oldvaue = query[0].SecondBurningResidue_Weight;
- query[0].SecondBurningResidue_Weight = CalculateOperation.GetShowDoubleValueN4(balanceWeight);
- if (!UpdateAshPercentColumn(dgvShuiFen, laboratoryTests, dgvShuiFen.CurrentCell.RowIndex))
- {
- query[0].SecondBurningResidue_Weight = CalculateOperation.GetShowDoubleValueN4(oldvaue);
- bIfUpdate = false;
- }
- }
- break;
- case "9"://三次烘干重
- if (query[0].AddSample_Weight != 0 && balanceWeight > query[0].AddSample_Weight)
- {
- MessageBox.Show("烘干重不能大于加样重,请调整后再传入。", "提示");
- bIfUpdate = false;
- }
- else
- {
- double oldvaue = query[0].ThirdBurningResidue_Weight;
- query[0].ThirdBurningResidue_Weight = CalculateOperation.GetShowDoubleValueN4(balanceWeight);
- if (!UpdateAshPercentColumn(dgvShuiFen, laboratoryTests, dgvShuiFen.CurrentCell.RowIndex))
- {
- query[0].ThirdBurningResidue_Weight = CalculateOperation.GetShowDoubleValueN4(oldvaue);
- bIfUpdate = false;
- }
- }
- break;
- }
- if (bIfUpdate)
- {
- query[0].Operator = GlobalCommonOperation.strUserName;
- query[0].OperaDateTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
- if (query[0].OperationType == null || query[0].OperationType == "")
- query[0].OperationType = "update";
-
- //更改显示值
- dgvShuiFen.CurrentCell.Value = CalculateOperation.GetShowDoubleValueN4(balanceWeight);
- }
- }
- }
-
- /// <summary>
- /// 更改灰分百分比
- /// </summary>
- /// <param name="dgvShuiFen"></param>
- /// <param name="laboratoryTests"></param>
- public bool UpdateAshPercentColumn(DataGridView dgvHuiFen, List<LaboratoryTest> laboratoryTests, int CurrentRowIndex)
- {
- bool IfUpdate = true;
- string strID = dgvHuiFen.Rows[CurrentRowIndex].Cells[0].Value.ToString();
- var query = laboratoryTests.Where(s => s.GUID == strID).ToList<LaboratoryTest>();
- if (query.Count == 1)
- {
- double percentdouble = 0;
- if (query[0].Sample_Weight != 0 && query[0].AddSample_Weight != 0 && query[0].BurningResidue_Weight != 0)
- {
- string strMsg = "";
- if (query[0].SecondBurningResidue_Weight == 0)
- {
- percentdouble = CalculateOperation.CalculateDecrement(query[0].AddSample_Weight, new double[1] { query[0].BurningResidue_Weight });
- if (percentdouble > 100 || percentdouble < 0)
- {
- MessageBox.Show("百分比计算结果出错,请调整数据。", "提示");
- return false;
- }
- dgvHuiFen.Rows[CurrentRowIndex].Cells["DecrementValue2"].Value = percentdouble;
- }
- else if (query[0].ThirdBurningResidue_Weight == 0)
- {
- percentdouble = CalculateOperation.CalculateDecrement(query[0].AddSample_Weight, new double[2] { query[0].BurningResidue_Weight, query[0].SecondBurningResidue_Weight });
- if (percentdouble > 100 || percentdouble < 0)
- {
- MessageBox.Show("百分比计算结果出错,请调整数据。", "提示");
- return false;
- }
- dgvHuiFen.Rows[CurrentRowIndex].Cells["DecrementValue2"].Value = percentdouble;
- }
- else
- {
- percentdouble = CalculateOperation.CalculateDecrement(query[0].AddSample_Weight, new double[3] { query[0].BurningResidue_Weight, query[0].SecondBurningResidue_Weight, query[0].ThirdBurningResidue_Weight });
- if (percentdouble > 100 || percentdouble < 0)
- {
- MessageBox.Show("百分比计算结果出错,请调整数据。", "提示");
- return false;
- }
- dgvHuiFen.Rows[CurrentRowIndex].Cells["DecrementValue2"].Value = percentdouble;
- }
-
- percentdouble = CalculateOperation.CalculateAad(query[0].AddSample_Weight, query[0].Sample_Weight, new double[3] { query[0].BurningResidue_Weight, query[0].SecondBurningResidue_Weight, query[0].ThirdBurningResidue_Weight }, ref strMsg);
- if (percentdouble > 100 || percentdouble < 0)
- {
- MessageBox.Show("百分比计算结果出错,请调整数据。", "提示");
- return false;
- }
- dgvHuiFen.Rows[CurrentRowIndex].Cells["AAD"].Value = percentdouble;
-
- query[0].Aad = Convert.ToDouble(dgvHuiFen.Rows[CurrentRowIndex].Cells["AAD"].Value);
- query[0].DecrementValue = Convert.ToDouble(dgvHuiFen.Rows[CurrentRowIndex].Cells["DecrementValue2"].Value);
- }
- }
- return IfUpdate;
- }
-
- }
- }
|