コード例 #1
0
        public DataSet PrintLable(int TaskID, int TicketID, int GroupBy, int ColorID, int SizeID, int OneAmount)
        {
            Hownet.DAL.ProductTaskMain   dalPTM = new ProductTaskMain();
            Hownet.Model.ProductTaskMain modPTM = dalPTM.GetModel(TaskID);
            Hownet.DAL.Materiel          dalMat = new Materiel();
            Hownet.Model.Materiel        modMat = dalMat.GetModel(modPTM.MaterielID);
            Hownet.DAL.Measure           dalMea = new Measure();
            Hownet.Model.Measure         modMea = dalMea.GetModel(modMat.MeasureID);
            string mea = string.Empty;

            if (modMea != null)
            {
                mea = modMea.Name;
            }
            StringBuilder strSql = new StringBuilder();

            //strSql.Append("SELECT   WorkTicketIDCard.IDCardNo, '第' + CAST(WorkTicket.BoxNum AS nvarchar) + '箱,' AS BoxNum, WorkTicket.BoxNum as BN,");
            //strSql.Append(" Color.Name AS ColorName, Size.Name AS SizeName, '第' + CAST(WorkTicketIDCard.GroupBy AS nvarchar) ");
            //strSql.Append(" + '组' AS GroupBy, Materiel.Name AS MaterielName, CAST(WorkTicket.Amount AS nvarchar) + '件' AS Amount ");
            //strSql.Append(" ,(Select Name from Materiel where (id=workticket.BrandID)) as BrandName,WorkTicketIDCard.GroupBy as GB ");
            //strSql.Append(" FROM Color INNER JOIN ");
            //strSql.Append(" WorkTicket ON Color.ID = WorkTicket.ColorID INNER JOIN Size ON WorkTicket.SizeID = Size.ID INNER JOIN ");
            //strSql.Append(" WorkTicketIDCard ON WorkTicket.ID = WorkTicketIDCard.TicketID INNER JOIN ProductTaskMain ON WorkTicketIDCard.TaskID ");
            //strSql.Append(" = ProductTaskMain.ID INNER JOIN Materiel ON ProductTaskMain.MaterielID = Materiel.ID  ");
            strSql.Append("SELECT (CAST(WorkTicketIDCard.TicketID AS nvarchar)+cast( WorkTicketIDCard.GroupBy as nvarchar)) as QR,  WorkTicketIDCard.IDCardNo, '第' + CAST(WorkTicket.BoxNum AS nvarchar) + '箱,' AS BoxNum,WorkTicket.BoxNum as BN, ProductTaskMain.BedNO, ");
            strSql.Append(" WorkTicket.BoxNum AS BN, Color.Name AS ColorName, Size.Name AS SizeName,  '第' + CAST(WorkTicketIDCard.GroupBy ");
            strSql.Append("AS nvarchar) + '组' AS GroupBy, Materiel_1.Name AS MaterielName,  CAST(WorkTicket.Amount AS nvarchar) + '" + mea + "' AS Amount,WorkTicketIDCard.GroupBy as CaiPian, ");
            strSql.Append("(SELECT   Name FROM      Materiel WHERE   (ID = ProductTaskMain.BrandID)) AS BrandName, WorkTicketIDCard.GroupBy AS GB, ");
            strSql.Append(" Color_1.Name AS ColorOneName, Color_2.Name AS ColorTwoName FROM      Color INNER JOIN WorkTicket ON Color.ID = ");
            strSql.Append(" WorkTicket.ColorID INNER JOIN Size ON WorkTicket.SizeID = Size.ID INNER JOIN WorkTicketIDCard ON WorkTicket.ID = ");
            strSql.Append(" WorkTicketIDCard.TicketID INNER JOIN ProductTaskMain ON WorkTicketIDCard.TaskID = ProductTaskMain.ID INNER JOIN ");
            strSql.Append(" Materiel AS Materiel_1 ON ProductTaskMain.MaterielID = Materiel_1.ID LEFT OUTER JOIN Color AS Color_1 ON ");
            strSql.Append(" WorkTicket.ColorOneID = Color_1.ID LEFT OUTER JOIN Color AS Color_2 ON WorkTicket.ColorTwoID = Color_2.ID");
            strSql.Append(" WHERE (WorkTicketIDCard.TaskID = @TaskID) And (WorkTicket.OneAmount=@OneAmount)");
            if (TicketID > 0)
            {
                strSql.Append(" And (WorkTicketIDCard.TicketID = @TicketID) ");
            }
            if (GroupBy > 0)
            {
                strSql.Append(" AND (WorkTicketIDCard.GroupBy = @GroupBy) ");
            }
            if (ColorID > 0)
            {
                strSql.Append(" And (WorkTicket.ColorID=@ColorID) ");
            }
            if (SizeID > 0)
            {
                strSql.Append(" And (WorkTicket.SizeID=@SizeID) ");
            }
            strSql.Append(" ORDER BY WorkTicketIDCard.GroupBy, WorkTicket.BoxNum");
            SqlParameter[] sps = { new SqlParameter("@TicketID", TicketID), new SqlParameter("@GroupBy",   GroupBy),
                                   new SqlParameter("@ColorID",  ColorID),  new SqlParameter("@TaskID",    TaskID),
                                   new SqlParameter("@SizeID",   SizeID),   new SqlParameter("@OneAmount", OneAmount) };
            return(DbHelperSQL.Query(strSql.ToString(), sps));
        }
コード例 #2
0
        public string EmpAddWork(string TicketInfoID, string EmpID, string TicketTime)
        {
            if (TicketInfoID == string.Empty || TicketTime == string.Empty)
            {
                return("工序卡刷卡不正确");
            }
            if (Convert.ToDateTime(TicketTime).AddSeconds(30) < DateTime.Now)
            {
                return("刷卡超时");
            }
            if (EmpID == string.Empty)
            {
                return(string.Empty);
            }
            try
            {
                Hownet.BLL.MiniEmp   bllME = new Hownet.BLL.MiniEmp();
                Hownet.Model.MiniEmp modME = bllME.GetModel(Convert.ToInt32(EmpID));
                if (modME == null)
                {
                    return("员工不正确");
                }
                if (Convert.ToDateTime(modME.DimDate) > Convert.ToDateTime("1900-1-1"))
                {
                    return("员工已离职!");
                }
                Hownet.BLL.WorkTicketInfo   bllWTI = new Hownet.BLL.WorkTicketInfo();
                Hownet.Model.WorkTicketInfo modWTI = bllWTI.GetModel(Convert.ToInt32(TicketInfoID));
                if (modWTI == null)
                {
                    return("工序卡刷卡不正确");
                }
                if (modWTI.EmployeeID > 0)
                {
                    return("该工序已被完成");
                }
                Hownet.BLL.Working   bllW = new Hownet.BLL.Working();
                Hownet.Model.Working modW = bllW.GetModel(modWTI.WorkingID);
                if (!CheckWorkType(modW.WorkTypeID.ToString(), modME.WorkTypeID))
                {
                    return("工种不匹配");
                }
                DateTime dtNow = DateTime.Now;
                Hownet.BLL.ProductTaskMain   bllPTM = new Hownet.BLL.ProductTaskMain();
                Hownet.Model.ProductTaskMain modPTM = bllPTM.GetModel(modWTI.TaskID);
                bllWTI.GetBarBack(modWTI.ID, modME.ID, dtNow, 1);
                bllWTI.AddPayInfo(modPTM.MaterielID, modWTI.ID, modPTM.DateTime.ToString("yyyyMMdd") + modPTM.Num.ToString().PadLeft(3, '0'));
                DataRow[] drs = ReaderCard.BasicTable.dtWTCard.Select("(InfoID=" + TicketInfoID + ")");
                if (drs.Length == 1)
                {
                    drs[0]["EmployeeID"]  = modME.ID;
                    drs[0]["MiniEmpName"] = modME.Name;
                    drs[0]["DateTime"]    = DateTime.Now;
                }

                if (modWTI.WorkingID == BasicTable.BackDepotWorkingID)
                {
                    Hownet.BLL.WorkTicket   bllWT = new Hownet.BLL.WorkTicket();
                    Hownet.Model.WorkTicket modWT = bllWT.GetModel(modWTI.MainID);
                    if (modWT.P2DInfoID == 0)
                    {
                        Hownet.BLL.AmountInfo          bllAI = new Hownet.BLL.AmountInfo();
                        List <Hownet.Model.AmountInfo> liAI  = bllAI.GetModelList("(MainID=" + modWT.TaskID + ") And (TableTypeID=1) And (MListID=" + modWT.MListID + ")");
                        if (liAI.Count > 0)
                        {
                            liAI[0].NotAmount -= modWT.Amount;
                            bllAI.Update(liAI[0]);
                        }
                    }
                }
                return("今天总产量:" + bllWTI.CountAmount(modME.ID, dtNow, ReaderCard.BasicTable.IsShowMoney).ToString());
            }
            catch
            {
                return("对不起,出现错误!");
            }
            //return string.Empty;
        }
