PSI.DAL/StockChangeDAL.cs
(开头部分) 9KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using PSI.Common;
using PSI.DbUtility;
using PSI.Models.VModels;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace PSI.DAL
{
public class StockChangeDAL
{
/// <summary>
/// 获取指定商品的变动记录DataTable
/// </summary>
/// <param name="goodsId"></param>
/// <param name="storeId"></param>
/// <param name="storeName"></param>
/// <returns></returns>
public DataTable GetGoodsStockChangeDt(int goodsId,int storeId,string storeName)
{
string sql = "select row_number() over (order by StockChangeId) Id,StockChangeId,ShType,s.StoreId,GoodsId,InCount,OutCount,CurCount from StockChangeInfos sc left join StoreInfos s on sc.StoreId=s.StoreId where GoodsId=@goodsId";
if (storeId > 0)
sql += " and s.StoreId=@storeId";
else if (!string.IsNullOrEmpty(storeName))
sql += " and s.StoreName like @storeName";
SqlParameter[] paras =
{
new SqlParameter("@goodsId",goodsId),
new SqlParameter("@storeId",storeId),
new SqlParameter("@storeName", $"%{storeName}%")
};
DataTable dtChanges = SqlHelper.GetDataTable(sql, 1, paras);
if(dtChanges.Rows.Count >0)
{
//以下三种单据、ViewPerStockGoodsChangeInfos ViewSaleStockGoodsChangeInfos ViewStStockGoodsChangeInfos
for (int i = 0; i < dtChanges.Rows.Count; i++)
{
string sqlInfo = "select SheetId,SheetNo,StoreName,GoodsName,GoodsNo,GUnit,CheckPerson,CheckTime,IsChecked,DealPerson,Creator,CreateTime";
int changeId = dtChanges.Rows[i]["StockChangeId"].ToString().GetInt();
int shType = dtChanges.Rows[i]["ShType"].ToString().GetInt();
if (shType == 1)
sqlInfo += ",Price";
else if (shType == 2)
sqlInfo += ",Price,StPrice";
else if (shType == 3)
sqlInfo += ",StPrice";
sqlInfo += " from ";
switch (shType)
{
case 1:
sqlInfo += "ViewPerStockGoodsChangeInfos";
break;
case 2:
sqlInfo += "ViewSaleStockGoodsChangeInfos";
break;
case 3:
后面还有 82 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。