Exemple #1
0
        public ValueObject Execute(TransactionContext trxContext, ValueObject vo)
        {
            List <ValueObject> inList = ((ValueObjectList <ValueObject>)vo).GetList();

            MoldVo moldInVo = (MoldVo)inList.FirstOrDefault();

            ProcessWorkMoldVo processWorkMoldInVo = (ProcessWorkMoldVo)inList.Skip(1).FirstOrDefault();

            MoldVo moldOutVo = (MoldVo)addGetMoldIdMasterMntCbm.Execute(trxContext, moldInVo);

            if (moldOutVo != null && moldOutVo.MoldId > 0)
            {
                processWorkMoldInVo.MoldId = moldOutVo.MoldId;

                foreach (ProcessWorkMoldVo processid in processWorkMoldInVo.ProcessWorkMoldListVo)
                {
                    processWorkMoldInVo.ProcessWorkId = processid.ProcessWorkId;

                    ProcessWorkMoldVo processWorkMoldoutVo = (ProcessWorkMoldVo)addProcessWorkMoldMasterMntCbm.Execute(trxContext, processWorkMoldInVo);
                }
            }

            return(moldOutVo);
        }
Exemple #2
0
        private void Save_btn_Click(object sender, EventArgs e)
        {
            if (Mold_dgv.RowCount > 0 && Mold_dgv.Columns["colRemarks"].Visible == true)
            {
                if (processWorkList.Count == 0)
                {
                    GetProcessWork();
                }

                this.StartProgress(Properties.Resources.mmci00009);

                string previousMoldCode = string.Empty;
                int    uploadedCount    = 0;
                int    insertedCount    = 0;

                MoldVo checkInVo = new MoldVo();

                ProcessWorkMoldVo processWorkMoldInVo = new ProcessWorkMoldVo();

                decimal  width  = 0;
                decimal  depth  = 0;
                decimal  height = 0;
                decimal  weight = 0;
                DateTime productionDate;
                int      lifeShotCount = 0;

                foreach (DataRow row in excelUploadDt.Rows)
                {
                    if (!string.IsNullOrEmpty(row["MoldCode"].ToString()) && previousMoldCode != row["MoldCode"].ToString())
                    {
                        checkInVo           = new MoldVo();
                        processWorkMoldInVo = new ProcessWorkMoldVo();

                        checkInVo.MoldCode = row["MoldCode"].ToString();
                        checkInVo.MoldName = row["MoldName"].ToString();

                        if (row["MoldTypeCode"] != null && !string.IsNullOrWhiteSpace(row["MoldTypeCode"].ToString()))
                        {
                            checkInVo.MoldTypeCode = row["MoldTypeCode"].ToString();
                        }
                        if (row["Width"] != null && !string.IsNullOrWhiteSpace(row["Width"].ToString()) && Decimal.TryParse(row["Width"].ToString(), out width))
                        {
                            checkInVo.Width = width;
                        }
                        if (row["Depth"] != null && !string.IsNullOrWhiteSpace(row["Depth"].ToString()) && Decimal.TryParse(row["Depth"].ToString(), out depth))
                        {
                            checkInVo.Depth = depth;
                        }
                        if (row["Height"] != null && !string.IsNullOrWhiteSpace(row["Height"].ToString()) && Decimal.TryParse(row["Height"].ToString(), out height))
                        {
                            checkInVo.Height = height;
                        }
                        if (row["Weight"] != null && !string.IsNullOrWhiteSpace(row["Weight"].ToString()) && Decimal.TryParse(row["Weight"].ToString(), out weight))
                        {
                            checkInVo.Weight = weight;
                        }
                        if (row["ProductionDate"] != null && !string.IsNullOrWhiteSpace(row["ProductionDate"].ToString()) && DateTime.TryParse(row["ProductionDate"].ToString(), out productionDate))
                        {
                            checkInVo.ProductionDate = productionDate;
                        }
                        if (row["LifeShotCount"] != null && !string.IsNullOrWhiteSpace(row["LifeShotCount"].ToString()) && int.TryParse(row["LifeShotCount"].ToString(), out lifeShotCount))
                        {
                            checkInVo.LifeShotCount = lifeShotCount;
                        }
                        if (row["Comments"] != null && !string.IsNullOrWhiteSpace(row["Comments"].ToString()))
                        {
                            checkInVo.Comment = row["Comments"].ToString();
                        }

                        uploadedCount += 1;

                        DataRow[] processWorkCodeList = excelUploadDt.Select("MoldCode = '" + checkInVo.MoldCode + "'");

                        foreach (DataRow item in processWorkCodeList)
                        {
                            ProcessWorkMoldVo addVo = new ProcessWorkMoldVo();

                            if (processWorkList.Where(t => t.ProcessWorkCode == item["ProcessWorkCode"].ToString()).FirstOrDefault() != null)
                            {
                                addVo.ProcessWorkId = processWorkList.Where(t => t.ProcessWorkCode == item["ProcessWorkCode"].ToString()).FirstOrDefault().ProcessWorkId;
                            }
                            processWorkMoldInVo.ProcessWorkMoldListVo.Add(addVo);
                        }

                        ValueObjectList <ValueObject> inVoList = new ValueObjectList <ValueObject>();

                        inVoList.add(checkInVo);
                        inVoList.add(processWorkMoldInVo);

                        MoldVo outVo = null;

                        try
                        {
                            //outVo = (MoldVo)base.InvokeCbm(new AddMoldMasterMntAndProcessworkCbm(), inVoList, false);
                        }
                        catch (Framework.ApplicationException exception)
                        {
                            this.CompleteProgress();
                            popUpMessage.ApplicationError(exception.GetMessageData(), Text);
                            logger.Error(exception.GetMessageData());
                            return;
                        }

                        if (outVo != null && outVo.AffectedCount > 0)
                        {
                            insertedCount += outVo.AffectedCount;
                        }
                    }

                    previousMoldCode = row["MoldCode"].ToString();
                }
                this.CompleteProgress();

                if (insertedCount > 0 && uploadedCount > 0 && insertedCount == uploadedCount)
                {
                    messageData = new MessageData("mmci00010", Properties.Resources.mmci00010, null);
                    logger.Info(messageData);
                    popUpMessage.Information(messageData, Text);
                    GridBind(FormConditionVo());
                }
            }
        }
