Exemplo n.º 1
0
        private void updateAllData(string time, string nextStatus, string state)
        {
            MaintainManageInfo maintainManageInfo = getAllInput();

            if (maintainManageInfo == null)
            {
                return;
            }
            if (nextStatus == _finishStatus)
            {
                maintainManageInfo.FinishFixTime = time;
            }
            if (nextStatus == _suspendStatus)
            {
                maintainManageInfo.SuspendTime = time;
            }
            maintainManageInfo.Status = nextStatus;
            maintainManageInfo.State  = state;
            string msg = maintainInfoManage.UpdateBreakToolInfo(maintainManageInfo);

            if (msg == "挂起" || msg == "未使用任何零件")
            {
                DialogResult = DialogResult.OK;
                Close();
                return;
            }
            MessageBox.Show(msg, "", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
Exemplo n.º 2
0
        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (dataGridView1.Columns[e.ColumnIndex] is DataGridViewButtonColumn && e.RowIndex > -1)
            {
                DataGridViewButtonCell btnCell = dataGridView1.CurrentCell as DataGridViewButtonCell;
                if (btnCell != null)
                {
                    try
                    {
                        string serialNum = dataGridView1.Rows[e.RowIndex].Cells["SerialNumCol"].Value.ToString();

                        int affectedRow = maintainInfoManage.DeleteOneRegisterTools(serialNum);
                        if (affectedRow < 1)
                        {
                            throw new Exception("删除记录失败");
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return;
                    }
                    MaintainManageInfo maintainManageInfo = GetOneToolsInfoFromGrid();
                    for (int i = maintainManageInfoList.Count - 1; i >= 0; i--)
                    {
                        if (maintainManageInfoList[i].ToolSerialName == maintainManageInfo.ToolSerialName)
                        {
                            maintainManageInfoList.Remove(maintainManageInfoList[i]);
                        }
                    }
                    dataGridView1.DataSource = null;
                    dataGridView1.DataSource = maintainManageInfoList;
                }
            }
        }
Exemplo n.º 3
0
        public MaintainManageInfo getOneBreakToolFromDb(string toolSerialName)
        {
            string             sql            = "select * from MaintainManageInfo where ToolSerialName='" + toolSerialName + "'";
            SQLiteDataReader   reader         = SQLHelper.ReadTableBySql(sql);
            MaintainManageInfo maintainManage = new MaintainManageInfo();

            if (!reader.HasRows)
            {
                reader.Close();
                return(null);
            }
            while (reader.Read())
            {
                try
                {
                    maintainManage.ToolSerialName         = reader["ToolSerialName"].ToString();
                    maintainManage.ToolModeName           = reader["ToolModeName"].ToString();
                    maintainManage.SendFixTime            = Convert.ToDateTime(reader["SendFixTime"].ToString()).ToString("yyyy-MM-dd");
                    maintainManage.Status                 = reader["Status"].ToString();
                    maintainManage.Detail                 = reader["Detail"].ToString();
                    maintainManage.UsedRepoSpareToolInfo  = commonService.ConvertStr2Dic(reader["UsedRepoSpareToolInfo"].ToString());
                    maintainManage.UsedOtherSpareToolInfo = commonService.ConvertStr2Dic(reader["UsedOtherSpareToolInfo"].ToString());
                }
                catch (Exception ex)
                {
                    Console.WriteLine($"getOneBreakToolFromDb failed, error message is: {ex.Message}");
                }
            }
            if (reader != null)
            {
                reader.Close();
            }
            return(maintainManage);
        }
Exemplo n.º 4
0
        public int UpdateMaintainManageInfo(MaintainManageInfo maintainManageInfo)
        {
            string usedRepoSpareToolInfo  = commonService.ConvertDic2Str(maintainManageInfo.UsedRepoSpareToolInfo);
            string usedOtherSpareToolInfo = commonService.ConvertDic2Str(maintainManageInfo.UsedOtherSpareToolInfo);
            string sql;

            if (maintainManageInfo.State == "0")
            {
                if (maintainManageInfo.Status == MaintainDeclare.Suspend)
                {
                    sql = $"update MaintainManageInfo set UsedRepoSpareToolInfo='{usedRepoSpareToolInfo}', UsedOtherSpareToolInfo='{usedOtherSpareToolInfo}', Status='{maintainManageInfo.Status}', SuspendTime='{maintainManageInfo.SuspendTime}' where ToolSerialName='{maintainManageInfo.ToolSerialName}' and State='0'";
                }
                else
                {
                    sql = $"update MaintainManageInfo set UsedRepoSpareToolInfo='{usedRepoSpareToolInfo}', UsedOtherSpareToolInfo='{usedOtherSpareToolInfo}', Status='{maintainManageInfo.Status}', FinishFixTime='{maintainManageInfo.FinishFixTime}' where ToolSerialName='{maintainManageInfo.ToolSerialName }' and State='0'";
                }
            }
            else
            {
                if (maintainManageInfo.Status == MaintainDeclare.Suspend)
                {
                    sql = $"update MaintainManageInfo set UsedRepoSpareToolInfo='{usedRepoSpareToolInfo}', UsedOtherSpareToolInfo='{usedOtherSpareToolInfo}', Status='{maintainManageInfo.Status}', SuspendTime='{maintainManageInfo.SuspendTime}', State='{maintainManageInfo.State}' where ToolSerialName='{maintainManageInfo.ToolSerialName}' and State='0'";
                }
                else
                {
                    sql = $"update MaintainManageInfo set UsedRepoSpareToolInfo='{usedRepoSpareToolInfo}', UsedOtherSpareToolInfo='{usedOtherSpareToolInfo}', Status='{maintainManageInfo.Status}', FinishFixTime='{maintainManageInfo.FinishFixTime}', State='{maintainManageInfo.State}' where ToolSerialName='{maintainManageInfo.ToolSerialName}' and State='0'";
                }
            }

            return(SQLHelper.UpdateTableBySql(sql));
        }
Exemplo n.º 5
0
        public bool IsNotFinishBreakToolExist(MaintainManageInfo maintainManageInfo)
        {
            string           sql    = "select * from MaintainManageInfo where ToolSerialName='" + maintainManageInfo.ToolSerialName + "' and Status!='" + MaintainDeclare.RepairFinished + "'";
            SQLiteDataReader reader = SQLHelper.ReadTableBySql(sql);

            if (reader != null && reader.HasRows)
            {
                reader.Close();
                return(true);
            }
            return(false);
        }
Exemplo n.º 6
0
        private MaintainManageInfo getAllInput()
        {
            if (!checkInput())
            {
                return(null);
            }
            MaintainManageInfo maintainManageInfo = new MaintainManageInfo();

            maintainManageInfo.ToolSerialName         = cmbSerialNum.Text;
            maintainManageInfo.UsedRepoSpareToolInfo  = commonManage.ConvertStr2Dic(txtRepoSpare.Text);
            maintainManageInfo.UsedOtherSpareToolInfo = commonManage.ConvertStr2Dic(txtOtherSpare.Text);
            return(maintainManageInfo);
        }
Exemplo n.º 7
0
        private MaintainManageInfo getAllInput()
        {
            MaintainManageInfo maintainManageInfo = new MaintainManageInfo();

            maintainManageInfo.ToolModeName           = txtModel.Text;
            maintainManageInfo.ToolSerialName         = cmbSerialNum.Text;
            maintainManageInfo.SendFixTime            = dtpSendTime.Text;
            maintainManageInfo.Detail                 = rtxDetail.Text;
            maintainManageInfo.Status                 = "待维修";
            maintainManageInfo.UsedOtherSpareToolInfo = null;
            maintainManageInfo.UsedRepoSpareToolInfo  = null;
            maintainManageInfo.State = "0";
            return(maintainManageInfo);
        }
Exemplo n.º 8
0
 private void setAllInputWhenSuspendBefore()
 {
     if (string.Compare(status, _suspendStatus) == 0)
     {
         MaintainManageInfo maintainManageInfo = maintainInfoManage.GetOneBreakToolFromDb(RepairManageForm.ToolSerialName);
         if (maintainManageInfo == null)
         {
             Console.WriteLine("maintainManageInfo is nil");
             return;
         }
         txtRepoSpare.Text  = commonManage.ConvertDic2Str(maintainManageInfo.UsedRepoSpareToolInfo);
         txtOtherSpare.Text = commonManage.ConvertDic2Str(maintainManageInfo.UsedOtherSpareToolInfo);
     }
 }
Exemplo n.º 9
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            if (!toolsInfoManage.IsToolExistInDb(cmbSerialNum.Text.Trim()))
            {
                MessageBox.Show($"序列号为{cmbSerialNum.Text.Trim()}的工具不在仓库中", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }
            MaintainManageInfo maintainManageInfo = getAllInput();
            string             msg = maintainInfoManage.RegisterBreakTool(maintainManageInfo);

            if (msg.Contains("成功"))
            {
                maintainManageInfoList.Add(maintainManageInfo);
                dataGridView1.DataSource = null;
                dataGridView1.DataSource = maintainManageInfoList;
                return;
            }
            MessageBox.Show(msg, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
Exemplo n.º 10
0
 public string RegisterBreakTool(MaintainManageInfo maintainManageInfo)
 {
     if (maintainManageInfo.ToolSerialName == "" || maintainManageInfo.SendFixTime == "" || maintainManageInfo.Detail == "")
     {
         return("录入失败,请补全所有信息!");
     }
     try
     {
         if (maintainManageInfoService.IsNotFinishBreakToolExist(maintainManageInfo))
         {
             return("登记失败,该工具已经在维修中!");
         }
         int affected = maintainManageInfoService.AddMaintainManageInfo(maintainManageInfo);
         if (affected < 1)
         {
             return("录入失败!");
         }
         return("数据录入成功!");
     }
     catch
     {
         return("error");
     }
 }
Exemplo n.º 11
0
        private void btnNextStep_Click(object sender, EventArgs e)
        {
            if (pageNum == 1)
            {
                if (txtSerialNum.Text.Trim() == "")
                {
                    MessageBox.Show("序列号不能为空,请输入!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
                if (cmbCheckMan.Text.Trim() == "")
                {
                    MessageBox.Show("校准检查员不能为空,请输入!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
                if (!isToolsExist(txtSerialNum.Text.Trim()))
                {
                    if (!toolsInfoManage.IsToolExistInDb(txtSerialNum.Text.Trim()))
                    {
                        MessageBox.Show("仓库中不存在序列号为" + txtSerialNum.Text.Trim() + "的工具,请先录入!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return;
                    }
                    if (MessageBox.Show("工具序列号不在校准计划中,是否继续?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.Cancel)
                    {
                        return;
                    }
                }
                try
                {
                    checkManManage.AddOneName(cmbCheckMan.Text.Trim());
                }
                catch (Exception ex)
                {
                    Console.Write("add name fail", ex.Message);
                }
            }
            pageNum++;
            DemarcateTools demarcateTools = demarcateRecordManage.getOneDemarcateToolBySerialNum(txtSerialNum.Text.Trim());

            if (pageNum == 2)
            {
                if (Convert.ToDateTime(demarcateTools.NextTime) > DateTime.Now)
                {
                    pageNum--;
                    if (MessageBox.Show($"该工具的预计校准日期为{demarcateTools.NextTime},确定要继续校准吗?", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information) == DialogResult.Cancel)
                    {
                        return;
                    }
                }

                btnNextStep.Text = "下一步";
                //btnLastStep.Visible = true;
                btnNextStep.Enabled = true;
                btnLastStep.Enabled = true;
                foreach (Control c in panel2.Controls)
                {
                    c.Visible = false;
                }
                demarcateDataUploadForm.FormBorderStyle = FormBorderStyle.None;
                demarcateDataUploadForm.Dock            = DockStyle.Fill;
                demarcateDataUploadForm.TopLevel        = false;
                demarcateDataUploadForm.SerialNum       = txtSerialNum.Text.Trim();
                demarcateDataUploadForm.CheckMan        = cmbCheckMan.Text.Trim();
                panel2.Controls.Add(demarcateDataUploadForm);
                demarcateDataUploadForm.Show();
            }
            if (pageNum == 3)
            {
                if (!demarcateDataUploadForm.CalcDemarcateResult())
                {
                    pageNum--;
                    return;
                }
                if (!demarcateDataUploadForm.DemarcateResult)
                {
                    pageNum--;
                    demarcateDataUploadForm.setResultLabel("校准结果:不合格");
                    if (MessageBox.Show("校准结果不合格,是否重新校准?\n点击确定将会清除校准数据\n点击取消将会把工具标记为待修", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
                    {
                        demarcateDataUploadForm.reDemarcateActon();
                        demarcateDataUploadForm.setResultLabel("校准结果:");
                    }
                    else
                    {
                        MaintainManageInfo maintainManageInfo = new MaintainManageInfo
                        {
                            ToolSerialName = txtSerialNum.Text.Trim(),
                            ToolModeName   = toolsInfoManage.QueryOneToolsInfo(txtSerialNum.Text.Trim()).Model,
                            SendFixTime    = DateTime.Now.ToString("yyyy-MM-dd"),
                            Detail         = DemarcateStatusDeclare.OffGrade
                        };
                        string msg = maintainInfoManage.RegisterBreakTool(maintainManageInfo);
                        if (!msg.Contains("成功"))
                        {
                            MessageBox.Show($"移至待修出错!原因:{msg}", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                    return;
                }
                btnNextStep.Text = "进入下一个工具校准";
                //btnNextStep.Location = new Point(btnNextStep.Location.X -90, btnNextStep.Location.Y);
                btnNextStep.Enabled = true;
                //btnLastStep.Visible = true;
                btnLastStep.Enabled = true;
                btnFinsih.Visible   = true;
                btnFinsih.Location  = new Point(btnNextStep.Location.X - btnFinsih.Width - 15, btnNextStep.Location.Y);
                panel3.Controls.Add(btnFinsih);
                btnFinsih.BringToFront();
                foreach (Control c in panel2.Controls)
                {
                    c.Visible = false;
                }
                qRCodePrintForm.demarcateRecords = demarcateDataUploadForm.GetDemarcateRecords();
                qRCodePrintForm.FormBorderStyle  = FormBorderStyle.None;
                qRCodePrintForm.Dock             = DockStyle.Fill;
                //qRCodePrintForm.Location = new Point(panel2.Location.X + (panel2.Width - qRCodePrintForm.Width)/2, 0);
                qRCodePrintForm.Width    = panel2.Width;
                qRCodePrintForm.TopLevel = false;
                panel2.Controls.Add(qRCodePrintForm);
                qRCodePrintForm.Show();

                //Graphics g = gbStep.CreateGraphics();
            }
            if (pageNum == 4)
            {
                if (IsdemarcateFinsih)
                {
                    toolStripButton2_Click(null, null);
                    return;
                }
                try
                {
                    DemarcateHistory demarcateHistory = new DemarcateHistory
                    {
                        DemarcateNum  = qRCodePrintForm.demarcateRecords.DemarcateNum,
                        SerialNum     = qRCodePrintForm.demarcateRecords.SerialNum,
                        Cycle         = demarcateTools.Cycle,
                        LastTime      = demarcateTools.LastTime,
                        DemarcateTime = DateTime.Now.ToString("yyyy-MM-dd"),
                        NextTime      = DateTime.Now.AddDays(demarcateTools.Cycle).ToString("yyyy-MM-dd"),
                        CheckMan      = qRCodePrintForm.demarcateRecords.Examinant
                    };
                    int affected = demarcateRecordManage.AddDemarcateHistory(demarcateHistory);
                    if (affected < 1)
                    {
                        throw new Exception("系统出现错误,请重新校准!");
                    }
                    string sql = $"update DemarcateTools set LastTime='{demarcateHistory.DemarcateTime}',NextTime='{demarcateHistory.NextTime}' where SerialNum='{demarcateDataUploadForm.SerialNum}'";
                    affected = demarcateRecordManage.UpdateOneDemarcateToolBySql(sql);
                    if (affected < 1)
                    {
                        throw new Exception("系统出现错误,请重新校准!");
                    }
                    //更新维修次数
                    ToolsInfo toolsInfo   = toolsInfoManage.QueryOneToolsInfo(qRCodePrintForm.demarcateRecords.SerialNum);
                    int       repairTimes = toolsInfo.RepairTimes++;
                    sql      = $"update ToolsInfo set RepairTimes={repairTimes} where SerialNum='{toolsInfo.SerialNum}'";
                    affected = toolsInfoManage.UpdateToolsInfoBySql(sql);
                    if (affected < 1)
                    {
                        throw new Exception("系统出现错误,请重新校准!");
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
                toolStripButton2_Click(null, null);
            }
        }
Exemplo n.º 12
0
 public string UpdateBreakToolInfo(MaintainManageInfo maintainManageInfo)
 {
     if (!new MaintainManageInfoService().IsNotFinishBreakToolExist(maintainManageInfo))
     {
         return("名称为" + maintainManageInfo.ToolSerialName + "的工具不存在!");
     }
     if (maintainManageInfo.UsedRepoSpareToolInfo == null)
     {
         maintainManageInfoService.UpdateMaintainStatus(maintainManageInfo);
         return("未使用任何零件");
     }
     foreach (var item in maintainManageInfo.UsedRepoSpareToolInfo)
     {
         RepoSpareTool repoSpareTool = repoSpareToolService.getOneRepoSpareToolFromDb(item.Key);
         if (repoSpareTool == null)
         {
             return("数据库中不包含型号为:" + item.Key + "的备件信息");
         }
         if (repoSpareTool.Num < item.Value)
         {
             return("数据库中型号为:" + item.Key + "的备件个数不足" + item.Value.ToString() + "个");
         }
     }
     try
     {
         maintainManageInfoService.UpdateMaintainManageInfo(maintainManageInfo);
         if (maintainManageInfo.Status != MaintainDeclare.Suspend)
         {
             foreach (var item in maintainManageInfo.UsedRepoSpareToolInfo)
             {
                 RepoSpareTool repoSpareTool = repoSpareToolService.getOneRepoSpareToolFromDb(item.Key);
                 int           num           = repoSpareTool.Num - item.Value;
                 Console.WriteLine("num is {0}", num);
                 int affectedRow = repoSpareToolService.updateRepoSpareToolNum(num, item.Key);
                 if (affectedRow < 1)
                 {
                     return("更新数据库失败!");
                 }
                 SpareToolUseHistory spareToolUseHistory = new SpareToolUseHistory();
                 spareToolUseHistory.SpareToolModel = item.Key;
                 spareToolUseHistory.Num            = item.Value;
                 spareToolUseHistory.UseTime        = DateTime.Now.ToString("yyyy-MM-dd");
                 affectedRow = repoSpareToolManage.InsertSpareUseHistory(spareToolUseHistory);
                 if (affectedRow < 1)
                 {
                     return("更新数据库失败!");
                 }
             }
             int affected = maintainManageInfoService.InsertOneRepairHistory(new RepairHistory
             {
                 ToolSerialName         = maintainManageInfo.ToolSerialName,
                 ToolModeName           = maintainManageInfo.ToolModeName,
                 SendFixTime            = maintainManageInfo.SendFixTime,
                 FinishFixTime          = maintainManageInfo.FinishFixTime,
                 Detail                 = maintainManageInfo.Detail,
                 UsedOtherSpareToolInfo = maintainManageInfo.UsedOtherSpareToolInfo,
                 UsedRepoSpareToolInfo  = maintainManageInfo.UsedRepoSpareToolInfo
             });
             if (affected < 1)
             {
                 return("更新数据库失败!");
             }
         }
         return("挂起");
     }
     catch
     {
         return("error");
     }
 }
Exemplo n.º 13
0
 public int UpdateBreakToolStatus(MaintainManageInfo maintainManageInfo)
 {
     return(maintainManageInfoService.UpdateMaintainStatus(maintainManageInfo));
 }
Exemplo n.º 14
0
        public int UpdateMaintainStatus(MaintainManageInfo maintainManageInfo)
        {
            string sql = "update MaintainManageInfo set Status='" + maintainManageInfo.Status + "' where ToolSerialName='" + maintainManageInfo.ToolSerialName + "' and State='0'";

            return(SQLHelper.UpdateTableBySql(sql));
        }
Exemplo n.º 15
0
 public int AddMaintainManageInfo(MaintainManageInfo maintainManageInfo)
 {
     return(SQLHelper.InsertValuesByStruct("MaintainManageInfo", maintainManageInfo));
 }