/// <summary> /// �����ҵ /// </summary> /// <param name="billNo"></param> /// <param name="stateTable"></param> /// <param name="userID"></param> /// <param name="date"></param> public void TaskBill(string billNo, DataTable stateTable, string userID, string date) { using (PersistentManager pm = new PersistentManager()) { BillDao billDao = new BillDao(); ProductStateDao stateDao = new ProductStateDao(); TaskDao taskDao = new TaskDao(); try { pm.BeginTransaction(); DataTable masterTable = billDao.FindMaster(billNo); if (masterTable.Rows.Count != 0) { string scheduleNo = masterTable.Rows[0]["SCHEDULENO"].ToString(); string taskType = masterTable.Rows[0]["TTYPE"].ToString(); string taskLevel = masterTable.Rows[0]["TASKLEVEL"].ToString(); string target = masterTable.Rows[0]["TARGET"].ToString(); //�жϵ�ǰ�����Ƿ���productstaet��������������Ǹ���billdetail���� if (stateTable.Rows.Count == 0) { DataTable detailTable = billDao.FindDetail(billNo); int item = 1; stateDao.Insert(scheduleNo, billNo, detailTable, ref item); } stateDao.UpdateBarcode(billNo); //����task��ҵ�� taskDao.Insert(billNo, taskType, taskLevel, target); ////����billmaster״̬ billDao.UpdateMasterState(billNo, "3", "TASKER", userID, "TASKDATE", date); } else throw new Exception(string.Format("δ�ҵ����ݺ�Ϊ'{0}'�ĵ��ݡ�", billNo)); pm.Commit(); } catch (Exception e) { pm.Rollback(); throw new Exception(e.Message); } } }