Exemple #3
0
        public override ValueObject Execute(TransactionContext trxContext, ValueObject vo)
        {
            ProcessWorkMoldVo inVo = (ProcessWorkMoldVo)vo;

            StringBuilder sqlQuery = new StringBuilder();

            sqlQuery.Append("Select");
            sqlQuery.Append(" pwm.process_work_mold_id,");
            sqlQuery.Append(" pwm.process_work_id,");
            sqlQuery.Append(" pwm.mold_id,");
            sqlQuery.Append(" m.mold_name,");
            sqlQuery.Append(" pw.process_work_name");
            sqlQuery.Append(" from m_gtrs_process_work_mold pwm");
            sqlQuery.Append(" inner join m_process_work pw on pwm.process_work_id = pw.process_work_id");
            sqlQuery.Append(" inner join m_mold m on pwm.mold_id = m.mold_id");
            sqlQuery.Append(" where 1 = 1 ");


            if (inVo.MoldId > 0)
            {
                sqlQuery.Append(" and pwm.mold_id = :moldid");
            }

            if (inVo.ProcessWorkId > 0)
            {
                sqlQuery.Append(" and pwm.process_work_id = :processworkid");
            }

            //create command
            DbCommandAdaptor sqlCommandAdapter = base.GetDbCommandAdaptor(trxContext, sqlQuery.ToString());

            //create parameter
            DbParameterList sqlParameter = sqlCommandAdapter.CreateParameterList();

            if (inVo.MoldId > 0)
            {
                sqlParameter.AddParameterInteger("moldid", inVo.MoldId);
            }

            if (inVo.ProcessWorkId > 0)
            {
                sqlParameter.AddParameterInteger("processworkid", inVo.ProcessWorkId);
            }
            //execute SQL
            IDataReader dataReader = sqlCommandAdapter.ExecuteReader(trxContext, sqlParameter);

            ProcessWorkMoldVo outVo = new ProcessWorkMoldVo();

            while (dataReader.Read())
            {
                ProcessWorkMoldVo currVo = new ProcessWorkMoldVo
                {
                    ProcessWorkId     = Convert.ToInt32(DBDataCheckHelper.ConvertDBNullToStringNull(dataReader["process_work_id"])),
                    MoldId            = Convert.ToInt32(dataReader["mold_id"]),
                    MoldName          = dataReader["mold_name"].ToString(),
                    ProcessWorkName   = dataReader["process_work_name"].ToString(),
                    ProcessWorkMoldId = Convert.ToInt32(dataReader["process_work_mold_id"]),
                };

                outVo.ProcessWorkMoldListVo.Add(currVo);
            }

            dataReader.Close();

            return(outVo);
        }
