151 lines
		
	
	
		
			8.3 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			151 lines
		
	
	
		
			8.3 KiB
		
	
	
	
		
			C#
		
	
	
	
| 
 | |
| /// <summary>
 | |
| ///INTERFACE IMPLIMENT FOR TABLE t_erp_sale
 | |
| ///By wm with codesmith. 
 | |
| ///on 06/22/2018
 | |
| /// </summary>
 | |
| 
 | |
| using System;
 | |
| using System.Data.SqlClient;
 | |
| using DeiNiu.Utils; 
 | |
| namespace DeiNiu.wms.Data.Model
 | |
| {
 | |
|     [Serializable]  class Erp_sale_Imp : Erp_sale_base_Imp
 | |
|     { 
 | |
|         protected override void CmdPrepare(SqlCommand sqlCmd)
 | |
|         { 
 | |
|             base.CmdPrepare(sqlCmd);
 | |
|             Erp_sale mObj = ( Erp_sale)modelObj;
 | |
|             switch (_cust_op_flag)
 | |
|             {
 | |
|              case 99:  //query with dic
 | |
|                     _strSql = "SELECT *,ROW_NUMBER() OVER (ORDER BY ID DESC) as sortNo  FROM t_erp_sale  WHERE DR = 1 " + mObj.CmdParameters[0].ToString();
 | |
|                     _strSql = "SELECT * FROM (" + _strSql + " )AS SORTEDTB WHERE sortNo BETWEEN @START AND @END" + " ORDER BY ID DESC";
 | |
|                     _strSql += ";SELECT COUNT(*) FROM t_erp_sale  WHERE DR = 1 " + mObj.CmdParameters[0].ToString();
 | |
|                  
 | |
|                     sqlCmd.Parameters.AddWithValue("@START", this._rownumStart);
 | |
|                     sqlCmd.Parameters.AddWithValue("@END", this._rownumEnd);
 | |
|                     sqlCmd.CommandText = _strSql;
 | |
| 
 | |
|                     break;
 | |
|                 case 100:  //by name
 | |
|                     _strSql = "SELECT * FROM t_erp_sale WHERE sale_order = @Order";
 | |
|                     sqlCmd.CommandText = _strSql;
 | |
|                     sqlCmd.Parameters.AddWithValue("@Order", mObj.CmdParameters[0]);
 | |
|                     break;
 | |
|                 case 101:  //delete by order number
 | |
|                     _strSql = "DELETE FROM t_erp_sale WHERE sale_order = @Order;" +
 | |
|                         " DELETE FROM T_ERP_SALE_D WHERE sale_order = @Order;";
 | |
|                     sqlCmd.CommandText = _strSql;
 | |
|                     sqlCmd.Parameters.AddWithValue("@Order", mObj.CmdParameters[0]);
 | |
|                     break;
 | |
| 
 | |
|                 case 150:  //by name
 | |
|                     _strSql = "SELECT * FROM t_erp_sale WHERE pickOrder = @pickOrder";
 | |
|                     sqlCmd.CommandText = _strSql;
 | |
|                     sqlCmd.Parameters.AddWithValue("@pickOrder", mObj.CmdParameters[0]);
 | |
|                     break;
 | |
|                 case 200:  //插入待同步临时数据
 | |
|                     _strSql = "DELETE FROM  t_erp_sale_tmp; "
 | |
|                         +"INSERT INTO t_erp_sale_tmp SELECT ID, orderNo,timeFromErp FROM v_wms_sale_syncId";
 | |
|                     sqlCmd.CommandText = _strSql; 
 | |
|                     break; 
 | |
|                 /*
 | |
|                 case 201:  // 更新同步出库订单前状态
 | |
|                     _strSql = "DELETE FROM  t_erp_sale_tmp; INSERT INTO t_erp_sale_tmp SELECT ID, orderNo FROM v_wms_sale_syncId";
 | |
|                     _strSql += "; update t_erp_sale set wms_state =@wmsState,lastmodified=getdate() where exists(select 1 from t_erp_sale_tmp where id = t_erp_sale.id)";
 | |
|                     sqlCmd.CommandText = _strSql;
 | |
|                     sqlCmd.Parameters.AddWithValue("@wmsState", mObj.CmdParameters[1]);
 | |
|                     break;
 | |
|                     */
 | |
|                 case 202:  // 更新同步出库订单后状态
 | |
|                     _strSql = " update t_erp_sale set wms_state =@wmsState ,lastmodified=getdate() where exists(select 1 from t_erp_sale_tmp where id = t_erp_sale.id)";
 | |
|                     sqlCmd.CommandText = _strSql;
 | |
|                     sqlCmd.Parameters.AddWithValue("@wmsState", mObj.CmdParameters[1]);
 | |
|                     break;
 | |
| 
 | |
|                 case 300:  //出库单分配拣货单更新状态
 | |
|                     _strSql = " update t_erp_sale set wms_state =@wmsState,pickOrder =@pickOrderNo ,lastmodified=getdate() "; // where exists(select 1 from v_wms_out_request where pickOrderNo=@pickOrderNo and orderNo = t_erp_sale.sale_order)";
 | |
|                     _strSql += mObj.CmdParameters[1];
 | |
|                     sqlCmd.CommandText = _strSql;
 | |
|                     sqlCmd.Parameters.AddWithValue("@wmsState", mObj.CmdParameters[2]);
 | |
|                    sqlCmd.Parameters.AddWithValue("@pickOrderNo", mObj.CmdParameters[3]);
 | |
|                   //  LogHelper.debug(typeof(Erp_sale_Imp), String.Format(" sql " +_strSql));
 | |
| 
 | |
|                     break;
 | |
|                 case 400:  //出库单分配拣货单更新状态
 | |
|                     _strSql = " update t_erp_sale_d set whType =@whtype ,lastmodified=getdate() where sale_order=@orderNo";
 | |
| 
 | |
|                     _strSql = " update t_erp_sale set wms_state=@wmsstate ,lastmodified=getdate() where sale_order=@orderNo";
 | |
| 
 | |
|                     sqlCmd.CommandText = _strSql;
 | |
|                     sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
 | |
|                     sqlCmd.Parameters.AddWithValue("@whtype", mObj.CmdParameters[1]);
 | |
|                    // sqlCmd.Parameters.AddWithValue("@wmsstate",(int)enumOutStockRequestStatus.待出库);
 | |
| 
 | |
|                     sqlCmd.Parameters.AddWithValue("@wmsstate", mObj.CmdParameters[2]);
 | |
|                     break;
 | |
| 
 | |
|                 case 500:  //test only
 | |
|                     _strSql = " update [t_erp_sale] set createtime=getdate()-1 where sale_order=@orderNo";
 | |
|                     _strSql += "; update t_erp_sale_d set createtime =getdate()-1  where sale_order=@orderNo";
 | |
|                   
 | |
|                     sqlCmd.CommandText = _strSql;
 | |
|                     sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]); 
 | |
| 
 | |
|                     break;
 | |
| 
 | |
| 
 | |
|                 case 600:  // 取明细
 | |
|                     _strSql = " select * from t_erp_sale_d d where exists (select 1 from t_erp_sale where sale_order =d.sale_order and  pickOrder = @pickOrder)";
 | |
|                     sqlCmd.CommandText = _strSql;
 | |
|                     sqlCmd.Parameters.AddWithValue("@pickOrder", mObj.CmdParameters[0]);
 | |
|                     break;
 | |
| 
 | |
|                 case 700:  //by name
 | |
|                     _strSql = "SELECT * FROM t_erp_sale WHERE erp_state = @state  or (wms_state>=@wmsState and erp_state=0) ";
 | |
|                    
 | |
|                     sqlCmd.CommandText = _strSql;
 | |
|                     sqlCmd.Parameters.AddWithValue("@state", mObj.CmdParameters[0]);
 | |
|                     sqlCmd.Parameters.AddWithValue("@wmsState", mObj.CmdParameters[1]);
 | |
|                     break;
 | |
| 
 | |
|                 case 800:  //query out details
 | |
|                     string tmp_strSql = "SELECT *, ceiling([pickCount]/minOperateCount) as boxcnt,ROW_NUMBER() OVER (ORDER BY custor_id DESC) as sortNo  FROM dbo.[v_stockOutDetail4Report] WHERE erp_state = 1 " + mObj.CmdParameters[0].ToString() ;
 | |
|                     _strSql = "SELECT * FROM (" + tmp_strSql + " )AS SORTEDTB WHERE sortNo BETWEEN @START AND @END order by createtime";
 | |
|                     _strSql += "; SELECT COUNT(*) FROM v_stockOutDetail4Report  WHERE erp_state = 1 " + mObj.CmdParameters[0].ToString();
 | |
|                     sqlCmd.CommandText = _strSql;
 | |
|                     sqlCmd.Parameters.AddWithValue("@START", this._rownumStart);
 | |
|                     sqlCmd.Parameters.AddWithValue("@END", this._rownumEnd);
 | |
| 
 | |
|                     break;
 | |
| 
 | |
|                 case 900:  //query sum out by goodsId  
 | |
|              
 | |
|                       tmp_strSql = "SELECT   [goods_id] ,[goodsName] ,[minOperateCount] ,[minOperateUnit] ,[unit] ,[spec],sum([pickCount]) as pickCount ,ceiling(sum([pickCount])/minOperateCount) as boxcnt " +
 | |
|                         " ,ROW_NUMBER() OVER (ORDER BY goods_id DESC) as sortNo FROM [v_stockOutDetail4Report] where erp_state =1 " + mObj.CmdParameters[0].ToString() + " group by   [goods_id] ,[goodsName]  ,[minOperateCount] ,[minOperateUnit],[unit],[spec] ";
 | |
|                     _strSql = "SELECT * FROM (" + tmp_strSql + " )AS SORTEDTB WHERE sortNo BETWEEN @START AND @END order by goods_id";
 | |
|                     _strSql += "; SELECT COUNT(*) FROM("+ tmp_strSql + ")a  " ;  
 | |
|                     sqlCmd.CommandText = _strSql;
 | |
|                     sqlCmd.Parameters.AddWithValue("@START", this._rownumStart);
 | |
|                     sqlCmd.Parameters.AddWithValue("@END", this._rownumEnd);
 | |
|  
 | |
|                     break;
 | |
| 
 | |
| 
 | |
|                 case 1000:  // out in kanban data
 | |
|                     _strSql = "  select * from [v_kanbanPh] ";//今日入库
 | |
|                              
 | |
|                     _strSql += ";  select * from [v_kanbanSh]  ";   //今日出库
 | |
|                       
 | |
|                     _strSql += "; SELECT *  FROM  [v_kanbanSd_day] ";  //销售记录明细条数
 | |
|                     _strSql += "; SELECT *  FROM  [v_kanbanPd_day] "; //采购入库明细条数
 | |
| 
 | |
|                     sqlCmd.CommandText = _strSql;
 | |
| 
 | |
|                     break;
 | |
| 
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| } |