From d10a74e02677c04fe72dc5223c9ceecf542d55c2 Mon Sep 17 00:00:00 2001
From: zzr99 <1940172413@qq.com>
Date: 星期四, 21 四月 2022 16:01:48 +0800
Subject: [PATCH] 标准工时导入
---
PlanM/数据导入/Gy_StdWorkTimes_RoutingBill.cs | 286 ++++++++++++++++-----------------------------------------
1 files changed, 81 insertions(+), 205 deletions(-)
diff --git "a/PlanM/\346\225\260\346\215\256\345\257\274\345\205\245/Gy_StdWorkTimes_RoutingBill.cs" "b/PlanM/\346\225\260\346\215\256\345\257\274\345\205\245/Gy_StdWorkTimes_RoutingBill.cs"
index 34ac451..0f8ee76 100644
--- "a/PlanM/\346\225\260\346\215\256\345\257\274\345\205\245/Gy_StdWorkTimes_RoutingBill.cs"
+++ "b/PlanM/\346\225\260\346\215\256\345\257\274\345\205\245/Gy_StdWorkTimes_RoutingBill.cs"
@@ -31,48 +31,23 @@
public int HStdWorkTimes = 0; //标准工时
public int HUpperlimit = 0; //上限比例
public int HLowerlimit = 0; //下限比例
-
- //public int HMaterNumberCol = 0; //产品代码
- //public int HWorkTypeNameCol = 0; //工种
- //public int HProcNameCol = 0; //工序
- //public int HWorkCenterNameCol = 0; //工作中心
- //public int HProcMulNameCol = 0; //工段
- //public int HWorkCenterName_SCol = 0; //产线
- //public int HWorkQtyCol = 0; //产能
- //public int HSubStdEmpQtyCol = 0; //人数
- //public int HWorkQty_SCol = 0; //产线产能
- //public int HSubStdEmpQty_SCol = 0; //产线人数
-
- //public int HMouldNoCol = 0; //模具编号
- //public int HChangeMouldCol = 0; //换模时间
- //public int HPackStdCol = 0; //周转箱标准
- //public int HPackCol = 0; //周转箱
- //public int HPutAreaCol = 0; //暂放区
- ////
- //public int HMyWorkDaysCol = 0; //生产周期
- //public int HMyFixWorkDaysCol = 0; //固定生产天数
-
- //public int HBeginDayQtyCol = 6; //开工固天
- //public int HBeginFixQtyCol = 7; //开工余量
- //public int HFixPriceCol = 8; //定额 小时工资
- //public int HProcPriceCol = 9; //工价
- //public int HProcTypeCol = 0; //工序类型
//
public const int HBeginRow = 2; //有效数据,开始行数
+
+
//
- //DAL.ClsGy_RoutingBill;
public DAL.ClsGy_Process_View oProcHlp = new DAL.ClsGy_Process_View();
public DAL.ClsGy_StdWorkTimes_Ctl BillNew = new DAL.ClsGy_StdWorkTimes_Ctl();
DAL.ClsIF_Material_View oMaterHlp = new DAL.ClsIF_Material_View();
- //DAL.ClsGy_WorkType_View oWorkType = new DAL.ClsGy_WorkType_View();
- long j = -1;
- int c = 0;
+
+
public override bool OpenExcelData()
{
base.sSheetName = txtHSheetName.Text;
return base.OpenExcelData();
- }
+ }
+
/// <summary>
/// 初始化界面
@@ -80,7 +55,7 @@
public override void initData()
{
base.initData();
- base.sSheetName = txtHSheetName.Text ;
+ base.sSheetName = "标准工时";
base.ModRightName = "Gy_StdWorkTimes_RoutingBill";
base.ModRightNameCheck = base.ModRightName + base.ModRightNameCheck;
base.ModRightNameClose = base.ModRightName + base.ModRightNameClose;
@@ -88,7 +63,7 @@
base.ModRightNameEdit = base.ModRightName + base.ModRightNameEdit;
base.ModRightNameMoney = base.ModRightName + base.ModRightNameMoney;
base.ModRightNameQty = base.ModRightName + base.ModRightNameQty;
- base.ModCaption = "标准工时导入";
+ base.ModCaption = "标准工时";
this.Text = base.ModCaption;
lblCaption.Text = base.ModCaption;
//
@@ -96,79 +71,23 @@
DBUtility.Gy_BaseFun.SetComboxPeriod(cmbHPeriod);
//
}
- //导入
+
public override void Sub_DataIn()
{
- string hnumber = "";
- //
- HStdWorkTimes = DBUtility.Gy_BaseFun.Fun_GetCol("标准工时", grdMain);
- HProcNum = DBUtility.Gy_BaseFun.Fun_GetCol("工序代码", grdMain);
- HProcName = DBUtility.Gy_BaseFun.Fun_GetCol("工序", grdMain);
- HMaterNum = DBUtility.Gy_BaseFun.Fun_GetCol("物料代码", grdMain);
- HMaterName = DBUtility.Gy_BaseFun.Fun_GetCol("物料", grdMain);
- HUpperlimit = DBUtility.Gy_BaseFun.Fun_GetCol("上线比例", grdMain);
- HLowerlimit = DBUtility.Gy_BaseFun.Fun_GetCol("下线比例", grdMain);
- HUSEORGName = DBUtility.Gy_BaseFun.Fun_GetCol("组织", grdMain);
- HMaker = DBUtility.Gy_BaseFun.Fun_GetCol("制单人", grdMain);
- HMakeDate = DBUtility.Gy_BaseFun.Fun_GetCol("制单日期", grdMain);
+ int sHStdWorkTimesCol = DBUtility.Gy_BaseFun.Fun_GetCol("标准工时", grdMain);
+ int sHProcNumCol = DBUtility.Gy_BaseFun.Fun_GetCol("工序代码", grdMain);
+ int sHProcNameCol = DBUtility.Gy_BaseFun.Fun_GetCol("工序", grdMain);
+ int sHMaterNumCol = DBUtility.Gy_BaseFun.Fun_GetCol("物料代码", grdMain);
+ int sHMaterNameCol = DBUtility.Gy_BaseFun.Fun_GetCol("物料", grdMain);
+ int sHUpperlimitCol = DBUtility.Gy_BaseFun.Fun_GetCol("上线比例", grdMain);
+ int sHLowerlimitCol = DBUtility.Gy_BaseFun.Fun_GetCol("下线比例", grdMain);
+ int sHUSEORGNameCol = DBUtility.Gy_BaseFun.Fun_GetCol("组织", grdMain);
+ int sHMakerCol = DBUtility.Gy_BaseFun.Fun_GetCol("制单人", grdMain);
+ int sHMakeDateCol = DBUtility.Gy_BaseFun.Fun_GetCol("制单日期", grdMain);
- //没有找到列
- if (HStdWorkTimes == -1)
- {
- MessageBox.Show("没有找到【标准工时】的标题", "提示");
- return;
- }
- if (HProcName == -1)
- {
- MessageBox.Show("没有找到【工序】的标题", "提示");
- return;
- }
- if (HMaterName == -1)
- {
- MessageBox.Show("没有找到【物料】的标题", "提示");
- return;
- }
- if (HUpperlimit == -1)
- {
- MessageBox.Show("没有找到【上线比例】的标题", "提示");
- return;
- }
- if (HLowerlimit == -1)
- {
- MessageBox.Show("没有找到【下线比例】的标题", "提示");
- return;
- }
- if (HUSEORGName == -1)
- {
- MessageBox.Show("没有找到【组织】的标题", "提示");
- return;
- }
- if (HMaker == -1)
- {
- MessageBox.Show("没有找到【制单人】的标题", "提示");
- return;
- }
- if (HMakeDate == -1)
- {
- MessageBox.Show("没有找到【制单日期】的标题", "提示");
- return;
- }
- //
- if (!Checkdata())
- {
- return;
- }
- if (grdMain.Rows.Count > 0)
- {
- hnumber = DBUtility.ClsPub.isStrNull(grdMain.Rows[0].Cells[HMaterNum].Value);
- BillNew.omodel.HMakeDate = (DateTime.Today.Date).ToString();
- BillNew.omodel.HUSEORGID = DBUtility.ClsPub.HOrgID;
- BillNew.omodel.HStopflag = false;
- BillNew.DetailColl.Clear();
- }
for (int i = 0; i <= grdMain.Rows.Count - 1; i++)
{
- if (DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HProcNum].Value) != "" && DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HMaterNum].Value) != "")
+ if (DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[sHMaterNumCol].Value) != "" && DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[sHProcNumCol].Value) != "")
{
//写入类
if (WriteClass(i))
@@ -194,136 +113,93 @@
//写入类 从控件
private bool WriteClass(int row)
{
- string sHNumber = "";
- string sHNamePoc = "";
- string HStopflag = "";
- string HUSEORGID = "";
- //string sHNumberWorkType = "";
- string HStdWorkTimes = "";
- string HUpperlimit=""; //上限比例
- string HLowerlimit=""; //下限比例
+ BillNew.DetailColl.Clear();
+ string sMaterNumber = "";
+ string sMaterName = "";
+ string sProcNumber = "";
+ string sProcName = "";
+ double sStdWorkTimes = 0;
+ double sUpperlimit = 0;
+ double sLowerlimit = 0;
+ int sUSEORGName = 0;
+ DateTime sHMakeDate = DateTime.Today.Date;
+ string sHMaker = DBUtility.ClsPub.CurUserName;
- int HMaterNum = DBUtility.Gy_BaseFun.Fun_GetCol("产品代码", grdMain);
- int sMaterNameCol = DBUtility.Gy_BaseFun.Fun_GetCol("产品名称", grdMain);
- int sModelCol = DBUtility.Gy_BaseFun.Fun_GetCol("规格型号", grdMain);
- int HProcNum = DBUtility.Gy_BaseFun.Fun_GetCol("工序代码", grdMain);
- int sProcNameCol = DBUtility.Gy_BaseFun.Fun_GetCol("工序", grdMain);
- int sSourceNumberCol = DBUtility.Gy_BaseFun.Fun_GetCol("资源代码", grdMain);
- int sSourceNameCol = DBUtility.Gy_BaseFun.Fun_GetCol("生产资源", grdMain);
- int sPriceCol = DBUtility.Gy_BaseFun.Fun_GetCol("单价", grdMain);
- //long HItemID = 0;
+ int sHStdWorkTimesCol = DBUtility.Gy_BaseFun.Fun_GetCol("标准工时", grdMain);
+ int sHProcNumCol = DBUtility.Gy_BaseFun.Fun_GetCol("工序代码", grdMain);
+ int sHProcNameCol = DBUtility.Gy_BaseFun.Fun_GetCol("工序", grdMain);
+ int sHMaterNumCol = DBUtility.Gy_BaseFun.Fun_GetCol("物料代码", grdMain);
+ int sHMaterNameCol = DBUtility.Gy_BaseFun.Fun_GetCol("物料", grdMain);
+ int sHUpperlimitCol = DBUtility.Gy_BaseFun.Fun_GetCol("上线比例", grdMain);
+ int sHLowerlimitCol = DBUtility.Gy_BaseFun.Fun_GetCol("下线比例", grdMain);
+ int sHUSEORGNameCol = DBUtility.Gy_BaseFun.Fun_GetCol("组织", grdMain);
+ int sHMakerCol = DBUtility.Gy_BaseFun.Fun_GetCol("制单人", grdMain);
+ int sHMakeDateCol = DBUtility.Gy_BaseFun.Fun_GetCol("制单日期", grdMain);
//
- sHNumber = DBUtility.ClsPub.isStrNull(grdMain.Rows[row].Cells[HMaterNum].Value);
- sHNamePoc = DBUtility.ClsPub.isStrNull(grdMain.Rows[row].Cells[HProcNum].Value);
- //
- //
- HStopflag = DBUtility.ClsPub.isBool(grdMain.Rows[row].Cells[HStopflag].Value).ToString();
- HUSEORGID = DBUtility.ClsPub.HOrgID.ToString();
- HStdWorkTimes = DBUtility.ClsPub.isSingle(grdMain.Rows[row].Cells[HStdWorkTimes].Value).ToString();
- HUpperlimit = DBUtility.ClsPub.isSingle(grdMain.Rows[row].Cells[HUpperlimit].Value).ToString();
- HLowerlimit = DBUtility.ClsPub.isSingle(grdMain.Rows[row].Cells[HLowerlimit].Value).ToString();
+ sMaterNumber = DBUtility.ClsPub.isStrNull(grdMain.Rows[row].Cells[sHMaterNumCol].Value);
+ //sMaterName = DBUtility.ClsPub.isStrNull(grdMain.Rows[row].Cells[sHMaterNameCol].Value);
+ sProcNumber = DBUtility.ClsPub.isStrNull(grdMain.Rows[row].Cells[sHProcNumCol].Value);
+ //sProcName = DBUtility.ClsPub.isStrNull(grdMain.Rows[row].Cells[sHProcNameCol].Value);
+ sStdWorkTimes = DBUtility.ClsPub.isDoule(grdMain.Rows[row].Cells[sHStdWorkTimesCol].Value);
+ sUpperlimit = DBUtility.ClsPub.isDoule(grdMain.Rows[row].Cells[sHUpperlimitCol].Value);
+ sLowerlimit = DBUtility.ClsPub.isDoule(grdMain.Rows[row].Cells[sHLowerlimitCol].Value);
+ //sUSEORGName = DBUtility.ClsPub.isInt(grdMain.Rows[row].Cells[sHUSEORGNameCol].Value);
+ //sHMakeDate = DBUtility.ClsPub.isDate(grdMain.Rows[row].Cells[sHMakeDateCol].Value);
+ //sHMaker = DBUtility.ClsPub.isStrNull(grdMain.Rows[row].Cells[sHMakerCol].Value);
//判断是否允许 保存
- if (!DBUtility.ClsPub.AllowNumber(sHNumber))
+ //审核代码是否合理
+ if (!DBUtility.ClsPub.AllowNumber(sMaterNumber))
{
MessageBox.Show("产品代码中不能出现连续‘.’并且首位末位不能为‘.’!", "提示");
return false;
}
- if (!DBUtility.ClsPub.AllowNumber(sHNamePoc))
+ if (!DBUtility.ClsPub.AllowNumber(sProcNumber))
{
MessageBox.Show("工序代码中不能出现连续‘.’并且首位末位不能为‘.’!", "提示");
return false;
}
Model.ClsGy_StdWorkTimes_Model oSub = new Model.ClsGy_StdWorkTimes_Model();
-
- //得到工序内码
- if (oProcHlp.GetInfoByName(sHNamePoc))
- {
- oSub.HProcID = oProcHlp.omodel.HItemID;
- }
//得到物料内码
- if (oMaterHlp.GetInfoByName(sHNumber))
+ if (oMaterHlp.GetInfoByNumber(sMaterNumber))
{
oSub.HMaterID = oMaterHlp.omodel.HItemID;
}
-
-
- //写入信息
- oSub.HEntryID = j;
-
- oSub.HMaker = DBUtility.ClsPub.CurUserName;
- oSub.HMakeDate = (DateTime.Today.Date).ToString();
- oSub.HStdWorkTimes = double.Parse(HStdWorkTimes);
- oSub.HRemark = "";
- oSub.HUpperlimit = double.Parse(HUpperlimit);
- oSub.HLowerlimit = double.Parse(HLowerlimit);
- oSub.HStopflag = bool.Parse(HStopflag);
-
-
- BillNew.DetailColl.Add(oSub);
- return true;
- }
-
- //检查物料
- private bool Checkdata()
- {
- bool b = false;
- string sErrMsg = "";
- string sMsg = "";
- for (int i = 0; i <= grdMain.Rows.Count - 1; i++)
+ else
{
- string sHNumber = "";
- string sHNamePoc = "";
-
- //
- sHNumber = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HMaterNum].Value);
- sHNamePoc = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HProcNum].Value);
- if (sHNumber != "")
- {
- //
- //审核代码是否合理
- if (!DBUtility.ClsPub.AllowNumber(sHNumber))
- {
- MessageBox.Show("物料代码中不能出现连续‘.’并且首位末位不能为‘.’!", "提示");
- return false;
- }
- //得到物料内码
- int j = i + HBeginRow;
- if (!oMaterHlp.GetInfoByNumber(sHNumber))
- {
- sMsg = "[" + sHNumber + "]物料不存在";
- if (sErrMsg.Contains(sMsg) == false)
- {
- sErrMsg = sErrMsg + "[" + sHNumber + "]物料不存在\r\n";
- }
- b = true;
- }
- //得到工序内码
- if (!oProcHlp.GetInfoByName(sHNamePoc))
- {
- sMsg = "[" + sHNamePoc + "]工序不存在";
- if (sErrMsg.Contains(sMsg) == false)
- {
- sErrMsg = sErrMsg + "[" + sHNamePoc + "]工序不存在\r\n";
- }
- b = true;
- }
- }
- }
- if (b == true)
- {
- Pub_Control.ErrMsgBox oMsgbox = new Pub_Control.ErrMsgBox();
- oMsgbox.txtHErrMsg.Text = sErrMsg;
- oMsgbox.ShowDialog();
+ oSub.HMaterID = 0;
+ MessageBox.Show("第" + row.ToString() + "行," + sMaterNumber + "没有找到对应的物料!");
return false;
+ }
+ //得到工序内码
+ if (oProcHlp.GetInfoByNumber(sProcNumber))
+ {
+ oSub.HProcID = oProcHlp.omodel.HItemID;
}
else
{
- return true;
+ oSub.HProcID = 0;
+ MessageBox.Show("第" + row.ToString() + "行," + sProcNumber + "没有找到对应的工序!");
+ return false;
}
+
+ //写入信息
+
+ oSub.HRemark = "";
+ oSub.HStdWorkTimes = sStdWorkTimes;
+ oSub.HUpperlimit = sUpperlimit;
+ oSub.HLowerlimit = sLowerlimit;
+ oSub.HUSEORGID = DBUtility.ClsPub.HOrgID;
+ oSub.HMaker = DBUtility.ClsPub.CurUserName;
+ oSub.HMakeDate = DateTime.Today.ToShortDateString();
+ BillNew.DetailColl.Add(oSub);
+ //oProc.oModel.HBillSubType = DBUtility.ClsPub.isStrNull(txtHBillSubType.Text);
+
+ return true;
}
+
private void Gy_StdWorkTimes_RoutingBill_Load(object sender, EventArgs e)
{
--
Gitblit v1.9.1