private OsPaymentData[] collectPublishData(DataGridView dgv) { int rcnt = 0; for (int i = 0; i < dgv.Rows.Count; i++) { if (Convert.ToString(dgv.Rows[i].Cells["ItemCode"].Value) != "") { rcnt++; } } if (rcnt == 0) { return(null); } OsPaymentData[] opda = new OsPaymentData[rcnt]; opd = new OsPaymentData(); opd = moveCommonData(); for (int i = 0, j = 0; i < dataGridView1.Rows.Count; i++) { if (Convert.ToString(dgv.Rows[i].Cells["ItemCode"].Value) == "") { continue; } if (j < rcnt) { opda[j] = ( OsPaymentData )(moveIndividualData(dgv.Rows[i])).Clone(); j++; } } return(opda); }
/// <summary> /// 削除マークがついたもの、一度保存されたものを対象に外注精算データを削除する /// 対応する原画実績データがある場合はそれも削除する。 /// </summary> /// <param name="dgv"></param> /// <returns></returns> private bool deletePaymentData(DataGridView dgv) { opd = new OsPaymentData(); CostReportData crd = new CostReportData(); for (int i = 0; i < dgv.Rows.Count; i++) { if (Convert.ToString(dgv.Rows[i].Cells["PaymentID"].Value) == "") { continue; } if (!Convert.ToBoolean(dgv.Rows[i].Cells["Check"].Value)) { continue; } if (!opd.DeletePayment("@pMID", Convert.ToInt32(dgv.Rows[i].Cells["PaymentID"].Value))) { return(false); // 出来高データの削除 } if (Convert.ToString(dgv.Rows[i].Cells["SlipNo"].Value) != "") // 原価データの削除 { if (!crd.DeleteCostReport("@slip", Convert.ToInt32(dgv.Rows[i].Cells["SlipNo"].Value))) { return(false); } } } return(true); }
private bool updateCheckStatus(DataGridView dgv, int ckNo, int stat, DateTime ckDt) { OsPaymentData pmdPro = new OsPaymentData(); for (int i = 0; i < dgv.Rows.Count; i++) { if (!string.IsNullOrEmpty(Convert.ToString(dgv.Rows[i].Cells["PaymentID"].Value))) { if (!pmdPro.UpdatePaymentStatus(Convert.ToInt32(dgv.Rows[i].Cells["PaymentID"].Value), ckNo, stat, ckDt)) { return(false); } } } return(true); }
private bool savePaymentData(DataGridView dgv) { int procCnt = 0; opd = new OsPaymentData(); opd = moveCommonData(); CostReportData crp = new CostReportData(); for (int i = 0; i < dgv.Rows.Count; i++) { if (Convert.ToString(dgv.Rows[i].Cells["ItemCode"].Value) == "") { continue; } opd = moveIndividualData(dataGridView1.Rows[i]); if (Convert.ToString(dgv.Rows[i].Cells["PaymentID"].Value) == "") { if (!opd.InsertPayment()) { return(false); } dgv.Rows[i].Cells["PaymentID"].Value = Convert.ToString(opd.OsPaymentID); } else { opd.OsPaymentID = Convert.ToInt32(dgv.Rows[i].Cells["PaymentID"].Value); if (!opd.UpdatePayment()) { return(false); } } procCnt++; } if (procCnt == 0) { MessageBox.Show("処理対象のデータはありませんでした!"); return(false); } return(true); }
/// <summary> /// 現在保存している外注出来高データをDBから読取り表示する /// </summary> /// <param name="reportDate"></param> /// <param name="costCode"></param> /// <param name="officeCode"></param> /// <param name="department"></param> private void selectPaymentData(DataGridView dgv, DateTime reportDate, string officeCode, string department) { readyPro = true; dgv.Enabled = true; dgv.Rows.Clear(); dgv.Rows.Add(iniRCnt); opd = new OsPaymentData(); DataTable dt = opd.SelectPayment(reportDate.EndOfMonth(), officeCode, department); if (dt == null || dt.Rows.Count < 1) { labelMsg.Text = "表示できるデータはありません。"; seqNoReNumbering(dgv); this.dataGridView1.CurrentCell = null; readyPro = false; return; } labelMsg.Text = ""; if (dt.Rows.Count > iniRCnt) { dgv.Rows.Add(dt.Rows.Count - iniRCnt + 5); } TaskData tdp = new TaskData(); ListFormDataOp lo = new ListFormDataOp(); DataRow dr; string taskCode; for (int i = 0; i < dt.Rows.Count; i++) { dr = dt.Rows[i]; if (i == 0) { string[] ckItems = new string[] { "AdminCheck", "DirectorCheck", "PresidentCheck" }; string[] dtItems = new string[] { "ACheckDate", "DCheckDate", "PCheckDate" }; for (int j = 0; j < ckItems.Length; j++) { int checkStat = Convert.ToInt32(dr[ckItems[j]]); ckArray[j].Checked = (checkStat == 1) ? true : false; dtArray[j] = (checkStat == 1) ? Convert.ToDateTime(dr[dtItems[j]]) : DateTime.MinValue; lbArray[j].Text = (checkStat == 1) ? dtArray[j].ToLongDateString() : ""; } if (ckArray[2].Checked) { buttonDisEnabled(); } else if (ckArray[1].Checked) { buttonDisEnabled(); buttonCost.Enabled = true; } else if (ckArray[0].Checked) { buttonEnabled(); buttonCost.Enabled = false; } } dgv.Rows[i].Cells["ItemCode"].Value = Convert.ToString(dr["ItemCode"]); dgv.Rows[i].Cells["Item"].Value = Convert.ToString(dr["Item"]); dgv.Rows[i].Cells["OrderNo"].Value = Convert.ToString(dr["OrderNo"]); taskCode = Convert.ToString(dr["TaskCode"]); dgv.Rows[i].Cells["TaskCode"].Value = taskCode; if (Convert.ToString(dr["OrderAmount"]) == "" || Convert.ToString(dr["OrderAmount"]) == "0.00") { dgv.Rows[i].Cells["OAmount"].Value = opd.SelectOAmountPayment(Convert.ToString(dr["ItemCode"]), taskCode, Conv.OfficeCode, Conv.DepartCode, dateTimePickerEx1.Value); } else { dgv.Rows[i].Cells["OAmount"].Value = Convert.ToDecimal(dr["OrderAmount"]); } dgv.Rows[i].Cells["SAmount"].Value = opd.SelectSumAmountPayment(Convert.ToString(dr["ItemCode"]), taskCode, Conv.OfficeCode, Conv.DepartCode, dateTimePickerEx1.Value); dgv.Rows[i].Cells["Amount"].Value = Convert.ToDecimal(dr["Amount"]); calculateInvolvedItems(dgv.Rows[i]); dgv.Rows[i].Cells["LeaderMCode"].Value = Convert.ToString(dr["LeaderMCode"]); dgv.Rows[i].Cells["SlipNo"].Value = Convert.ToInt32(dr["SlipNo"]) == 0 ? "" : Convert.ToString(dr["SlipNo"]); dgv.Rows[i].Cells["CostReportID"].Value = Convert.ToInt32(dr["CostReportID"]) == 0 ? "" : Convert.ToString(dr["CostReportID"]); dgv.Rows[i].Cells["PaymentID"].Value = Convert.ToString(dr["OsPaymentID"]); dgv.Rows[i].Cells["Check"].Value = false; TaskCodeNameData tcnd = lo.SelectTaskCodeNameData(taskCode, Conv.OfficeCode); if (tcnd != null) { dgv.Rows[i].Cells["TaskName"].Value = tcnd.TaskName; tdp = tdp.SelectTaskData(taskCode); dgv.Rows[i].Cells["SalesMCode"].Value = "0" + tdp.SalesMCode; dgv.Rows[i].Cells["PartnerCode"].Value = tdp.PartnerCode; } } seqNoReNumbering(dgv); this.dataGridView1.CurrentCell = null; readyPro = false; }
private bool involvedDataDelete(DataGridViewRow dgvRow, int slipNo) { WorkReportData wrp; OsWkDetailData owd; OsPayOffData ofd; OsPaymentData omd; switch (Convert.ToString(dgvRow.Cells["Subject"].Value)) { case "A": case "B": case "K": wrp = new WorkReportData(); if (wrp.ExistenceSlipNo(slipNo)) { if (!wrp.ClearPartWorkReport(slipNo, Convert.ToInt32(dgvRow.Cells["CostReportID"].Value))) { deleteErrorMessage("作業内訳データ"); return(false); } } else { owd = new OsWkDetailData(); if (owd.ExistenceSlipNo(slipNo, Convert.ToInt32(dgvRow.Cells["CostReportID"].Value))) { if (!owd.DeleteOsWkDetail("@slip", slipNo)) { deleteErrorMessage("外注作業内訳データ"); return(false); } } } break; case "F": ofd = new OsPayOffData(); if (ofd.ExistenceSlipNo(slipNo)) { if (!ofd.DeletePayOff("@slip", slipNo)) { deleteErrorMessage("外注精算データ"); return(false); } } else { omd = new OsPaymentData(); if (omd.ExistenceSlipNo(slipNo)) { if (!omd.DeletePayment("@slip", slipNo)) { deleteErrorMessage("外注出来高データ"); return(false); } } } break; default: owd = new OsWkDetailData(); if (owd.ExistenceSlipNo(slipNo, Convert.ToInt32(dgvRow.Cells["CostReportID"].Value))) { if (!owd.DeleteOsWkDetail("@slip", slipNo)) { deleteErrorMessage("外注作業内訳データ"); return(false); } } break; } return(true); }
private bool involvedDataUpdate(DataGridViewRow dgvRow, int slipNo) { WorkReportData wrp; OsWkDetailData owd; OsPayOffData ofd; OsPaymentData omd; decimal unitPrice = DHandling.ToRegDecimal(Convert.ToString(dgvRow.Cells["UnitPrice"].Value)); decimal cost = DHandling.ToRegDecimal(Convert.ToString(dgvRow.Cells["Cost"].Value)); decimal qty = DHandling.ToRegDecimal(Convert.ToString(dgvRow.Cells["Quantity"].Value)); switch (Convert.ToString(dgvRow.Cells["Subject"].Value)) { case "A": case "B": case "K": wrp = new WorkReportData(); if (wrp.ExistenceSlipNo(slipNo)) { if (!wrp.UpdatePartWorkReport(slipNo, Convert.ToInt32(dgvRow.Cells["CostReportID"].Value), qty)) { updateErrorMessage("作業内訳データ"); return(false); } } else { owd = new OsWkDetailData(); if (owd.ExistenceSlipNo(slipNo, Convert.ToInt32(dgvRow.Cells["CostReportID"].Value))) { if (!owd.UpdatePartOsWkDetail(slipNo, Convert.ToInt32(dgvRow.Cells["CostReportID"].Value), qty, cost)) { updateErrorMessage("外注作業内訳データ"); return(false); } } } break; case "F": ofd = new OsPayOffData(); if (ofd.ExistenceSlipNo(slipNo)) { ofd = ofd.SelectOsPayOff(slipNo); ofd.Cost = cost; if (!ofd.UpdatePayOff()) { updateErrorMessage("外注精算データ"); return(false); } //if (!ofd.UpdatePartPayOff(slipNo, cost)) //{ // updateErrorMessage("外注精算データ"); // return false; //} } else { omd = new OsPaymentData(); if (omd.ExistenceSlipNo(slipNo)) { omd = omd.SelectPayment(slipNo); omd.Amount = cost; if (!omd.UpdatePayment()) { updateErrorMessage("外注出来高データ"); return(false); } //if (!omd.UpdatePartPayment(slipNo, cost)) //{ // updateErrorMessage("外注出来高データ"); // return false; //} } } break; default: owd = new OsWkDetailData(); if (owd.ExistenceSlipNo(slipNo, Convert.ToInt32(dgvRow.Cells["CostReportID"].Value))) { if (!owd.UpdatePartOsWkDetail(slipNo, Convert.ToInt32(dgvRow.Cells["CostReportID"].Value), qty, cost)) { deleteErrorMessage("外注作業内訳データ"); return(false); } } break; } return(true); }