using System; using System.Collections.Generic; using System.Linq; using System.Text; using WMS.IData.IStrategy; using WMS.Model.Strategy; using System.Data; using WMS.IData;using Oracle.ManagedDataAccess.Client; namespace WMS.SqlServerData.Strategy { public class AutoTaskData : IAutoTask { /// /// 获取自动指派任务策略信息 /// /// /// public DataTable GetAutoTask(AutoTaskModel model) { StringBuilder strSql = new StringBuilder(); strSql.Append("select STRATEGY_ID,TRAN_TYPE,WORK_TYPE,STRATEGY_NAME,IS_AUTO,IS_AUTOCREATE,TASK_COUNT,AUTO_ACCORDING,REMARK,STATUS,VERSION,USER_ID,CREATE_DATE "); strSql.Append(" FROM T_STR_AUTOTASK where 1=1 "); if (!string.IsNullOrEmpty(model.STRATEGY_ID)) { strSql.Append(" and STRATEGY_ID = '" + model.STRATEGY_ID + "'"); } if (!string.IsNullOrEmpty(model.STRATEGY_NAME)) { strSql.Append(" and STRATEGY_NAME = '" + model.STRATEGY_NAME + "'"); } if (!string.IsNullOrEmpty(model.TRAN_TYPE)) { strSql.Append(" and TASK_TYPE = '" + model.TRAN_TYPE + "'"); } return SystemDataObject.Instance.GetDataTable(strSql.ToString()); } /// /// 新增自动指派任务策略信息 /// /// public void AddAutoTask(AutoTaskModel model) { model.STRATEGY_ID = SystemDataObject.Instance.GetDataTable("select NEXT VALUE FOR seq_str_AutoTask").Rows[0][0].ToString(); StringBuilder strSql = new StringBuilder(); strSql.Append("insert into T_STR_AUTOTASK("); strSql.Append("STRATEGY_ID,TRAN_TYPE,WORK_TYPE,STRATEGY_NAME,IS_AUTO,IS_AUTOCREATE,TASK_COUNT,AUTO_ACCORDING,REMARK,STATUS,VERSION,USER_ID,CREATE_DATE)"); strSql.Append(" values ("); strSql.Append(":STRATEGY_ID,:TRAN_TYPE,:WORK_TYPE,:STRATEGY_NAME,:IS_AUTO,:IS_AUTOCREATE,:TASK_COUNT,:AUTO_ACCORDING,:REMARK,:STATUS,:VERSION,:USER_ID,:CREATE_DATE)"); OracleParameter[] parameters = { new OracleParameter(":STRATEGY_ID",OracleDbType.Varchar2), new OracleParameter(":TRAN_TYPE",OracleDbType.Varchar2), new OracleParameter(":TASK_TYPE",OracleDbType.Varchar2), new OracleParameter(":STRATEGY_NAME",OracleDbType.Varchar2), new OracleParameter(":IS_AUTO", OracleDbType.Char), new OracleParameter(":IS_AUTOCREATE", OracleDbType.Char), new OracleParameter(":TASK_COUNT", OracleDbType.Decimal), new OracleParameter(":AUTO_ACCORDING",OracleDbType.Varchar2), new OracleParameter(":REMARK",OracleDbType.Varchar2), new OracleParameter(":STATUS", OracleDbType.Char), new OracleParameter(":VERSION",OracleDbType.Varchar2), new OracleParameter(":USER_ID",OracleDbType.Varchar2), new OracleParameter(":CREATE_DATE", OracleDbType.Date)}; parameters[0].Value = model.STRATEGY_ID; parameters[1].Value = model.TRAN_TYPE; parameters[2].Value = model.WORK_TYPE; parameters[3].Value = model.STRATEGY_NAME; parameters[4].Value = model.IS_AUTO; parameters[5].Value = model.IS_AUTOCREATE; parameters[6].Value = model.TASK_COUNT; parameters[7].Value = model.AUTO_ACCORDING; parameters[8].Value = model.REMARK; parameters[9].Value = model.STATUS; parameters[10].Value = model.VERSION; parameters[11].Value = model.USER_ID; parameters[12].Value = model.CREATE_DATE; SystemDataObject.Instance.ExecuteSql(strSql.ToString(), parameters); } /// /// 修改自动指派任务策略信息 /// /// public void UpdateAutoTask(AutoTaskModel model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update T_STR_AUTOTASK set "); strSql.Append("TRAN_TYPE=:TRAN_TYPE,"); strSql.Append("WORK_TYPE=:WORK_TYPE,"); strSql.Append("STRATEGY_NAME=:STRATEGY_NAME,"); strSql.Append("IS_AUTO=:IS_AUTO,"); strSql.Append("IS_AUTOCREATE=:IS_AUTOCREATE,"); strSql.Append("TASK_COUNT=:TASK_COUNT,"); strSql.Append("AUTO_ACCORDING=:AUTO_ACCORDING,"); strSql.Append("REMARK=:REMARK,"); strSql.Append("STATUS=:STATUS,"); strSql.Append("VERSION=:VERSION,"); strSql.Append("USER_ID=:USER_ID,"); strSql.Append("CREATE_DATE=:CREATE_DATE"); strSql.Append(" where STRATEGY_ID=:STRATEGY_ID "); OracleParameter[] parameters = { new OracleParameter(":TRAN_TYPE",OracleDbType.Varchar2), new OracleParameter(":WORK_TYPE",OracleDbType.Varchar2), new OracleParameter(":STRATEGY_NAME",OracleDbType.Varchar2), new OracleParameter(":IS_AUTO", OracleDbType.Char), new OracleParameter(":IS_AUTOCREATE", OracleDbType.Char), new OracleParameter(":TASK_COUNT", OracleDbType.Decimal), new OracleParameter(":AUTO_ACCORDING",OracleDbType.Varchar2), new OracleParameter(":REMARK",OracleDbType.Varchar2), new OracleParameter(":STATUS", OracleDbType.Char), new OracleParameter(":VERSION",OracleDbType.Varchar2), new OracleParameter(":USER_ID",OracleDbType.Varchar2), new OracleParameter(":CREATE_DATE", OracleDbType.Date), new OracleParameter(":STRATEGY_ID",OracleDbType.Varchar2)}; parameters[0].Value = model.TRAN_TYPE; parameters[1].Value = model.WORK_TYPE; parameters[2].Value = model.STRATEGY_NAME; parameters[3].Value = model.IS_AUTO; parameters[4].Value = model.IS_AUTOCREATE; parameters[5].Value = model.TASK_COUNT; parameters[6].Value = model.AUTO_ACCORDING; parameters[7].Value = model.REMARK; parameters[8].Value = model.STATUS; parameters[9].Value = model.VERSION; parameters[10].Value = model.USER_ID; parameters[11].Value = model.CREATE_DATE; parameters[12].Value = model.STRATEGY_ID; SystemDataObject.Instance.ExecuteSql(strSql.ToString(), parameters); } /// /// 删除自动指派任务策略信息 /// /// public void DeleteAutoTask(AutoTaskModel model) { StringBuilder strSql = new StringBuilder(); strSql.Append("delete from T_STR_AUTOTASK "); strSql.Append(" where STRATEGY_ID=:STRATEGY_ID "); OracleParameter[] parameters = { new OracleParameter(":STRATEGY_ID",OracleDbType.Varchar2) }; parameters[0].Value = model.STRATEGY_ID; SystemDataObject.Instance.ExecuteSql(strSql.ToString(), parameters); } } }