コード例 #3
0
        public void MakClothing(int TaskID)
        {
            Hownet.BLL.ProductTaskMain    bllPTM    = new ProductTaskMain();
            Hownet.Model.ProductTaskMain  modPTM    = bllPTM.GetModel(TaskID);
            Hownet.BLL.WorkTicket         bllWT     = new WorkTicket();
            Hownet.BLL.WorkTicketInfo     bllWkInfo = new WorkTicketInfo();
            Hownet.Model.WorkTicketInfo   modWKI    = new Hownet.Model.WorkTicketInfo();
            Hownet.BLL.ProductWorkingInfo bllPWI    = new ProductWorkingInfo();
            bool      t         = false;
            DataTable Main      = new DataTable();
            DataTable dtInfo    = bllWkInfo.GetListNoA("(ID=0)").Tables[0];
            DataSet   dsPw      = new DataSet();
            DataTable dtSpecial = new DataTable();

            Main      = bllWT.GetIDList(TaskID, 0).Tables[0];
            dsPw      = bllPWI.GetBoxWorkID(modPTM.PWorkingID, 0);
            dtSpecial = bllPWI.GetSpecialWork(modPTM.PWorkingID, 0).Tables[0];//查出特殊工序明细表
            DateTime dtNull = DateTime.Parse("1900-1-1");

            try
            {
                if (dtSpecial.Rows.Count == 0)
                {
                    #region 没有特殊工序
                    for (int r = 0; r < Main.Rows.Count; r++)
                    {
                        for (int c = 0; c < dsPw.Tables[0].Rows.Count; c++)
                        {
                            dtInfo.Rows.Add(0, Main.Rows[r]["ID"], DBNull.Value, 0, dsPw.Tables[0].DefaultView[c]["ID"], 0, 0, Main.Rows[r]["Amount"], Main.Rows[r]["Amount"], TaskID, dsPw.Tables[0].DefaultView[c]["WorkingID"], Main.Rows[r]["Amount"]);
                        }
                    }
                }
                #endregion
                #region 特殊工序
                else
                {
                    DataRow[] drs;
                    for (int r = 0; r < Main.Rows.Count; r++)
                    {
                        for (int c = 0; c < dsPw.Tables[0].Rows.Count; c++)
                        {
                            t = false;
                            modWKI.EmployeeID = 0;
                            int w = int.Parse(dsPw.Tables[0].DefaultView[c]["WorkingID"].ToString());
                            modWKI.WorkingID      = w;
                            modWKI.PWorkingInfoID = int.Parse(dsPw.Tables[0].DefaultView[c]["ID"].ToString());
                            if ((bool.Parse(dsPw.Tables[0].DefaultView[c]["IsSpecial"].ToString())))//判断某道工序是否是特殊工序
                            {
                                //if (modPTM.CompanyID > 0)
                                //{
                                //有特定客户、特定尺码、特定颜色的特殊工序
                                drs = dtSpecial.Select("(SpecialWork=" + w + ") and (CompanyID=" + modPTM.CompanyID + ") and (ColorID=" + Main.Rows[r]["ColorID"] + ") And (MaterielID=" + Main.Rows[r]["SizeID"] + ")");
                                if (drs.Length == 0)
                                {
                                    //有特定尺码、特定颜色的特殊工序
                                    drs = dtSpecial.Select("(SpecialWork=" + w + ") and (CompanyID=0) and (ColorID=" + Main.Rows[r]["ColorID"] + ") And (MaterielID=" + Main.Rows[r]["SizeID"] + ")");
                                    if (drs.Length == 0)
                                    {
                                        //有特定尺码、特定客户的特殊工序
                                        drs = dtSpecial.Select("(SpecialWork=" + w + ") and (CompanyID=" + modPTM.CompanyID + ") and (ColorID=0) And (MaterielID=" + Main.Rows[r]["SizeID"] + ")");
                                        if (drs.Length == 0)
                                        {
                                            //有特定客户、特定颜色的特殊工序
                                            drs = dtSpecial.Select("(SpecialWork=" + w + ") and (CompanyID=" + modPTM.CompanyID + ") and (ColorID=" + Main.Rows[r]["ColorID"] + ") And (MaterielID=0)");
                                            if (drs.Length == 0)
                                            {
                                                //只有特定颜色的特殊工序
                                                drs = dtSpecial.Select("(SpecialWork=" + w + ") and (MaterielID=0) And (CompanyID=0) and (ColorID=" + Main.Rows[r]["ColorID"] + ")");
                                                if (drs.Length == 0)
                                                {
                                                    //有只特定客户的特殊工序
                                                    drs = dtSpecial.Select("(SpecialWork=" + w + ") and (CompanyID=" + modPTM.CompanyID + ") and (ColorID=0) and (MaterielID=0)");
                                                    if (drs.Length == 0)
                                                    {
                                                        //有只特定尺码的特殊工序
                                                        drs = dtSpecial.Select("(SpecialWork=" + w + ") and (MaterielID=" + Main.Rows[r]["SizeID"] + ") and (ColorID=0) and (CompanyID=0)");
                                                        if (drs.Length == 0)
                                                        {
                                                            //不分颜色、客户的特殊工序
                                                            drs = dtSpecial.Select("(SpecialWork=" + w + ") and (CompanyID=0) and (ColorID=0)");
                                                            if (drs.Length == 0)
                                                            {
                                                                t = true;
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                if (drs.Length > 0)
                                {
                                    modWKI.WorkingID      = int.Parse(drs[0]["WorkingID"].ToString());
                                    modWKI.PWorkingInfoID = int.Parse(drs[0]["ID"].ToString());
                                    if (modWKI.WorkingID == 0)
                                    {
                                        t = true;
                                    }
                                }
                            }
                            if (!t)
                            {
                                dtInfo.Rows.Add(0, Main.Rows[r]["ID"], DBNull.Value, 0, modWKI.PWorkingInfoID, 0, 0, Main.Rows[r]["Amount"], Main.Rows[r]["Amount"], TaskID, modWKI.WorkingID, Main.Rows[r]["Amount"]);
                            }
                        }
                    }
                    #endregion
                }

                DAL.BaseFile.MakeBox.AddWorkTicketInfo(dtInfo);
            }
            catch (Exception ex)
            {
            }
        }
コード例 #4
0
        //public DataTable MakBoxOne(int TaskID, int PjAmount, int WAmount, int TableTypeID)
        //{

        //    int BoxNum = 1;
        //    int z = 0;
        //    int j = 0;
        //    Hownet.BLL.ProductTaskMain bllPTM = new ProductTaskMain();
        //    Hownet.BLL.AmountInfo bllPTI = new AmountInfo();
        //    Hownet.Model.ProductTaskMain modPTM = bllPTM.GetModel(TaskID);
        //    DataSet dsPt = bllPTI.GetBox(TaskID, TableTypeID);
        //    // DataSet dsColor = bllPT.GetColor("(ProduceTaskID='" + TaskID + "')");
        //    //  DataSet dsSize = bllPT.GetSize("(ProduceTaskID='" + TaskID + "')");
        //    DataTable dtBox = new DataTable();
        //    dtBox.Columns.Add("ColorID", typeof(int));
        //    dtBox.Columns.Add("SizeID", typeof(int));
        //    dtBox.Columns.Add("ColorOneID", typeof(int));
        //    dtBox.Columns.Add("ColorTwoID", typeof(int));
        //    dtBox.Columns.Add("Amount", typeof(int));
        //    dtBox.Columns.Add("BoxNum", typeof(int));
        //    dtBox.Columns.Add("ColorName", typeof(string));
        //    dtBox.Columns.Add("SizeName", typeof(string));
        //    dtBox.Columns.Add("MListID", typeof(int));

        //    if (modPTM.PWorkingID != 0)
        //    {
        //        for (int r = 0; r < dsPt.Tables[0].Rows.Count; r++)
        //        {
        //            //某数量少于尾箱数量,直接取该数量
        //            if (int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) < WAmount)
        //            {
        //                dtBox.Rows.Add(int.Parse(dsPt.Tables[0].DefaultView[r]["ColorID"].ToString()), int.Parse(dsPt.Tables[0].DefaultView[r]["SizeID"].ToString()),
        //                    int.Parse(dsPt.Tables[0].DefaultView[r]["ColorOneID"].ToString()), int.Parse(dsPt.Tables[0].DefaultView[r]["ColorTwoID"].ToString()),
        //                    int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()), BoxNum, dsPt.Tables[0].DefaultView[r]["ColorName"].ToString(),
        //                    dsPt.Tables[0].DefaultView[r]["SizeName"].ToString(), dsPt.Tables[0].DefaultView[r]["MListID"]);
        //                BoxNum++;
        //            }
        //            else
        //            {
        //                int x = int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) % PjAmount;
        //                if (x <= (WAmount - PjAmount))
        //                {
        //                    z = 3;
        //                }
        //                if (x == 0)
        //                {
        //                    z = 1;
        //                }
        //                if (x > (WAmount - PjAmount))
        //                {
        //                    z = 2;
        //                }
        //                switch (z)
        //                {
        //                    case 1:
        //                        {

        //                            for (j = BoxNum; j < (BoxNum + (int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) / PjAmount)); j++)
        //                            {
        //                                dtBox.Rows.Add(int.Parse(dsPt.Tables[0].DefaultView[r]["ColorID"].ToString()), int.Parse(dsPt.Tables[0].DefaultView[r]["SizeID"].ToString()),
        //                                     int.Parse(dsPt.Tables[0].DefaultView[r]["ColorOneID"].ToString()), int.Parse(dsPt.Tables[0].DefaultView[r]["ColorTwoID"].ToString()), PjAmount,
        //                                    j, dsPt.Tables[0].DefaultView[r]["ColorName"].ToString(), dsPt.Tables[0].DefaultView[r]["SizeName"].ToString(), dsPt.Tables[0].DefaultView[r]["MListID"]);
        //                            }
        //                            BoxNum = j;
        //                            break;
        //                        }
        //                    case 2:
        //                        {

        //                            for (j = BoxNum; j < (BoxNum + int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) / PjAmount); j++)
        //                            {
        //                                dtBox.Rows.Add(int.Parse(dsPt.Tables[0].DefaultView[r]["ColorID"].ToString()), int.Parse(dsPt.Tables[0].DefaultView[r]["SizeID"].ToString()),
        //                                     int.Parse(dsPt.Tables[0].DefaultView[r]["ColorOneID"].ToString()), int.Parse(dsPt.Tables[0].DefaultView[r]["ColorTwoID"].ToString()), PjAmount,
        //                                    j, dsPt.Tables[0].DefaultView[r]["ColorName"].ToString(), dsPt.Tables[0].DefaultView[r]["SizeName"].ToString(), dsPt.Tables[0].DefaultView[r]["MListID"]);
        //                            }

        //                            dtBox.Rows.Add(int.Parse(dsPt.Tables[0].DefaultView[r]["ColorID"].ToString()), int.Parse(dsPt.Tables[0].DefaultView[r]["SizeID"].ToString()),
        //                                 int.Parse(dsPt.Tables[0].DefaultView[r]["ColorOneID"].ToString()), int.Parse(dsPt.Tables[0].DefaultView[r]["ColorTwoID"].ToString()), x,
        //                                j, dsPt.Tables[0].DefaultView[r]["ColorName"].ToString(), dsPt.Tables[0].DefaultView[r]["SizeName"].ToString(), dsPt.Tables[0].DefaultView[r]["MListID"]);
        //                            BoxNum = j + 1;
        //                            break;
        //                        }
        //                    case 3:
        //                        {

        //                            for (j = BoxNum; j < (BoxNum + int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) / PjAmount) - 1; j++)
        //                            {
        //                                dtBox.Rows.Add(int.Parse(dsPt.Tables[0].DefaultView[r]["ColorID"].ToString()), int.Parse(dsPt.Tables[0].DefaultView[r]["SizeID"].ToString()),
        //                                     int.Parse(dsPt.Tables[0].DefaultView[r]["ColorOneID"].ToString()), int.Parse(dsPt.Tables[0].DefaultView[r]["ColorTwoID"].ToString()), PjAmount,
        //                                    j, dsPt.Tables[0].DefaultView[r]["ColorName"].ToString(), dsPt.Tables[0].DefaultView[r]["SizeName"].ToString(), dsPt.Tables[0].DefaultView[r]["MListID"]);
        //                            }
        //                            dtBox.Rows.Add(int.Parse(dsPt.Tables[0].DefaultView[r]["ColorID"].ToString()), int.Parse(dsPt.Tables[0].DefaultView[r]["SizeID"].ToString()),
        //                                 int.Parse(dsPt.Tables[0].DefaultView[r]["ColorOneID"].ToString()), int.Parse(dsPt.Tables[0].DefaultView[r]["ColorTwoID"].ToString()), (PjAmount + x),
        //                                j, dsPt.Tables[0].DefaultView[r]["ColorName"].ToString(), dsPt.Tables[0].DefaultView[r]["SizeName"].ToString(), dsPt.Tables[0].DefaultView[r]["MListID"]);
        //                            BoxNum = j + 1;
        //                            break;
        //                        }
        //                }
        //            }
        //        }
        //    }
        //    return dtBox;
        //}
        //public void MakBoxThree(int ProductWorkID, int TaskID, int PjAmount, int WAmount, int MaterielID, int BrandID, int TableTypeID)
        //{
        //    DataTable Main = MakBoxOne(TaskID, PjAmount, WAmount, TableTypeID);
        //    Hownet.BLL.ProductWorkingInfo bllPWI = new ProductWorkingInfo();
        //    Hownet.BLL.WorkTicket bllWT = new WorkTicket();
        //    Hownet.BLL.WorkTicketInfo bllWkInfo = new WorkTicketInfo();
        //    Hownet.Model.WorkTicket modWK = new Hownet.Model.WorkTicket();
        //    Hownet.Model.WorkTicketInfo modWKI = new Hownet.Model.WorkTicketInfo();
        //    bool t = false;
        //    DataSet dsPw = bllPWI.GetBoxWork(ProductWorkID);
        //    DataTable dtSpecial = bllPWI.GetList("(PWMID=" + ProductWorkID + ")").Tables[0];//查出特殊工序明细表
        //    if (dtSpecial.Rows.Count == 0)
        //    {
        //        #region 没有特殊工序
        //        for (int r = 0; r < Main.Rows.Count; r++)
        //        {
        //            modWK.ColorID = int.Parse(Main.DefaultView[r]["ColorID"].ToString());
        //            modWK.SizeID = int.Parse(Main.DefaultView[r]["SizeID"].ToString());
        //            modWK.ColorOneID = int.Parse(Main.DefaultView[r]["ColorOneID"].ToString());
        //            modWK.ColorTwoID = int.Parse(Main.DefaultView[r]["ColorTwoID"].ToString());
        //            modWK.BoxNum = int.Parse(Main.DefaultView[r]["BoxNum"].ToString());
        //            modWK.Amount = int.Parse(Main.DefaultView[r]["Amount"].ToString());
        //            modWK.MListID = int.Parse(Main.DefaultView[r]["MListID"].ToString());
        //            modWK.TaskID = TaskID;
        //            int mainID = bllWT.Add(modWK);
        //            for (int c = 0; c < dsPw.Tables[0].Rows.Count; c++)
        //            {
        //                modWKI.EmployeeID = 0;
        //                modWKI.PWorkingInfoID = int.Parse(dsPw.Tables[0].DefaultView[c]["ID"].ToString());
        //                modWKI.WorkingID = int.Parse(dsPw.Tables[0].DefaultView[c]["WorkingID"].ToString());
        //                modWKI.MainID = mainID;
        //                modWKI.Amount = modWKI.NotAmount = modWK.Amount;
        //                modWKI.TaskID = TaskID;
        //                bllWkInfo.Add(modWKI);
        //            }
        //        }
        //    }
        //        #endregion
        //    #region 特殊工序
        //    else
        //    {
        //        for (int r = 0; r < Main.Rows.Count; r++)
        //        {
        //            modWK.ColorID = int.Parse(Main.DefaultView[r]["ColorID"].ToString());
        //            modWK.SizeID = int.Parse(Main.DefaultView[r]["SizeID"].ToString());
        //            modWK.ColorOneID = 0;
        //            modWK.ColorTwoID = 0;
        //            modWK.BoxNum = int.Parse(Main.DefaultView[r]["BoxNum"].ToString());
        //            modWK.Amount = int.Parse(Main.DefaultView[r]["Amount"].ToString());
        //            modWK.MListID = int.Parse(Main.DefaultView[r]["MListID"].ToString());
        //            modWK.TaskID = TaskID;
        //            int mainID = bllWT.Add(modWK);
        //            for (int c = 0; c < dsPw.Tables[0].Rows.Count; c++)
        //            {
        //                t = false;
        //                modWKI.EmployeeID = 0;
        //                int w = int.Parse(dsPw.Tables[0].DefaultView[c]["WorkingID"].ToString());
        //                modWKI.WorkingID = w;
        //                modWKI.PWorkingInfoID = int.Parse(dsPw.Tables[0].DefaultView[c]["ID"].ToString());
        //                if ((bool.Parse(dsPw.Tables[0].DefaultView[c]["IsSpecial"].ToString())))//判断某道工序是否是特殊工序
        //                {
        //                    DataRow[] drs = dtSpecial.Select("(SpecialWork=" + w + ") and (ColorID=" + modWK.ColorID + ")");
        //                    if (drs.Length > 0)//在特殊工序列表中,是否有当前颜色记录
        //                    {
        //                        modWKI.WorkingID = int.Parse(drs[0]["WorkingID"].ToString());
        //                        modWKI.PWorkingInfoID = int.Parse(drs[0]["ID"].ToString());
        //                    }
        //                    else
        //                    {
        //                        drs = dtSpecial.Select("(SpecialWork=" + w + ") and (ColorID=0)");//是否有通用颜色工序
        //                        if (drs.Length > 0)
        //                        {
        //                            modWKI.WorkingID = int.Parse(drs[0]["WorkingID"].ToString());
        //                            modWKI.PWorkingInfoID = int.Parse(drs[0]["ID"].ToString());
        //                        }
        //                        else
        //                        {
        //                            t = true;
        //                        }
        //                    }
        //                }
        //                modWKI.MainID = mainID;
        //                modWKI.Amount = modWKI.NotAmount = modWK.Amount;
        //                modWKI.TaskID = TaskID;
        //                if (!t)
        //                    bllWkInfo.Add(modWKI);//有特殊工序的普通工序,则添加记录,否则不添加
        //            }
        //        }
        //    }
        //    #endregion
        //}
        //public void MakBoxOneID(int TaskID, int PjAmount, int WAmount, int TableTypeID, int BrandID)
        //{

        //    int BoxNum = 1;
        //    int z = 0;
        //    int j = 0;
        //    Hownet.BLL.ProductTaskMain bllPTM = new ProductTaskMain();
        //    Hownet.BLL.WorkTicket bllWT = new WorkTicket();
        //    Hownet.BLL.AmountInfo bllPTI = new AmountInfo();
        //    Hownet.Model.ProductTaskMain modPTM = bllPTM.GetModel(TaskID);
        //    DataSet dsPt = bllPTI.GetBoxID(TaskID, TableTypeID, 0);
        //    // DataSet dsColor = bllPT.GetColor("(ProduceTaskID='" + TaskID + "')");
        //    //  DataSet dsSize = bllPT.GetSize("(ProduceTaskID='" + TaskID + "')");
        //    DataTable dtBox = bllWT.GetListNoA("(ID=0)").Tables[0];
        //    //dtBox.Columns.Add("ColorID", typeof(int));
        //    //dtBox.Columns.Add("SizeID", typeof(int));
        //    //dtBox.Columns.Add("ColorOneID", typeof(int));
        //    //dtBox.Columns.Add("ColorTwoID", typeof(int));
        //    //dtBox.Columns.Add("Amount", typeof(int));
        //    //dtBox.Columns.Add("BoxNum", typeof(int));
        //    //dtBox.Columns.Add("MListID", typeof(int));
        //    if (modPTM.PWorkingID != 0)
        //    {
        //        for (int r = 0; r < dsPt.Tables[0].Rows.Count; r++)
        //        {
        //            //某数量少于尾箱数量,直接取该数量
        //            if (int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) < WAmount)
        //            {
        //                dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"],
        //                    dsPt.Tables[0].DefaultView[r]["ColorTwoID"], dsPt.Tables[0].DefaultView[r]["SizeID"],
        //                    dsPt.Tables[0].DefaultView[r]["Amount"], BoxNum, TaskID, 0, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID);
        //                BoxNum++;
        //            }
        //            else
        //            {
        //                int x = int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) % PjAmount;
        //                if (x <= (WAmount - PjAmount))
        //                {
        //                    z = 3;
        //                }
        //                if (x == 0)
        //                {
        //                    z = 1;
        //                }
        //                if (x > (WAmount - PjAmount))
        //                {
        //                    z = 2;
        //                }
        //                switch (z)
        //                {
        //                    case 1:
        //                        {

        //                            for (j = BoxNum; j < (BoxNum + (int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) / PjAmount)); j++)
        //                            {

        //                                dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"],
        //                                   dsPt.Tables[0].DefaultView[r]["ColorTwoID"], dsPt.Tables[0].DefaultView[r]["SizeID"], PjAmount,
        //                                    j, TaskID, 0, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID);
        //                            }
        //                            BoxNum = j;
        //                            break;
        //                        }
        //                    case 2:
        //                        {

        //                            for (j = BoxNum; j < (BoxNum + int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) / PjAmount); j++)
        //                            {
        //                                dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"], dsPt.Tables[0].DefaultView[r]["ColorTwoID"],
        //                                    dsPt.Tables[0].DefaultView[r]["SizeID"], PjAmount, j, TaskID, 0, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID);
        //                            }

        //                            dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"],
        //                                dsPt.Tables[0].DefaultView[r]["ColorTwoID"], dsPt.Tables[0].DefaultView[r]["SizeID"], x, j, TaskID, 0, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID);
        //                            BoxNum = j + 1;
        //                            break;
        //                        }
        //                    case 3:
        //                        {

        //                            for (j = BoxNum; j < (BoxNum + int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) / PjAmount) - 1; j++)
        //                            {
        //                                //  A,ID,ColorID,ColorOneID,ColorTwoID,SizeID,Amount,BoxNum,TaskID,DepartmentID,P2DInfoID,EligibleAmount,InferiorAmount,P2DDepartmentID,MListID,BrandID
        //                                dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"],
        //                                   dsPt.Tables[0].DefaultView[r]["ColorTwoID"], dsPt.Tables[0].DefaultView[r]["SizeID"], PjAmount, j, TaskID, 0, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID);
        //                            }
        //                            dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"],
        //                                dsPt.Tables[0].DefaultView[r]["ColorTwoID"], dsPt.Tables[0].DefaultView[r]["SizeID"], (PjAmount + x),
        //                                j, TaskID, 0, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID);
        //                            BoxNum = j + 1;
        //                            break;
        //                        }
        //                }
        //            }
        //        }
        //    }
        //    DAL.BaseFile.MakeBox.AddWorkTicket(dtBox);
        //}
        /// <summary>
        ///
        /// </summary>
        /// <param name="ProductWorkID">生产任务中工艺单ID</param>
        /// <param name="TaskID">生产任务ID</param>
        /// <param name="PjAmount">平均箱数量</param>
        /// <param name="WAmount">尾箱数量</param>
        /// <param name="MaterielID">款号</param>
        /// <param name="BrandID">商标</param>
        /// <param name="TableTypeID">单据类型</param>
        public void MakBoxThreeID(int ProductWorkID, int TaskID, int PjAmount, int WAmount, int MaterielID, int BrandID, int TableTypeID)
        {
            try
            {
                //MakBoxOneID(TaskID, PjAmount, WAmount, TableTypeID,BrandID);
                #region WorkTicket表
                int BoxNum    = 1;
                int z         = 0;
                int j         = 0;
                int _PJAmount = 0;
                int _WAmount  = 0;
                //  int CompanyID = 0;
                Hownet.BLL.ProductTaskMain    bllPTM = new ProductTaskMain();
                Hownet.BLL.WorkTicket         bllWT  = new WorkTicket();
                Hownet.BLL.AmountInfo         bllPTI = new AmountInfo();
                Hownet.BLL.ProductWorkingInfo bllPWI = new ProductWorkingInfo();
                Hownet.Model.ProductTaskMain  modPTM = bllPTM.GetModel(TaskID);
                DataSet   dsPt        = bllPTI.GetBoxID(TaskID, TableTypeID);
                DataTable dtBox       = bllWT.GetListNoA("(ID=0)").Tables[0];
                DataTable dtPWIAmount = bllPWI.GetOneAmount(modPTM.PWorkingID).Tables[0];
                if (modPTM.PWorkingID != 0)
                {
                    for (int g = 0; g < dtPWIAmount.Rows.Count; g++)
                    {
                        #region 正常分箱
                        if (Convert.ToInt32(dtPWIAmount.Rows[g]["OneAmount"]) == 0)
                        {
                            _PJAmount = PjAmount;
                            _WAmount  = WAmount;
                            for (int r = 0; r < dsPt.Tables[0].Rows.Count; r++)
                            {
                                //某数量少于尾箱数量,直接取该数量
                                if (int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) < _WAmount)
                                {
                                    dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"],
                                                   dsPt.Tables[0].DefaultView[r]["ColorTwoID"], dsPt.Tables[0].DefaultView[r]["SizeID"],
                                                   dsPt.Tables[0].DefaultView[r]["Amount"], BoxNum, TaskID, modPTM.DeparmentID, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID, 0);
                                    BoxNum++;
                                }
                                else
                                {
                                    int x = int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) % _PJAmount;
                                    if (x <= (_WAmount - _PJAmount))
                                    {
                                        z = 3;
                                    }
                                    if (x == 0)
                                    {
                                        z = 1;
                                    }
                                    if (x > (_WAmount - _PJAmount))
                                    {
                                        z = 2;
                                    }
                                    switch (z)
                                    {
                                    case 1:
                                    {
                                        for (j = BoxNum; j < (BoxNum + (int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) / _PJAmount)); j++)
                                        {
                                            dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"],
                                                           dsPt.Tables[0].DefaultView[r]["ColorTwoID"], dsPt.Tables[0].DefaultView[r]["SizeID"], _PJAmount,
                                                           j, TaskID, modPTM.DeparmentID, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID, 0);
                                        }
                                        BoxNum = j;
                                        break;
                                    }

                                    case 2:
                                    {
                                        for (j = BoxNum; j < (BoxNum + int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) / _PJAmount); j++)
                                        {
                                            dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"], dsPt.Tables[0].DefaultView[r]["ColorTwoID"],
                                                           dsPt.Tables[0].DefaultView[r]["SizeID"], _PJAmount, j, TaskID, modPTM.DeparmentID, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID, 0);
                                        }

                                        dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"],
                                                       dsPt.Tables[0].DefaultView[r]["ColorTwoID"], dsPt.Tables[0].DefaultView[r]["SizeID"], x, j, TaskID, modPTM.DeparmentID, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID, 0);
                                        BoxNum = j + 1;
                                        break;
                                    }

                                    case 3:
                                    {
                                        for (j = BoxNum; j < (BoxNum + int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) / _PJAmount) - 1; j++)
                                        {
                                            //  A,ID,ColorID,ColorOneID,ColorTwoID,SizeID,Amount,BoxNum,TaskID,DepartmentID,P2DInfoID,EligibleAmount,InferiorAmount,P2DDepartmentID,MListID,BrandID
                                            dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"],
                                                           dsPt.Tables[0].DefaultView[r]["ColorTwoID"], dsPt.Tables[0].DefaultView[r]["SizeID"], _PJAmount, j, TaskID, modPTM.DeparmentID, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID, 0);
                                        }
                                        dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"],
                                                       dsPt.Tables[0].DefaultView[r]["ColorTwoID"], dsPt.Tables[0].DefaultView[r]["SizeID"], (_PJAmount + x),
                                                       j, TaskID, modPTM.DeparmentID, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID, 0);
                                        BoxNum = j + 1;
                                        break;
                                    }
                                    }
                                }
                            }
                        }
                        #endregion
                        #region  预设数量分箱
                        if (Convert.ToInt32(dtPWIAmount.Rows[g]["OneAmount"]) > 0)
                        {
                            _PJAmount = Convert.ToInt32(dtPWIAmount.Rows[g]["OneAmount"]);
                            _WAmount  = Convert.ToInt32(_PJAmount * 1.5);
                            for (int r = 0; r < dsPt.Tables[0].Rows.Count; r++)
                            {
                                //某数量少于尾箱数量,直接取该数量
                                if (int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) < _WAmount)
                                {
                                    dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"],
                                                   dsPt.Tables[0].DefaultView[r]["ColorTwoID"], dsPt.Tables[0].DefaultView[r]["SizeID"],
                                                   dsPt.Tables[0].DefaultView[r]["Amount"], BoxNum, TaskID, modPTM.DeparmentID, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID, _PJAmount);
                                    BoxNum++;
                                }
                                else
                                {
                                    int x = int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) % _PJAmount;
                                    if (x <= (_WAmount - _PJAmount))
                                    {
                                        z = 3;
                                    }
                                    if (x == 0)
                                    {
                                        z = 1;
                                    }
                                    if (x > (_WAmount - _PJAmount))
                                    {
                                        z = 2;
                                    }
                                    switch (z)
                                    {
                                    case 1:
                                    {
                                        for (j = BoxNum; j < (BoxNum + (int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) / _PJAmount)); j++)
                                        {
                                            dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"],
                                                           dsPt.Tables[0].DefaultView[r]["ColorTwoID"], dsPt.Tables[0].DefaultView[r]["SizeID"], _PJAmount,
                                                           j, TaskID, modPTM.DeparmentID, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID, _PJAmount);
                                        }
                                        BoxNum = j;
                                        break;
                                    }

                                    case 2:
                                    {
                                        for (j = BoxNum; j < (BoxNum + int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) / _PJAmount); j++)
                                        {
                                            dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"], dsPt.Tables[0].DefaultView[r]["ColorTwoID"],
                                                           dsPt.Tables[0].DefaultView[r]["SizeID"], _PJAmount, j, TaskID, modPTM.DeparmentID, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID, _PJAmount);
                                        }

                                        dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"],
                                                       dsPt.Tables[0].DefaultView[r]["ColorTwoID"], dsPt.Tables[0].DefaultView[r]["SizeID"], x, j, TaskID, modPTM.DeparmentID, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID, _PJAmount);
                                        BoxNum = j + 1;
                                        break;
                                    }

                                    case 3:
                                    {
                                        for (j = BoxNum; j < (BoxNum + int.Parse(dsPt.Tables[0].DefaultView[r]["Amount"].ToString()) / _PJAmount) - 1; j++)
                                        {
                                            //  A,ID,ColorID,ColorOneID,ColorTwoID,SizeID,Amount,BoxNum,TaskID,DepartmentID,P2DInfoID,EligibleAmount,InferiorAmount,P2DDepartmentID,MListID,BrandID
                                            dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"],
                                                           dsPt.Tables[0].DefaultView[r]["ColorTwoID"], dsPt.Tables[0].DefaultView[r]["SizeID"], _PJAmount, j, TaskID, modPTM.DeparmentID, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID, _PJAmount);
                                        }
                                        dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"],
                                                       dsPt.Tables[0].DefaultView[r]["ColorTwoID"], dsPt.Tables[0].DefaultView[r]["SizeID"], (_PJAmount + x),
                                                       j, TaskID, modPTM.DeparmentID, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID, _PJAmount);
                                        BoxNum = j + 1;
                                        break;
                                    }
                                    }
                                }
                            }
                        }
                        #endregion
                        #region 各色各码总数分为一箱
                        if (Convert.ToInt32(dtPWIAmount.Rows[g]["OneAmount"]) == -1)
                        {
                            for (int r = 0; r < dsPt.Tables[0].Rows.Count; r++)
                            {
                                dtBox.Rows.Add(0, dsPt.Tables[0].DefaultView[r]["ColorID"], dsPt.Tables[0].DefaultView[r]["ColorOneID"],
                                               dsPt.Tables[0].DefaultView[r]["ColorTwoID"], dsPt.Tables[0].DefaultView[r]["SizeID"],
                                               dsPt.Tables[0].DefaultView[r]["Amount"], BoxNum, TaskID, modPTM.DeparmentID, 0, 0, 0, 0, dsPt.Tables[0].DefaultView[r]["MListID"], BrandID, -1);
                                BoxNum++;
                            }
                        }
                        #endregion
                    }
                }
                DAL.BaseFile.MakeBox.AddWorkTicket(dtBox);
                #endregion

                Hownet.BLL.WorkTicketInfo   bllWkInfo = new WorkTicketInfo();
                Hownet.Model.WorkTicketInfo modWKI    = new Hownet.Model.WorkTicketInfo();
                bool      t         = false;
                DataTable Main      = new DataTable();
                DataTable dtInfo    = bllWkInfo.GetListNoA("(ID=0)").Tables[0];
                DataSet   dsPw      = new DataSet();
                DataTable dtSpecial = new DataTable();
                for (int g = 0; g < dtPWIAmount.Rows.Count; g++)
                {
                    Main      = bllWT.GetIDList(TaskID, Convert.ToInt32(dtPWIAmount.Rows[g]["OneAmount"])).Tables[0];
                    dsPw      = bllPWI.GetBoxWorkID(ProductWorkID, Convert.ToInt32(dtPWIAmount.Rows[g]["OneAmount"]));
                    dtSpecial = bllPWI.GetSpecialWork(ProductWorkID, Convert.ToInt32(dtPWIAmount.Rows[g]["OneAmount"])).Tables[0];//查出特殊工序明细表
                    DateTime dtNull = DateTime.Parse("1900-1-1");
                    if (dtSpecial.Rows.Count == 0)
                    {
                        #region 没有特殊工序
                        for (int r = 0; r < Main.Rows.Count; r++)
                        {
                            for (int c = 0; c < dsPw.Tables[0].Rows.Count; c++)
                            {
                                dtInfo.Rows.Add(0, Main.Rows[r]["ID"], DBNull.Value, 0, dsPw.Tables[0].DefaultView[c]["ID"], 0, 0, Main.Rows[r]["Amount"], Main.Rows[r]["Amount"], TaskID, dsPw.Tables[0].DefaultView[c]["WorkingID"], Main.Rows[r]["Amount"]);
                            }
                        }
                    }
                    #endregion
                    #region 特殊工序
                    else
                    {
                        DataRow[] drs;
                        for (int r = 0; r < Main.Rows.Count; r++)
                        {
                            for (int c = 0; c < dsPw.Tables[0].Rows.Count; c++)
                            {
                                t = false;
                                modWKI.EmployeeID = 0;
                                int w = int.Parse(dsPw.Tables[0].DefaultView[c]["WorkingID"].ToString());
                                modWKI.WorkingID      = w;
                                modWKI.PWorkingInfoID = int.Parse(dsPw.Tables[0].DefaultView[c]["ID"].ToString());
                                if ((bool.Parse(dsPw.Tables[0].DefaultView[c]["IsSpecial"].ToString())))//判断某道工序是否是特殊工序
                                {
                                    //if (modPTM.CompanyID > 0)
                                    //{
                                    //有特定客户、特定尺码、特定颜色的特殊工序
                                    drs = dtSpecial.Select("(SpecialWork=" + w + ") and (CompanyID=" + modPTM.CompanyID + ") and (ColorID=" + Main.Rows[r]["ColorID"] + ") And (MaterielID=" + Main.Rows[r]["SizeID"] + ")");
                                    if (drs.Length == 0)
                                    {
                                        //有特定尺码、特定颜色的特殊工序
                                        drs = dtSpecial.Select("(SpecialWork=" + w + ") and (CompanyID=0) and (ColorID=" + Main.Rows[r]["ColorID"] + ") And (MaterielID=" + Main.Rows[r]["SizeID"] + ")");
                                        if (drs.Length == 0)
                                        {
                                            //有特定尺码、特定客户的特殊工序
                                            drs = dtSpecial.Select("(SpecialWork=" + w + ") and (CompanyID=" + modPTM.CompanyID + ") and (ColorID=0) And (MaterielID=" + Main.Rows[r]["SizeID"] + ")");
                                            if (drs.Length == 0)
                                            {
                                                //有特定客户、特定颜色的特殊工序
                                                drs = dtSpecial.Select("(SpecialWork=" + w + ") and (CompanyID=" + modPTM.CompanyID + ") and (ColorID=" + Main.Rows[r]["ColorID"] + ") And (MaterielID=0)");
                                                if (drs.Length == 0)
                                                {
                                                    //只有特定颜色的特殊工序
                                                    drs = dtSpecial.Select("(SpecialWork=" + w + ") and (MaterielID=0) And (CompanyID=0) and (ColorID=" + Main.Rows[r]["ColorID"] + ")");
                                                    if (drs.Length == 0)
                                                    {
                                                        //有只特定客户的特殊工序
                                                        drs = dtSpecial.Select("(SpecialWork=" + w + ") and (CompanyID=" + modPTM.CompanyID + ") and (ColorID=0) and (MaterielID=0)");
                                                        if (drs.Length == 0)
                                                        {
                                                            //有只特定尺码的特殊工序
                                                            drs = dtSpecial.Select("(SpecialWork=" + w + ") and (MaterielID=" + Main.Rows[r]["SizeID"] + ") and (ColorID=0) and (CompanyID=0)");
                                                            if (drs.Length == 0)
                                                            {
                                                                //不分颜色、客户的特殊工序
                                                                drs = dtSpecial.Select("(SpecialWork=" + w + ") and (CompanyID=0) and (ColorID=0)");
                                                                if (drs.Length == 0)
                                                                {
                                                                    t = true;
                                                                }
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    if (drs.Length > 0)
                                    {
                                        modWKI.WorkingID      = int.Parse(drs[0]["WorkingID"].ToString());
                                        modWKI.PWorkingInfoID = int.Parse(drs[0]["ID"].ToString());
                                        if (modWKI.WorkingID == 0)
                                        {
                                            t = true;
                                        }
                                    }
                                }
                                if (!t)
                                {
                                    dtInfo.Rows.Add(0, Main.Rows[r]["ID"], DBNull.Value, 0, modWKI.PWorkingInfoID, 0, 0, Main.Rows[r]["Amount"], Main.Rows[r]["Amount"], TaskID, modWKI.WorkingID, Main.Rows[r]["Amount"]);
                                }
                            }
                        }
                        #endregion
                    }
                }
                DAL.BaseFile.MakeBox.AddWorkTicketInfo(dtInfo);
            }
            catch (Exception ex)
            {
            }
        }
コード例 #5
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public int Add(Hownet.Model.ProductTaskMain model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into ProductTaskMain(");
            strSql.Append("SalesOrderInfoID,MaterielID,BrandID,Num,DateTime,LastDate,Remark,PWorkingID,BomID,CompanyID,IsTicket,IsBom,IsVerify,VerifyDate,VerifyMan,DeparmentID,UpData,FillDate,FilMan,TicketDate,BedNO,PackingMethodID,SewingRemark,ParentID,DeparmentType,Price)");
            strSql.Append(" values (");
            strSql.Append("@SalesOrderInfoID,@MaterielID,@BrandID,@Num,@DateTime,@LastDate,@Remark,@PWorkingID,@BomID,@CompanyID,@IsTicket,@IsBom,@IsVerify,@VerifyDate,@VerifyMan,@DeparmentID,@UpData,@FillDate,@FilMan,@TicketDate,@BedNO,@PackingMethodID,@SewingRemark,@ParentID,@DeparmentType,@Price)");
            strSql.Append(";select @@IDENTITY");
            SqlParameter[] parameters =
            {
                new SqlParameter("@SalesOrderInfoID", SqlDbType.Int,          4),
                new SqlParameter("@MaterielID",       SqlDbType.Int,          4),
                new SqlParameter("@BrandID",          SqlDbType.Int,          4),
                new SqlParameter("@Num",              SqlDbType.Int,          4),
                new SqlParameter("@DateTime",         SqlDbType.DateTime),
                new SqlParameter("@LastDate",         SqlDbType.DateTime),
                new SqlParameter("@Remark",           SqlDbType.NVarChar,  4000),
                new SqlParameter("@PWorkingID",       SqlDbType.Int,          4),
                new SqlParameter("@BomID",            SqlDbType.Int,          4),
                new SqlParameter("@CompanyID",        SqlDbType.Int,          4),
                new SqlParameter("@IsTicket",         SqlDbType.Bit,          1),
                new SqlParameter("@IsBom",            SqlDbType.Bit,          1),
                new SqlParameter("@IsVerify",         SqlDbType.Int,          4),
                new SqlParameter("@VerifyDate",       SqlDbType.DateTime),
                new SqlParameter("@VerifyMan",        SqlDbType.Int,          4),
                new SqlParameter("@DeparmentID",      SqlDbType.Int,          4),
                new SqlParameter("@UpData",           SqlDbType.Int,          4),
                new SqlParameter("@FillDate",         SqlDbType.DateTime),
                new SqlParameter("@FilMan",           SqlDbType.Int,          4),
                new SqlParameter("@TicketDate",       SqlDbType.DateTime),
                new SqlParameter("@BedNO",            SqlDbType.NVarChar,    50),
                new SqlParameter("@PackingMethodID",  SqlDbType.Int,          4),
                new SqlParameter("@SewingRemark",     SqlDbType.NVarChar,  4000),
                new SqlParameter("@ParentID",         SqlDbType.Int,          4),
                new SqlParameter("@DeparmentType",    SqlDbType.Int,          4),
                new SqlParameter("@Price",            SqlDbType.Decimal, 9)
            };
            parameters[0].Value  = model.SalesOrderInfoID;
            parameters[1].Value  = model.MaterielID;
            parameters[2].Value  = model.BrandID;
            parameters[3].Value  = model.Num;
            parameters[4].Value  = model.DateTime;
            parameters[5].Value  = model.LastDate;
            parameters[6].Value  = model.Remark;
            parameters[7].Value  = model.PWorkingID;
            parameters[8].Value  = model.BomID;
            parameters[9].Value  = model.CompanyID;
            parameters[10].Value = model.IsTicket;
            parameters[11].Value = model.IsBom;
            parameters[12].Value = model.IsVerify;
            parameters[13].Value = model.VerifyDate;
            parameters[14].Value = model.VerifyMan;
            parameters[15].Value = model.DeparmentID;
            parameters[16].Value = model.UpData;
            parameters[17].Value = model.FillDate;
            parameters[18].Value = model.FilMan;
            parameters[19].Value = model.TicketDate;
            parameters[20].Value = model.BedNO;
            parameters[21].Value = model.PackingMethodID;
            parameters[22].Value = model.SewingRemark;
            parameters[23].Value = model.ParentID;
            parameters[24].Value = model.DeparmentType;
            parameters[25].Value = model.Price;

            object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters);

            if (obj == null)
            {
                return(0);
            }
            else
            {
                return(Convert.ToInt32(obj));
            }
        }
コード例 #6
0
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public Hownet.Model.ProductTaskMain GetModel(int ID)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("select  top 1 ID,SalesOrderInfoID,MaterielID,BrandID,Num,DateTime,LastDate,Remark,PWorkingID,BomID,CompanyID,IsTicket,IsBom,IsVerify,VerifyDate,VerifyMan,DeparmentID,UpData,FillDate,FilMan,TicketDate,BedNO,PackingMethodID,SewingRemark,ParentID,DeparmentType,Price from ProductTaskMain ");
            strSql.Append(" where ID=@ID");
            SqlParameter[] parameters =
            {
                new SqlParameter("@ID", SqlDbType.Int, 4)
            };
            parameters[0].Value = ID;

            Hownet.Model.ProductTaskMain model = new Hownet.Model.ProductTaskMain();
            DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters);

            if (ds.Tables[0].Rows.Count > 0)
            {
                if (ds.Tables[0].Rows[0]["ID"] != null && ds.Tables[0].Rows[0]["ID"].ToString() != "")
                {
                    model.ID = int.Parse(ds.Tables[0].Rows[0]["ID"].ToString());
                }
                if (ds.Tables[0].Rows[0]["SalesOrderInfoID"] != null && ds.Tables[0].Rows[0]["SalesOrderInfoID"].ToString() != "")
                {
                    model.SalesOrderInfoID = int.Parse(ds.Tables[0].Rows[0]["SalesOrderInfoID"].ToString());
                }
                if (ds.Tables[0].Rows[0]["MaterielID"] != null && ds.Tables[0].Rows[0]["MaterielID"].ToString() != "")
                {
                    model.MaterielID = int.Parse(ds.Tables[0].Rows[0]["MaterielID"].ToString());
                }
                if (ds.Tables[0].Rows[0]["BrandID"] != null && ds.Tables[0].Rows[0]["BrandID"].ToString() != "")
                {
                    model.BrandID = int.Parse(ds.Tables[0].Rows[0]["BrandID"].ToString());
                }
                if (ds.Tables[0].Rows[0]["Num"] != null && ds.Tables[0].Rows[0]["Num"].ToString() != "")
                {
                    model.Num = int.Parse(ds.Tables[0].Rows[0]["Num"].ToString());
                }
                if (ds.Tables[0].Rows[0]["DateTime"] != null && ds.Tables[0].Rows[0]["DateTime"].ToString() != "")
                {
                    model.DateTime = DateTime.Parse(ds.Tables[0].Rows[0]["DateTime"].ToString());
                }
                if (ds.Tables[0].Rows[0]["LastDate"] != null && ds.Tables[0].Rows[0]["LastDate"].ToString() != "")
                {
                    model.LastDate = DateTime.Parse(ds.Tables[0].Rows[0]["LastDate"].ToString());
                }
                model.Remark = ds.Tables[0].Rows[0]["Remark"].ToString();
                if (ds.Tables[0].Rows[0]["PWorkingID"] != null && ds.Tables[0].Rows[0]["PWorkingID"].ToString() != "")
                {
                    model.PWorkingID = int.Parse(ds.Tables[0].Rows[0]["PWorkingID"].ToString());
                }
                if (ds.Tables[0].Rows[0]["BomID"] != null && ds.Tables[0].Rows[0]["BomID"].ToString() != "")
                {
                    model.BomID = int.Parse(ds.Tables[0].Rows[0]["BomID"].ToString());
                }
                if (ds.Tables[0].Rows[0]["CompanyID"] != null && ds.Tables[0].Rows[0]["CompanyID"].ToString() != "")
                {
                    model.CompanyID = int.Parse(ds.Tables[0].Rows[0]["CompanyID"].ToString());
                }
                if (ds.Tables[0].Rows[0]["IsTicket"] != null && ds.Tables[0].Rows[0]["IsTicket"].ToString() != "")
                {
                    if ((ds.Tables[0].Rows[0]["IsTicket"].ToString() == "1") || (ds.Tables[0].Rows[0]["IsTicket"].ToString().ToLower() == "true"))
                    {
                        model.IsTicket = true;
                    }
                    else
                    {
                        model.IsTicket = false;
                    }
                }
                if (ds.Tables[0].Rows[0]["IsBom"] != null && ds.Tables[0].Rows[0]["IsBom"].ToString() != "")
                {
                    if ((ds.Tables[0].Rows[0]["IsBom"].ToString() == "1") || (ds.Tables[0].Rows[0]["IsBom"].ToString().ToLower() == "true"))
                    {
                        model.IsBom = true;
                    }
                    else
                    {
                        model.IsBom = false;
                    }
                }
                if (ds.Tables[0].Rows[0]["IsVerify"] != null && ds.Tables[0].Rows[0]["IsVerify"].ToString() != "")
                {
                    model.IsVerify = int.Parse(ds.Tables[0].Rows[0]["IsVerify"].ToString());
                }
                if (ds.Tables[0].Rows[0]["VerifyDate"] != null && ds.Tables[0].Rows[0]["VerifyDate"].ToString() != "")
                {
                    model.VerifyDate = DateTime.Parse(ds.Tables[0].Rows[0]["VerifyDate"].ToString());
                }
                if (ds.Tables[0].Rows[0]["VerifyMan"] != null && ds.Tables[0].Rows[0]["VerifyMan"].ToString() != "")
                {
                    model.VerifyMan = int.Parse(ds.Tables[0].Rows[0]["VerifyMan"].ToString());
                }
                if (ds.Tables[0].Rows[0]["DeparmentID"] != null && ds.Tables[0].Rows[0]["DeparmentID"].ToString() != "")
                {
                    model.DeparmentID = int.Parse(ds.Tables[0].Rows[0]["DeparmentID"].ToString());
                }
                if (ds.Tables[0].Rows[0]["UpData"] != null && ds.Tables[0].Rows[0]["UpData"].ToString() != "")
                {
                    model.UpData = int.Parse(ds.Tables[0].Rows[0]["UpData"].ToString());
                }
                if (ds.Tables[0].Rows[0]["FillDate"] != null && ds.Tables[0].Rows[0]["FillDate"].ToString() != "")
                {
                    model.FillDate = DateTime.Parse(ds.Tables[0].Rows[0]["FillDate"].ToString());
                }
                if (ds.Tables[0].Rows[0]["FilMan"] != null && ds.Tables[0].Rows[0]["FilMan"].ToString() != "")
                {
                    model.FilMan = int.Parse(ds.Tables[0].Rows[0]["FilMan"].ToString());
                }
                if (ds.Tables[0].Rows[0]["TicketDate"] != null && ds.Tables[0].Rows[0]["TicketDate"].ToString() != "")
                {
                    model.TicketDate = DateTime.Parse(ds.Tables[0].Rows[0]["TicketDate"].ToString());
                }
                model.BedNO = ds.Tables[0].Rows[0]["BedNO"].ToString();
                if (ds.Tables[0].Rows[0]["PackingMethodID"] != null && ds.Tables[0].Rows[0]["PackingMethodID"].ToString() != "")
                {
                    model.PackingMethodID = int.Parse(ds.Tables[0].Rows[0]["PackingMethodID"].ToString());
                }
                model.SewingRemark = ds.Tables[0].Rows[0]["SewingRemark"].ToString();
                if (ds.Tables[0].Rows[0]["ParentID"] != null && ds.Tables[0].Rows[0]["ParentID"].ToString() != "")
                {
                    model.ParentID = int.Parse(ds.Tables[0].Rows[0]["ParentID"].ToString());
                }
                if (ds.Tables[0].Rows[0]["DeparmentType"] != null && ds.Tables[0].Rows[0]["DeparmentType"].ToString() != "")
                {
                    model.DeparmentType = int.Parse(ds.Tables[0].Rows[0]["DeparmentType"].ToString());
                }
                if (ds.Tables[0].Rows[0]["Price"] != null && ds.Tables[0].Rows[0]["Price"].ToString() != "")
                {
                    model.Price = decimal.Parse(ds.Tables[0].Rows[0]["Price"].ToString());
                }
                model.A = 1;
                return(model);
            }
            else
            {
                return(null);
            }
        }
コード例 #7
0
        /// <summary>
        /// 更新一条数据
        /// </summary>
        public bool Update(Hownet.Model.ProductTaskMain model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("update ProductTaskMain set ");
            strSql.Append("SalesOrderInfoID=@SalesOrderInfoID,");
            strSql.Append("MaterielID=@MaterielID,");
            strSql.Append("BrandID=@BrandID,");
            strSql.Append("Num=@Num,");
            strSql.Append("DateTime=@DateTime,");
            strSql.Append("LastDate=@LastDate,");
            strSql.Append("Remark=@Remark,");
            strSql.Append("PWorkingID=@PWorkingID,");
            strSql.Append("BomID=@BomID,");
            strSql.Append("CompanyID=@CompanyID,");
            strSql.Append("IsTicket=@IsTicket,");
            strSql.Append("IsBom=@IsBom,");
            strSql.Append("IsVerify=@IsVerify,");
            strSql.Append("VerifyDate=@VerifyDate,");
            strSql.Append("VerifyMan=@VerifyMan,");
            strSql.Append("DeparmentID=@DeparmentID,");
            strSql.Append("UpData=@UpData,");
            strSql.Append("FillDate=@FillDate,");
            strSql.Append("FilMan=@FilMan,");
            strSql.Append("TicketDate=@TicketDate,");
            strSql.Append("BedNO=@BedNO,");
            strSql.Append("PackingMethodID=@PackingMethodID,");
            strSql.Append("SewingRemark=@SewingRemark,");
            strSql.Append("ParentID=@ParentID,");
            strSql.Append("DeparmentType=@DeparmentType,");
            strSql.Append("Price=@Price");
            strSql.Append(" where ID=@ID");
            SqlParameter[] parameters =
            {
                new SqlParameter("@SalesOrderInfoID", SqlDbType.Int,          4),
                new SqlParameter("@MaterielID",       SqlDbType.Int,          4),
                new SqlParameter("@BrandID",          SqlDbType.Int,          4),
                new SqlParameter("@Num",              SqlDbType.Int,          4),
                new SqlParameter("@DateTime",         SqlDbType.DateTime),
                new SqlParameter("@LastDate",         SqlDbType.DateTime),
                new SqlParameter("@Remark",           SqlDbType.NVarChar,  4000),
                new SqlParameter("@PWorkingID",       SqlDbType.Int,          4),
                new SqlParameter("@BomID",            SqlDbType.Int,          4),
                new SqlParameter("@CompanyID",        SqlDbType.Int,          4),
                new SqlParameter("@IsTicket",         SqlDbType.Bit,          1),
                new SqlParameter("@IsBom",            SqlDbType.Bit,          1),
                new SqlParameter("@IsVerify",         SqlDbType.Int,          4),
                new SqlParameter("@VerifyDate",       SqlDbType.DateTime),
                new SqlParameter("@VerifyMan",        SqlDbType.Int,          4),
                new SqlParameter("@DeparmentID",      SqlDbType.Int,          4),
                new SqlParameter("@UpData",           SqlDbType.Int,          4),
                new SqlParameter("@FillDate",         SqlDbType.DateTime),
                new SqlParameter("@FilMan",           SqlDbType.Int,          4),
                new SqlParameter("@TicketDate",       SqlDbType.DateTime),
                new SqlParameter("@BedNO",            SqlDbType.NVarChar,    50),
                new SqlParameter("@PackingMethodID",  SqlDbType.Int,          4),
                new SqlParameter("@SewingRemark",     SqlDbType.NVarChar,  4000),
                new SqlParameter("@ParentID",         SqlDbType.Int,          4),
                new SqlParameter("@DeparmentType",    SqlDbType.Int,          4),
                new SqlParameter("@Price",            SqlDbType.Decimal,      9),
                new SqlParameter("@ID",               SqlDbType.Int, 4)
            };
            parameters[0].Value  = model.SalesOrderInfoID;
            parameters[1].Value  = model.MaterielID;
            parameters[2].Value  = model.BrandID;
            parameters[3].Value  = model.Num;
            parameters[4].Value  = model.DateTime;
            parameters[5].Value  = model.LastDate;
            parameters[6].Value  = model.Remark;
            parameters[7].Value  = model.PWorkingID;
            parameters[8].Value  = model.BomID;
            parameters[9].Value  = model.CompanyID;
            parameters[10].Value = model.IsTicket;
            parameters[11].Value = model.IsBom;
            parameters[12].Value = model.IsVerify;
            parameters[13].Value = model.VerifyDate;
            parameters[14].Value = model.VerifyMan;
            parameters[15].Value = model.DeparmentID;
            parameters[16].Value = model.UpData;
            parameters[17].Value = model.FillDate;
            parameters[18].Value = model.FilMan;
            parameters[19].Value = model.TicketDate;
            parameters[20].Value = model.BedNO;
            parameters[21].Value = model.PackingMethodID;
            parameters[22].Value = model.SewingRemark;
            parameters[23].Value = model.ParentID;
            parameters[24].Value = model.DeparmentType;
            parameters[25].Value = model.Price;
            parameters[26].Value = model.ID;

            int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);

            if (rows > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }