You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
126 lines
4.6 KiB
126 lines
4.6 KiB
using ICSSoft.Common;
|
|
using ICSSoft.Entity;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Data.SqlClient;
|
|
|
|
namespace ICSSoft.DataProject
|
|
{
|
|
public class HelpUtil
|
|
{
|
|
private static log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
|
|
private static string connString = System.Configuration.ConfigurationManager.AppSettings["ConnStr"];
|
|
|
|
/// <summary>
|
|
/// 删除单据
|
|
/// </summary>
|
|
/// <param name="Code"></param>
|
|
/// <returns></returns>
|
|
public static void CodeDelete(string TableName, string CodeColumnName, string Code, string User, string WorkPoint)
|
|
{
|
|
using (SqlConnection conn = new SqlConnection(connString))
|
|
{
|
|
conn.Open();
|
|
SqlTransaction sqlTran = conn.BeginTransaction();
|
|
SqlCommand cmd = new SqlCommand();
|
|
cmd.Transaction = sqlTran;
|
|
cmd.Connection = conn;
|
|
try
|
|
{
|
|
string sql = string.Empty;
|
|
string TransType = string.Empty;
|
|
string Identification = Guid.NewGuid().ToString();
|
|
|
|
|
|
sql = $@"DELETE FROM {TableName} WHERE {CodeColumnName}=@Code AND WorkPoint=@WorkPoint ";
|
|
cmd.Parameters.Clear();
|
|
cmd.Parameters.AddWithValue("@Code", Code);
|
|
cmd.Parameters.AddWithValue("@WorkPoint", WorkPoint);
|
|
|
|
if (!DBHelper.ExecuteNonQuery(sql, cmd))
|
|
{
|
|
//throw new Exception("");
|
|
return;
|
|
}
|
|
cmd.Transaction.Commit();
|
|
log.Debug(User + " 删除 " + TableName + ": " + Code);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
if (cmd.Transaction != null)
|
|
cmd.Transaction.Rollback();
|
|
log.Error(ex.Message);
|
|
throw new Exception(ex.Message);
|
|
}
|
|
finally
|
|
{
|
|
if (conn.State == ConnectionState.Open)
|
|
{
|
|
conn.Close();
|
|
}
|
|
conn.Dispose();
|
|
}
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 关闭单据
|
|
/// </summary>
|
|
/// <param name="TableName"></param>
|
|
/// <param name="CodeColumnName"></param>
|
|
/// <param name="Code"></param>
|
|
/// <param name="StatusColumnName"></param>
|
|
/// <param name="CodeStatus"></param>
|
|
public static void CodeClose(string TableName, string CodeColumnName, string Code, string StatusColumnName, string CodeStatus, string User, string WorkPoint)
|
|
{
|
|
using (SqlConnection conn = new SqlConnection(connString))
|
|
{
|
|
conn.Open();
|
|
SqlTransaction sqlTran = conn.BeginTransaction();
|
|
SqlCommand cmd = new SqlCommand();
|
|
cmd.Transaction = sqlTran;
|
|
cmd.Connection = conn;
|
|
try
|
|
{
|
|
string sql = string.Empty;
|
|
string TransType = string.Empty;
|
|
string Identification = Guid.NewGuid().ToString();
|
|
|
|
|
|
sql = $@"UPDATE {TableName} SET {StatusColumnName}=@CodeStatus
|
|
WHERE {CodeColumnName}=@Code AND WorkPoint=@WorkPoint";
|
|
cmd.Parameters.Clear();
|
|
cmd.Parameters.AddWithValue("@CodeStatus", CodeStatus);
|
|
cmd.Parameters.AddWithValue("@Code", Code);
|
|
cmd.Parameters.AddWithValue("@WorkPoint", WorkPoint);
|
|
|
|
if (!DBHelper.ExecuteNonQuery(sql, cmd))
|
|
{
|
|
//throw new Exception("");
|
|
return;
|
|
}
|
|
cmd.Transaction.Commit();
|
|
log.Debug(User + " 关闭 " + TableName + ": " + Code);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
if (cmd.Transaction != null)
|
|
cmd.Transaction.Rollback();
|
|
log.Error(ex.Message);
|
|
throw new Exception(ex.Message);
|
|
}
|
|
finally
|
|
{
|
|
if (conn.State == ConnectionState.Open)
|
|
{
|
|
conn.Close();
|
|
}
|
|
conn.Dispose();
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|