| | |
| | | using gregn6Lib; |
| | | using Pub_Class; |
| | | using System.Threading; |
| | | using System.Globalization; |
| | | |
| | | namespace WarM |
| | | { |
| | |
| | | public const Int16 HEXPPERIODCol = 41; |
| | | public const Int16 HLSHCol = 42; |
| | | public const Int16 HBaNoCol = 43; |
| | | public const Int16 HCusModelCol = 44; |
| | | // |
| | | public string ModName = "85"; |
| | | public string ModCaption = "å®¢æ·æ ç¾çæ"; |
| | |
| | | public string sYear4 = ""; //å¹´ï¼4ä½ï¼ |
| | | public string sPeriod = ""; //æ |
| | | public string sDay = ""; //æ¥ |
| | | public string sWeek = ""; //å¨ |
| | | public string sYearWeek = ""; //å¹´ï¼2ä½ï¼å¨ï¼2ä½ï¼ |
| | | public string sYearPeriodDay = ""; //å¹´ï¼4ä½ï¼æï¼2ä½ï¼æ¥ï¼2ä½ï¼ |
| | | public string HBarCodeType = "è¶
èåå
æ ç¾"; //æ¡ç ç±»å |
| | | |
| | | |
| | |
| | | cmbHCusName.DataSource = ds.Tables[0]; |
| | | cmbHCusName.DisplayMember = "HName"; |
| | | cmbHCusName.ValueMember = "HItemID"; |
| | | |
| | | if (cmbHCusName.Text.Contains("éæ·")) |
| | | { |
| | | HBarCodeType = "éæ·æ ç¾"; |
| | | } |
| | | else if (cmbHCusName.Text.Contains("æ®ç¿äºå")) |
| | | { |
| | | HBarCodeType = "å夿 ç¾"; |
| | | } |
| | | else if (cmbHCusName.Text.Contains("è±ä¸è¾¾")) |
| | | { |
| | | HBarCodeType = "è±ä¸è¾¾æ ç¾"; |
| | | } |
| | | else |
| | | { |
| | | HBarCodeType = "è¶
èåå
æ ç¾"; |
| | | } |
| | | } |
| | | |
| | | //çªä½å°ºå¯¸ååæ¶ |
| | |
| | | sPeriod = sPeriod.Substring(sPeriod.Length - 2, 2); |
| | | sDay = "0" + ClsPub.isDate(sDate).Day.ToString(); |
| | | sDay = sDay.Substring(sDay.Length - 2, 2); |
| | | //è·åå¨ |
| | | GregorianCalendar calendar = new GregorianCalendar(); |
| | | int weekNumber = calendar.GetWeekOfYear(dtpHDate.Value, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday); |
| | | sWeek = "0" + weekNumber.ToString(); |
| | | sWeek = sWeek.Substring(sWeek.Length - 2, 2); |
| | | sYearWeek = sYear + sWeek; |
| | | //è·åå¹´ææ¥ |
| | | sYearPeriodDay = sYear4 + sPeriod + sDay; |
| | | //================================== |
| | | switch (sPeriod) |
| | | { |
| | |
| | | double HQty = 0; //æ°é |
| | | Int64 HCusID = 0; //客æ·ID |
| | | string HCusModelName = ""; //客æ·ç©æç¼ç |
| | | string HCusModel = ""; //客æ·ç©æåç§° |
| | | bool HGiveAwayFlag = false; //èµ åæ è®° |
| | | string HProduceDate; //çäº§æ¥æï¼ä¿è´¨æç¨ï¼ |
| | | string HExpiryDate; //ä¿è´¨æè³ï¼ä¿è´¨æç¨ï¼ |
| | |
| | | HMaterNumber = HMaterNumber.Substring(HMaterNumber.Length - 3, 3); //åç©æä»£ç åä¸ä½ |
| | | string sHCusModelName = DBUtility.ClsPub.isStrNull(grdMain.Rows[j].Cells[HCusModelNameCol].Value); //客æ·ä»£ç ï¼åéè¶å®¢æ·ç©æå¯¹åºè¡¨å®¢æ·ç©æç¼ç ï¼ |
| | | |
| | | //æ¡ç åç¼ = å¹´ + æ |
| | | sTMNumber = sYear + sPeriod; |
| | | Ds = oCn.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo"); //è·åæå¤§æµæ°´å· |
| | | LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]); |
| | | if (HBarCodeType == "éæ·æ ç¾") |
| | | { |
| | | LSHlen = 5; |
| | | //æ¡ç åç¼ = å®¢æ·æå·+ä¾åºå代ç ï¼åºå®'264'ï¼+å¹´ææ¥ï¼20250705ï¼ |
| | | sTMNumber = sHCusModelName + "264" + sYearPeriodDay; |
| | | Ds = oCn.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo"); //è·åæå¤§æµæ°´å· |
| | | LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]); |
| | | } |
| | | else if (HBarCodeType == "å夿 ç¾") |
| | | { |
| | | LSHlen = 4; |
| | | //æ¡ç åç¼ = å®¢æ·æå·+å¹´å¨ |
| | | sTMNumber = sHCusModelName + sYearWeek; |
| | | Ds = oCn.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo"); //è·åæå¤§æµæ°´å· |
| | | LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]); |
| | | } |
| | | else if (HBarCodeType == "è±ä¸è¾¾æ ç¾") |
| | | { |
| | | LSHlen = 3; |
| | | string sPN = ""; |
| | | string sBB = ""; |
| | | if (sHCusModelName.Length >= 6) |
| | | { |
| | | sPN = sHCusModelName.Substring(sHCusModelName.Length - 6, 4); //PN å®¢æ·æå·åå
ä½ä¸çååä½ |
| | | sBB = sHCusModelName.Substring(sHCusModelName.Length - 2, 2); //çæ¬ åå®¢æ·æå·åä¸¤ä½ |
| | | } |
| | | else |
| | | { |
| | | MessageBox.Show("è±ä¸è¾¾å®¢æ·æå·ä¸º[" + sHCusModelName + "]ï¼é¿åº¦å¿
é¡»å¤§äºæçäº6ä½ï¼"); |
| | | return; |
| | | } |
| | | |
| | | //æ¡ç åç¼ = 1ä½åºå®ç ï¼9ï¼+4ä½PNï¼å®¢æ·æå·åå
ä½ä¸çååä½ï¼+2ä½åå代ç ï¼åºå®33ï¼+2ä½çæ¬ï¼å®¢æ·æå·å两ä½ï¼+1ä½å¹´ä»½ï¼å¹´æåä¸ä½ï¼+2ä½å¨ï¼ä¸å¹´ä¸ç第å å¨ï¼ |
| | | sTMNumber = "9" + sPN + "33" + sBB + sYearWeek.Substring(sYearWeek.Length - 3, 3); |
| | | Ds = oCn.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo"); //è·åæå¤§æµæ°´å· |
| | | LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]); |
| | | } |
| | | else |
| | | //è¶
èåå
æ ç¾ |
| | | { |
| | | //æ¡ç åç¼ = å¹´ + æ |
| | | sTMNumber = sYear + sPeriod; |
| | | Ds = oCn.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo"); //è·åæå¤§æµæ°´å· |
| | | LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]); |
| | | } |
| | | |
| | | HBQty = ClsPub.isInt(grdMain.Rows[j].Cells[HBQtyCol].Value); |
| | | HMinQty = ClsPub.isDoule(grdMain.Rows[j].Cells[HMinQtyCol].Value); |
| | |
| | | HMinQty = HSumQty; |
| | | } |
| | | // |
| | | LSH = LSH + 1; |
| | | LSH2 = LSH.ToString(); |
| | | LSH = LSH + 1; |
| | | if (HBarCodeType == "è±ä¸è¾¾æ ç¾") |
| | | { |
| | | LSH2 = ConvertToBase(ClsPub.isInt(LSH), 34); |
| | | } |
| | | else |
| | | { |
| | | LSH2 = LSH.ToString(); |
| | | } |
| | | |
| | | while (LSH2.Length < LSHlen) //å¦ææµæ°´å·ä½æ°å°äº æµæ°´å·é¿åº¦ åé¢è¡¥0 |
| | | { |
| | | LSH2 = "0" + LSH2; |
| | | } |
| | | if (LSH2.Length != 7) |
| | | |
| | | if (HBarCodeType == "éæ·æ ç¾" || HBarCodeType == "å夿 ç¾" || HBarCodeType == "è±ä¸è¾¾æ ç¾") |
| | | { |
| | | MessageBox.Show("æ¡ç æµæ°´å·ä¸º[" + LSH2 + "]ï¼é¿åº¦ä¸å
许è¶
è¿7ä½ï¼"); |
| | | return; |
| | | TM = sTMNumber + LSH2; |
| | | } |
| | | //è¶
èåæ°åææ¯æéå
¬å¸ æ¡ç ç¼å·ï¼å
±26ä½ï¼ = 代ç ï¼1ä½åºå®âSâï¼ + åå代ç ï¼2ä½åºå®âY3âï¼ + å¹´ï¼2ä½å¹´å两ä½ï¼ + æï¼1ä½10=A,11=B,12=Cï¼ + æµæ°´å·ï¼7ä½ï¼ + 代å·ï¼2ä½åºå®â1Pâï¼ + 客æ·ä»£ç ï¼8ä½åéè¶å®¢æ·ç©æå¯¹åºè¡¨å®¢æ·ç©æç¼ç ï¼ + ç©æçæ¬ï¼3ä½åç©æç¼ç åä¸ä½ï¼ |
| | | TM = "SY3" + sYear + sPeriod + LSH2 + "1P" + sHCusModelName; |
| | | //TM = "SY3" + sYear + sPeriod + LSH2 + "1P" + sHCusModelName + HMaterNumber; |
| | | else |
| | | //è¶
èåå
æ ç¾ |
| | | { |
| | | if (LSH2.Length != 7) |
| | | { |
| | | MessageBox.Show("æ¡ç æµæ°´å·ä¸º[" + LSH2 + "]ï¼é¿åº¦ä¸å
许è¶
è¿7ä½ï¼"); |
| | | return; |
| | | } |
| | | //è¶
èåæ°åææ¯æéå
¬å¸ æ¡ç ç¼å·ï¼å
±26ä½ï¼ = 代ç ï¼1ä½åºå®âSâï¼ + åå代ç ï¼2ä½åºå®âY3âï¼ + å¹´ï¼2ä½å¹´å两ä½ï¼ + æï¼1ä½10=A,11=B,12=Cï¼ + æµæ°´å·ï¼7ä½ï¼ + 代å·ï¼2ä½åºå®â1Pâï¼ + 客æ·ä»£ç ï¼8ä½åéè¶å®¢æ·ç©æå¯¹åºè¡¨å®¢æ·ç©æç¼ç ï¼ + ç©æçæ¬ï¼3ä½åç©æç¼ç åä¸ä½ï¼ |
| | | TM = "SY3" + sYear + sPeriod + LSH2 + "1P" + sHCusModelName; |
| | | //TM = "SY3" + sYear + sPeriod + LSH2 + "1P" + sHCusModelName + HMaterNumber; |
| | | } |
| | | |
| | | HEntryID = j + 1; |
| | | HBarCode = TM.ToUpper(); |
| | |
| | | HQty = HMinQty; |
| | | HCusID = ClsPub.isLong(cmbHCusName.SelectedValue); |
| | | HCusModelName = ClsPub.isStrNull(grdMain.Rows[j].Cells[HCusModelNameCol].Value); |
| | | HCusModel = ClsPub.isStrNull(grdMain.Rows[j].Cells[HCusModelCol].Value); |
| | | HGiveAwayFlag = ClsPub.isBool(grdMain.Rows[j].Cells[HGiveAwayFlagCol].Value); |
| | | HISKFPERIOD = ClsPub.isBool(grdMain.Rows[j].Cells[HISKFPERIODCol].Value); |
| | | HProduceDate = ClsPub.isStrNull(grdMain.Rows[j].Cells[HProduceDateCol].Value); |
| | |
| | | HBoxNo = sTMNumber; |
| | | sHBaNo = ClsPub.isStrNull(grdMain.Rows[j].Cells[HBaNoCol].Value); // çé¢ä¸è¾å
¥çæ¹æ¬¡ä½ |
| | | |
| | | //è¶
èåæ°åææ¯æéå
¬å¸ 客æ·ç©æç¼ç HCusModelNameãæµæ°´å·HSnoãæµæ°´å·HSupNumberãæµæ°´å·çæåç¼HBoxNoãç©æçæ¬HCode3 |
| | | //è¶
èåæ°åææ¯æéå
¬å¸ 客æ·ç©æç¼ç HCusModelNameã客æ·ç©æåç§°HCusModelãæµæ°´å·HSnoãæµæ°´å·HSupNumberãæµæ°´å·çæåç¼HBoxNoãç©æçæ¬HCode3 |
| | | oCn.RunProc("insert into Gy_BarCodeBill_Cus" + |
| | | "(HInterID,HEntryID,HBillType,HBarCode,HBarCodeType" + |
| | | ",HMaterID,HUnitID,HAuxPropID,HBatchNo,HQty" + |
| | |
| | | ",HCode2,HCode3,HBackDataFlag,HSno,HBoxNo" + |
| | | ") values (" + HInterID + "," + HEntryID + ",'','" + HBarCode + "','" + HBarCodeType + "'" |
| | | + "," + HMaterID.ToString() + "," + HUnitID.ToString() + "," + HAuxPropID.ToString() + ",'" + HBatchNo + "'," + HQty.ToString() |
| | | + "," + HCusID.ToString() + ",'','" + HCusModelName + "','" + sDate + "',''" |
| | | + "," + HCusID.ToString() + ",'" + HCusModel + "','" + HCusModelName + "','" + sDate + "',''" |
| | | + "," + DBUtility.ClsPub.BoolToString(HGiveAwayFlag) + "," + DBUtility.ClsPub.BoolToString(HISKFPERIOD) + ",''" |
| | | + "," + (HProduceDate == "" ? "NULL" : "'" + HProduceDate + "'") + "," + (HExpiryDate == "" ? "NULL" : "'" + HExpiryDate + "'") |
| | | + "," + HBarcodeQtys.ToString() + "," + HBarcodeNo.ToString() + ",1,0" |
| | |
| | | #region å°åè¿å¶æ°å¼è½¬ææå®è¿å¶æ°å¼ï¼num为è¦è½¬æ¢çåè¿è¡æ°å¼ï¼nbase为æå®è¿å¶ï¼ |
| | | public string ConvertToBase(int num, int nbase) |
| | | { |
| | | string chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; |
| | | string chars = "0123456789ABCDEFGHJKLMNPQRSTUVWXYZ"; |
| | | if (nbase < 2 || nbase > chars.Length) |
| | | return ""; |
| | | int r; |
| | |
| | | private void initGrid() |
| | | { |
| | | grdMain.RowCount = 0; |
| | | grdMain.ColumnCount = 44; //æ»åæ° |
| | | grdMain.ColumnCount = 45; //æ»åæ° |
| | | DBUtility.Xt_BaseBillFun.initGridFst(grdMain, this.Name); |
| | | grdMain.Columns[HSnoCol].HeaderText = "åºå·"; |
| | | grdMain.Columns[HMainIDCol].HeaderText = "æºå主ID"; |
| | |
| | | grdMain.Columns[HMaterNameCol].HeaderText = "ç©æåç§°"; |
| | | grdMain.Columns[HMaterModelCol].HeaderText = "è§æ ¼åå·"; |
| | | grdMain.Columns[HCusModelNameCol].HeaderText = "客æ·ç©æç¼ç "; |
| | | grdMain.Columns[HCusModelCol].HeaderText = "客æ·ç©æåç§°"; |
| | | grdMain.Columns[HUnitIDCol].HeaderText = "计éåä½ID"; |
| | | grdMain.Columns[HUnitNumberCol].HeaderText = "计éåä½ä»£ç "; |
| | | grdMain.Columns[HUnitNameCol].HeaderText = "计éåä½åç§°"; |
| | |
| | | "," + HMinQtyCol.ToString() + |
| | | "," + HMaterNumberCol.ToString() + |
| | | "," + HAuxPropNumberCol.ToString() + |
| | | "," + HCusModelNameCol.ToString() + |
| | | "," + HCusModelCol.ToString() + |
| | | "," + HUnitNumberCol.ToString() + |
| | | "," + HCode1Col.ToString() + |
| | | //"," + HCode2Col.ToString() + |
| | |
| | | string sAllowCol = HQtyCol.ToString() + |
| | | "," + HMinQtyCol.ToString() + |
| | | "," + HAuxPropNumberCol.ToString() + |
| | | "," + HCusModelNameCol.ToString() + |
| | | "," + HCusModelCol.ToString() + |
| | | "," + HCode1Col.ToString() + |
| | | //"," + HCode2Col.ToString() + |
| | | "," + HCode3Col.ToString() + |
| | |
| | | DataSet ds = oCn.RunProcReturn("exec h_p_Gy_CusBarCodeBill_CusMatNo " + num.ToString() + "," + HCusID.ToString() + "," + HMaterID.ToString(), "h_p_Gy_CusBarCodeBill_CusMatNo"); |
| | | if (ds == null || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | grdMain.Rows[j].Cells[HCusModelNameCol].Value = ""; |
| | | //ç½æ ¼ä¸æéæ©æ¡ |
| | | DataGridViewComboBoxCell column = new DataGridViewComboBoxCell(); |
| | | column.Items.Add(""); |
| | | grdMain.Rows[j].Cells[HCusModelNameCol] = column; |
| | | grdMain.Rows[j].Cells[HCusModelCol].Value = ""; |
| | | } |
| | | else |
| | | { |
| | | //ç½æ ¼ä¸æéæ©æ¡ |
| | | DataGridViewComboBoxCell column = new DataGridViewComboBoxCell(); |
| | | for (int i = 0; i < ds.Tables[0].Rows.Count; i++) |
| | | { |
| | | column.Items.Add(DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[i]["HCusRelationNumber"])); |
| | | } |
| | | grdMain.Rows[j].Cells[HCusModelNameCol] = column; |
| | | grdMain.Rows[j].Cells[HCusModelNameCol].Value = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HCusRelationNumber"]); |
| | | grdMain.Rows[j].Cells[HCusModelCol].Value = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HCusRelationName"]); |
| | | if (num == 2) |
| | | { |
| | | grdMain.Rows[j].Cells[HCode1Col].Value = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HCode1"]); |
| | |
| | | #region éæ©å®¢æ· |
| | | private void cmbHCusName_TextChanged(object sender, EventArgs e) |
| | | { |
| | | if (cmbHCusName.Text.Contains("éæ·")) |
| | | { |
| | | HBarCodeType = "éæ·æ ç¾"; |
| | | } |
| | | else if (cmbHCusName.Text.Contains("æ®ç¿äºå")) |
| | | { |
| | | HBarCodeType = "å夿 ç¾"; |
| | | } |
| | | else if (cmbHCusName.Text.Contains("è±ä¸è¾¾")) |
| | | { |
| | | HBarCodeType = "è±ä¸è¾¾æ ç¾"; |
| | | } |
| | | else |
| | | { |
| | | HBarCodeType = "è¶
èåå
æ ç¾"; |
| | | } |
| | | GetCusMatNo(1); |
| | | } |
| | | |