调拨入库根据单位进行数量拆零
This commit is contained in:
parent
0eaf740192
commit
93f2aa106c
|
@ -311,11 +311,11 @@ namespace DM_Weight
|
||||||
private void PrismApplication_Startup(object sender, StartupEventArgs e)
|
private void PrismApplication_Startup(object sender, StartupEventArgs e)
|
||||||
{
|
{
|
||||||
// 配置数据库信息
|
// 配置数据库信息
|
||||||
SCHelper.Database.DBHelper.GetInstance().SetConnectionConfig(SCHelper.Database.SCDbType.MySQL,
|
//SCHelper.Database.DBHelper.GetInstance().SetConnectionConfig(SCHelper.Database.SCDbType.MySQL,
|
||||||
"127.0.0.1",
|
//"127.0.0.1",
|
||||||
"hunanxianchang_db",
|
//"hunanxianchang_db",
|
||||||
"root",
|
//"root",
|
||||||
"root");
|
//"root");
|
||||||
//获取欲启动程序名
|
//获取欲启动程序名
|
||||||
string processName = System.Diagnostics.Process.GetCurrentProcess().ProcessName;
|
string processName = System.Diagnostics.Process.GetCurrentProcess().ProcessName;
|
||||||
//检查程序是否已经启动,已经启动则显示提示退出程序
|
//检查程序是否已经启动,已经启动则显示提示退出程序
|
||||||
|
|
|
@ -0,0 +1,93 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using SqlSugar;
|
||||||
|
|
||||||
|
namespace DM_Weight.Models
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 盘点后药品库存数
|
||||||
|
/// </summary>
|
||||||
|
[SugarTable("check_stock")]
|
||||||
|
public class CheckRecordStockSqlSugar
|
||||||
|
{
|
||||||
|
[SugarColumn(ColumnName ="id",IsPrimaryKey = true)]
|
||||||
|
public int ID { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 抽屉号
|
||||||
|
/// </summary>
|
||||||
|
[SugarColumn(ColumnName = "drawer_no")]
|
||||||
|
public int rowNo { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 列号
|
||||||
|
/// </summary>
|
||||||
|
[SugarColumn(ColumnName = "col_no")]
|
||||||
|
public int colNo { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 数量
|
||||||
|
/// </summary>
|
||||||
|
[SugarColumn(ColumnName = "quantity")]
|
||||||
|
public int quantity { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 批次
|
||||||
|
/// </summary>
|
||||||
|
[SugarColumn(ColumnName = "manu_no")]
|
||||||
|
public string manuNo { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 效期
|
||||||
|
/// </summary>
|
||||||
|
[SugarColumn(ColumnName = "eff_date")]
|
||||||
|
public string effDate { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 药品名称
|
||||||
|
/// </summary>
|
||||||
|
[SugarColumn(IsIgnore =true)]
|
||||||
|
public string drugName { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 规格
|
||||||
|
/// </summary>
|
||||||
|
[SugarColumn(IsIgnore = true)]
|
||||||
|
public string drugSpec { get; set; }
|
||||||
|
//
|
||||||
|
[SugarColumn(IsIgnore = true)]
|
||||||
|
public string packUnit { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 厂商
|
||||||
|
/// </summary>
|
||||||
|
[SugarColumn(IsIgnore = true)]
|
||||||
|
public string manufactory { get; set; }
|
||||||
|
[SugarColumn(IsIgnore = true)]
|
||||||
|
public int maxStock { get; set; }
|
||||||
|
[SugarColumn(ColumnName = "drug_id")]
|
||||||
|
public string drugId { get; set; }
|
||||||
|
[SugarColumn(ColumnName = "machine_id")]
|
||||||
|
public string MachineId { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 批次总库存
|
||||||
|
/// </summary>
|
||||||
|
[SugarColumn(ColumnName = "check_quantity")]
|
||||||
|
public int ManuQuantity { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 操作时间
|
||||||
|
/// </summary>
|
||||||
|
[SugarColumn(ColumnName = "check_time")]
|
||||||
|
public string optdate { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 操作人
|
||||||
|
/// </summary>
|
||||||
|
[SugarColumn(ColumnName = "operator")]
|
||||||
|
public string operatorUser { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 审核人
|
||||||
|
/// </summary>
|
||||||
|
[SugarColumn(ColumnName = "reviewer")]
|
||||||
|
public string reviewerUser { get; set; }
|
||||||
|
|
||||||
|
public List<CheckRecordStock> manuNoDetails { get;set; }
|
||||||
|
|
||||||
|
[Navigate(NavigateType.OneToOne, nameof(drugId))]
|
||||||
|
public DrugInfo DrugInfo { get; set; }
|
||||||
|
}
|
||||||
|
}
|
|
@ -1291,8 +1291,8 @@ namespace DM_Weight.Services
|
||||||
totalCount = 0;
|
totalCount = 0;
|
||||||
PageNum = (PageNum - 1) * PageSize;
|
PageNum = (PageNum - 1) * PageSize;
|
||||||
string countSql = $@"SELECT Count(1) FROM (SELECT count(1) as Count, i.InvoiceNo, i.InvoiceDate, sum(i.quantity) as quantity, p1.pharmacy_name as PharmacyName1, p2.pharmacy_name PharmacyName2 from
|
string countSql = $@"SELECT Count(1) FROM (SELECT count(1) as Count, i.InvoiceNo, i.InvoiceDate, sum(i.quantity) as quantity, p1.pharmacy_name as PharmacyName1, p2.pharmacy_name PharmacyName2 from
|
||||||
(SELECT drug_id,in_pharmacy_id,out_pharmacy_id, invoice_no as InvoiceNo, DATE_FORMAT(Invoice_Date,'%Y-%m-%d') as InvoiceDate, SUM(quantity) as quantity
|
(SELECT inOutI.drug_id,in_pharmacy_id,out_pharmacy_id, invoice_no as InvoiceNo, DATE_FORMAT(Invoice_Date,'%Y-%m-%d') as InvoiceDate, SUM(if(inOutI.units=di.small_unit,quantity,quantity*convert_ratio)) as quantity
|
||||||
FROM in_out_invoice where status=0 and type!=2 and cancel_flag=0 GROUP BY invoice_no,drug_id) i
|
FROM in_out_invoice inOuti inner join drug_info di on inOutI.drug_id=di.Drug_ID where status=0 and type!=2 and cancel_flag=0 GROUP BY invoice_no,drug_id) i
|
||||||
inner join ( select c.drug_id as drug_id from channel_list c where c.machine_id = '{machine_id}' group by c.drug_id ) di on di.drug_id = i.drug_id
|
inner join ( select c.drug_id as drug_id from channel_list c where c.machine_id = '{machine_id}' group by c.drug_id ) di on di.drug_id = i.drug_id
|
||||||
left join pharmacy_info p1 on p1.pharmacy_id = i.in_pharmacy_id
|
left join pharmacy_info p1 on p1.pharmacy_id = i.in_pharmacy_id
|
||||||
left join pharmacy_info p2 on p2.pharmacy_id = i.out_pharmacy_id where 1=1";
|
left join pharmacy_info p2 on p2.pharmacy_id = i.out_pharmacy_id where 1=1";
|
||||||
|
@ -1324,8 +1324,8 @@ namespace DM_Weight.Services
|
||||||
|
|
||||||
var sb = new StringBuilder();
|
var sb = new StringBuilder();
|
||||||
sb.Append("SELECT Count,InvoiceNo,InvoiceDate,quantity,PharmacyName1,PharmacyName2 FROM (SELECT count(1) as Count, i.InvoiceNo, i.InvoiceDate, sum(i.quantity) as quantity, p1.pharmacy_name as PharmacyName1, p2.pharmacy_name PharmacyName2 from ");
|
sb.Append("SELECT Count,InvoiceNo,InvoiceDate,quantity,PharmacyName1,PharmacyName2 FROM (SELECT count(1) as Count, i.InvoiceNo, i.InvoiceDate, sum(i.quantity) as quantity, p1.pharmacy_name as PharmacyName1, p2.pharmacy_name PharmacyName2 from ");
|
||||||
sb.Append(" (SELECT drug_id,in_pharmacy_id,out_pharmacy_id, invoice_no as InvoiceNo, DATE_FORMAT(Invoice_Date,'%Y-%m-%d') as InvoiceDate, SUM(quantity) as quantity ");
|
sb.Append(" (SELECT inOutI.drug_id,in_pharmacy_id,out_pharmacy_id, invoice_no as InvoiceNo, DATE_FORMAT(Invoice_Date,'%Y-%m-%d') as InvoiceDate, SUM(if(inOutI.units=di.small_unit,quantity,quantity*convert_ratio)) as quantity ");
|
||||||
sb.Append(" FROM in_out_invoice where status=0 and type!=2 and cancel_flag=0 GROUP BY invoice_no,drug_id) i ");
|
sb.Append(" FROM in_out_invoice inOuti inner join drug_info di on inOutI.drug_id=di.Drug_ID where status=0 and type!=2 and cancel_flag=0 GROUP BY invoice_no,drug_id) i ");
|
||||||
sb.Append($" inner join ( select c.drug_id as drug_id from channel_list c where c.machine_id = '{machine_id}' group by c.drug_id ) di on di.drug_id = i.drug_id");
|
sb.Append($" inner join ( select c.drug_id as drug_id from channel_list c where c.machine_id = '{machine_id}' group by c.drug_id ) di on di.drug_id = i.drug_id");
|
||||||
sb.Append(" left join pharmacy_info p1 on p1.pharmacy_id = i.in_pharmacy_id");
|
sb.Append(" left join pharmacy_info p1 on p1.pharmacy_id = i.in_pharmacy_id");
|
||||||
sb.Append(" left join pharmacy_info p2 on p2.pharmacy_id = i.out_pharmacy_id where 1=1");
|
sb.Append(" left join pharmacy_info p2 on p2.pharmacy_id = i.out_pharmacy_id where 1=1");
|
||||||
|
@ -1498,9 +1498,10 @@ namespace DM_Weight.Services
|
||||||
con.Open();
|
con.Open();
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
string sql = $@"SELECT id,in_pharmacy_id,out_pharmacy_id,storage,invoice_no,invoice_date,drug_id,drug_spec,
|
string sql = $@"SELECT inOutI.id,inOutI.in_pharmacy_id,inOutI.out_pharmacy_id,inOutI.storage,inOutI.invoice_no,inOutI.invoice_date,inOutI.drug_id,inOutI.drug_spec,
|
||||||
quantity,drug_manu_no,supplier,operator,drug_eff_date FROM in_out_invoice WHERE ((((( invoice_no = '{invoiceNo}' )
|
if(inOuti.units=di.small_unit,quantity,quantity*convert_ratio) as quantity,inOutI.drug_manu_no,inOutI.supplier,inOutI.operator,inOutI.drug_eff_date
|
||||||
AND ( drug_id = '{drugId}' )) AND ( status = 0 )) AND ( type <> 2 )) AND ( cancel_flag = 0 ))";
|
FROM in_out_invoice inOutI inner join drug_info di on inOutI.drug_id=di.Drug_ID WHERE ((((( inOutI.invoice_no = '{invoiceNo}' )
|
||||||
|
AND ( inOutI.drug_id = '{drugId}' )) AND ( inOutI.status = 0 )) AND ( inOutI.type <> 2 )) AND ( inOutI.cancel_flag = 0 ))";
|
||||||
DataSet ds = new DataSet();
|
DataSet ds = new DataSet();
|
||||||
MySqlDataAdapter sda = new MySqlDataAdapter(sql, con);
|
MySqlDataAdapter sda = new MySqlDataAdapter(sql, con);
|
||||||
sda.Fill(ds);
|
sda.Fill(ds);
|
||||||
|
@ -1639,6 +1640,7 @@ namespace DM_Weight.Services
|
||||||
MySqlTransaction transaction = con.BeginTransaction();
|
MySqlTransaction transaction = con.BeginTransaction();
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
logger.Info("保存——调拨入库");
|
||||||
string InvoiceNo = SelectedInvoice.InvoiceNo;
|
string InvoiceNo = SelectedInvoice.InvoiceNo;
|
||||||
string strSql = $@"UPDATE in_out_invoice SET STATUS=1 WHERE invoice_no='{InvoiceNo}'";
|
string strSql = $@"UPDATE in_out_invoice SET STATUS=1 WHERE invoice_no='{InvoiceNo}'";
|
||||||
MySqlCommand cmd = new MySqlCommand();
|
MySqlCommand cmd = new MySqlCommand();
|
||||||
|
@ -1659,6 +1661,10 @@ namespace DM_Weight.Services
|
||||||
{
|
{
|
||||||
logger.Info($"channel_stock未更新数据{updateSql}");
|
logger.Info($"channel_stock未更新数据{updateSql}");
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
logger.Info($"channel_stock更新数据{updateSql}");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -1684,6 +1690,10 @@ namespace DM_Weight.Services
|
||||||
{
|
{
|
||||||
logger.Info($"SaveInvoiceIn未更新数据{uSql}");
|
logger.Info($"SaveInvoiceIn未更新数据{uSql}");
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
logger.Info($"SaveInvoiceIn更新数据{uSql}");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -1697,6 +1707,10 @@ namespace DM_Weight.Services
|
||||||
{
|
{
|
||||||
logger.Info($"SaveInvoiceIn未新增数据——{insertSql}");
|
logger.Info($"SaveInvoiceIn未新增数据——{insertSql}");
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
logger.Info($"SaveInvoiceIn新增数据——{insertSql}");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 获取更新完库存后的药品库存
|
// 获取更新完库存后的药品库存
|
||||||
|
@ -1729,8 +1743,14 @@ namespace DM_Weight.Services
|
||||||
{
|
{
|
||||||
logger.Info($"SaveInvoiceIn-dm_machine_record未新增数据——{iSql}");
|
logger.Info($"SaveInvoiceIn-dm_machine_record未新增数据——{iSql}");
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
logger.Info($"SaveInvoiceIn-dm_machine_record新增数据——{iSql}");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
bResult = true;
|
||||||
|
transaction.Commit();
|
||||||
//根据ChannelLsts中的库位,删除该库位库存为0的记录
|
//根据ChannelLsts中的库位,删除该库位库存为0的记录
|
||||||
|
|
||||||
string delSql = $@"DELETE FROM channel_stock WHERE MACHINE_ID='{machine_id}' AND QUANTITY<=0";
|
string delSql = $@"DELETE FROM channel_stock WHERE MACHINE_ID='{machine_id}' AND QUANTITY<=0";
|
||||||
cmd.CommandText = delSql;
|
cmd.CommandText = delSql;
|
||||||
iResult = cmd.ExecuteNonQuery();
|
iResult = cmd.ExecuteNonQuery();
|
||||||
|
@ -1738,9 +1758,10 @@ namespace DM_Weight.Services
|
||||||
{
|
{
|
||||||
logger.Info($"SaveInvoiceIn-删除未执行任何数据——{delSql}");
|
logger.Info($"SaveInvoiceIn-删除未执行任何数据——{delSql}");
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
logger.Info($"SaveInvoiceIn-删除执行sql——{delSql}");
|
||||||
}
|
}
|
||||||
bResult = true;
|
|
||||||
transaction.Commit();
|
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
|
@ -1995,7 +2016,7 @@ namespace DM_Weight.Services
|
||||||
logger.Info($"批号重复不让添加{it.DrawerType}-{it.ManuNo}-{machine_id}");
|
logger.Info($"批号重复不让添加{it.DrawerType}-{it.ManuNo}-{machine_id}");
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
string chnguid = it.Chnguid==null ? it.ChannelLst.Id : it.Chnguid;
|
string chnguid = it.Chnguid == null ? it.ChannelLst.Id : it.Chnguid;
|
||||||
//更新数据 库存信息
|
//更新数据 库存信息
|
||||||
string insertSql = $@"INSERT INTO channel_stock(QUANTITY,CHNGUID,MANU_NO,EFF_DATE,ROW_NO,COL_NO,DRUG_ID,DRAWER_TYPE,BOARD_TYPE,CHSGUID,MACHINE_ID)
|
string insertSql = $@"INSERT INTO channel_stock(QUANTITY,CHNGUID,MANU_NO,EFF_DATE,ROW_NO,COL_NO,DRUG_ID,DRAWER_TYPE,BOARD_TYPE,CHSGUID,MACHINE_ID)
|
||||||
VALUES({it.AddQuantity},'{chnguid}','{it.ManuNo}','{it.EffDate}',{it.DrawerNo},{it.ColNo},'{it.DrugId}','{it.DrawerType}','{it.BoardType}','{Guid.NewGuid().ToString()}','{machine_id}')";
|
VALUES({it.AddQuantity},'{chnguid}','{it.ManuNo}','{it.EffDate}',{it.DrawerNo},{it.ColNo},'{it.DrugId}','{it.DrawerType}','{it.BoardType}','{Guid.NewGuid().ToString()}','{machine_id}')";
|
||||||
|
@ -3063,6 +3084,7 @@ namespace DM_Weight.Services
|
||||||
|
|
||||||
transaction.Commit();
|
transaction.Commit();
|
||||||
bFlag = true;
|
bFlag = true;
|
||||||
|
logger.Info($"解绑药品完成CHNGUID:{chnguid}");
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
|
@ -3400,8 +3422,8 @@ namespace DM_Weight.Services
|
||||||
// 保存数据 盘点后药品总库存及批次库存数
|
// 保存数据 盘点后药品总库存及批次库存数
|
||||||
string insertCheckRecordStockSql = $@"INSERT INTO check_stock(row_no,COL_NO,QUANTITY,MANU_NO,EFF_DATE,DRUG_NAME,DRUG_SPEC,PACK_UNIT,MANUFACTORY,MAX_STOCK,
|
string insertCheckRecordStockSql = $@"INSERT INTO check_stock(row_no,COL_NO,QUANTITY,MANU_NO,EFF_DATE,DRUG_NAME,DRUG_SPEC,PACK_UNIT,MANUFACTORY,MAX_STOCK,
|
||||||
DRUG_ID,MACHINE_ID,MANUqUANTITY,OPTDATE,OPERATOR,REVIEWER)
|
DRUG_ID,MACHINE_ID,MANUqUANTITY,OPTDATE,OPERATOR,REVIEWER)
|
||||||
VALUES({cStock.rowNo},{cStock.colNo},{manuQuantiy},'{cStock.manuNo}','{cStock.effDate}','{cStock.drugName}','{cStock.manufactory}','{cStock.drugSpec}','{cStock.packUnit}',
|
VALUES({cStock.rowNo},{cStock.colNo},{quantity},'{cStock.manuNo}','{cStock.effDate}','{cStock.drugName}','{cStock.manufactory}','{cStock.drugSpec}','{cStock.packUnit}',
|
||||||
{cStock.maxStock},'{cStock.drugId}','{cStock.MachineId}',{quantity},'{DateTime.Now.ToString()}','{operatorUser}','{reviewerUser}')";
|
{cStock.maxStock},'{cStock.drugId}','{cStock.MachineId}',{manuQuantiy},'{DateTime.Now.ToString()}','{operatorUser}','{reviewerUser}')";
|
||||||
cmd.CommandText = insertCheckRecordStockSql;
|
cmd.CommandText = insertCheckRecordStockSql;
|
||||||
int iResult = cmd.ExecuteNonQuery();
|
int iResult = cmd.ExecuteNonQuery();
|
||||||
if (iResult <= 0)
|
if (iResult <= 0)
|
||||||
|
@ -3560,7 +3582,7 @@ namespace DM_Weight.Services
|
||||||
string strSql = $@"SELECT CKS.ID,CKS.ROW_NO,CKS.COL_NO,CKS.QUANTITY,CKS.MANU_NO,CKS.EFF_DATE,CKS.DRUG_NAME,CKS.DRUG_SPEC,CKS.PACK_UNIT,CKS.MANUFACTORY,CKS.MAX_STOCK,CKS.DRUG_ID,CKS.MACHINE_ID,
|
string strSql = $@"SELECT CKS.ID,CKS.ROW_NO,CKS.COL_NO,CKS.QUANTITY,CKS.MANU_NO,CKS.EFF_DATE,CKS.DRUG_NAME,CKS.DRUG_SPEC,CKS.PACK_UNIT,CKS.MANUFACTORY,CKS.MAX_STOCK,CKS.DRUG_ID,CKS.MACHINE_ID,
|
||||||
CKS.MANUQUANTITY,CKS.OPTDATE,CKS.OPERATOR,CKS.REVIEWER,
|
CKS.MANUQUANTITY,CKS.OPTDATE,CKS.OPERATOR,CKS.REVIEWER,
|
||||||
DI.PY_CODE,DI.DRUG_BARCODE,DI.DRUG_BRAND_NAME,DI.DRUG_SPEC,DI.MANUFACTORY
|
DI.PY_CODE,DI.DRUG_BARCODE,DI.DRUG_BRAND_NAME,DI.DRUG_SPEC,DI.MANUFACTORY
|
||||||
FROM check_stock CKS INNER JOIN DRUG_INFO DI ON CKS.DRUG_ID=DI.DRUG_ID WHERE optdate='{optDate}'";
|
FROM check_stock CKS INNER JOIN DRUG_INFO DI ON CKS.DRUG_ID=DI.DRUG_ID WHERE optdate='{optDate}' ORDER BY CKS.DRUG_ID";
|
||||||
MySqlDataAdapter dataAdapter = new MySqlDataAdapter(strSql, con);
|
MySqlDataAdapter dataAdapter = new MySqlDataAdapter(strSql, con);
|
||||||
DataSet ds = new DataSet();
|
DataSet ds = new DataSet();
|
||||||
dataAdapter.Fill(ds);
|
dataAdapter.Fill(ds);
|
||||||
|
|
|
@ -510,6 +510,7 @@ namespace DM_Weight.ViewModels
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
logger.Info($"解绑药品{item.DrugId}");
|
||||||
item.DrugId = null;
|
item.DrugId = null;
|
||||||
//item.ManuNo = null;
|
//item.ManuNo = null;
|
||||||
//item.EffDate = null;
|
//item.EffDate = null;
|
||||||
|
|
|
@ -553,113 +553,6 @@ namespace DM_Weight.ViewModels
|
||||||
_isFinishClick = true;
|
_isFinishClick = true;
|
||||||
List<ChannelStock> record = ChannelStocks.Where(cs => cs.AddQuantity > 0).ToList();
|
List<ChannelStock> record = ChannelStocks.Where(cs => cs.AddQuantity > 0).ToList();
|
||||||
string InvoiceId = SelectedInvoice.InvoiceNo;
|
string InvoiceId = SelectedInvoice.InvoiceNo;
|
||||||
//var f = SqlSugarHelper.Db.UseTran(() =>
|
|
||||||
//{
|
|
||||||
// SqlSugarHelper.Db.Updateable(new InOutInvoice()
|
|
||||||
// {
|
|
||||||
// Status = 1,
|
|
||||||
// InvoiceNo = SelectedInvoice.InvoiceNo
|
|
||||||
// }).UpdateColumns(it => new { it.Status }).WhereColumns(it => new { it.InvoiceNo }).ExecuteCommand();
|
|
||||||
|
|
||||||
// for (int i = 0; i < record.Count; i++)
|
|
||||||
// {
|
|
||||||
|
|
||||||
|
|
||||||
// ChannelStock it = record[i];
|
|
||||||
// if (it.BoardType == 6 && it.PosNo == 0)
|
|
||||||
// {
|
|
||||||
// _portUtil.SetNumCount(it.DrawerNo, it.ColNo, it.AddQuantity);
|
|
||||||
// }
|
|
||||||
// if (it.Id != null)
|
|
||||||
// {
|
|
||||||
// // 更新数据 库存信息
|
|
||||||
// SqlSugarHelper.Db.Updateable(new ChannelStock()
|
|
||||||
// {
|
|
||||||
// Quantity = it.Quantity + it.AddQuantity,
|
|
||||||
// ManuNo = it.ManuNo,
|
|
||||||
// EffDate = it.EffDate,
|
|
||||||
// Id = it.Id,
|
|
||||||
// }).UpdateColumns(it => new { it.Quantity, it.ManuNo, it.EffDate }).ExecuteCommand();
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// //如果批号重复则不让添加
|
|
||||||
// List<ChannelStock> csCount = SqlSugarHelper.Db.Queryable<ChannelStock>().Where(cs => cs.DrawerNo == it.DrawerNo && cs.ColNo == it.ColNo && cs.ManuNo == it.ManuNo && cs.MachineId.Equals(ConfigurationManager.AppSettings["machineId"] ?? "DM1") && cs.Quantity > 0).ToList();
|
|
||||||
// if (csCount.Count > 0)
|
|
||||||
// {
|
|
||||||
// //repeatList.Add(it.ManuNo);
|
|
||||||
// //stockRepeats.Add(it);
|
|
||||||
// continue;
|
|
||||||
// }
|
|
||||||
// //查询现有库位中是否有库存为0的记录,如果有直接update
|
|
||||||
// ChannelStock recordHistory = SqlSugarHelper.Db.Queryable<ChannelStock>().Where(cs => cs.DrawerNo == it.DrawerNo && cs.ColNo == it.ColNo && cs.MachineId.Equals(ConfigurationManager.AppSettings["machineId"] ?? "DM1") && cs.Quantity <= 0).First();
|
|
||||||
// if (recordHistory != null && recordHistory.Id != null)
|
|
||||||
// {
|
|
||||||
// SqlSugarHelper.Db.Updateable<ChannelStock>().SetColumns(item => new ChannelStock()
|
|
||||||
// {
|
|
||||||
// Quantity = it.AddQuantity,
|
|
||||||
// ManuNo = it.ManuNo,
|
|
||||||
// EffDate = it.EffDate
|
|
||||||
// }).Where(item => item.Id == recordHistory.Id).ExecuteCommand();
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// // 更新数据 库存信息
|
|
||||||
// SqlSugarHelper.Db.Insertable(new ChannelStock()
|
|
||||||
// {
|
|
||||||
// Quantity = it.AddQuantity,
|
|
||||||
// Chnguid = it.Chnguid,
|
|
||||||
// ManuNo = it.ManuNo,
|
|
||||||
// EffDate = it.EffDate,
|
|
||||||
// DrawerNo = it.DrawerNo,
|
|
||||||
// ColNo = it.ColNo,
|
|
||||||
// DrugId = it.DrugId,
|
|
||||||
// DrawerType = it.DrawerType,
|
|
||||||
// BoardType = it.BoardType,
|
|
||||||
// Id = Guid.NewGuid().ToString(),
|
|
||||||
// MachineId = ConfigurationManager.AppSettings["machineId"] ?? "DM1"
|
|
||||||
// }).ExecuteCommand();
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// // 获取更新完库存后的药品库存
|
|
||||||
// List<ChannelStock> nowChannels = SqlSugarHelper.Db.Queryable<ChannelStock>()
|
|
||||||
// .Where(cs => cs.MachineId.Equals(it.MachineId))
|
|
||||||
// .Where(cs => cs.DrugId.Equals(it.DrugId))
|
|
||||||
// .Where(cs => cs.DrawerType == 1)
|
|
||||||
// .ToList();
|
|
||||||
|
|
||||||
// // 保存数据 出/入库记录
|
|
||||||
// SqlSugarHelper.Db.Insertable(new MachineRecord()
|
|
||||||
// {
|
|
||||||
// MachineId = it.MachineId,
|
|
||||||
// DrawerNo = it.DrawerNo,
|
|
||||||
// ColNo = it.ColNo,
|
|
||||||
// DrugId = it.DrugId,
|
|
||||||
// ManuNo = it.ManuNo,
|
|
||||||
// EffDate = !String.IsNullOrEmpty(it.EffDate) ? DateTime.ParseExact(it.EffDate, "yyyy-MM-dd", System.Globalization.CultureInfo.CurrentCulture) : null,
|
|
||||||
// Operator = HomeWindowViewModel.Operator?.Id,
|
|
||||||
// Reviewer = HomeWindowViewModel.Reviewer?.Id,
|
|
||||||
// OperationTime = DateTime.Now,
|
|
||||||
// Quantity = it.AddQuantity,
|
|
||||||
// Type = 1,
|
|
||||||
// InvoiceId = InvoiceId,
|
|
||||||
// StockQuantity = nowChannels.Sum(it => it.Quantity),
|
|
||||||
// ManunoQuantity = nowChannels.FindAll(it2 => it2.ManuNo == it.ManuNo).Sum(it => it.Quantity),
|
|
||||||
// SupplierDept = SelectedInvoice.PharmacyName1 ?? ConfigurationManager.AppSettings["supplierDept"].ToString(),
|
|
||||||
// ReceiveDept = SelectedInvoice.PharmacyName2 ?? ConfigurationManager.AppSettings["receiveDept"].ToString()
|
|
||||||
// }).ExecuteCommand();
|
|
||||||
// }
|
|
||||||
// if (ChannelLsts != null && ChannelLsts.Count > 0)
|
|
||||||
// {
|
|
||||||
// for (int i = 0; i < ChannelLsts.Count; i++)
|
|
||||||
// {
|
|
||||||
// //根据ChannelLsts中的库位,删除该库位库存为0的记录
|
|
||||||
// SqlSugarHelper.Db.Deleteable<ChannelStock>()
|
|
||||||
// .Where(cs => cs.Quantity <= 0 && cs.DrugId == ChannelLsts[i].DrugId && cs.MachineId == ChannelLsts[i].MachineId).ExecuteCommand();
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// return true;
|
|
||||||
//});
|
|
||||||
bool bFlag = _mysqlHelper.SaveInvoiceIn(record, SelectedInvoice);
|
bool bFlag = _mysqlHelper.SaveInvoiceIn(record, SelectedInvoice);
|
||||||
if (bFlag)
|
if (bFlag)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue