5ccfe15fee
SVN-Revision: r1103
419 lines
22 KiB
C#
419 lines
22 KiB
C#
/***********************
|
|
* 说明:单据审批业务处理接口
|
|
* 创建人:龚宇超
|
|
* 创建日期:2017-12-28
|
|
* 修改人:
|
|
* 修改日期:
|
|
* 修改备注:
|
|
* 版本:1.0.0.0
|
|
***********************/
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Data;
|
|
using Lskj.Core;
|
|
using Lskj.Util;
|
|
using System.Data.SqlClient;
|
|
using Lskj.Model;
|
|
using Lskj.Business;
|
|
|
|
namespace Lskj.Business.Impl
|
|
{
|
|
/// <summary>
|
|
/// Class BillAuditImpl.
|
|
/// </summary>
|
|
public class BillAuditImpl : BillImpl
|
|
{
|
|
/// <summary>
|
|
/// <para>说明:单据确认</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-12-11</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="ComfirmId">确认编号</param>
|
|
/// <returns>System.Int32.</returns>
|
|
public static int GetBillComfirm(string comfirmId)
|
|
{
|
|
string sqlValue = "select 1 from wms_billflowComfirm where id=@Id and comfirmFlag=0";
|
|
SqlParameter[] parms = new SqlParameter[] { new SqlParameter("@Id", comfirmId) };
|
|
return ExecSqlValue(sqlValue, parms);
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:确认审核</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-12-28</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="comfirmOper">确认用户.</param>
|
|
/// <param name="comfirmAdvice">确认意见</param>
|
|
/// <param name="id">主键.</param>
|
|
/// <returns>System.Int32.</returns>
|
|
public static int ConfirmAudit(string comfirmOper, string comfirmAdvice, string ModuleCode, string PrimaryValue)
|
|
{
|
|
int result = 0;
|
|
if (BaseImpl.HasExistsTable("wms_BillflowComfirm"))
|
|
{
|
|
string sqlValue = string.Format("Update wms_BillflowComfirm set comfirmFlag=1,comfirmOper='{0}',comfirmDate='{1}',comfirmAdvice='{2}' where modid='{3}' and keyvalue='{4}' and operatorid={5} ", comfirmOper, DateTime.Now.ToString(), comfirmAdvice, ModuleCode, PrimaryValue, ERPInfo.Instance.UserId);
|
|
result = ExecSqlValue(sqlValue);
|
|
|
|
}
|
|
return result;
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:创建来源单据Id</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-12-28</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="masterTable">主表.</param>
|
|
/// <returns>System.Int32.</returns>
|
|
public static int CreateSourceBillId(string masterTable)
|
|
{
|
|
string sqlValue = string.Format("alter table {0} add divide_bill varchar(100) default('');", masterTable);
|
|
return ExecSqlValue(sqlValue);
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:分单处理</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-09</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="msg">处理返回消息.</param>
|
|
/// <param name="masterSql">主sql.</param>
|
|
/// <param name="detailSql">明细sql.</param>
|
|
/// <param name="billNo">新单据编号</param>
|
|
/// <param name="menuCode">模块编号.</param>
|
|
/// <param name="billDocumentId">单据Id</param>
|
|
/// <returns>System.Int32.</returns>
|
|
public static int SpliteBill(out string msg, string masterSql, string detailSql, string billNo, string menuCode, string billDocumentId)
|
|
{
|
|
SqlParameter pMsg = new SqlParameter("@msg", SqlDbType.VarChar, 2000);
|
|
pMsg.Direction = ParameterDirection.Output;
|
|
SqlParameter returnValue = new SqlParameter("@return", SqlDbType.Int, 4);
|
|
returnValue.Direction = ParameterDirection.ReturnValue;
|
|
SqlParameter[] parms = {
|
|
new SqlParameter("@mastersql",SqlDbType.VarChar,5000),
|
|
new SqlParameter("@detailsql",SqlDbType.VarChar,5000),
|
|
new SqlParameter("@Operatorid",SqlDbType.Int),
|
|
new SqlParameter("@menuid",SqlDbType.VarChar,50),
|
|
new SqlParameter("@billdocument_id",SqlDbType.VarChar,50),
|
|
new SqlParameter("@newbilldocument_id",SqlDbType.VarChar,50),
|
|
pMsg,
|
|
returnValue
|
|
};
|
|
parms[0].Value = masterSql;
|
|
parms[1].Value = detailSql;
|
|
parms[2].Value = ERPInfo.Instance.UserId;
|
|
parms[3].Value = menuCode;
|
|
parms[4].Value = billDocumentId;
|
|
parms[5].Value = billNo;
|
|
DataSet ds = SqlHelper.ExecuteDataSet(CommandType.StoredProcedure, "P_BillDivideSavePr_3", "billSave", parms);
|
|
msg = pMsg.Value.ToString();
|
|
return Convert.ToInt32(returnValue.Value.ToString());
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:获取页面属性</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-12-28</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="menuCode">模块编号.</param>
|
|
/// <returns>DataRow.</returns>
|
|
public static DataRow GetPubAuditProperty(string menuCode)
|
|
{
|
|
string field = string.Empty;
|
|
|
|
DataTable dataTable = GetTableColumns("p_systembilltype");
|
|
|
|
if (dataTable.Columns.Contains("MuitlAuditFlag"))
|
|
{
|
|
field = ",MuitlAuditFlag";
|
|
}
|
|
if (dataTable.Columns.Contains("BelowDetailLine"))
|
|
{
|
|
field += ",BelowDetailLine";
|
|
}
|
|
if (dataTable.Columns.Contains("BelowDetailSql"))
|
|
{
|
|
field += ",BelowDetailSql";
|
|
}
|
|
if (dataTable.Columns.Contains("MuitlAuditBackFlag"))
|
|
{
|
|
field += ",MuitlAuditBackFlag";
|
|
}
|
|
if (dataTable.Columns.Contains("DisableAutomaticRefresh"))
|
|
{
|
|
field += ",DisableAutomaticRefresh";
|
|
}
|
|
|
|
string sqlValue = string.Format("select mastertable,overbacksql,overbackkey,overbackoper,overbackcond,prefix,formkey,billPrintType {0} from p_systembilltype where typecode=@DllCoid", field);
|
|
DataTable dtTable = SqlHelper.ExecuteDataTable(sqlValue, new SqlParameter[] { new SqlParameter("@DllCoid", menuCode) });
|
|
return dtTable.Rows.Count > 0 ? dtTable.Rows[0] : null;
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:单据跟踪</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2018-01-03</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="typeCode">模块编号.</param>
|
|
/// <param name="stepCode">进度编号.</param>
|
|
/// <returns>DataRow.</returns>
|
|
public static DataRow GetBillFlowData(string typeCode, string stepCode)
|
|
{
|
|
string sqlValue = "select * from P_systembillflow where typeCode=@typeCode and stepCode=@stepCode";
|
|
DataTable dtTable = SqlHelper.ExecuteDataTable(sqlValue, new SqlParameter[] { new SqlParameter("@typeCode", typeCode), new SqlParameter("@stepCode", stepCode) });
|
|
return dtTable.Rows.Count > 0 ? dtTable.Rows[0] : null;
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:获取单据BillInfo数据</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-04</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="typeCode">模块编号</param>
|
|
/// <param name="billType">单据类别</param>
|
|
/// <param name="stepCode">进度编号</param>
|
|
/// <returns>DataTable.</returns>
|
|
public static DataRow GetBillFlowStep(string typeCode, string billType, string stepCode)
|
|
{
|
|
string sqlValue = "select * from p_systembillflowtypestep where typecode=@typeCode and billtype=@billType and stepcode=@stepCode";
|
|
DataTable dtTable = SqlHelper.ExecuteDataTable(sqlValue, new SqlParameter[] { new SqlParameter("@typeCode", typeCode), new SqlParameter("@billType", billType), new SqlParameter("@stepCode", stepCode) });
|
|
return dtTable.Rows.Count > 0 ? dtTable.Rows[0] : null;
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:获取操作用户</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-04</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="typeCode">模块编号.</param>
|
|
/// <param name="paramaryValue">主键值</param>
|
|
/// <param name="stepcode">步骤编码</param>
|
|
/// <returns>DataRow.</returns>
|
|
public static DataRow GetOperators(string typeCode, string paramaryValue,string stepcode)
|
|
{
|
|
DataTable dtTable = new DataTable();
|
|
if (SqlHelper.ExecuteDataTable("select object_id('wms_billflowoperex')").Rows.Count > 0 && int.Parse(SqlHelper.ExecuteScalar("select count(*) from sysobjects where id = object_id('wms_billflowoperex')")+"") >0)
|
|
{
|
|
string sqlValue = "select browsers,operators from wms_billflowOperex where modid=@DllCoid and keyvalue=@keyvalue and stepcode=@stepcode";
|
|
dtTable = SqlHelper.ExecuteDataTable(sqlValue, new SqlParameter[] { new SqlParameter("@DllCoid", typeCode), new SqlParameter("@keyvalue", paramaryValue) , new SqlParameter("@stepcode", stepcode) });
|
|
}
|
|
return dtTable.Rows.Count > 0 ? dtTable.Rows[0] : null;
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:获取推送信息</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-10</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="paramaryValue">主键值.</param>
|
|
/// <param name="stepCode">进度编号.</param>
|
|
/// <returns>DataRow.</returns>
|
|
public static DataRow GetPushedOpers(string paramaryValue, string stepCode)
|
|
{
|
|
string sqlValue = "select operators,typeName menuname,'2'+CAST(b.id as varchar(10)) id from wms_billflowOper a,p_systembilltype b where a.modid=b.typeCode and keyvalue=@keyValue and stepcode=@stepCode and a.stepover=0";
|
|
DataTable dtTable = SqlHelper.ExecuteDataTable(sqlValue, new SqlParameter[] { new SqlParameter("@keyValue", paramaryValue), new SqlParameter("@stepCode", stepCode) });
|
|
return dtTable.Rows.Count > 0 ? dtTable.Rows[0] : null;
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:搜索已完成数据</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-12-28</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="model">审批模型.</param>
|
|
/// <param name="cancelFlag">取消标记.</param>
|
|
/// <param name="cond">sql 拼接条件.</param>
|
|
/// <returns>DataTable.</returns>
|
|
public static DataTable GetGridFinishData(BaseAccraditationModel model, bool cancelFlag, string cond)
|
|
{
|
|
string tmpsql = string.Empty;
|
|
if (!string.IsNullOrEmpty(model.MenuCond))
|
|
{
|
|
cond += string.Format(" and ({0}stepCode > {1} OR ({0}stepCode >= {1} and isnull({0}stepover,0)=1))", model.ColumnPrefix, model.MenuCond.Split(',').Last());
|
|
tmpsql = string.Format(@"select {0}Billdocument_Id as Billdocument_Id,convert(varchar(25),{0}Operatedate,120) as OperateDate,
|
|
dbo.P_GetOperator({0}operatorid) as OperatorName,{0}stepCode as stepCode,
|
|
convert(varchar(25),{0}AffirmDate,120) as AffirmDate,dbo.P_GetOperator({0}affirmer) as AffirmerName,
|
|
case when 1=1 then (select top 1 operatorName from wms_billflowstep b where a.{0}Billdocument_Id=b.flowSourceKey and " + model.MenuCond.Split(',').Last() + @" = b.stepCode order by b.endTime desc) else a.{0}StepOverName end StepOverName,
|
|
convert(varchar(25),case when ISNULL(a.{0}StepOverTime,'')='' then (select top 1 endTime from wms_billflowstep b where a.{0}Billdocument_Id=b.flowSourceKey and a.{0}stepCode-100 = b.stepCode order by b.endTime desc) else a.{0}StepOverTime end,120) StepOverTime," +
|
|
(cancelFlag == true ? "case when isnull({0}cancelFlag,0)=1 then '关闭' else '正常' end " : "'正常'") + " as stepClosed " +
|
|
"from " + model.BillTable + @" a
|
|
where substring({0},1," + model.Prefix.Length.ToString() + ")='" + model.Prefix + "'", model.ColumnPrefix) + cond;
|
|
}
|
|
else
|
|
{
|
|
cond += " and isnull(" + model.ColumnPrefix + "stepover,0)=1 ";
|
|
tmpsql = string.Format(@"select {0}Billdocument_Id as Billdocument_Id,convert(varchar(25),{0}Operatedate,120) as OperateDate,
|
|
dbo.P_GetOperator({0}operatorid) as OperatorName,{0}stepCode as stepCode,
|
|
convert(varchar(25),{0}AffirmDate,120) as AffirmDate,dbo.P_GetOperator({0}affirmer) as AffirmerName,
|
|
{0}StepOverName as StepOverName,convert(varchar(25),{0}StepOverTime,120) as StepOverTime, " +
|
|
(cancelFlag == true ? "case when isnull({0}cancelFlag,0)=1 then '关闭' else '正常' end " : "'正常'") + " as stepClosed " +
|
|
"from " + model.BillTable + @" a
|
|
where substring({0}billdocument_id,1," + model.Prefix.Length.ToString() + ")='" + model.Prefix + "'", model.ColumnPrefix) + cond;
|
|
}
|
|
if (!string.IsNullOrWhiteSpace(model.OverBackCond))
|
|
tmpsql = tmpsql + " and (" + ReplaceHelper.ReplaceUserInfo(model.OverBackCond) + ")";
|
|
if (!string.IsNullOrWhiteSpace(model.OverBackOper))
|
|
tmpsql = tmpsql + " and charindex('" + ERPInfo.Instance.UserName + ",','" + model.OverBackOper + ",')>0";
|
|
return SqlHelper.ExecuteDataTable(tmpsql);
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:获取单据BillInfo数据</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-04</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="menuCode">模块编号</param>
|
|
/// <returns>DataTable.</returns>
|
|
public static DataTable GetBillInfoData(string menuCode)
|
|
{
|
|
string sqlValue = "select * from p_systembillinfo where typecode=@typeCode and isnull(isvisible,0)=0";
|
|
return SqlHelper.ExecuteDataTable(sqlValue, new SqlParameter[] { new SqlParameter("@typeCode", menuCode) });
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:获取分单列</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-09</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="menuCode">模块编号</param>
|
|
/// <param name="operatorName">当前角色名.</param>
|
|
/// <returns>DataTable.</returns>
|
|
public static DataTable GetSpareBillColumns(string menuCode, string operatorName)
|
|
{
|
|
string sqlValue = string.Format(@"SELECT
|
|
isnull(CASE WHEN ISNULL(b.userList,'')='' AND ISNULL(a.PrivilegeView,'')<>'' THEN 0 ELSE width END,0) width,
|
|
isnull(CASE WHEN ISNULL(c.userList,'')='' AND ISNULL(a.PrivilegeView,'')<>'' THEN 1 ELSE edited END,0) isEdited,
|
|
a.fieldTypeId as fieldsqltag,a.lookupkeyfield as fieldsqlid,a.lookupresult as fieldsqlname,a.lookupsql as fieldsql,a.*
|
|
FROM p_systembillDetail a
|
|
LEFT JOIN (
|
|
SELECT userList,privTypeId from p_systemPrivilege b where modId = '{0}'
|
|
AND CHARINDEX('{1}' + ',', userList + ',') > 0
|
|
) b on CHARINDEX(CAST(b.privTypeId AS VARCHAR(5)) + ',',a.PrivilegeView + ',') > 0
|
|
LEFT JOIN (
|
|
SELECT TOP 1 userList,privTypeId FROM p_systemPrivilege WHERE modId = '{0}'
|
|
AND CHARINDEX('{1}' + ',', USERLIST + ',') > 0
|
|
) c ON CHARINDEX(CAST(c.privTypeId AS VARCHAR(5)) + ',',a.PrivilegeOper + ',') > 0
|
|
WHERE typeCode='{0}' and isnull(isVisible,0)=0 order by a.orderid asc", menuCode, operatorName);
|
|
return SqlHelper.ExecuteDataTable(sqlValue);
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:获取分单历史</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-09</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="billDocumentId">新单据编号</param>
|
|
/// <param name="table">表名</param>
|
|
/// <param name="billId">单据编号.</param>
|
|
/// <returns>DataTable.</returns>
|
|
public static DataTable GetSpareBillHistory(string billDocumentId, string table, string billId)
|
|
{
|
|
DataTable gridHistory = new DataTable();
|
|
string sqlValue = string.Format("select {0} from {1} where divide_bill='{2}'", billDocumentId, table, billId);
|
|
DataTable dt = SqlHelper.ExecuteDataTable(sqlValue);
|
|
string billDocumentNo = "{" + billDocumentId + "}";
|
|
string historysql = string.Empty;
|
|
foreach (DataRow item in dt.Rows)
|
|
{
|
|
historysql = ReplaceHelper.ReplaceRowParam(item, billDocumentNo);
|
|
DataTable dm = SqlHelper.ExecuteDataTable(historysql);
|
|
gridHistory.Merge(dm);
|
|
}
|
|
return gridHistory;
|
|
}
|
|
/// <summary>
|
|
/// <para>说明:设置billInfo动态列</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-09</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="menuCode">模块编号</param>
|
|
/// <param name="operatorName">角色名称.</param>
|
|
/// <returns>DataTable.</returns>
|
|
public static DataTable SetBillInfoColumns(string menuCode, string operatorName)
|
|
{
|
|
string sqlValue = string.Format(@"SELECT
|
|
isnull(CASE WHEN ISNULL(b.userList,'')='' AND ISNULL(a.PrivilegeView,'')<>'' THEN 0 ELSE width END,0) width,
|
|
isnull(CASE WHEN ISNULL(c.userList,'')='' AND ISNULL(a.PrivilegeView,'')<>'' THEN 1 ELSE edited END,0) isEdited,a.*
|
|
FROM p_PubRPSetDetailTab a
|
|
LEFT JOIN (
|
|
SELECT userList,privTypeId from p_systemPrivilege b where modId = '{0}'
|
|
AND CHARINDEX('{1}' + ',', userList + ',') > 0
|
|
) b on CHARINDEX(CAST(b.privTypeId AS VARCHAR(5)) + ',',a.PrivilegeView + ',') > 0
|
|
LEFT JOIN (
|
|
SELECT TOP 1 userList,privTypeId FROM p_systemPrivilege WHERE modId = '{0}'
|
|
AND CHARINDEX('{1}' + ',', USERLIST + ',') > 0
|
|
) c ON CHARINDEX(CAST(c.privTypeId AS VARCHAR(5)) + ',',a.PrivilegeOper + ',') > 0
|
|
WHERE modid='{0}' and isnull(isVisible,0)=0 order by a.orderid asc", menuCode, operatorName);
|
|
return SqlHelper.ExecuteDataTable(sqlValue);
|
|
}
|
|
|
|
/// <summary>
|
|
/// <para>说明:获取单据BillInfo数据</para>
|
|
/// <para>创建人:龚宇超</para>
|
|
/// <para>创建日期:2017-01-04</para>
|
|
/// <para>修改人:</para>
|
|
/// <para>修改日期:</para>
|
|
/// <para>修改备注:</para>
|
|
/// <para>版本:1.0</para>
|
|
/// </summary>
|
|
/// <param name="menuCode">模块编号</param>
|
|
/// <returns>DataTable.</returns>
|
|
public static DataTable GetBillMainInformation(string menuCode)
|
|
{
|
|
string sqlValue = "select fieldTypeId fieldsqltag,lookupResult fieldsqlname,lookupKeyField fieldsqlid,lookupSql fieldsql, * from p_systembillinfo where typecode=@typeCode and isnull(isvisible,0)=0";
|
|
return SqlHelper.ExecuteDataTable(sqlValue, new SqlParameter[] { new SqlParameter("@typeCode", menuCode) });
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// <para>说明:获取有代理权限的人员</para>
|
|
/// <para>创建人:</para>
|
|
/// <para>创建日期:2023-05-12</para>
|
|
/// <para>修改人:</para>
|
|
/// <para> |