示例#1
0
 public bool QueryFastInList(Task_Model taskModel, string BeginTime, string EndTime, ref DividPage dividpage, ref List <Task_Model> lsttask, ref string strErrMsg)
 {
     if (dividpage == null)
     {
         dividpage = new DividPage();
     }
     lsttask = new List <Task_Model>();
     try
     {
         using (SqlDataReader dr = Common_DB.QueryByDividPage(ref dividpage, "v_queryfastinlist", GetFilterSql(taskModel, BeginTime, EndTime), "*", "Order by CREATEDATETIME desc"))
         {
             while (dr.Read())
             {
                 lsttask.Add(GetModelFromDataReader(dr));
             }
             dividpage.CurrentPageRecordCounts = lsttask.Count;
         }
         if (lsttask == null || lsttask.Count == 0)
         {
             strErrMsg = "没有快速入库单信息!";
             return(false);
         }
         else
         {
             return(true);
         }
     }
     catch (Exception ex)
     {
         strErrMsg = ex.Message;
         return(false);
     }
 }
示例#2
0
 public bool GetFastInInfo(Task_Model taskModel, ref DividPage dividpage, ref List <Task_Model> lsttask, ref string strErrMsg)
 {
     if (dividpage == null)
     {
         dividpage = new DividPage();
     }
     lsttask = new List <Task_Model>();
     try
     {
         //using (SqlDataReader dr = Common_DB.QueryByDividPage(ref dividpage, "v_fastin", GetFilterSql(taskModel)))
         //{
         //    while (dr.Read())
         //    {
         //        lsttask.Add(GetModelFromDataReader(dr));
         //    }
         //    dividpage.CurrentPageRecordCounts = lsttask.Count;
         //}
         if (lsttask == null || lsttask.Count == 0)
         {
             strErrMsg = "没有快速入库单信息!";
             return(false);
         }
         else
         {
             return(true);
         }
     }
     catch (Exception ex)
     {
         strErrMsg = ex.Message;
         return(false);
     }
 }
示例#3
0
 //查询无PO快速入库数据
 public bool GetFastInNotHavePOInfo(Task_Model taskmo, ref DividPage dividpage, ref List <Task_Model> lsttask, ref string strErrMsg)
 {
     if (dividpage == null)
     {
         dividpage = new DividPage();
     }
     lsttask = new List <Task_Model>();
     try
     {
         using (SqlDataReader dr = Common_DB.QueryByDividPage(ref dividpage, GetSql(taskmo), GetFilterSql(taskmo)))
         {
             Console.Write(GetSql(taskmo) + "\n" + GetFilterSql(taskmo));
             while (dr.Read())
             {
                 lsttask.Add(GetModelFromDataReader(dr));
             }
             dividpage.CurrentPageRecordCounts = lsttask.Count;
         }
         if (lsttask == null || lsttask.Count == 0)
         {
             strErrMsg = "没有快速入库单信息!";
             return(false);
         }
         else
         {
             return(true);
         }
     }
     catch (Exception ex)
     {
         strErrMsg = ex.Message;
         return(false);
     }
 }
示例#4
0
        public Task_Model GetModelFromDataReader(SqlDataReader dr)
        {
            //序号,物料凭证,单据号,上架任务号,状态,制单人,制单日期,入库原因,备注,供应商
            Task_Model TMM = new Task_Model();

            //TMM.ID = Convert.ToInt32(drTask_Model"ID"]);
            TMM.ID           = Convert.ToInt32(dr["ID"]);
            TMM.ShelvePost   = dr["SHELVEPOST"].ToString();
            TMM.MaterialDoc  = dr["MATERIALDOC"].ToString();
            TMM.VoucherNo    = dr["voucherno"].ToString();
            TMM.TaskNo       = dr["TASKNO"].ToString();
            TMM.StatusName   = dr["STATUS"].ToString();
            TMM.CreateUserNo = dr["CREATEUSERNO"].ToString();
            if (dr["CREATEDATETIME"] is DBNull)
            {
                TMM.CreateDateTime = DateTime.MinValue;
            }
            else
            {
                TMM.CreateDateTime = DateTime.Parse(dr["CREATEDATETIME"].ToString());
            }
            TMM.Reason     = dr["REASON"].ToString();
            TMM.Remark     = dr["REMARK"].ToString();
            TMM.SupCusName = dr["SUPCUSNAME"].ToString();
            TMM.SupCusNo   = dr["SUPCUSNO"].ToString();
            return(TMM);
        }
