Exemplo n.º 1
0
        /// <summary>
        /// ���仺��������뻺�浽��������ػ����ID��
        /// </summary>
        /// <param name="TaskID"></param>
        /// <returns></returns>
        public string InsertChannel(string TaskID, string Bill_No)
        {
            using (PersistentManager pm = new PersistentManager())
            {
                string strChannel_No = "";
                TaskDao dao = new TaskDao();
                DataTable dt = dao.TaskInfo(string.Format("TASK_ID='{0}'", TaskID));
                string Line_No = dt.Rows[0]["TARGET_CODE"].ToString().Trim();
                string BillNo = dt.Rows[0]["BILL_NO"].ToString();

                ChannelDao Cdao = new ChannelDao();
                dt = Cdao.ChannelInfo(Line_No);

                if (!Cdao.HasTaskInChannel(TaskID))
                {
                    switch (Line_No)
                    {
                        case "01":
                        case "02":
                            strChannel_No = Cdao.GetChannelNoByBillNo(BillNo);
                            if (strChannel_No == "")
                            {
                                DataRow[] drs = dt.Select("QTY=0 AND QTY<CACHE_QTY", "ORDERNO");
                                if (drs.Length > 0)
                                    strChannel_No = drs[0]["CHANNEL_NO"].ToString();
                            }
                            else
                            {
                                DataRow[] drs = dt.Select(string.Format("QTY<CACHE_QTY and CHANNEL_NO='{0}'", strChannel_No), "ORDERNO");
                                if (drs.Length == 0)
                                {
                                     drs = dt.Select("QTY=0 AND QTY<CACHE_QTY", "ORDERNO");
                                    if (drs.Length > 0)
                                        strChannel_No = drs[0]["CHANNEL_NO"].ToString();
                                }
                            }
                            break;
                        case "03":
                            if (int.Parse(dt.Rows[0]["CACHE_QTY"].ToString()) - int.Parse(dt.Rows[0]["QTY"].ToString()) > 15)
                            {
                                strChannel_No = dt.Rows[0]["CHANNEL_NO"].ToString();
                            }
                            break;
                    }

                    if (strChannel_No != "")
                    {
                        Cdao.InsertChannel(TaskID, Bill_No, strChannel_No);
                    }
                }

                return strChannel_No;
            }
        }
Exemplo n.º 2
0
 /// <summary>
 /// 返回任务信息
 /// </summary>
 /// <param name="strWhere"></param>
 /// <returns></returns>
 public DataTable TaskInfo(string strWhere)
 {
     using (PersistentManager pm = new PersistentManager())
     {
         TaskDao dao = new TaskDao();
         return dao.TaskInfo(strWhere);
     }
 }