Exemple #4
0
        /// <summary>
        /// Upload mold master excel
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Upload_btn_Click(object sender, EventArgs e)
        {
            OpenFileDialog openDialog_dlg = new OpenFileDialog();

            openDialog_dlg.Filter = "Excel Files(*.xls) |*.xls";

            if (openDialog_dlg.ShowDialog() == DialogResult.OK)
            {
                this.StartProgress(Properties.Resources.mmci00009);

                try
                {
                    excelUploadDt = new ExcelUpload().ReadExcel(openDialog_dlg.FileName, Properties.Settings.Default.EXCEL_SHEET_MOLD);
                }
                catch (Framework.ApplicationException exception)
                {
                    this.CompleteProgress();
                    popUpMessage.ApplicationError(exception.GetMessageData(), Text);
                    logger.Error(exception.GetMessageData());
                    return;
                }

                MoldVo checkInVo = new MoldVo();

                ProcessWorkMoldVo processWorkMoldInVo = new ProcessWorkMoldVo();

                Mold_dgv.DataSource = null;
                excelUploadDt.Columns.Add("Remarks");
                excelUploadDt.Columns.Add("Comment");
                var  sch         = StringCheckHelper.GetInstance();
                bool inputDataNG = false;


                foreach (DataRow row in excelUploadDt.Rows)
                {
                    if (row["Comments"] != null && !string.IsNullOrWhiteSpace(row["Comments"].ToString()))
                    {
                        row["Comment"] = row["Comments"].ToString();
                    }

                    if (row["MoldCode"] == null || string.IsNullOrWhiteSpace(row["MoldCode"].ToString()))
                    {
                        row["Remarks"] = string.Format(Properties.Resources.mmce00011, MoldCode_lbl.Text);
                        inputDataNG    = true;
                        continue;
                    }

                    if (!sch.IsASCII(row["MoldCode"].ToString()))
                    {
                        row["Remarks"] = string.Format(Properties.Resources.mmci00017, MoldCode_lbl.Text);
                        inputDataNG    = true;
                        continue;
                    }

                    var duplicates = excelUploadDt.AsEnumerable().GroupBy(r => r["MoldCode"]).Where(gr => gr.Count() > 1).ToList();

                    if (duplicates.Any() && duplicates.Select(dupl => dupl.Key).ToList().FirstOrDefault().ToString() == row["MoldCode"].ToString())
                    {
                        row["Remarks"] = string.Format(Properties.Resources.mmce00009, MoldCode_lbl.Text + " : " + row["MoldCode"].ToString());
                        inputDataNG    = true;
                        continue;
                    }

                    if (row["MoldName"] == null || string.IsNullOrWhiteSpace(row["MoldName"].ToString()))
                    {
                        row["Remarks"] = string.Format(Properties.Resources.mmci00017, MoldName_lbl.Text);
                        inputDataNG    = true;
                        continue;
                    }

                    checkInVo           = new MoldVo();
                    processWorkMoldInVo = new ProcessWorkMoldVo();

                    checkInVo.MoldCode = row["MoldCode"].ToString();
                    checkInVo.MoldName = row["MoldName"].ToString();

                    if (!ValidateProcessWorkCodeInExcel(excelUploadDt, checkInVo.MoldCode))
                    {
                        row["Remarks"] = string.Format(Properties.Resources.mmci00019);
                        inputDataNG    = true;
                        continue;
                    }

                    MoldVo checkVo = DuplicateCheck(checkInVo);

                    if (checkVo != null && checkVo.AffectedCount > 0)
                    {
                        row["Remarks"] = string.Format(Properties.Resources.mmce00012, MoldCode_lbl.Text + " : " + checkInVo.MoldCode);
                        inputDataNG    = true;
                        continue;
                    }
                }

                Mold_dgv.AutoGenerateColumns = false;
                isExcelUpload = true;
                Mold_dgv.Columns["colRemarks"].Visible = true;
                Mold_dgv.DataSource = excelUploadDt;

                if (inputDataNG)
                {
                    Save_btn.Enabled = false;
                }
                else
                {
                    Save_btn.Enabled = true;
                }

                this.CompleteProgress();
            }
        }