示例#5
0
        public bool UpdateFastIn(string ID, Task_Model head, string[] lst_delID, ref string strErrMsg)
        {
            //strErrMsg = string.Empty;
            //sql List
            string vouchertype = string.Empty;

            if (head.IsShelvePost == 1)
            {
                vouchertype = "50";
            }
            else
            {
                vouchertype = "60";
            }
            List <string> SQL_list = new List <string>();

            SQL_list.Add("update T_TASK set VOUCHERTYPE=" + vouchertype.ToString() + ",SUPCUSNAME=" + dbstr(head.SupCusName) + ",REMARK=" + dbstr(head.Remark) + ",REASON=" + dbstr(head.Reason) + ",SUPCUSNO=" + dbstr(head.SupCusNo) + ",ISSHELVEPOST=" + head.IsShelvePost
                         + " where ID =" + ID + " ");

            foreach (TaskDetails_Model tm in head.lstTaskDetails)
            {
                string  sqlStr;
                string  materialNo    = tm.MaterialNo;
                string  materialDESC  = tm.MaterialDesc;
                string  tmaterialNo   = tm.TMaterialNo;
                string  tmaterialDESC = tm.TMaterialDesc;
                decimal materialNUM   = tm.TaskQty;
                if (tm.ID < 0)
                {
                    sqlStr = "insert into T_TASKDETAILS(ID,TASK_ID,MATERIALNO,MATERIALDESC,TMATERIALNO,TMATERIALDESC,TASKQTY,REMAINQTY)" +
                             "values(seq_taskdetails.nextval," + ID + ",'" + materialNo + "','" + materialDESC + "','" + tmaterialNo + "','" + tmaterialDESC + "'," + materialNUM + "," + materialNUM + ")";
                    SQL_list.Add(sqlStr);
                }
                else
                {
                    if (!strErrMsg.Equals("old"))
                    {
                        sqlStr = "update T_TASKDETAILS set MATERIALNO='" + materialNo + "',MATERIALDESC='" + materialDESC + "',TMATERIALNO='" + tmaterialNo + "',TMATERIALDESC='" + tmaterialDESC + "',TASKQTY=" + materialNUM + ",REMAINQTY=" + materialNUM
                                 + " where TASK_ID=" + ID + " and ID=" + tm.ID + " ";
                        SQL_list.Add(sqlStr);
                    }
                }
            }
            foreach (string delID in lst_delID)
            {
                SQL_list.Add("delete T_TASKDETAILS where ID=" + delID + " ");
            }
            try
            {
                int result = OperationSql.ExecuteNonQueryList(SQL_list);
                strErrMsg = "更新成功!";
                return(true);
            }
            catch (Exception e)
            {
                strErrMsg = e.ToString();
                return(false);
            }
        }
示例#6
0
        private string GetFilterSql(Task_Model taskmo)
        {
            string sql = "select count(1) as recordcounts   from t_task  t left join t_taskandvoucherno v on t.id = v.taskid left join t_receivematerialdoc r on  t.id = r.task_id where 1=1 ";

            connectSql(taskmo, ref sql);

            return(sql);
        }
示例#7
0
        private string GetSql(Task_Model taskmo)
        {
            string sql = "select v.voucherno,r.MATERIALDOC, t.*  from t_task  t left join t_taskandvoucherno v on t.id = v.taskid left join t_receivematerialdoc r on  t.id = r.task_id where 1=1 ";

            connectSql(taskmo, ref sql);

            return(sql);
        }
