private void toolStripButton1_Click(object sender, EventArgs e)
        {
            this.dataGridView1.EndEdit();
            if (MessageBox.Show("提示:提交前请认真检查,一旦提交后,疑问药品将进入质量复查流程,不可以修改,养护数量,需要保存养护记录吗?", "提示", MessageBoxButtons.OKCancel) != DialogResult.OK)
            {
                return;
            }

            List <DrugMaintainRecordDetail> list = new List <DrugMaintainRecordDetail>();

            foreach (DataGridViewRow dr in this.dataGridView1.Rows)
            {
                if (Convert.ToBoolean(dr.Cells[Column18.Name].Value) && dr.ReadOnly == false)
                {
                    DrugMaintainRecordDetail dmrd = (DrugMaintainRecordDetail)dr.DataBoundItem;
                    dmrd.UserId = AppClientContext.CurrentUser.Id;
                    if (dmrd.MaintainCount < 0)
                    {
                        MessageBox.Show("养护数量小于0,请检查!");
                        return;
                    }
                    try
                    {
                        if (Convert.ToDecimal(dmrd.CheckqualifiedNumber) > dmrd.MaintainCount)
                        {
                            MessageBox.Show(dmrd.ProductName + "验收合格数量不能大于养护数量,请检查!");
                            return;
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show("验收合格数量请填写数字!");
                        return;
                    }
                    list.Add(dmrd);
                }
            }

            if (list.Count <= 0)
            {
                MessageBox.Show("没有设置养护细节,您没有填写任何一行品种的养护数量等信息,请检查!");
                return;
            }
            if (this.PharmacyDatabaseService.SaveDrugMaintainDetailAndUndeterminate(list.ToArray(), out msg))
            {
                MessageBox.Show("养护细节保存成功!");
                this.PharmacyDatabaseService.WriteLog(AppClientContext.CurrentUser.Id, "保存药品养护状态成功");

                this.DialogResult = System.Windows.Forms.DialogResult.OK;
                this.Close();
            }
            else
            {
                MessageBox.Show(msg);
                this.PharmacyDatabaseService.WriteLog(AppClientContext.CurrentUser.Id, "保存药品养护状态失败!");
                this.DialogResult = System.Windows.Forms.DialogResult.Cancel;
            }
        }
        private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
        {
            DrugMaintainRecordDetail md = this.dataGridView1.Rows[e.RowIndex].DataBoundItem as DrugMaintainRecordDetail;

            if (this.dataGridView1.Columns[e.ColumnIndex].Name.Contains(this.Column10.Name))
            {
                decimal d = 0m;
                if (!decimal.TryParse(md.CheckqualifiedNumber, out d))
                {
                    MessageBox.Show("您填写了非数字信息,请修改!");
                    md.CheckqualifiedNumber = md.MaintainCount.ToString();
                    return;
                }
                if (d > md.MaintainCount)
                {
                    MessageBox.Show("您填写的养护合格数量超过了养护数量,请修改!");
                    md.CheckqualifiedNumber = md.MaintainCount.ToString();
                    return;
                }

                this.dataGridView1.Rows[e.RowIndex].Cells[this.Column19.Name].Value = md.MaintainCount - Convert.ToDecimal(md.CheckqualifiedNumber);
                this.dataGridView1.Rows[e.RowIndex].Cells[this.Column18.Name].Value = true;
            }

            if (this.dataGridView1.Columns[e.ColumnIndex].Name == this.Column9.Name)
            {
                if (md.MaintainCount > md.CurrentInventoryCount || md.MaintainCount < 0)
                {
                    MessageBox.Show("养护数量超过库存数量,请修改!");
                    md.MaintainCount        = 0;
                    md.CheckqualifiedNumber = "0";
                    this.dataGridView1.Rows[e.RowIndex].Cells[this.Column18.Name].Value = false;
                    return;
                }
                md.CheckqualifiedNumber = md.MaintainCount.ToString();
                if (md.MaintainCount > 0m)
                {
                    this.dataGridView1.Rows[e.RowIndex].Cells[this.Column18.Name].Value = true;
                }
                else
                {
                    this.dataGridView1.Rows[e.RowIndex].Cells[this.Column18.Name].Value = false;
                }
            }

            if (this.dataGridView1.Columns[e.ColumnIndex].Name == this.Column18.Name)
            {
                if (!Convert.ToBoolean(this.dataGridView1.Rows[e.RowIndex].Cells[this.Column18.Name].Value))
                {
                    md.MaintainCount        = 0m;
                    md.CheckqualifiedNumber = "0";
                }
            }
        }
        //保存
        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            string msg;
            DrugMaintainRecordDetail detail = PharmacyDatabaseService.GetDrugMaintainRecordDetail(out msg, SpecialDrugMaintainRecordDetails.DrugMaintainRecordDetailId);

            //detail.QualitySituation = txtQualitySituation.Text.Trim();
            //detail.MaintainMeasure = txtMaintainMeasure.Text.Trim();
            detail.CheckResult          = txtCheckResult.Text.Trim();
            detail.CheckDate            = txtCheckDate.Value;
            detail.CheckqualifiedNumber = txtCheckqualifiedNumber.Value.ToString();
            detail.UserId = AppClientContext.CurrentUser.Id;
            //detail.CheckDate = DateTime.Now.Date;

            bool result = PharmacyDatabaseService.SaveDrugMaintainRecordDetail(out msg, detail);

            if (result)
            {
                MessageBox.Show("数据保存成功");
                this.Close();
            }
        }
        private void DrugMaintainRecordDetailEdit_Load(object sender, EventArgs e)
        {
            if (SpecialDrugMaintainRecordDetailEdit.IsEdit)
            {
                txtCheckDate.Enabled            = true;
                txtCheckqualifiedNumber.Enabled = true;
                txtCheckResult.ReadOnly         = false;
                BuSave.Visible = true;
                this.Text      = "药品养护记录明细编辑";
            }
            else
            {
                txtCheckDate.Enabled            = false;
                txtCheckqualifiedNumber.Enabled = false;
                txtCheckResult.ReadOnly         = true;
                BuSave.Visible = false;
                this.Text      = "药品养护记录明细查看";
            }

            string msg;
            DrugMaintainRecordDetail detail = PharmacyDatabaseService.GetDrugMaintainRecordDetail(out msg, SpecialDrugMaintainRecordDetails.DrugMaintainRecordDetailId);

            txtProductName.Text   = detail.ProductName;
            txtMaintainCount.Text = detail.MaintainCount.ToString();

            if (detail.CheckDate != null)
            {
                txtCheckDate.Text = Convert.ToDateTime(detail.CheckDate).ToString("yyyy-MM-dd");
            }
            txtCheckqualifiedNumber.Text = detail.CheckqualifiedNumber;
            txtCheckResult.Text          = detail.CheckResult;

            //txtQualitySituation.Text = detail.QualitySituation;
            //txtMaintainMeasure.Text = detail.MaintainMeasure;
            //txtMaintainResult.Text = detail.MaintainResult;
        }
