You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

687 lines
32 KiB
C#

2 years ago
using Dapper;
using Estsh.Core.Dapper;
using Estsh.Core.Model.EnumUtil;
using Estsh.Core.Model.Result;
using Estsh.Core.Models;
using Estsh.Core.Repository.IRepositories;
using System.Collections;
using System.Data;
using System.Text;
/***************************************************************************************************
*
* sitong.dong
*
* 2022.06.22
*
*
**************************************************************************************************/
namespace Estsh.Core.Repositories
{
/// <summary>
/// 数据访问类
/// </summary>
public class MovementOutstockManageRepository : BaseRepository<WmsOutstock>, IMovementOutstockManageRepository
{
public MovementOutstockManageRepository(DapperDbContext _dapperDbContext) : base(_dapperDbContext)
{
}
#region 成员方法
/// <summary>
/// 获取分页数据列表
/// </summary>
public Hashtable getMoveHeaderListByPage(int PageSize, int PageIndex, string strWhere, string OrderBy)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
Hashtable result = new Hashtable();
DynamicParameters Params = new DynamicParameters();
Params.Add("@TotalCount", 0, DbType.Int32, ParameterDirection.Output);
Params.Add("@TotalPage", 0, DbType.Int32, ParameterDirection.Output);
Params.Add("@GroupColumn", "");
Params.Add("@Table", "wms_outstock a (nolock) left join sys_enum b on b.enum_type='wms_outstock_order_type' and a.order_type=b.enum_value left join sys_enum c on c.enum_type='wms_move_header_order_status' and a.order_status=c.enum_value " +
" left join sys_vendor v on a.vendor_id=v.vendor_id left join sys_customer cu on a.customer_id=cu.customer_id ");
Params.Add("@Column", " a.ruid,a.order_no,a.order_type,b.enum_desc as order_type_desc,a.order_status,c.enum_desc as order_status_desc,a.ref_order_no,a.factory_id,a.factory_code,a.enabled,a.vendor_id,a.vendor_code,v.vendor_name,a.customer_id,a.customer_code,cu.customer_name,a.create_time ");
Params.Add("@PageSize", PageSize);
Params.Add("@CurrentPage", PageIndex);
Params.Add("@Condition", strWhere);
Params.Add("@OrderColumn", OrderBy);
Params.Add("@Group", 0);
List<WmsOutstock> dataList = dbConn.Query<WmsOutstock>("Com_Pagination", Params, commandType: CommandType.StoredProcedure).ToList();
result.Add("dataList", dataList);
result.Add("totalCount", Params.Get<int>("@TotalCount"));
return result;
}
}
/// <summary>
/// 获取分页数据列表
/// </summary>
public Hashtable getMoveDetailListByPage(string strWhere)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
Hashtable result = new Hashtable();
StringBuilder SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append(" select a.ruid,a.order_no,a.item_no,a.part_id,a.part_no,a.part_spec,a.qty,a.pick_qty,a.out_qty,a.unit,a.plan_date, ");
SqlStringBuilder.Append(" a.plan_time,b.enum_desc as item_status_desc,item_status,a.src_warehouse_id,a.src_warehouse_name,a.src_zone_id, ");
SqlStringBuilder.Append(" a.src_zone_name,a.src_erp_warehouse,a.factory_id,a.factory_code,a.enabled ");
SqlStringBuilder.Append(" from wms_outstock_detail a (nolock) left join sys_enum b on b.enum_type='wms_move_detail_item_status' and a.item_status=convert(int,b.enum_value) ");
SqlStringBuilder.Append(" where " + strWhere);
List<WmsOutstockDetail> dataList = dbConn.Query<WmsOutstockDetail>(SqlStringBuilder.ToString()).ToList();
result.Add("dataList", dataList);
result.Add("totalCount", dataList.Count());
return result;
}
}
/// <summary>
/// 获取分页数据列表
/// </summary>
public Hashtable getMoveSnListByPage(string strWhere)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
Hashtable result = new Hashtable();
StringBuilder SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append(" select a.ruid,a.order_no,a.item_no,a.part_id,a.part_no,a.part_spec,a.carton_no,a.qty,a.unit, ");
SqlStringBuilder.Append(" b.enum_desc as statusDesc,a.status,a.factory_id,a.factory_code,a.enabled from ");
SqlStringBuilder.Append(" wms_outstock_sn a (nolock) left join sys_enum b on b.enum_type='wms_move_sn_status' and a.status=convert(int,b.enum_value) ");
SqlStringBuilder.Append(" where " + strWhere);
List<WmsOutstockSn> dataList = dbConn.Query<WmsOutstockSn>(SqlStringBuilder.ToString()).ToList();
result.Add("dataList", dataList);
result.Add("totalCount", dataList.Count());
return result;
}
}
public List<WmsOutstockDetail> getMoveSnListByPrint(string strWhere)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
Hashtable result = new Hashtable();
StringBuilder SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append(" select a.*,b.part_spec2 from wms_outstock_detail a (nolock) left join sys_part b (nolock) on a.part_id=b.part_id ");
SqlStringBuilder.Append(" where " + strWhere);
List<WmsOutstockDetail> dataList = dbConn.Query<WmsOutstockDetail>(SqlStringBuilder.ToString()).ToList();
return dataList;
}
}
public List<KeyValueResult> GetErpwarehouse()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
String strSql = "select distinct erp_warehouse as [key] , erp_warehouse as value from sys_zone where enabled='Y' ";
List<KeyValueResult> result = dbConn.Query<KeyValueResult>(strSql).ToList();
return result;
}
}
public List<KeyValueResult> GetMoveOrderType()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
string sql = "SELECT [enum_value] as [value],[enum_desc] as [key] FROM sys_enum where enum_type='wms_outstock_order_type' and enabled='Y'";
List<KeyValueResult> result = dbConn.Query<KeyValueResult>(sql).ToList();
return result;
}
}
public List<KeyValueResult> GetMoveOrderStatus()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
string sql = "SELECT [enum_value] as [value],[enum_desc] as [key] FROM sys_enum where enum_type ='wms_move_header_order_status' and enabled='Y' order by enum_value";
List<KeyValueResult> result = dbConn.Query<KeyValueResult>(sql).ToList();
return result;
}
}
/// <summary>
/// 生成条码
/// </summary>
/// <param name="orderNo"></param>
/// <returns></returns>
public Hashtable onBarcodeGenerator(string orderNo)
{
Hashtable hashtable = new Hashtable();
return hashtable;
}
public bool ExecuteSqlTransaction(List<string> sqlStrings, List<DynamicParameters> parameters)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
IDbTransaction transaction = dbConn.BeginTransaction();
try
{
for (int i = 0; i < sqlStrings.Count; i++)
{
dbConn.Execute(sqlStrings[i], parameters[i], transaction);
}
transaction.Commit();
return true;
}
catch (Exception ex)
{
transaction.Rollback();
return false;
}
}
}
/// <summary>
/// 获取下拉框菜单数据 这里显示的是待添加的厂区信息,厂区名称
/// </summary>
/// <returns></returns>
public List<KeyValueResult> getSelectFactory()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select factory_id as [value],factory_name as [key] from sys_factory where Enabled = 'Y'");
List<KeyValueResult> result = dbConn.Query<KeyValueResult>(strSql.ToString()).ToList();
return result;
}
}
public List<KeyValueResult> getSelectWarehouse()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select warehouse_id as [value],warehouse_desc as [key] from sys_warehouse where Enabled = 'Y'");
List<KeyValueResult> result = dbConn.Query<KeyValueResult>(strSql.ToString()).ToList();
return result;
}
}
public List<SysWarehouse> getSelectWarehouse(string warehouseid)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select * from sys_warehouse where Enabled = 'Y' and warehouse_id='" + warehouseid + "'");
List<SysWarehouse> result = dbConn.Query<SysWarehouse>(strSql.ToString()).ToList();
return result;
}
}
public List<SysWarehouse> getSelectWarehouseByName(string warehouseName)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select * from sys_warehouse where Enabled = 'Y' and warehouse_name='" + warehouseName + "'");
List<SysWarehouse> result = dbConn.Query<SysWarehouse>(strSql.ToString()).ToList();
return result;
}
}
public List<SysZone> getSelectZone(string zoneid)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select * from sys_zone where Enabled = 'Y' and zone_id='" + zoneid + "'");
List<SysZone> result = dbConn.Query<SysZone>(strSql.ToString()).ToList();
return result;
}
}
public List<SysZone> getSelectZoneByName(string zoneName)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select * from sys_zone where Enabled = 'Y' and zone_name='" + zoneName + "'");
List<SysZone> result = dbConn.Query<SysZone>(strSql.ToString()).ToList();
return result;
}
}
public List<KeyValueResult> getSelectZone()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select zone_id as [value],zone_name as [key] from sys_zone where Enabled = 'Y'");
List<KeyValueResult> result = dbConn.Query<KeyValueResult>(strSql.ToString()).ToList();
return result;
}
}
public List<KeyValueResult> getSelectLocate()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select locate_id as [value],locate_name as [key] from sys_locate where Enabled = 'Y'");
List<KeyValueResult> result = dbConn.Query<KeyValueResult>(strSql.ToString()).ToList();
return result;
}
}
public List<SysLocate> getSelectLocate(string locateid)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select * from sys_locate where Enabled = 'Y' and locate_id='" + locateid + "'");
List<SysLocate> result = dbConn.Query<SysLocate>(strSql.ToString()).ToList();
return result;
}
}
public List<KeyValueResult> getSelectVendor()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select vendor_id as [value],vendor_name as [key] from sys_Vendor where Enabled = 'Y'");
List<KeyValueResult> result = dbConn.Query<KeyValueResult>(strSql.ToString()).ToList();
return result;
}
}
public List<SysVendor> getSelectVendor(string vendorName)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select * from sys_Vendor where Enabled = 'Y' and vendor_name='" + vendorName + "'");
List<SysVendor> result = dbConn.Query<SysVendor>(strSql.ToString()).ToList();
return result;
}
}
public List<KeyValueResult> getSelectCustomer()
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select customer_id as [value],customer_name as [key] from sys_customer where Enabled = 'Y'");
List<KeyValueResult> result = dbConn.Query<KeyValueResult>(strSql.ToString()).ToList();
return result;
}
}
public List<SysCustomer> getSelectCustomer(string customerId)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
StringBuilder strSql = new StringBuilder();
strSql.Append("select * from sys_customer where Enabled = 'Y' and customer_id='" + customerId + "'");
List<SysCustomer> result = dbConn.Query<SysCustomer>(strSql.ToString()).ToList();
return result;
}
}
public List<KeyValueResult> GetPart(int type)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
string sql = "SELECT part_id as [value],part_no as [key] FROM sys_part (NOLOCK) WHERE enabled='Y' ORDER BY part_no";
DynamicParameters param = new DynamicParameters();
param.Add("@part_type", type);
List<KeyValueResult> result = dbConn.Query<KeyValueResult>(sql, param).ToList();
return result;
}
}
public List<SysPart> GetPart(int type, string PartNo)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
string sql = "SELECT * FROM sys_part (NOLOCK) WHERE enabled='Y' and part_no='" + PartNo + "' ORDER BY part_no";
DynamicParameters param = new DynamicParameters();
param.Add("@part_type", type);
List<SysPart> result = dbConn.Query<SysPart>(sql, param).ToList();
return result;
}
}
/// <summary>
/// 获取订单编号
/// </summary>
/// <returns></returns>
public string GetOrderNo(string stockOrder, string p)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
DynamicParameters list = new DynamicParameters();
list.Add("@order_type", stockOrder);
list.Add("@order_prefix", p);
list.Add("@order_no", null, DbType.String, ParameterDirection.Output, 50);
var hashtable = dbConn.Execute("sys_create_orderno", list, commandType: CommandType.StoredProcedure);
string result = list.Get<string>("@order_no");
return result;
}
}
/// <summary>
/// 插入菜单数据
/// </summary>
/// <param name="htParams"></param>
/// <returns></returns>
public bool saveMovementManage(WmsOutstock htParams, IList<WmsOutstockDetail> htDetailParams)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
string orderNo = GetOrderNo("ShiftProduction", "P");
if (htParams.OrderType == (int)WmsEnumUtil.MoveOrderType.PICK)
{
orderNo = GetOrderNo("ShiftProduction", "P");//生产领料单
}
else if (htParams.OrderType == (int)WmsEnumUtil.MoveOrderType.EXCEPTION_IN_STOCK)
{
orderNo = GetOrderNo("ShiftSporadicEntry", "I");//零星入库单
}
else if (htParams.OrderType == (int)WmsEnumUtil.MoveOrderType.EXCEPTION_OUT_STOCK)
{
orderNo = GetOrderNo("ShiftOutgoing", "O");//零星出库单
}
else if (htParams.OrderType == (int)WmsEnumUtil.MoveOrderType.NC_IN_STOCK)
{
orderNo = GetOrderNo("ShiftWarehouse", "M");//NC入库
}
else if (htParams.OrderType == (int)WmsEnumUtil.MoveOrderType.NC_CONCESSION)
{
orderNo = GetOrderNo("ShiftNCOutbound", "R");//NC出库单
}
else if (htParams.OrderType == (int)WmsEnumUtil.MoveOrderType.NC_SCRAP)
{
orderNo = GetOrderNo("ShiftNCScrap", "S");//NC报废单
}
else if (htParams.OrderType == (int)WmsEnumUtil.MoveOrderType.NO_JIS_SHIPPING)
{
orderNo = GetOrderNo("ShiftNonJis", "F");//非JIS发运单
}
else if (htParams.OrderType == (int)WmsEnumUtil.MoveOrderType.NC_MOVE)
{
orderNo = GetOrderNo("ShiftWarehouse", "M");//NC移库单
}
htParams.OrderNo = orderNo;
dbConn.Open();
List<string> sqlLists = new List<string>();
List<DynamicParameters> parameters = new List<DynamicParameters>();
DynamicParameters dynamic = new DynamicParameters();
StringBuilder SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("INSERT INTO dbo.wms_outstock(order_no,order_type,order_status,vendor_id,vendor_code,customer_id,customer_code,ref_order_no,factory_id,factory_code,enabled,create_userid,create_time,guid)");
SqlStringBuilder.Append("VALUES(@orderNo, @orderType, 10,@vendorId,@vendorCode,@customerId,@customerCode,@refOrderNo, @factoryId, @factoryCode, @enabled, @createUserid, CONVERT(varchar(50), GETDATE(), 21), newid()) ");
int recMoveHeader = dbConn.Execute(SqlStringBuilder.ToString(), htParams);
for (int i = 0; i < htDetailParams.Count; i++)
{
StringBuilder SqlDetailStringBuilder = new StringBuilder(1024);
SqlDetailStringBuilder.Append("INSERT INTO dbo.wms_outstock_detail(order_no,item_no,part_id,part_no,part_spec,qty,pick_qty,out_qty,unit,plan_date,plan_time,item_status");
SqlDetailStringBuilder.Append(", src_warehouse_id, src_warehouse_name, src_zone_id, src_zone_name,src_locate_id,src_locate_name");
SqlDetailStringBuilder.Append(", src_erp_warehouse, factory_id, factory_code, enabled, create_userid, create_time, guid)");
SqlDetailStringBuilder.Append("VALUES(@orderNo, @itemNo, @partId, @partNo, @partSpec, @qty, @pickQty, @outQty, @unit, @planDate, @planTime, @itemStatus, @srcWarehouseId");
SqlDetailStringBuilder.Append(", @srcWarehouseName, @srcZoneId, @srcZoneName,@srcLocateId,@srcLocateName, @srcErpWarehouse");
SqlDetailStringBuilder.Append(", @factoryId, @factoryCode, @enabled, @createUserid, CONVERT(varchar(50), GETDATE(), 21), newid())");
sqlLists.Add(SqlDetailStringBuilder.ToString());
dynamic = new DynamicParameters();
dynamic.Add("@orderNo", orderNo);
dynamic.Add("@itemNo", htDetailParams[i].ItemNo);
dynamic.Add("@partId", htDetailParams[i].PartId);
dynamic.Add("@partNo", htDetailParams[i].PartNo);
dynamic.Add("@partSpec", htDetailParams[i].PartSpec);
dynamic.Add("@qty", htDetailParams[i].Qty);
dynamic.Add("@pickQty", htDetailParams[i].PickQty);
dynamic.Add("@outQty", htDetailParams[i].OutQty);
dynamic.Add("@unit", htDetailParams[i].Unit);
dynamic.Add("@planDate", htDetailParams[i].PlanDate);
dynamic.Add("@planTime", htDetailParams[i].PlanTime);
dynamic.Add("@itemStatus", "10");
dynamic.Add("@srcWarehouseId", htDetailParams[i].SrcWarehouseId);
dynamic.Add("@srcWarehouseName", htDetailParams[i].SrcWarehouseName);
dynamic.Add("@srcZoneId", htDetailParams[i].SrcZoneId);
dynamic.Add("@srcZoneName", htDetailParams[i].SrcZoneName);
dynamic.Add("@srcLocateId", htDetailParams[i].SrcLocateId);
dynamic.Add("@srcLocateName", htDetailParams[i].SrcLocateName);
dynamic.Add("@srcErpWarehouse", htDetailParams[i].SrcErpWarehouse);
dynamic.Add("@factoryId", htDetailParams[i].FactoryId);
dynamic.Add("@factoryCode", htDetailParams[i].FactoryCode);
dynamic.Add("@enabled", "Y");
dynamic.Add("@createUserid", htDetailParams[i].CreateUserId);
parameters.Add(dynamic);
}
bool flag = ExecuteTransaction(sqlLists, parameters);
return flag;
}
}
/// <summary>
/// 获得零件信息
/// </summary>
/// <returns></returns>
public List<SysPart> GetPartNoInfo(string part_no)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
string sql = "SELECT part_id,part_no,part_spec,default_box_qty FROM sys_part (NOLOCK) WHERE enabled='Y' AND part_no LIKE '%" + part_no + "%' ORDER BY part_no";
List<SysPart> result = dbConn.Query<SysPart>(sql).ToList();
return result;
}
}
/// <summary>
/// 获得零件信息
/// </summary>
/// <returns></returns>
public List<SysPart> GetPartNoInfoByPartNo(string part_no)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
string sql = "SELECT part_id,part_no,part_spec,default_box_qty FROM sys_part (NOLOCK) WHERE enabled='Y' AND part_no = '" + part_no + "'";
List<SysPart> result = dbConn.Query<SysPart>(sql).ToList();
return result;
}
}
/// <summary>
/// 获得零件简码信息
/// </summary>
/// <returns></returns>
public List<SysPart> GetPartSpecInfo(string partSpec)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
string sql = "SELECT part_id,part_no,part_spec,default_box_qty FROM sys_part (NOLOCK) WHERE enabled='Y' AND part_spec LIKE '%" + partSpec + "%' ORDER BY part_no";
List<SysPart> result = dbConn.Query<SysPart>(sql).ToList();
return result;
}
}
public List<SysPart> GetPartSpecInfoByPartSpec(string partSpec)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
string sql = "SELECT part_id,part_no,part_spec,default_box_qty FROM sys_part (NOLOCK) WHERE enabled='Y' AND part_spec = '" + partSpec + "'";
List<SysPart> result = dbConn.Query<SysPart>(sql).ToList();
return result;
}
}
//关闭
public bool onClose(String ids, String empId)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
List<string> sqlLists = new List<string>();
List<DynamicParameters> parameters = new List<DynamicParameters>();
DynamicParameters dynamic = new DynamicParameters();
StringBuilder SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("update wms_outstock set order_status='60',update_userid=@updateUserid,update_time = CONVERT(varchar(50), GETDATE(), 21) WHERE order_no in (" + ids + ")");
sqlLists.Add(SqlStringBuilder.ToString());
dynamic = new DynamicParameters();
dynamic.Add("@updateUserid", empId);
parameters.Add(dynamic);
SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("update wms_outstock_detail set item_status='100',update_userid=@updateUserid,update_time = CONVERT(varchar(50), GETDATE(), 21) WHERE order_no in (" + ids + ")");
sqlLists.Add(SqlStringBuilder.ToString());
dynamic = new DynamicParameters();
dynamic.Add("@updateUserid", empId);
parameters.Add(dynamic);
bool flag = ExecuteTransaction(sqlLists, parameters);
return flag;
}
}
//启用
public bool EnableData(String ids)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
List<string> sqlLists = new List<string>();
List<DynamicParameters> parameters = new List<DynamicParameters>();
DynamicParameters dynamic = new DynamicParameters();
StringBuilder SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("update wms_outstock set Enabled='Y',update_time = CONVERT(varchar(50), GETDATE(), 21) WHERE order_no in (" + ids + ")");
sqlLists.Add(SqlStringBuilder.ToString());
dynamic = new DynamicParameters();
dynamic.Add("@orderNo", ids);
parameters.Add(dynamic);
SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("update wms_outstock_detail set Enabled='Y',update_time = CONVERT(varchar(50), GETDATE(), 21) WHERE order_no in (" + ids + ")");
sqlLists.Add(SqlStringBuilder.ToString());
dynamic = new DynamicParameters();
dynamic.Add("@orderNo", ids);
parameters.Add(dynamic);
SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("update wms_outstock_sn set Enabled='Y',update_time = CONVERT(varchar(50), GETDATE(), 21) WHERE order_no in (" + ids + ")");
sqlLists.Add(SqlStringBuilder.ToString());
dynamic = new DynamicParameters();
dynamic.Add("@orderNo", ids);
parameters.Add(dynamic);
bool flag = ExecuteTransaction(sqlLists, parameters);
return flag;
}
}
//禁用
public bool DisableData(String ids)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
dbConn.Open();
List<string> sqlLists = new List<string>();
List<DynamicParameters> parameters = new List<DynamicParameters>();
DynamicParameters dynamic = new DynamicParameters();
StringBuilder SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("update wms_outstock set Enabled='N',update_time = CONVERT(varchar(50), GETDATE(), 21) WHERE order_no in (" + ids + ")");
sqlLists.Add(SqlStringBuilder.ToString());
dynamic = new DynamicParameters();
dynamic.Add("@orderNo", ids);
parameters.Add(dynamic);
SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("update wms_outstock_detail set Enabled='N',update_time = CONVERT(varchar(50), GETDATE(), 21) WHERE order_no in (" + ids + ")");
sqlLists.Add(SqlStringBuilder.ToString());
dynamic = new DynamicParameters();
dynamic.Add("@orderNo", ids);
parameters.Add(dynamic);
SqlStringBuilder = new StringBuilder(1024);
SqlStringBuilder.Append("update wms_outstock_sn set Enabled='N',update_time = CONVERT(varchar(50), GETDATE(), 21) WHERE order_no in (" + ids + ")");
sqlLists.Add(SqlStringBuilder.ToString());
dynamic = new DynamicParameters();
dynamic.Add("@orderNo", ids);
parameters.Add(dynamic);
bool flag = ExecuteTransaction(sqlLists, parameters);
return flag;
}
}
//事务批量执行添加、修改
public bool InsertData(List<string> sqlStrings, List<DynamicParameters> parameterList)
{
using (IDbConnection dbConn = dapperDbContext.GetDbConnection())
{
if (dbConn.State == ConnectionState.Closed)
{
dbConn.Open();
}
//执行事务
IDbTransaction transaction = dbConn.BeginTransaction();
if (parameterList == null || parameterList.Count == 0)
{
try
{
for (int i = 0; i < sqlStrings.Count; i++)
{
dbConn.Execute(sqlStrings[i], null, transaction);
}
transaction.Commit();
return true;
}
catch (Exception exception)
{
transaction.Rollback();
return false;
}
}
else
{
try
{
for (int i = 0; i < sqlStrings.Count; i++)
{
dbConn.Execute(sqlStrings[i], parameterList[i], transaction);
}
transaction.Commit();
return true;
}
catch (Exception exception)
{
transaction.Rollback();
return false;
}
}
}
}
#endregion 成员方法
}
}