示例#8
0
        public bool SaveFastIn(Task_Model head, BLL.Basic.User.UserInfo userModel, ref string strErrMsg)
        {
            strErrMsg = string.Empty;
            //获取TASK表ID
            int NewTASKID = 0;

            if (!GetNewTASKID(ref NewTASKID, ref strErrMsg))
            {
                strErrMsg = "获取TASK表ID失败:" + strErrMsg;
                return(false);
            }
            //sql List
            List <string> SQL_list = new List <string>();

            if (head.IsShelvePost == 1)
            {
                SQL_list.Add("insert into T_TASK(ID,VOUCHERTYPE,TASKTYPE,TASKNO,SUPCUSNAME,SUPCUSNO,TASKSTATUS,CREATEDATETIME,REMARK,REASON,CREATEUSERNO,ISSHELVEPOST,ISQUALITY,RECEIVEUSERNO,taskissued,PostStatus)" +
                             "values(" + NewTASKID.ToString() + ",50,1,'" + head.TaskNo + "'," + dbstr(head.SupCusName) + "," + dbstr(head.SupCusNo) + ",2,sysdate," + dbstr(head.Remark) + "," + dbstr(head.Reason) + ",'" + head.CreateUserNo + "',1,1,'" + head.CreateUserNo + "',sysdate,4) ");
            }
            else
            {
                SQL_list.Add("insert into T_TASK(ID,VOUCHERTYPE,TASKTYPE,TASKNO,SUPCUSNAME,SUPCUSNO,TASKSTATUS,CREATEDATETIME,REMARK,REASON,CREATEUSERNO,ISSHELVEPOST,ISQUALITY,RECEIVEUSERNO,taskissued,PostStatus)" +
                             "values(" + NewTASKID.ToString() + ",60,1,'" + head.TaskNo + "'," + dbstr(head.SupCusName) + "," + dbstr(head.SupCusNo) + ",2,sysdate," + dbstr(head.Remark) + "," + dbstr(head.Reason) + ",'" + head.CreateUserNo + "',2,1,'" + head.CreateUserNo + "',sysdate,4) ");
            }
            foreach (TaskDetails_Model tm in head.lstTaskDetails)
            {
                string  sqlStr;
                string  materialNo    = tm.MaterialNo;
                string  materialDESC  = tm.MaterialDesc;
                string  tmaterialNo   = tm.TMaterialNo;
                string  tmaterialDESC = tm.TMaterialDesc;
                decimal materialNUM   = tm.TaskQty;


                sqlStr = "insert into T_TASKDETAILS(ID,TASK_ID,VOUCHERNO,MATERIALNO,MATERIALDESC,TMATERIALNO,TMATERIALDESC,TASKQTY,REMAINQTY)" +
                         "values(seq_taskdetails.nextval," + NewTASKID.ToString() + ",'" + head.TaskNo + "','" + materialNo + "','" + materialDESC + "','" + tmaterialNo + "','" + tmaterialDESC + "'," + materialNUM + "," + materialNUM + ")";
                SQL_list.Add(sqlStr);
            }
            foreach (BLL.Basic.Warehouse.WarehouseInfo wi in userModel.lstWarehouse)
            {
                SQL_list.Add("insert into T_TASKWAREHOUSE (ID,TASK_ID,WAREHOUSE_ID,USER_ID)values(seq_taskwarehouse.nextval," + NewTASKID.ToString() + "," + wi.ID + "," + userModel.ID + ") ");
            }
            try
            {
                int result = OperationSql.ExecuteNonQueryList(SQL_list);
                strErrMsg = "新增成功!快速入库单号:" + head.TaskNo;
                return(true);
            }
            catch (Exception e)
            {
                strErrMsg = e.ToString();
                return(false);
            }
        }
        private void GetQueryData()
        {
            WebService.DividPage   server_page = new WebService.DividPage();
            ChensControl.DividPage client_page = chensPage1.dDividPage;
            if (client_page.CurrentPageNumber == 0)
            {
                client_page.CurrentPageNumber = 1;
            }

            FastIn_Func.GetServerPageFromClientPage(server_page, client_page);

            try
            {
                bool              IsSuccess = false;        // 判断是否成功返回数据
                string            msg       = string.Empty; //返回的消息
                List <Task_Model> tMdoels   = new List <Task_Model>();
                Task_Model        tm        = new Task_Model();

                //tm.VoucherNo = txt_djno.Text;
                tm.CreateUserNo = txt_peo.Text;
                tm.MaterialDoc  = txt_mateducment.Text;
                tm.TaskNo       = txt_ontaskno.Text;
                if (begintime.Checked)
                {
                    tm.CreateDateTime = begintime.Value;
                }
                if (endtime.Checked)
                {
                    tm.CreateDateTime = endtime.Value;
                }

                tm.TaskStatus = Convert.ToInt32(cmb_state.SelectedValue);
                tm.SupCusName = txt_busname.Text;

                IsSuccess = WMSWebService.service.GetFastInNotHavePOInfo(tm, ref server_page, ref tMdoels, ref msg);

                FastIn_Func.GetClientPageFromServerPage(server_page, ref client_page);

                chensPage1.ShowPage();
                dgv_show.DataSource = tMdoels;

                if (IsSuccess == false)
                {
                    MessageBox.Show(msg);
                    return;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
示例#10
0
        private string GetFilterSql(Task_Model task_Model, string BeginTime, string EndTime)
        {
            //单据号,制单人,物料凭证,任务号,日期,状态,供应商,出库类型,任务类型
            string VOUCHERNO    = task_Model.VoucherNo;             //单据号
            string MaterialDoc  = task_Model.MaterialDoc;           //物料凭证号
            string TASKNO       = task_Model.TaskNo;                //上架任务号
            string STATUS       = task_Model.TaskStatus.ToString(); //状态
            string SupCusNo     = task_Model.SupCusNo;              //供应商
            string CREATEUSERNO = task_Model.CreateUserNo;          //制单人

            //VOUCHERTYPE=50快速入
            string sql = @" where (VOUCHERTYPE= '50' or VOUCHERTYPE= '60') ";

            if (VOUCHERNO != null && VOUCHERNO.Length > 0)
            {
                sql += " and VOUCHERNO = '" + VOUCHERNO + "' ";
            }
            if (MaterialDoc != null && MaterialDoc.Length > 0)
            {
                sql += " and MATERIALDOC = '" + MaterialDoc + "' ";
            }
            if (CREATEUSERNO != null && CREATEUSERNO.Length > 0)
            {
                sql += " and CREATEUSERNO like '%" + CREATEUSERNO + "%' ";
            }
            if (STATUS != null && STATUS.Length > 0 && STATUS != "1")
            {
                sql += " and TASKSTATUS = " + STATUS + " ";
            }
            if (SupCusNo != null && SupCusNo.Length > 0)
            {
                sql += " and SUPCUSNO = '" + SupCusNo + "' ";
            }
            if (TASKNO != null && TASKNO.Length > 0)
            {
                sql += " and TASKNO = '" + TASKNO + "' ";
            }
            if (BeginTime != null && EndTime != null && BeginTime.Length > 0 && EndTime.Length > 0)
            {
                sql += "and createdatetime between to_date('" + BeginTime + "','YYYY/MM/DD') and to_date('" + EndTime + "','YYYY/MM/DD') + 1";
            }
            else if (BeginTime != null && BeginTime.Length > 0)
            {
                sql += "and createdatetime>=to_date('" + BeginTime + "','YYYY/MM/DD') ";
            }
            else if (EndTime != null && EndTime.Length > 0)
            {
                sql += "and createdatetime<=to_date('" + EndTime + "','YYYY/MM/DD') + 1 ";
            }
            return(sql);
        }
示例#11
0
        private Task_Model GetModelFromDataReader(SqlDataReader dr)
        {
            //序号,物料凭证,单据号,上架任务号,状态,制单人,制单日期,入库原因,备注,供应商
            Task_Model task_Model = new Task_Model();

            task_Model.ID = Convert.ToInt32(dr["ID"]);

            task_Model.IsShelvePost = int.Parse(dr["ISSHELVEPOST"].ToString());
            switch (task_Model.IsShelvePost)
            {
                //case 1: task_Model.IsPost = "不过账"; break;
                //case 2: task_Model.IsPost = "过账"; break;
            }

            task_Model.MaterialDoc = dr["MATERIALDOC"].ToString();
            //task_Model.VoucherNo = dr["VOUCHERNO"].ToString();
            task_Model.TaskNo = dr["TASKNO"].ToString();

            int sta = Convert.ToInt32(dr["TASKSTATUS"]);

            switch (sta)
            {
            case 1: task_Model.StatusName = "全部"; break;

            case 2: task_Model.StatusName = "已下发"; break;

            case 3: task_Model.StatusName = "未下发"; break;

            case 4: task_Model.StatusName = "已完成"; break;

            case 5: task_Model.StatusName = "已取消"; break;

            case 6: task_Model.StatusName = "SAP已过账"; break;
            }
            task_Model.CreateUserNo = dr["CREATEUSERNO"].ToString();
            if (dr["CREATEDATETIME"] is DBNull)
            {
                task_Model.CreateDateTime = DateTime.MinValue;
            }
            else
            {
                task_Model.CreateDateTime = DateTime.Parse(dr["CREATEDATETIME"].ToString());
            }
            task_Model.Reason     = dr["REASON"].ToString();
            task_Model.Remark     = dr["Remark"].ToString();
            task_Model.SupCusName = dr["SUPCUSNAME"].ToString();

            return(task_Model);
        }
示例#12
0
        private void connectSql(Task_Model taskmo, ref string sql)
        {
            string sqlTemp = string.Empty;

            //单据号,制单人,物料凭证,任务号,日期,状态,供应商,出库类型,任务类型
            string VOUCHERNO      = string.Empty;
            string CREATEUSERNO   = taskmo.CreateUserNo;
            string SAPMATERIALDOC = taskmo.MaterialDoc;
            string TASKNO         = taskmo.TaskNo;
            string begintime      = taskmo.CreateDateTime.ToString();
            //string endtime = taskmo.EndTime;
            string STATUS     = taskmo.StatusName;
            string SupCusName = taskmo.SupCusName;

            if (string.IsNullOrEmpty(VOUCHERNO))
            {
                sqlTemp += " and v.voucherno = '" + VOUCHERNO + "'";
            }
            if (string.IsNullOrEmpty(CREATEUSERNO))
            {
                sqlTemp += " and CREATEUSERNO = '" + CREATEUSERNO + "'";
            }
            if (string.IsNullOrEmpty(SAPMATERIALDOC))
            {
                sqlTemp += " and r.MATERIALDOC = '" + SAPMATERIALDOC + "'";
            }
            if (string.IsNullOrEmpty(TASKNO))
            {
                sqlTemp += " and TASKNO ='" + TASKNO + "'";
            }

            if (string.IsNullOrEmpty(begintime))
            {
                sql += "and createdatetime>=to_date('" + begintime + "','YYYY/MM/DD') ";
            }

            if (STATUS != "1")
            {
                sql += " and Status = " + STATUS;
            }

            sql += sqlTemp;
        }
示例#13
0
 public bool SavePostFastIn(Task_Model head, BLL.Basic.User.UserInfo userModel, TaskVoucher tv, ref string strErrMsg)
 {
     return(new FastIn_DB().SavePostFastIn(head, userModel, tv, ref strErrMsg));
 }
示例#14
0
 public bool GetFastInByID(string ID, ref Task_Model head, ref TaskVoucher tv, ref string strErrMsg)
 {
     return(new FastIn_DB().GetFastInByID(ID, ref head, ref tv, ref strErrMsg));
 }
示例#15
0
 public bool UpdateFastIn(string ID, Task_Model head, string[] lst_delID, ref string strErrMsg)
 {
     return(new FastIn_DB().UpdateFastIn(ID, head, lst_delID, ref strErrMsg));
 }
示例#16
0
文件: Form99.cs 项目: xcxlTeam/xcxl
        private void GetQueryData()
        {
            ChensControl.DividPage clientPage = chensPage1.dDividPage;
            DividPage _serverMainPage         = new DividPage();

            Common.Common_Func.GetServerPageFromClientPage(ref _serverMainPage, clientPage);
            Task_Model TM = new Task_Model();

            if (txt_djno.Text.Trim().Length > 0)//单据号
            {
                TM.VoucherNo = txt_djno.Text.Trim();
            }
            if (txt_ontaskno.Text.Trim().Length > 0)//上架任务号
            {
                TM.TaskNo = txt_ontaskno.Text.Trim();
            }
            if (txt_peo.Text.Trim().Length > 0)//制单人
            {
                TM.CreateUserNo = txt_peo.Text.Trim();
            }
            if (cmb_state.Text.Trim().Length > 0)//状态
            {
                TM.TaskStatus = (int)cmb_state.SelectedValue;
            }
            string BeginTime = "", EndTime = "";

            if (begintime.Checked)
            {
                BeginTime = begintime.Value.ToString("yyyy-MM-dd");
            }
            if (endtime.Checked)
            {
                EndTime = endtime.Value.ToString("yyyy-MM-dd");
            }
            List <Task_Model> lsttask = new List <Task_Model>();
            string            strErr  = "";

            bindingSource1.DataSource = null;
            try
            {
                bool bResult = WMS.Common.WMSWebService.service.QueryFastInList(TM, BeginTime, EndTime, ref _serverMainPage, ref lsttask, ref strErr);
                Common.Common_Func.GetClientPageFromServerPage(_serverMainPage, ref clientPage);
                chensPage1.ShowPage();
                bindingSource1.DataSource = lsttask;
                if (bResult == false)
                {
                    if (strErr.Equals("没有快速出库单信息!"))
                    {
                        return;
                    }
                    else
                    {
                        Common.Common_Func.ErrorMessage(strErr);
                        return;
                    }
                }
            }
            catch (Exception ex)
            {
                Common.Common_Func.ErrorMessage(ex.Message);
            }
        }
示例#17
0
        //查询数据
        public bool GetFastInNotHavePOInfo(Task_Model taskmo, ref DividPage dividpage, ref List <Task_Model> lsttask, ref string strErrMsg)
        {
            FastInNotHavePO_DB fdb = new FastInNotHavePO_DB();

            return(fdb.GetFastInNotHavePOInfo(taskmo, ref dividpage, ref lsttask, ref strErrMsg));
        }
示例#18
0
        public Task AddPeople(Task_Model Taskadd)
        {
            string sql = @"Insert Into " + baseDB + " values (@Task, @Data, @Id_user);";

            return(_db.SaveData(sql, Taskadd));
        }
示例#19
0
        public Task EditPeople(Task_Model task_edit)
        {
            string sql = @"Select * from " + baseDB;

            return(_db.UpdateData(sql, task_edit));
        }
示例#20
0
 public bool UpdatePostFastIn(string ID, Task_Model head, TaskVoucher tv, string[] lst_delID, ref string strErrMsg)
 {
     return(new FastIn_DB().UpdatePostFastIn(ID, head, tv, lst_delID, ref strErrMsg));
 }
示例#21
0
        public bool GetFastInByID(string ID, ref Task_Model head, ref TaskVoucher tv, ref string strErrMsg)
        {
            try
            {
                string strSql = "select t_task.id,VOUCHERTYPE,TASKSTATUS,(CASE ISSHELVEPOST WHEN 1 THEN '不过' WHEN 2 THEN '过账' END) AS SHELVEPOST,t_receivematerialdoc.MATERIALDOC,ISNULL(t_taskandvoucherno.voucherno,'') as voucherno,TASKNO,(CASE TASKSTATUS WHEN 1 THEN '全部' WHEN 2 THEN '已下发' WHEN 3 THEN '未下发' WHEN 4 THEN '已完成' WHEN 5 THEN '已取消'WHEN 6 THEN 'SAP已过账 出库' WHEN 7 THEN '已过账' WHEN 8 THEN '已完成' WHEN 9 THEN '已分配' WHEN 10 THEN '未分配' WHEN 11 THEN '已复核' END) AS STATUS ,CREATEUSERNO,CREATEDATETIME,ISNULL(REASON,'') as REASON,ISNULL(REMARK,'') as REMARK,ISNULL(SUPCUSNAME,'') AS SUPCUSNAME,ISNULL(SUPCUSNO,'') AS SUPCUSNO,ISNULL(t_task.PostStatus,0) AS POSTSTATUS from t_task"
                                + " left join t_receivematerialdoc on t_receivematerialdoc.task_id = t_task.id "
                                + " left join t_taskandvoucherno on t_taskandvoucherno.task_id = t_task.id "
                                + " where t_task.id =" + ID;

                using (SqlDataReader dr = OperationSql.ExecuteReader(System.Data.CommandType.Text, strSql))
                {
                    while (dr.Read())
                    {
                        head                = new Task_Model();
                        head.ID             = Convert.ToInt32(ID);
                        head.VoucherType    = Convert.ToInt32(dr["VOUCHERTYPE"].ToString());
                        head.TaskStatus     = Convert.ToInt32(dr["TASKSTATUS"].ToString());
                        head.ShelvePost     = dr["SHELVEPOST"].ToString();
                        head.MaterialDoc    = dr["MATERIALDOC"].ToString();
                        head.VoucherNo      = dr["voucherno"].ToString();
                        head.TaskNo         = dr["TASKNO"].ToString();
                        head.StatusName     = dr["STATUS"].ToString();
                        head.CreateUserNo   = dr["CREATEUSERNO"].ToString();
                        head.CreateDateTime = Convert.ToDateTime(dr["CREATEDATETIME"]);
                        head.Reason         = dr["REASON"].ToString();
                        head.Remark         = dr["REMARK"].ToString();
                        head.SupCusName     = dr["SUPCUSNAME"].ToString();
                        head.SupCusNo       = dr["SUPCUSNO"].ToString().TrimStart('0');
                        head.PostStatus     = Convert.ToInt32(dr["POSTSTATUS"].ToString());
                        break;
                    }
                }
                if (head.VoucherType == 60 && head.VoucherNo.Length > 0)//如果已保存了单据数据
                {
                    //查询T_TASKANDVOUCHERNO表
                    strSql = "select ID,VOUCHERNO,TASK_ID from T_TASKANDVOUCHERNO where TASK_ID =" + ID;
                    using (SqlDataReader dr = OperationSql.ExecuteReader(System.Data.CommandType.Text, strSql))
                    {
                        while (dr.Read())
                        {
                            tv           = new TaskVoucher();
                            tv.ID        = Convert.ToInt32(dr["ID"].ToString());
                            tv.VoucherNo = dr["VOUCHERNO"].ToString();
                            tv.Task_ID   = dr["TASK_ID"].ToString();
                            break;
                        }
                    }
                }
                strSql = "select ID,ISNULL(MATERIALNO,'')as MATERIALNO,ISNULL(MATERIALDESC,'') as MATERIALDESC,ISNULL(TMATERIALNO,'') as TMATERIALNO,ISNULL(TMATERIALDESC,'') as TMATERIALDESC,TASKQTY,SHELVEQTY from T_TASKDETAILS where TASK_ID =" + ID + " order by MATERIALNO";
                using (SqlDataReader dr = OperationSql.ExecuteReader(System.Data.CommandType.Text, strSql))
                {
                    List <TaskDetails_Model> body = new List <TaskDetails_Model>();
                    while (dr.Read())
                    {
                        TaskDetails_Model detail = new TaskDetails_Model();
                        detail.ID            = Convert.ToInt32(dr["ID"]);
                        detail.MaterialNo    = dr["MATERIALNO"].ToString();
                        detail.MaterialDesc  = dr["MATERIALDESC"].ToString();
                        detail.TMaterialNo   = dr["TMATERIALNO"].ToString();
                        detail.TMaterialDesc = dr["TMATERIALDESC"].ToString();
                        detail.TaskQty       = Convert.ToDecimal(dr["TASKQTY"]);
                        detail.ShelveQty     = dr["SHELVEQTY"].Equals(DBNull.Value) ? 0 : Convert.ToDecimal(dr["SHELVEQTY"]);
                        body.Add(detail);
                    }
                    if (body.Count > 0)
                    {
                        head.lstTaskDetails = body;
                    }
                }
                if (tv != null && tv.ID != null)//如果已保存了单据数据
                {
                    strSql = "select ID,HEAD_ID,ISNULL(MATERIALNO,'')as MATERIALNO,ISNULL(MATERIALDESC,'') as MATERIALDESC,QTY,ROWNO,ISNULL(FACTORY,'') as FACTORY,ISNULL(FACTORYNAME,'') as FACTORYNAME,ISNULL(STORE,'') as STORE from T_TASKANDVOUCHERDETAILS where HEAD_ID =" + tv.ID + " order by MATERIALNO";
                    List <TaskVoucherDetails> details = new List <TaskVoucherDetails>();
                    using (SqlDataReader dr = OperationSql.ExecuteReader(System.Data.CommandType.Text, strSql))
                    {
                        while (dr.Read())
                        {
                            TaskVoucherDetails Vdetail = new TaskVoucherDetails();
                            Vdetail.ID           = Convert.ToInt32(dr["ID"]);
                            Vdetail.HeadID       = dr["HEAD_ID"].ToString();
                            Vdetail.MaterialNo   = dr["MATERIALNO"].ToString();
                            Vdetail.MaterialDesc = dr["MATERIALDESC"].ToString();
                            Vdetail.Qty          = Convert.ToDecimal(dr["QTY"]);
                            Vdetail.RowNo        = dr["ROWNO"].ToString();
                            Vdetail.Factory      = dr["FACTORY"].ToString();
                            Vdetail.FactoryName  = dr["FACTORYNAME"].ToString();
                            Vdetail.Store        = dr["STORE"].ToString();
                            details.Add(Vdetail);
                        }
                    }
                    if (details.Count > 0)
                    {
                        tv.body = details;
                    }
                }
                return(true);
            }
            catch (Exception ex)
            {
                strErrMsg = ex.Message;
                return(false);
            }
        }
示例#22
0
        public bool UpdatePostFastIn(string ID, Task_Model head, TaskVoucher tv, string[] lst_delID, ref string strErrMsg)
        {
            //strErrMsg = string.Empty;
            int NewVouchID = 0;

            if (!GetNewTASKVoucherID(ref NewVouchID, ref strErrMsg))
            {
                strErrMsg = "获取TASKANDVOUCHERNO表ID失败:" + strErrMsg;
                return(false);
            }
            //sql List
            string        vouchertype = "60";
            List <string> SQL_list    = new List <string>();

            SQL_list.Add("update T_TASK set DELIVERYNO=" + dbstr(tv.VoucherNo) + ", VOUCHERTYPE=" + vouchertype.ToString() + ",SUPCUSNAME=" + dbstr(head.SupCusName) + ",REMARK=" + dbstr(head.Remark) + ",REASON=" + dbstr(head.Reason) + ",SUPCUSNO=" + dbstr(head.SupCusNo) + ",ISSHELVEPOST=2,PostStatus=1"
                         + " where ID =" + ID + " ");
            if (IsInsertedTASKANDVOUCHERNO(ID))
            {
            }
            else
            {
                SQL_list.Add("insert into T_TASKANDVOUCHERNO(ID,VOUCHERNO,TASK_ID,FACTORY,STORE)" +
                             "values(" + NewVouchID + "," + dbstr(tv.VoucherNo) + "," + ID + "," + dbstr(tv.Factory) + "," + dbstr(tv.Store) + ") ");
            }

            foreach (TaskDetails_Model tm in head.lstTaskDetails)
            {
                string  sqlStr;
                string  materialNo    = tm.MaterialNo;
                string  materialDESC  = tm.MaterialDesc;
                string  tmaterialNo   = tm.TMaterialNo;
                string  tmaterialDESC = tm.TMaterialDesc;
                decimal materialNUM   = tm.TaskQty;
                if (tm.ID < 0)
                {
                    sqlStr = "insert into T_TASKDETAILS(ID,TASK_ID,MATERIALNO,MATERIALDESC,TMATERIALNO,TMATERIALDESC,TASKQTY,REMAINQTY)" +
                             "values(seq_taskdetails.nextval," + ID + ",'" + materialNo + "','" + materialDESC + "','" + tmaterialNo + "','" + tmaterialDESC + "'," + materialNUM + "," + materialNUM + ")";
                    SQL_list.Add(sqlStr);
                }
                else
                {
                    //sqlStr = "update T_TASKDETAILS set MATERIALNO='" + materialNo + "',MATERIALDESC='" + materialDESC + "',TMATERIALNO='" + tmaterialNo + "',TMATERIALDESC='" + tmaterialDESC + "',TASKQTY=" + materialNUM + ",REMAINQTY=" + materialNUM
                    // + " where TASK_ID=" + ID + " and ID=" + tm.ID + " ";
                }
                //SQL_list.Add(sqlStr);
            }
            foreach (string delID in lst_delID)
            {
                SQL_list.Add("delete T_TASKDETAILS where ID=" + delID + " ");
            }
            if (!strErrMsg.Equals("old"))
            {
                foreach (TaskVoucherDetails tm in tv.body)
                {
                    string  sqlStr;
                    string  materialNo   = tm.MaterialNo;
                    string  materialDESC = tm.MaterialDesc;
                    decimal materialNUM  = tm.Qty;

                    sqlStr = "insert into T_TASKANDVOUCHERDETAILS(ID,HEAD_ID,MATERIALNO,MATERIALDESC,QTY,ROWNO,FACTORY,FACTORYNAME,STORE)" +
                             "values(seq_taskandvoucherdetails.nextval," + NewVouchID.ToString() + ",'" + materialNo + "','" + materialDESC + "'," + materialNUM + ",'" + tm.RowNo + "','" + tm.Factory + "','" + tm.FactoryName + "','" + tm.Store + "' ) ";
                    SQL_list.Add(sqlStr);
                }
            }
            try
            {
                int result = OperationSql.ExecuteNonQueryList(SQL_list);
                strErrMsg = "更新成功!";
                SQL_list.Clear();
                SQL_list.Add("update t_tasktrans set DELIVERYNO=" + dbstr(tv.VoucherNo) + " where TaskNo = " + dbstr(head.TaskNo) + " ");
                OperationSql.ExecuteNonQueryList(SQL_list);
                return(true);
            }
            catch (Exception e)
            {
                strErrMsg = e.ToString();
                return(false);
            }
        }