예제 #1
0
        public void DeleteFormula(string formulaCode)
        {
            using (PersistentManager pm = new PersistentManager())
            {
                FormulaDao formulaDao = new FormulaDao();
                ScheduleDao scheduleDao = new ScheduleDao();
                try
                {
                    pm.BeginTransaction();

                    if (scheduleDao.Find(formulaCode) == 0)
                    {
                        formulaDao.DeleteDetail(formulaCode);
                        formulaDao.DeleteMaster(formulaCode);
                    }
                    else
                        throw new Exception("��ǰ�䷽�����������ƻ��Ѱ�");

                    pm.Commit();
                }
                catch (Exception e)
                {
                    pm.Rollback();
                    throw new Exception(e.Message);
                }
            }
        }
예제 #2
0
 public string GetMinFormula(string cigaretteName, string formulaCode)
 {
     using (PersistentManager pm = new PersistentManager())
     {
         FormulaDao formulaDao = new FormulaDao();
         return formulaDao.FindMinNo(cigaretteName, formulaCode);
     }
 }
예제 #3
0
 public DataTable GetFormulaMaster(string cigaretteName)
 {
     using (PersistentManager pm = new PersistentManager())
     {
         FormulaDao formulaDao = new FormulaDao();
         return formulaDao.FindMaster(cigaretteName);
     }
 }
예제 #4
0
 public DataTable GetFormulaDetail(string formulaCode)
 {
     using (PersistentManager pm = new PersistentManager())
     {
         FormulaDao formulaDao = new FormulaDao();
         return formulaDao.FindDetail(formulaCode);
     }
 }
예제 #5
0
 public void ClearFormula(string scheduleNo, string formulaCode)
 {
     using (PersistentManager pm = new PersistentManager())
     {
         ScheduleDao scheduleDao = new ScheduleDao();
         FormulaDao formulaDao = new FormulaDao();
         try
         {
             pm.BeginTransaction();
             formulaDao.PlusUseCount(formulaCode);
             scheduleDao.UpdateFormula(scheduleNo, "");
             pm.Commit();
         }
         catch (Exception e)
         {
             pm.Rollback();
             throw new Exception(e.Message);
         }
     }
 }
예제 #6
0
        public string GenBill(string formulaCode, string scheduleNo, double quantity, String userID, string sysDate, string sysDate8)
        {
            string billNo = null;
            using (PersistentManager pm = new PersistentManager())
            {

                FormulaDao formulaDao = new FormulaDao();
                DataTable formulaTable = formulaDao.FindDetail(formulaCode);

                BillDao billDao = new BillDao();
                DataTable detailTable = billDao.FindDetailEmpty();

                int itemNo = 1;
                foreach (DataRow formulaRow in formulaTable.Rows)
                {
                    DataRow detailRow = detailTable.NewRow();

                    detailRow["ITEMNO"] = itemNo++;
                    detailRow["PRODUCTCODE"] = formulaRow["PRODUCTCODE"];
                    detailRow["QUANTITY"] = quantity * (Convert.ToDouble(formulaRow["QUANTITY"]) / 100.0);
                    detailRow["PACKAGECOUNT"] = 0;
                    detailRow["NCCOUNT"] = 0;
                    detailRow["OTHERCODE"] = formulaRow["OTHERCODE"];
                    detailTable.Rows.Add(detailRow);
                }
                try
                {
                    pm.BeginTransaction();

                    //string warehousePrefix = "C";
                    //billNo = warehousePrefix + sysDate8 + billDao.FindBillNo(sysDate, warehousePrefix).ToString().PadLeft(5, '0');
                    billNo = billDao.FindNewBillNo("C", sysDate);
                    billDao.InsertMaster(billNo, DateTime.Now.ToShortDateString(), "002", scheduleNo, scheduleNo, "", "", "1", "1", userID);
                    billDao.InsertDetail(billNo, detailTable);

                    ScheduleDao scheduleDao = new ScheduleDao();
                    scheduleDao.UpdateBillNo(scheduleNo, billNo);

                    pm.Commit();
                }
                catch (Exception e)
                {
                    pm.Rollback();
                    throw new Exception(e.Message);
                }
            }
            return billNo;
        }
예제 #7
0
        private void SaveFormula(bool isAdd, string formulaCode, string formulaName, string formulaDate, string cigaretteName, string quantity, string operater, string formulaNo, DataTable detailTable)
        {
            using (PersistentManager pm = new PersistentManager())
            {
                FormulaDao formulaDao = new FormulaDao();
                ProductDao productDao = new ProductDao();
                try
                {
                    pm.BeginTransaction();

                    if (isAdd)
                        formulaDao.InserMaster(formulaCode, formulaName, formulaDate, cigaretteName, quantity, formulaNo, operater);
                    else
                        formulaDao.UpdateMaster(formulaCode, formulaName, formulaDate, cigaretteName, quantity, formulaNo, operater);

                    formulaDao.DeleteDetail(formulaCode);
                    for (int i = 0; i < detailTable.Rows.Count; i++)
                    {
                        DataRow row = detailTable.Rows[i];
                        string productCode = row["PRODUCTCODE"].ToString().ToUpper();

                        formulaDao.InsertDetail(formulaCode,
                                                productCode,
                                                i.ToString(),
                                                row["QUANTITY"].ToString(),
                                                row["OTHERCODE"].ToString());

                        if (productDao.Find(productCode) == 0)
                        {
                            productDao.Insert(productCode,
                                         row["ORIGINAL"].ToString(),
                                         row["YEARS"].ToString(),
                                         row["GRADE"].ToString(),
                                         row["STYLE"].ToString());
                        }
                        else
                        {
                            productDao.Update(productCode,
                                         row["ORIGINAL"].ToString(),
                                         row["YEARS"].ToString(),
                                         row["GRADE"].ToString(),
                                         row["STYLE"].ToString());
                        }
                    }
                    pm.Commit();
                }
                catch (Exception e)
                {
                    pm.Rollback();
                    throw new Exception(e.Message);
                }
            }
        }
예제 #8
0
 public DataTable GetStyle()
 {
     using (PersistentManager pm = new PersistentManager())
     {
         FormulaDao formulaDao = new FormulaDao();
         return formulaDao.FindStyle();
     }
 }