Esempio n. 5
0
        //保存
        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            string msg;
            DrugMaintainRecordDetail detail = PharmacyDatabaseService.GetDrugMaintainRecordDetail(out msg, DrugMaintainRecordDetails.DrugMaintainRecordDetailId);

            //detail.QualitySituation = txtQualitySituation.Text.Trim();
            //detail.MaintainMeasure = txtMaintainMeasure.Text.Trim();
            detail.CheckResult          = txtCheckResult.Text.Trim();
            detail.CheckDate            = txtCheckDate.Value;
            detail.CheckqualifiedNumber = txtCheckqualifiedNumber.Value.ToString();
            detail.UserId = AppClientContext.CurrentUser.Id;
            //detail.CheckDate = DateTime.Now.Date;

            bool result = PharmacyDatabaseService.SaveDrugMaintainRecordDetail(out msg, detail);

            if (result)
            {
                bool Iscomplete = true;
                List <DrugMaintainRecordDetail> list = PharmacyDatabaseService.GetDrugMaintainRecordDetailByCondition(out msg, detail.BillDocumentNo, null).ToList();
                foreach (DrugMaintainRecordDetail item in list)
                {
                    if (item.UserId == null)
                    {
                        Iscomplete = false;
                        break;
                    }
                }
                if (Iscomplete)
                {
                    PharmacyDatabaseService.SaveDrugMaintainRecordByBillDocumentNo(out msg, detail.BillDocumentNo, Iscomplete);
                }

                MessageBox.Show("数据保存成功");
                this.Close();
            }
        }