药品信息页面中基数表查询添加machine_id条件

This commit is contained in:
maqiao 2025-04-30 16:39:28 +08:00
parent 7f3dd5cc24
commit 1436ad66b4
5 changed files with 35 additions and 13 deletions

View File

@ -83,7 +83,7 @@ namespace DM_Weight.Models
public int ManuStock { get; set; }
/// <summary>
/// 总结存
/// 湘谭的报表此字段用于记录空瓶数 -- 总结存
/// </summary>
[SugarColumn(ColumnName = "total_stock")]
public int TotalStock { get; set; }

View File

@ -15,7 +15,7 @@ namespace DM_Weight.Models
public class DrugBase:BindableBase
{
private int _baseId = 0;
[SugarColumn(ColumnName = "id", IsPrimaryKey = true)]
[SugarColumn(ColumnName = "baseid", IsPrimaryKey = true)]
public int BaseId { get=> _baseId; set { SetProperty(ref _baseId, value); } }
private string _drugId = "0";
[SugarColumn(ColumnName = "drugid")]
@ -24,7 +24,7 @@ namespace DM_Weight.Models
[SugarColumn(ColumnName = "machine_id")]
public string MachineId { get => _machineId; set { SetProperty(ref _machineId, value); } }
private int _baseQuantity = 0;
[SugarColumn(ColumnName = "base_quantity")]
[SugarColumn(ColumnName = "basequantity")]
public int BaseQuantity { get=>_baseQuantity; set{ SetProperty(ref _baseQuantity, value); } }
}

View File

@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using Prism.Mvvm;
using SqlSugar;
@ -60,7 +61,7 @@ namespace DM_Weight.Models
/// <summary>
/// <20><>װ<EFBFBD><D7B0>λ
///</summary>
[SugarColumn(ColumnName = "pack_unit")]
[SugarColumn(ColumnName = "Big_unit")]
public string PackUnit { get; set; }
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@ -86,7 +87,7 @@ namespace DM_Weight.Models
public int? StockQuantity { get; set; }
private DrugBase _base;
[Navigate(NavigateType.OneToOne, nameof(DrugBase.DrugId), nameof(DrugId))]
[Navigate(NavigateType.OneToOne, nameof(DrugBase.DrugId), nameof(DrugId), whereSql: "machine_id='DM3'")]
public DrugBase drugBase
{
get=> _base;

View File

@ -16,6 +16,7 @@ using DM_Weight.msg;
using Prism.Events;
using System.Configuration;
using static Unity.Storage.RegistrationSet;
using SqlSugar;
namespace DM_Weight.ViewModels
{
@ -362,12 +363,23 @@ namespace DM_Weight.ViewModels
{
int totalCount = 0;
DrugInfos = SqlSugarHelper.Db.Queryable<DrugInfo>()
//.LeftJoin<DrugBase>((di, db) => di.DrugId == db.DrugId && db.MachineId.Equals(ConfigurationManager.AppSettings["machineId"] ?? "DM1"))
.Includes(di=>di.drugBase)
.WhereIF(!String.IsNullOrEmpty(SearchValue) && SelectedItem.Code.Equals("DrugId"), (di) => di.DrugId.ToString().Contains(SearchValue))
.WhereIF(!String.IsNullOrEmpty(SearchValue) && SelectedItem.Code.Equals("DrugName"), (di) => di.DrugName.Contains(SearchValue))
.WhereIF(!String.IsNullOrEmpty(SearchValue) && SelectedItem.Code.Equals("PyCode"), (di) => di.PyCode.Contains(SearchValue))
.WhereIF(!String.IsNullOrEmpty(SearchValue) && SelectedItem.Code.Equals("DrugBarcode"), (di) => di.DrugBarcode.Contains(SearchValue))
//.Select(di => di)
//.Select((di, db) => new DrugInfo()
//{
// DrugName = di.DrugName,
// DrugId = di.DrugId,
// DrugBarcode = di.DrugBarcode,
// DrugSpec = di.DrugSpec,
// PyCode = di.PyCode,
// PackUnit=di.PackUnit,
// Manufactory=di.Manufactory,
// drugBase = db,
//})
.ToPageList(PageNum, PageSize, ref totalCount);
foreach (DrugInfo di in DrugInfos)
{

View File

@ -259,8 +259,9 @@ namespace DM_Weight.ViewModels
}).UpdateColumns(it => new { it.Quantity, it.ManuNo, it.EffDate, it.PosNo }).ExecuteCommand();
// 获取更新完库存后的药品库存
List<ChannelStock> nowChannels = SqlSugarHelper.Db.Queryable<ChannelStock>()
.Where(cs => cs.MachineId.Equals(it.MachineId))
.Where(cs => cs.MachineId.Equals(it.MachineId)||cs.MachineId.Equals(ConfigurationManager.AppSettings["jj_machineId"]))
.Where(cs => cs.DrugId.Equals(it.DrugId))
.Where(cs=>cs.ManuNo.Equals(it.ManuNo))
.Where(cs => cs.DrawerType == 1)
.ToList();
@ -282,6 +283,12 @@ namespace DM_Weight.ViewModels
//,StockQuantity = nowChannels.Sum(it => it.Quantity)
}).ExecuteCommand();
//查询上一条账册中的空瓶数
AccountBookG2 accountBookEmpty = SqlSugarHelper.Db.Queryable<AccountBookG2>()
.Where(ab => ab.MachineId.Equals(ConfigurationManager.AppSettings["machineId"].ToString()))
.Where(ab => ab.Type == 1 || ab.Type == 2)
.Where(ab => ab.DrugId == it.DrugId)
.Where(ab => ab.ManuNo == it.ManuNo).OrderByDescending(ab => ab.Id).First();
//保存账册
SqlSugarHelper.Db.Insertable(new AccountBookG2()
{
@ -296,7 +303,9 @@ namespace DM_Weight.ViewModels
UserId2 = HomeWindowViewModel.Reviewer?.Id,
MachineId = ConfigurationManager.AppSettings["machineId"].ToString(),
CreateDate = DateTime.Now.ToString("yyyy-MM-dd"),
CreateTime = DateTime.Now
CreateTime = DateTime.Now,
ManuStock= nowChannels.Sum(it => it.Quantity),
TotalStock= (accountBookEmpty!=null?(accountBookEmpty.TotalStock>0&& accountBookEmpty.TotalStock>it.AddQuantity ? accountBookEmpty.TotalStock - it.AddQuantity : 0):0) //负数直接记0
}).ExecuteCommand();
//修改凌晨生成的日结存数据