using System; using System.Collections.Generic; using System.Linq; using System.Text; using WMS.IData.ICK; using System.Data; using WMS.Model.CK; using WMS.IData; using Oracle.ManagedDataAccess.Client; namespace WMS.SqlServerData.CKData { public class OrderDetailData : IOrderDetail { /// /// /// public void UpdateOrderData(string PROVIDER_ID) { } public void DelOrderInfo(string orderID) { string sqlStr = "delete T_CG_ORDER_INFO where ORDERID='" + orderID+"'"; SystemDataObject.Instance.GetDataTable(sqlStr); } /// /// 查询采购单明细 /// /// /// public DataTable GetCgOrderInfo(string orderID) { string sqlStr =@" select t.*,a.GOODS_NAME from T_CG_ORDER_INFO t left join[dbo].[T_BASE_GOODS] a on t.GOODS_ID=a.GOODS_ID where CGORDERID='" + orderID+"'"; return SystemDataObject.Instance.GetDataTable(sqlStr); } /// /// 查询是否已经增加到入库通知单 /// /// /// public DataTable GetCtOrder(string orderID) { string sqlStr = " select count(*)a from [dbo].[T_RK_WARE_NOTICE] where PURCHASE_ID='"+ orderID + "'"; return SystemDataObject.Instance.GetDataTable(sqlStr); } /// /// 选择采购单明细 /// /// /// public DataTable GetOrderDetail(OrderDetailModel model) { StringBuilder strSql = new StringBuilder(); strSql.Append("select f.STORAGE_AREA_NAME Storage_area_name,c.GOODS_TYPE_NAME,b.GOODS_NAME Good_name,a.ORDER_ID,a.BUSINESSID,a.GOOD_ID,a.SPECIFICATION,a.GOODS_NUM,a.REMARK,a.PAGE_NUM,a.WEITH,a.PRICE,a.SCALE_UNIT,a.GOODS_TYPE_ID,a.TOTAL_VOLUME,a.GVOLUME,a.UNIT,a.STORAGE_AREA_ID,a.LOCATION_ID,a.PICK_NUM,a.TR_NUM "); strSql.Append(" FROM T_CK_ORDERDETAIL a "); strSql.Append(" left join t_base_goods_type c on a.GOODS_TYPE_ID = c.GOODS_TYPE_ID "); strSql.Append(" left join t_base_goods b on a.GOOD_ID = b.GOODS_ID "); strSql.Append(" LEFT JOIN T_BASE_STORAGE_AREA f ON f.STORAGE_AREA_ID = a.STORAGE_AREA_ID where 1 = 1"); if (!string.IsNullOrEmpty(model.ORDER_ID)) { strSql.Append(" and a.ORDER_ID='" + model.ORDER_ID + "'"); } if (!string.IsNullOrEmpty(model.BUSINESSID)) { strSql.Append(" and a.BUSINESSID='" + model.BUSINESSID + "'"); } if (!string.IsNullOrEmpty(model.GOOD_ID)) { strSql.Append(" and a.GOOD_ID='" + model.GOOD_ID + "'"); } //if (!string.IsNullOrEmpty(model.STS)) //{ // strSql.Append(" and a.STS='" + model.STS + "'"); //} strSql.Append(" order by ORDER_ID,GOOD_ID "); return SystemDataObject.Instance.GetDataSet(strSql.ToString()).Tables[0]; } public void AddOrderDetail(OrderDetailModel model) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into T_CK_ORDERDETAIL("); strSql.Append("ORDER_ID,BUSINESSID,GOOD_ID,SPECIFICATION,GOODS_NUM,REMARK,PAGE_NUM,WEITH,PRICE,SCALE_UNIT,GOODS_TYPE_ID," + "TOTAL_VOLUME,GVOLUME,UNIT,STORAGE_AREA_ID,LOCATION_ID,XQ_TYPE,TR_NUM,STORAGE_ID)"); strSql.Append(" values ("); strSql.Append("'"+model.ORDER_ID + "','"+ model .BUSINESSID+ "','"+model.GOOD_ID+"'," + "'"+model.SPECIFICATION+"','"+model.GOODS_NUM+"','"+model.REMARK+"','"+model.PAGE_NUM+"'," + "'"+model.Weith+"','"+model.PRICE+ "','"+model.SCALE_UNIT+ "','"+model.GOODS_TYPE_ID+"','"+model.TOTAL_VOLUME + "'," + "'"+model.GVOLUME+"','"+model.UNIT+"','"+model.Storage_area_id+"','"+model.Location_id+"','"+model.XQ_TYPE+"','"+model.TR_NUM+"','"+model.STORAGE_ID+"')"); SystemDataObject.Instance.ExecuteSql(strSql.ToString()); } public void AddOrderDetails(OrderDetailModel model) { StringBuilder strSql = new StringBuilder(); List list_str = new List(); strSql = new StringBuilder(); strSql.Append("insert into T_CK_ORDERDETAIL("); strSql.Append("ORDER_ID,BUSINESSID,GOOD_ID,SPECIFICATION,GOODS_NUM,REMARK,PAGE_NUM,WEITH,PRICE,SCALE_UNIT,GOODS_TYPE_ID,TOTAL_VOLUME,GVOLUME,UNIT,STORAGE_AREA_ID,LOCATION_ID)"); strSql.Append(" values ("); strSql.Append(":ORDER_ID,:BUSINESSID,:GOOD_ID,:SPECIFICATION,:GOODS_NUM,:REMARK,:PAGE_NUM,:WEITH,:PRICE,:SCALE_UNIT,:GOODS_TYPE_ID,:TOTAL_VOLUME,:GVOLUME,:UNIT,:STORAGE_AREA_ID,:LOCATION_ID)"); OracleParameter[] parameters = { new OracleParameter(":ORDER_ID",OracleDbType.Varchar2), new OracleParameter(":BUSINESSID",OracleDbType.Varchar2), new OracleParameter(":GOOD_ID",OracleDbType.Varchar2), new OracleParameter(":SPECIFICATION",OracleDbType.Varchar2), new OracleParameter(":GOODS_NUM", OracleDbType.Decimal), new OracleParameter(":REMARK",OracleDbType.Varchar2), new OracleParameter(":PAGE_NUM", OracleDbType.Decimal), new OracleParameter(":WEITH", OracleDbType.Decimal), new OracleParameter(":PRICE",OracleDbType.Decimal), new OracleParameter(":SCALE_UNIT",OracleDbType.Char), new OracleParameter(":GOODS_TYPE_ID",OracleDbType.Varchar2), new OracleParameter(":TOTAL_VOLUME",OracleDbType.Decimal), new OracleParameter(":GVOLUME",OracleDbType.Decimal), new OracleParameter(":UNIT",OracleDbType.Char), new OracleParameter(":STORAGE_AREA_ID",OracleDbType.Varchar2), new OracleParameter(":LOCATION_ID",OracleDbType.Varchar2)}; parameters[0].Value = model.ORDER_ID; parameters[1].Value = model.BUSINESSID; parameters[2].Value = model.GOOD_ID; parameters[3].Value = model.SPECIFICATION; parameters[4].Value = model.GOODS_NUM; parameters[5].Value = model.REMARK; parameters[6].Value = model.PAGE_NUM; parameters[7].Value = model.Weith; parameters[8].Value = model.PRICE; parameters[9].Value = model.SCALE_UNIT; parameters[10].Value = model.GOODS_TYPE_ID; parameters[11].Value = model.TOTAL_VOLUME; parameters[12].Value = model.GVOLUME; parameters[13].Value = model.UNIT; parameters[14].Value = model.Storage_area_id; parameters[15].Value = model.Location_id; SystemDataObject.Instance.ExecuteSql(strSql.ToString(), parameters); } public void UpdateOrderDetail(OrderDetailModel model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update T_CK_ORDERDETAIL set "); strSql.Append("BUSINESSID=:BUSINESSID,"); strSql.Append("SPECIFICATION=:SPECIFICATION,"); strSql.Append("GOODS_NUM=:GOODS_NUM,"); strSql.Append("REMARK=:REMARK,"); strSql.Append("PAGE_NUM=:PAGE_NUM,"); strSql.Append("WEITH=:WEITH,"); strSql.Append("PRICE=:PRICE,"); strSql.Append("SCALE_UNIT=:SCALE_UNIT,"); strSql.Append("GOODS_TYPE_ID=:GOODS_TYPE_ID,"); strSql.Append("TOTAL_VOLUME=:TOTAL_VOLUME,"); strSql.Append("GVOLUME=:GVOLUME,"); strSql.Append("UNIT=:UNIT,"); strSql.Append("STORAGE_AREA_ID=:STORAGE_AREA_ID,"); strSql.Append("LOCATION_ID=:LOCATION_ID"); strSql.Append(" where ORDER_ID=:ORDER_ID and GOOD_ID=:GOOD_ID"); OracleParameter[] parameters = { new OracleParameter(":BUSINESSID",OracleDbType.Varchar2), new OracleParameter(":SPECIFICATION",OracleDbType.Varchar2), new OracleParameter(":GOODS_NUM", OracleDbType.Decimal), new OracleParameter(":REMARK",OracleDbType.Varchar2), new OracleParameter(":PAGE_NUM", OracleDbType.Decimal), new OracleParameter(":WEITH", OracleDbType.Decimal), new OracleParameter(":PRICE", OracleDbType.Decimal), new OracleParameter(":SCALE_UNIT", OracleDbType.Char), new OracleParameter(":GOODS_TYPE_ID",OracleDbType.Varchar2), new OracleParameter(":TOTAL_VOLUME", OracleDbType.Decimal), new OracleParameter(":GVOLUME", OracleDbType.Decimal), new OracleParameter(":UNIT", OracleDbType.Char), new OracleParameter(":STORAGE_AREA_ID",OracleDbType.Varchar2), new OracleParameter(":LOCATION_ID",OracleDbType.Varchar2), new OracleParameter(":ORDER_ID",OracleDbType.Varchar2), new OracleParameter(":GOOD_ID",OracleDbType.Varchar2),}; parameters[0].Value = model.BUSINESSID; parameters[1].Value = model.SPECIFICATION; parameters[2].Value = model.GOODS_NUM; parameters[3].Value = model.REMARK; parameters[4].Value = model.PAGE_NUM; parameters[5].Value = model.Weith; parameters[6].Value = model.PRICE; parameters[7].Value = model.SCALE_UNIT; parameters[8].Value = model.GOODS_TYPE_ID; parameters[9].Value = model.TOTAL_VOLUME; parameters[10].Value = model.GVOLUME; parameters[11].Value = model.UNIT; parameters[12].Value = model.Storage_area_id; parameters[13].Value = model.Location_id; parameters[14].Value = model.ORDER_ID; parameters[15].Value = model.GOOD_ID; SystemDataObject.Instance.ExecuteSql(strSql.ToString(), parameters); } public void UpdateOrderDetail(List list) { StringBuilder strSql = new StringBuilder(); List list_str = new List(); List list_parameter = new List(); foreach (OrderDetailModel model in list) { strSql.Append("update T_CK_ORDERDETAIL set "); strSql.Append("BUSINESSID=:BUSINESSID,"); strSql.Append("GOOD_ID=:GOOD_ID,"); strSql.Append("SPECIFICATION=:SPECIFICATION,"); strSql.Append("GOODS_NUM=:GOODS_NUM,"); strSql.Append("REMARK=:REMARK,"); strSql.Append("PAGE_NUM=:PAGE_NUM,"); strSql.Append("WEITH=:WEITH,"); strSql.Append("PRICE=:PRICE,"); strSql.Append("SCALE_UNIT=:SCALE_UNIT,"); strSql.Append("GOODS_TYPE_ID=:GOODS_TYPE_ID,"); strSql.Append("TOTAL_VOLUME=:TOTAL_VOLUME,"); strSql.Append("GVOLUME=:GVOLUME,"); strSql.Append("UNIT=:UNIT,"); strSql.Append("STORAGE_AREA_ID=:STORAGE_AREA_ID,"); strSql.Append("LOCATION_ID=:LOCATION_ID"); strSql.Append(" where ORDER_ID=:ORDER_ID and GOOD_ID=:GOOD_ID"); OracleParameter[] parameters = { new OracleParameter(":BUSINESSID",OracleDbType.Varchar2), new OracleParameter(":GOOD_ID",OracleDbType.Varchar2), new OracleParameter(":SPECIFICATION",OracleDbType.Varchar2), new OracleParameter(":GOODS_NUM", OracleDbType.Decimal), new OracleParameter(":REMARK",OracleDbType.Varchar2), new OracleParameter(":PAGE_NUM", OracleDbType.Decimal), new OracleParameter(":WEITH", OracleDbType.Decimal), new OracleParameter(":PRICE", OracleDbType.Decimal), new OracleParameter(":SCALE_UNIT", OracleDbType.Char), new OracleParameter(":GOODS_TYPE_ID",OracleDbType.Varchar2), new OracleParameter(":TOTAL_VOLUME", OracleDbType.Decimal), new OracleParameter(":GVOLUME", OracleDbType.Decimal), new OracleParameter(":UNIT", OracleDbType.Char), new OracleParameter(":STORAGE_AREA_ID",OracleDbType.Varchar2), new OracleParameter(":LOCATION_ID",OracleDbType.Varchar2), new OracleParameter(":ORDER_ID",OracleDbType.Varchar2)}; parameters[0].Value = model.BUSINESSID; parameters[1].Value = model.GOOD_ID; parameters[2].Value = model.SPECIFICATION; parameters[3].Value = model.GOODS_NUM; parameters[4].Value = model.REMARK; parameters[5].Value = model.PAGE_NUM; parameters[6].Value = model.Weith; parameters[7].Value = model.PRICE; parameters[8].Value = model.SCALE_UNIT; parameters[9].Value = model.GOODS_TYPE_ID; parameters[10].Value = model.TOTAL_VOLUME; parameters[11].Value = model.GVOLUME; parameters[12].Value = model.UNIT; parameters[13].Value = model.Storage_area_id; parameters[14].Value = model.Location_id; parameters[15].Value = model.ORDER_ID; list_str.Add(strSql.ToString()); list_parameter.Add(parameters); } SystemDataObject.Instance.ExecuteList(list_str, list_parameter); } public DataTable GetErpOrderData() { string sqlStr = "select * from T_CK_ORDERDETAIL where sts='0' order by addtime "; return SystemDataObject.Instance.GetDataTable(sqlStr); } public void UpdateOrderDetailPickNum(OrderDetailModel model) { StringBuilder strSql = new StringBuilder(); strSql.Append(" update T_CK_ORDERDETAIL set GOODS_NUM="+model.GOODS_NUM+ ",PICK_NUM=PICK_NUM+" + model.PICK_NUM + ""); strSql.Append(" where ORDER_ID='" + model.ORDER_ID + "' and GOOD_ID ='"+model.GOOD_ID+"'"); SystemDataObject.Instance.ExecuteSql(strSql.ToString()); } public void UpdateOrderDetailPickNum(string pickNumber,string ckId,string GoodId ) { StringBuilder strSql = new StringBuilder(); strSql.Append("update T_CK_ORDERDETAIL set "); strSql.Append("PICK_NUM=PICK_NUM+:PICK_NUM"); strSql.Append(" where ORDER_ID=:ORDER_ID and GOOD_ID =:GOOD_ID"); OracleParameter[] parameters = { new OracleParameter(":PICK_NUM", OracleDbType.Decimal), new OracleParameter(":ORDER_ID",OracleDbType.Varchar2), new OracleParameter(":GOOD_ID",OracleDbType.Varchar2)}; parameters[0].Value = pickNumber; parameters[1].Value = ckId; parameters[2].Value = GoodId; SystemDataObject.Instance.ExecuteSql(strSql.ToString(), parameters); } /// /// 状态改完已经读取 /// UpdateOrderDetailData /// /// public void UpdateOrderDetailData(string ORDER_ID, string goodsId,string REMARK) { string sqlStr = " update T_CK_ORDERDETAIL set sts ='3',PICK_NUM=PICK_NUM+GOODS_NUM ,REMARK='"+ REMARK + "' where ORDER_ID='" + ORDER_ID + "' and GOOD_ID='"+goodsId+"' "; SystemDataObject.Instance.ExecuteSql(sqlStr); } public void UpdateOrderDetailTRNum(OrderDetailModel model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update T_CK_ORDERDETAIL set "); strSql.Append("TR_NUM=TR_NUM+:TR_NUM"); strSql.Append(" where ORDER_ID=:ORDER_ID and GOOD_ID =:GOOD_ID"); OracleParameter[] parameters = { new OracleParameter(":TR_NUM", OracleDbType.Decimal), new OracleParameter(":ORDER_ID",OracleDbType.Varchar2), new OracleParameter(":GOOD_ID",OracleDbType.Varchar2)}; parameters[0].Value = model.TR_NUM; parameters[1].Value = model.ORDER_ID; parameters[2].Value = model.GOOD_ID; SystemDataObject.Instance.ExecuteSql(strSql.ToString(), parameters); } public void DelOrder(string out_id) { string strSql = "delete from T_CK_ORDERDETAIL where ORDER_ID='" + out_id + "'"; SystemDataObject.Instance.ExecuteSql(strSql); } public void DelOrderDetail(OrderDetailModel list) { string strSql = "delete from T_CK_ORDERDETAIL where ORDER_ID='" + list.ORDER_ID + "' and GOOD_ID ='"+ list .GOOD_ID+ "' "; SystemDataObject.Instance.ExecuteSql(strSql); } } }