Browse Source

增补及页面调整

SCP_CYJ
钱峰 2 days ago
parent
commit
9a32e11a1c
  1. 4
      Controller/SCP_ASK_CONTROLLER.cs
  2. 25
      Controller/SCP_ASN_CONTROLLER.cs
  3. 28
      Controller/SCP_CONTRACT_CONTROLLER.cs
  4. 581
      Controller/SCP_INVOICE_CONTROLLER.cs
  5. 30
      Controller/SCP_PO_CONTROLLER.cs
  6. 3
      Models/CK.SCP.Models.csproj
  7. 2
      Models/ScpEntities.cs
  8. 15
      Models/ScpEntity/ExcelExportEnttity/SCP_CHECKPARTANDVENDER_EXPORT.cs
  9. 18
      Models/ScpEntity/TA_CHECKPARTANDVEND.cs
  10. 21
      Models/ScpEntity/V_TA_CheckPartsAndVend.cs
  11. 16
      SCP/SCP.csproj
  12. 82
      SCP/Views/BasicData/SCP_CheckPartsAndVend.aspx
  13. 177
      SCP/Views/BasicData/SCP_CheckPartsAndVend.aspx.cs
  14. 215
      SCP/Views/BasicData/SCP_CheckPartsAndVend.aspx.designer.cs
  15. 38
      SCP/Views/BasicData/SCP_CheckPartsAndVend_EDIT.aspx
  16. 74
      SCP/Views/BasicData/SCP_CheckPartsAndVend_EDIT.aspx.cs
  17. 89
      SCP/Views/BasicData/SCP_CheckPartsAndVend_EDIT.aspx.designer.cs
  18. 2
      SCP/Views/PlanData/SCP_ASK.aspx
  19. 2
      SCP/Views/PlanData/SCP_ASK.aspx.cs
  20. 72
      SCP/Views/富维冲压件/SCP_MAXPO_INCOMPLETE.aspx
  21. 4
      SCP/Views/富维冲压件/SCP_MAXPO_INCOMPLETE.aspx.cs
  22. 7
      SCP/Views/富维冲压件/SCP_MAXPO_INCOMPLETE_DETAIL.aspx
  23. 2
      SCP/Views/富维冲压件/SCP_PO_MAX_DETAIL.aspx
  24. 6
      SCP/Views/富维冲压件/SCP_PO_MAX_DETAIL.aspx.cs
  25. 3
      UniApiGroup/Controller/OdbcApiQadController.cs
  26. 3
      UniApiGroup/Controller/OdbcApiWmsController.cs

4
Controller/SCP_ASK_CONTROLLER.cs

@ -1918,12 +1918,14 @@ namespace CK.SCP.Controller
{
_tDetail.VendBatch = itm.VendBatch;
}
if (_t.PoBillNum.Length>=5)
{
if (_t.PoBillNum.Substring(0, 5) == "CYD03" && _t.Site == "W21")
{
var podetail = db.TB_PO_DETAIL.FirstOrDefault(t => t.PoBillNum == _t.PoBillNum && t.PartCode == itm.PartCode && t.PoLine == itm.PoLine);
_tDetail.VendBatch = podetail.SubSite + "," + podetail.Extend3 + "," + itm.VendBatch + "#";
}
}
_tDetail.UpdateUser = itm.VendBatch;
_tDetail.PackQty = itm.PackQty == 0 ? 1 : itm.PackQty;
_tDetail.PartCode = itm.PartCode;

25
Controller/SCP_ASN_CONTROLLER.cs

@ -3036,25 +3036,25 @@ namespace CK.SCP.Controller
{
p_entitys.ForEach(p =>
{
var _maxpolist = db.TB_MAXPO_DETAIL.Where(t => t.PartCode == p.PartCode && t.VendId == p.Extend1&&t.AsnQty>0 && !t.IsDeleted).ToList().OrderBy(t=>t.ContractMonth);
var _maxpolist = db.TB_MAXPO_DETAIL.Where(t => t.PartCode == p.PartCode && t.VendId == p.Extend1&&t.SurplusQty>0 && !t.IsDeleted).ToList().OrderBy(t=>t.ContractMonth);
decimal sum = 0;
if (_maxpolist.Count() > 0)
{
sum = _maxpolist.Sum(t => t.AsnQty);
sum = _maxpolist.Sum(t => t.SurplusQty);
}
decimal Qtyy = p.Qty;
if(sum< Qtyy)
{
_ret.MessageList.Add(string.Format("确认发货失败,零件号{0}大订单剩余数量不足,请联系业务人员维护", p.PartCode));
_ret.MessageList.Add(string.Format("确认发货失败,零件号{0}大订单剩余数量不足,剩余{1},请联系业务人员维护", p.PartCode,sum));
}
else
{
foreach (var _maxpo in _maxpolist)
{
if (_maxpo.AsnQty > Qtyy)
if (_maxpo.SurplusQty > Qtyy)
{
_maxpo.AsnQty = _maxpo.AsnQty - Qtyy;
TB_MAXPO_CONSUME consumne = new TB_MAXPO_CONSUME();
consumne.PoBillNum = _maxpo.PoBillNum;
consumne.BillNum = p.AsnBillNum;
@ -3064,11 +3064,9 @@ namespace CK.SCP.Controller
consumne.ShipTime = _maxpo.CreateTime;
consumlist.Add(consumne);
db.TB_MAXPO_DETAIL.AddOrUpdate(_maxpo);
break;
}
else if (_maxpo.AsnQty == Qtyy)
else if (_maxpo.SurplusQty == Qtyy)
{
TB_MAXPO_CONSUME consumne = new TB_MAXPO_CONSUME();
consumne.PoBillNum = _maxpo.PoBillNum;
@ -3078,26 +3076,21 @@ namespace CK.SCP.Controller
consumne.PartCode = _maxpo.PartCode;
consumne.ShipTime = _maxpo.CreateTime;
consumlist.Add(consumne);
_maxpo.AsnQty = 0;
db.TB_MAXPO_DETAIL.AddOrUpdate(_maxpo);
break;
}
else if (_maxpo.AsnQty < Qtyy)
else if (_maxpo.SurplusQty < Qtyy)
{
TB_MAXPO_CONSUME consumne = new TB_MAXPO_CONSUME();
consumne.PoBillNum = _maxpo.PoBillNum;
consumne.BillNum = p.AsnBillNum;
consumne.PoQty = _maxpo.AsnQty;
consumne.PoQty = _maxpo.SurplusQty;
consumne.VendId = _maxpo.VendId;
consumne.PartCode = _maxpo.PartCode;
consumne.ShipTime = _maxpo.CreateTime;
Qtyy = Qtyy - _maxpo.AsnQty;
Qtyy = Qtyy - _maxpo.SurplusQty;
consumlist.Add(consumne);
_maxpo.AsnQty = 0;
db.TB_MAXPO_DETAIL.AddOrUpdate(_maxpo);
}
}

28
Controller/SCP_CONTRACT_CONTROLLER.cs

@ -230,13 +230,13 @@ namespace CK.SCP.Controller
public static List<string> NOTIFY_COMPARE_PRICE(List<TB_CONTRACT_DETAIL_PRICE> p_priceList, List<V_TB_PO_DETAIL> p_polist)
{
List<string> msgList = new List<string>();
var ret= from po in p_polist
var ret = from po in p_polist
join price in p_priceList on po.PartCode equals price.PartCode
select new { VAL1 = po, VAL2 = price };
var list = ret.Where(p=> p.VAL1.BeginTime>=p.VAL2.BeginTime && p.VAL1.BeginTime<=p.VAL2.EndTime && p.VAL1.PlanQty>=p.VAL2.QtyBegin && p.VAL1.PlanQty < p.VAL2.QtyEnd && (p.VAL1.Price> p.VAL2.Price || p.VAL1.Price==0));
foreach(var itm in list)
var list = ret.Where(p => p.VAL1.BeginTime >= p.VAL2.BeginTime && p.VAL1.BeginTime <= p.VAL2.EndTime && p.VAL1.PlanQty >= p.VAL2.QtyBegin && p.VAL1.PlanQty < p.VAL2.QtyEnd && (p.VAL1.Price > p.VAL2.Price || p.VAL1.Price == 0));
foreach (var itm in list)
{
msgList.Add(string.Format("物料编码{0}价格{1}与合同价格{2}不一致",itm.VAL1.PartCode, itm.VAL1.Price, itm.VAL2.Price));
msgList.Add(string.Format("物料编码{0}价格{1}与合同价格{2}不一致", itm.VAL1.PartCode, itm.VAL1.Price, itm.VAL2.Price));
}
return msgList;
@ -264,7 +264,7 @@ namespace CK.SCP.Controller
{
if (p_list.Count > 0)
{
var ret= Get_TB_CONTRACT_DETAIL_PRICE_List(new TB_CONTRACT_DETAIL_PRICE() { VendId = p_list[0].VendId });
var ret = Get_TB_CONTRACT_DETAIL_PRICE_List(new TB_CONTRACT_DETAIL_PRICE() { VendId = p_list[0].VendId });
if (ret.State == ReturnStatus.Succeed)
{
var p_priceList = ret.Result;
@ -396,17 +396,17 @@ namespace CK.SCP.Controller
using (ScpEntities db = EntitiesFactory.CreateScpInstance())
{
List<string> _ls = new List<string>();
var _No = db.TB_MAXPO_CONSUME.Where(t => t.PartCode == p.PartCode&&t.BillNum==p.PoBillNum).ToList();
var _No = db.TB_MAXPO_CONSUME.Where(t => t.PartCode == p.PartCode && t.BillNum == p.PoBillNum).ToList();
var _Month = db.V_TB_MAXPO_CONSUME.Where(t => t.PartCode == p.PartCode && t.BillNum == p.PoBillNum).ToList();
foreach(var Mo in _Month)
foreach (var Mo in _Month)
{
if (!_ls.Contains(Mo.ContractMonth))
{
_ls.Add(Mo.ContractMonth);
}
}
string ContactNo = string.Join(";",_ls);
string ContactNo = string.Join(";", _ls);
p.ContractMonth = ContactNo;
foreach (var pa in _No)
{
@ -481,7 +481,7 @@ namespace CK.SCP.Controller
}
public static ResultObject<List<TB_CONTRACT_DETAIL_PRICE>> Get_TB_CONTRACT_DETAIL_PRICE_List(TB_CONTRACT_DETAIL_PRICE p_entity,int p_qty=0)
public static ResultObject<List<TB_CONTRACT_DETAIL_PRICE>> Get_TB_CONTRACT_DETAIL_PRICE_List(TB_CONTRACT_DETAIL_PRICE p_entity, int p_qty = 0)
{
ResultObject<List<TB_CONTRACT_DETAIL_PRICE>> _ret = new ResultObject<List<TB_CONTRACT_DETAIL_PRICE>>();
try
@ -685,7 +685,7 @@ namespace CK.SCP.Controller
}
if (_buffer.Length > 0)
{
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_CONTRACT_CONTROLLER), "IMPORT_CONTRACT_CHECK",_buffer.ToString());
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_CONTRACT_CONTROLLER), "IMPORT_CONTRACT_CHECK", _buffer.ToString());
return _buffer.ToString();
}
return string.Empty;
@ -711,15 +711,15 @@ namespace CK.SCP.Controller
{
var _contract = p_contract_list.FirstOrDefault();
#region 删除老合同
var contract=db.TB_CONTRACT.Where(p => p.VendId == _contract. && p.ContractNo == _contract.);
var contract = db.TB_CONTRACT.Where(p => p.VendId == _contract. && p.ContractNo == _contract.);
if (contract.Count() > 0)
{
var c = contract.FirstOrDefault();
if (!string.IsNullOrEmpty(c.BillNo))
{
var detailPrice = db.TB_CONTRACT_DETAIL_PRICE.Where(p => p.BillNo ==c.BillNo);
var detailPrice = db.TB_CONTRACT_DETAIL_PRICE.Where(p => p.BillNo == c.BillNo);
db.TB_CONTRACT_DETAIL_PRICE.RemoveRange(detailPrice);
var detail=db.TB_CONTRACT_DETAIL.Where(p => p.BillNo ==c.BillNo);
var detail = db.TB_CONTRACT_DETAIL.Where(p => p.BillNo == c.BillNo);
db.TB_CONTRACT_DETAIL.RemoveRange(detail);
db.TB_CONTRACT.Remove(c);
}
@ -760,7 +760,7 @@ namespace CK.SCP.Controller
_detail_price.EndTime = ConvertHelper.To<DateTime>(itm.);
_detail_price.ContractNo = _tbContract.ContractNo;
_detail_price.QtyBegin = int.Parse(itm.1);
_detail_price.QtyEnd = !string.IsNullOrEmpty(itm.2)? int.Parse(itm.2):999999999;
_detail_price.QtyEnd = !string.IsNullOrEmpty(itm.2) ? int.Parse(itm.2) : 999999999;
_detail_price.BillNo = _tbContract.BillNo;
_detail_price.IsDeleted = false;
_detail_price.PartCode = itm.;

581
Controller/SCP_INVOICE_CONTROLLER.cs

@ -12,6 +12,7 @@ using CK.SCP.Models.ScpEntity;
using CK.SCP.Models.ScpEntity.ExcelImportEntity;
using CK.SCP.Utils;
using System.Data.Entity.Core;
using CK.SCP.Models.ScpEntity.ExcelExportEnttity;
namespace CK.SCP.Controller
{
@ -167,7 +168,7 @@ namespace CK.SCP.Controller
}
public static List<string> Get_V_TB_INVOICE_BY_TIME(string p_begin,string p_end,string p_po,string p_asn)
public static List<string> Get_V_TB_INVOICE_BY_TIME(string p_begin, string p_end, string p_po, string p_asn)
{
List<string> _list = new List<string>();
using (ScpEntities db = EntitiesFactory.CreateScpInstance())
@ -190,9 +191,9 @@ namespace CK.SCP.Controller
}
if (!string.IsNullOrEmpty(p_asn))
{
_builder.AppendFormat(" and A.AsnBillNum='{0}' \r\n",p_asn);
_builder.AppendFormat(" and A.AsnBillNum='{0}' \r\n", p_asn);
}
_list =db.Database.SqlQuery<string>(_builder.ToString()).ToList();
_list = db.Database.SqlQuery<string>(_builder.ToString()).ToList();
}
return _list;
@ -212,11 +213,11 @@ namespace CK.SCP.Controller
}
if (!string.IsNullOrEmpty(p_entity.InvcBillNum))
{
q = q.Where(p => p.InvcBillNum==p_entity.InvcBillNum);
q = q.Where(p => p.InvcBillNum == p_entity.InvcBillNum);
}
if (!string.IsNullOrEmpty(p_entity.VendId))
{
q = q.Where(p => p.VendId==p_entity.VendId);
q = q.Where(p => p.VendId == p_entity.VendId);
}
if (!string.IsNullOrEmpty(p_entity.VendName))
{
@ -270,9 +271,9 @@ namespace CK.SCP.Controller
}
if (!string.IsNullOrEmpty(p_entity.AskCreateUser))
{
q = q.Where(p => p.AskCreateUser==p_entity.AskCreateUser);
q = q.Where(p => p.AskCreateUser == p_entity.AskCreateUser);
}
if (p_entity.InvoiceList!=null && p_entity.InvoiceList.Count>0)
if (p_entity.InvoiceList != null && p_entity.InvoiceList.Count > 0)
{
q = q.Where(p => p_entity.InvoiceList.Contains(p.InvcBillNum));
}
@ -964,7 +965,7 @@ namespace CK.SCP.Controller
}
if (!string.IsNullOrEmpty(p_entity.InvcBillNum))
{
q = q.Where(p => p.InvcBillNum==(p_entity.InvcBillNum));
q = q.Where(p => p.InvcBillNum == (p_entity.InvcBillNum));
}
if (!string.IsNullOrEmpty(p_entity.PoBillNum))
{
@ -1273,15 +1274,15 @@ namespace CK.SCP.Controller
}
public static ResultObject<bool> CREATE_TB_INVOICE(V_TB_INVOICE p_entity,List<V_TB_RECEIVE_LIST> p_list)
public static ResultObject<bool> CREATE_TB_INVOICE(V_TB_INVOICE p_entity, List<V_TB_RECEIVE_LIST> p_list)
{
ResultObject<bool> _ret = new ResultObject<bool>();
try
{
using (ScpEntities db = EntitiesFactory.CreateScpInstance())
{
var _tax=db.TA_VENDER.Where(p => p.VendId == p_entity.VendId).Select(p => p.Tax).FirstOrDefault();
var _ls=p_list.Where(p => p.BillType_DESC == "索赔单").ToList();
var _tax = db.TA_VENDER.Where(p => p.VendId == p_entity.VendId).Select(p => p.Tax).FirstOrDefault();
var _ls = p_list.Where(p => p.BillType_DESC == "索赔单").ToList();
TB_INVOICE invoice = new TB_INVOICE();
invoice.InvcBillNum = SCP_BILLCODE_CONTROLLER.MakeInvoiceCode();
invoice.VendId = p_entity.VendId;
@ -1301,7 +1302,7 @@ namespace CK.SCP.Controller
if (_ls.Count > 0)
{
invoice.ContractPrice =0- _ls.Sum(p=>p.Price);
invoice.ContractPrice = 0 - _ls.Sum(p => p.Price);
}
else
{
@ -1310,12 +1311,13 @@ namespace CK.SCP.Controller
invoice.BlancePrice = p_entity.BlancePrice;
db.TB_INVOICE.AddOrUpdate(invoice);
p_list.ForEach(p => {
p_list.ForEach(p =>
{
TB_INVOICE_DETAIL invocieDetail = new TB_INVOICE_DETAIL();
invocieDetail.Site = invoice.Site;
invocieDetail.SubSite = invoice.SubSite;
invocieDetail.InvcBillNum= invoice.InvcBillNum;
invocieDetail.InvcBillNum = invoice.InvcBillNum;
invocieDetail.AsnBillNum = p.AsnBillNum;
invocieDetail.PoBillNum = p.PoBillNum;
invocieDetail.PoLineNum = p.PoLine;
@ -1458,7 +1460,8 @@ namespace CK.SCP.Controller
invoice.Tax = p_entity.Tax;
invoice.IsRed = false;
db.TB_INVOICE.AddOrUpdate(invoice);
p_list.ForEach(p => {
p_list.ForEach(p =>
{
TB_INVOICE_DETAIL invocieDetail = new TB_INVOICE_DETAIL();
invocieDetail.InvcBillNum = invoice.InvcBillNum;
@ -1480,13 +1483,13 @@ namespace CK.SCP.Controller
invocieDetail.IsDeleted = false;
invocieDetail.State = (int)InvoiceState.New;
invocieDetail.GUID = Guid.NewGuid();
invocieDetail.Remark ="";
invocieDetail.Remark = "";
invocieDetail.IsRed = false;
invocieDetail.BlancePrice = p.BlancePrice;//模具分摊价格
invocieDetail.DiscountPrice = p.DiscountPrice;//供应商价格
db.TB_INVOICE_DETAIL.AddOrUpdate(invocieDetail);
var _moldsharing = db.TA_MoldSharing.SingleOrDefault(t =>t.IsDeleted==false&& t.VendId == p.VendId.ToUpper() && t.PartCode == p.PartCode.ToUpper()&&t.Qty!=t.Count);
if(_moldsharing!=null )
var _moldsharing = db.TA_MoldSharing.SingleOrDefault(t => t.IsDeleted == false && t.VendId == p.VendId.ToUpper() && t.PartCode == p.PartCode.ToUpper() && t.Qty != t.Count);
if (_moldsharing != null)
{
var _num = _moldsharing.Count + p.Qty;
if (_moldsharing.Qty < _num)
@ -1691,7 +1694,7 @@ namespace CK.SCP.Controller
if (p_state == InvoiceState.FinanceReceive)
{
var _ary=db.TB_PENING_ITEMS.Where(itm => itm.INVOICE_NO == _entity.InvcBillNum).ToArray();
var _ary = db.TB_PENING_ITEMS.Where(itm => itm.INVOICE_NO == _entity.InvcBillNum).ToArray();
db.TB_PENING_ITEMS.RemoveRange(_ary);
#region 财务审核通过任务新
@ -1732,7 +1735,8 @@ namespace CK.SCP.Controller
}
var _list = db.TB_INVOICE_DETAIL.Where(p => p.InvcBillNum == p_billno).ToList();
_list.ForEach(p => {
_list.ForEach(p =>
{
p.State = (int)p_state;
});
@ -1745,14 +1749,15 @@ namespace CK.SCP.Controller
_entity.IsDeleted = true;
_list = db.TB_INVOICE_DETAIL.Where(p => p.InvcBillNum == p_billno).ToList();
_list.ForEach(p => {
_list.ForEach(p =>
{
p.State = (int)p_state;
p.IsDeleted = true;
});
}
db.TB_INVOICE_DETAIL.AddOrUpdate(p => p.UID, _list.ToArray());
db.TB_INVOICE.AddOrUpdate(p => p.UID,_entity);
db.TB_INVOICE.AddOrUpdate(p => p.UID, _entity);
if (string.IsNullOrEmpty(_ret.Message))
{
@ -1830,7 +1835,7 @@ namespace CK.SCP.Controller
return _ret;
}
public static ResultObject<bool> SAVE_TB_INVOICE_STATE(V_TB_INVOICE invoice, InvoiceState p_state,string p_username="", string p_flag = "")
public static ResultObject<bool> SAVE_TB_INVOICE_STATE(V_TB_INVOICE invoice, InvoiceState p_state, string p_username = "", string p_flag = "")
{
ResultObject<bool> _ret = new ResultObject<bool>();
try
@ -1994,7 +1999,8 @@ namespace CK.SCP.Controller
}
var _list = db.TB_INVOICE_DETAIL.Where(p => p.InvcBillNum == invoice.InvcBillNum).ToList();
_list.ForEach(p => {
_list.ForEach(p =>
{
p.State = (int)p_state;
});
@ -2007,14 +2013,15 @@ namespace CK.SCP.Controller
_entity.IsDeleted = true;
_list = db.TB_INVOICE_DETAIL.Where(p => p.InvcBillNum == invoice.InvcBillNum).ToList();
_list.ForEach(p => {
_list.ForEach(p =>
{
p.State = (int)p_state;
p.IsDeleted = true;
if (!string.IsNullOrEmpty(p_flag))//修改分摊数量
{
var _moldsharing = db.TA_MoldSharing.SingleOrDefault(t =>t.IsDeleted==false&& t.VendId == invoice.VendId.ToUpper() && t.PartCode == p.PartCode.ToUpper());
var _ms_detail = db.TA_MoldSharing_Invoice.SingleOrDefault(t =>t.InvcGUID==p.GUID);
if (_moldsharing != null&& _ms_detail!=null)
var _moldsharing = db.TA_MoldSharing.SingleOrDefault(t => t.IsDeleted == false && t.VendId == invoice.VendId.ToUpper() && t.PartCode == p.PartCode.ToUpper());
var _ms_detail = db.TA_MoldSharing_Invoice.SingleOrDefault(t => t.InvcGUID == p.GUID);
if (_moldsharing != null && _ms_detail != null)
{
db.TA_MoldSharing_Invoice.Remove(_ms_detail);
var _num = _moldsharing.Count - p.Qty;
@ -2185,7 +2192,7 @@ namespace CK.SCP.Controller
return _ret;
}
public static ResultObject<bool> SAVE_TB_INVOICE_APPLY(V_TB_INVOICE p_invoice, List<V_TB_INVOICE_DETAIL> p_list,string p_flag="")
public static ResultObject<bool> SAVE_TB_INVOICE_APPLY(V_TB_INVOICE p_invoice, List<V_TB_INVOICE_DETAIL> p_list, string p_flag = "")
{
ResultObject<bool> _ret = new ResultObject<bool>();
List<string> _list = new List<string>();
@ -2193,7 +2200,7 @@ namespace CK.SCP.Controller
{
using (ScpEntities db = EntitiesFactory.CreateScpInstance())
{
var _bill=db.TB_INVOICE.Where(itm => itm.InvcBillNum == p_invoice.InvcBillNum).FirstOrDefault();
var _bill = db.TB_INVOICE.Where(itm => itm.InvcBillNum == p_invoice.InvcBillNum).FirstOrDefault();
_bill.InvoiceNum = p_invoice.InvoiceNum;
_bill.ExpressNum = p_invoice.ExpressNum;
_bill.ContractPrice = p_invoice.ContractPrice;
@ -2210,10 +2217,11 @@ namespace CK.SCP.Controller
_bill.UpdateTime = p_invoice.UpdateTime;
}
db.TB_INVOICE.AddOrUpdate(p => p.InvcBillNum, _bill);
p_list.ForEach(p => {
var _detail=db.TB_INVOICE_DETAIL.Where(itm => itm.UID == p.UID).FirstOrDefault();
p_list.ForEach(p =>
{
var _detail = db.TB_INVOICE_DETAIL.Where(itm => itm.UID == p.UID).FirstOrDefault();
var _qty = _detail.Qty - p.Qty;
_detail.State =(int)p.State;
_detail.State = (int)p.State;
_detail.Qty = p.Qty;
_detail.Price = p.Price;
_detail.ContractPrice = p.ContractPrice;
@ -2226,12 +2234,12 @@ namespace CK.SCP.Controller
_detail.IsDeleted = true;
}
_detail.Remark = p.Remark;
db.TB_INVOICE_DETAIL.AddOrUpdate(itm=>itm.UID,_detail);
if(!string.IsNullOrEmpty(p_flag))//修改发票数量对分摊数修改
db.TB_INVOICE_DETAIL.AddOrUpdate(itm => itm.UID, _detail);
if (!string.IsNullOrEmpty(p_flag))//修改发票数量对分摊数修改
{
var _ms = db.TA_MoldSharing.SingleOrDefault(t =>t.IsDeleted==false&& t.PartCode == _detail.PartCode && t.VendId == _bill.VendId);
var _ms_detail= db.TA_MoldSharing_Invoice.SingleOrDefault(t =>t.InvcGUID== _detail.GUID);
if (_ms != null&& _ms_detail!=null)
var _ms = db.TA_MoldSharing.SingleOrDefault(t => t.IsDeleted == false && t.PartCode == _detail.PartCode && t.VendId == _bill.VendId);
var _ms_detail = db.TA_MoldSharing_Invoice.SingleOrDefault(t => t.InvcGUID == _detail.GUID);
if (_ms != null && _ms_detail != null)
{
_ms.Count = _ms.Count - _qty;
if (_ms.Count > _ms.Qty)
@ -2351,7 +2359,7 @@ namespace CK.SCP.Controller
{
using (ScpEntities db = EntitiesFactory.CreateScpInstance())
{
var _bill = db.TB_INVOICE.Where(itm => itm.InvcBillNum == p_invoice.InvcBillNum && itm.IsRed==true).FirstOrDefault();
var _bill = db.TB_INVOICE.Where(itm => itm.InvcBillNum == p_invoice.InvcBillNum && itm.IsRed == true).FirstOrDefault();
_bill.InvoiceNum = p_invoice.InvoiceNum;
_bill.ExpressNum = p_invoice.ExpressNum;
_bill.ContractPrice = p_invoice.ContractPrice;
@ -2361,7 +2369,8 @@ namespace CK.SCP.Controller
_bill.Remark = p_invoice.Remark;
_bill.State = (int)p_invoice.State;
db.TB_INVOICE.AddOrUpdate(p => p.UID, _bill);
p_list.ForEach(p => {
p_list.ForEach(p =>
{
var _detail = db.TB_INVOICE_DETAIL.Where(itm => itm.UID == p.UID).FirstOrDefault();
_detail.State = (int)p.State;
_detail.Qty = p.Qty;
@ -2458,7 +2467,7 @@ namespace CK.SCP.Controller
using (ScpEntities db = EntitiesFactory.CreateScpInstance())
{
TB_INVOICE _bill = db.TB_INVOICE.Where(itm => itm.InvcBillNum == p_invoice.InvcBillNum && itm.IsDeleted==false).FirstOrDefault();
TB_INVOICE _bill = db.TB_INVOICE.Where(itm => itm.InvcBillNum == p_invoice.InvcBillNum && itm.IsDeleted == false).FirstOrDefault();
if (_bill != null)
@ -2542,7 +2551,7 @@ namespace CK.SCP.Controller
_detail.BlancePrice = p.BlancePrice;
_detail.DiscountPrice = p.DiscountPrice;
_detail.DiscountRemark = p.DiscountRemark;
_detail.IsRed =true;
_detail.IsRed = true;
db.TB_INVOICE_DETAIL.Add(_detail);
});
@ -2705,7 +2714,7 @@ namespace CK.SCP.Controller
}
return _ret;
}
public static ResultObject<bool> CaiWu_Return_Reason(string p_InvcBillNum,string p_Memo)
public static ResultObject<bool> CaiWu_Return_Reason(string p_InvcBillNum, string p_Memo)
{
ResultObject<bool> _ret = new ResultObject<bool>();
try
@ -2908,7 +2917,7 @@ namespace CK.SCP.Controller
return _ret;
}
public static ResultObject<bool> UpdateMemoByInvcBillNum(string p_InvcBillNum, string p_Memo, decimal p_blan, string p_inv,DateTime p_time)
public static ResultObject<bool> UpdateMemoByInvcBillNum(string p_InvcBillNum, string p_Memo, decimal p_blan, string p_inv, DateTime p_time)
{
ResultObject<bool> _ret = new ResultObject<bool>();
try
@ -3167,11 +3176,11 @@ namespace CK.SCP.Controller
List<V_TB_INVOICE_DETAIL> _ls = db.V_TB_INVOICE_DETAIL.Where(p => p.InvcBillNum == p_InvcBillNum).ToList();
V_TB_INVOICE _bill= db.V_TB_INVOICE.Where(p => p.InvcBillNum == p_InvcBillNum).FirstOrDefault();
V_TB_INVOICE _bill = db.V_TB_INVOICE.Where(p => p.InvcBillNum == p_InvcBillNum).FirstOrDefault();
foreach (V_TB_INVOICE_DETAIL itm in _ls)
{
TS_UNI_API _api = UniApiController.CreateBy(_bill,itm ,UniApiType.Invoice);
TS_UNI_API _api = UniApiController.CreateBy(_bill, itm, UniApiType.Invoice);
_api.State = 1;
db.TS_UNI_API.AddOrUpdate(_api);
itm.State = (int)p_state;
@ -3279,7 +3288,7 @@ namespace CK.SCP.Controller
var _invoice = db.TB_INVOICE.Where(p => p.InvcBillNum == p_entity.InvcBillNum).FirstOrDefault();
var _invoicedetail = db.TB_INVOICE_DETAIL.Where(p => p.InvcBillNum == p_entity.InvcBillNum).FirstOrDefault();
if(_invoice !=null)
if (_invoice != null)
{
if (_invoicedetail != null)
{
@ -3407,5 +3416,483 @@ namespace CK.SCP.Controller
}
return _ret;
}
/// <summary>
/// 物料与供应商对应关系表
/// </summary>
/// <param name="p_entity"></param>
/// <param name="p_action"></param>
public static void Get_V_TA_CheckPartsAndVend(V_TA_CheckPartsAndVend p_entity, Action<ResultObject<IQueryable<V_TA_CheckPartsAndVend>>> p_action)
{
ResultObject<IQueryable<V_TA_CheckPartsAndVend>> _ret = new ResultObject<IQueryable<V_TA_CheckPartsAndVend>>();
try
{
using (ScpEntities db = EntitiesFactory.CreateScpInstance())
{
IQueryable<V_TA_CheckPartsAndVend> q = db.V_TA_CheckPartsAndVend;
if (!string.IsNullOrEmpty(p_entity.PartCode))
{
q = q.Where(p => p.PartCode == p_entity.PartCode);
}
if (!string.IsNullOrEmpty(p_entity.VendID))
{
q = q.Where(p => p.VendID == p_entity.VendID);
}
_ret.State = ReturnStatus.Succeed;
_ret.Result = q;
p_action(_ret);
}
}
catch (System.Data.Entity.Validation.DbEntityValidationException dbEx)//捕获实体验证异常
{
var sb = new StringBuilder();
foreach (var error in dbEx.EntityValidationErrors.ToList())
{
error.ValidationErrors.ToList().ForEach(i =>
{
sb.AppendFormat("表:{0},字段:{1},信息:{2}\r\n", error.Entry.Entity.GetType().Name, i.PropertyName, i.ErrorMessage);
});
}
_ret.State = ReturnStatus.Failed;
_ret.ErrorList.Add(dbEx);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_INVOICE_CONTROLLER), "Get_V_TA_CheckPartsAndVend", sb.ToString());
throw new ScpException(ResultCode.DbEntityValidationException, sb.ToString(), "字段验证失败" + sb.ToString());
}
catch (OptimisticConcurrencyException ex)//并发冲突异常
{
_ret.State = ReturnStatus.Failed;
_ret.ErrorList.Add(ex);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_INVOICE_CONTROLLER), "Get_V_TA_CheckPartsAndVend", ex.ToString());
throw new ScpException(ResultCode.Exception, "9999", ex.ToString());
}
catch (ScpException ex)
{
_ret.State = ReturnStatus.Failed;
_ret.ErrorList.Add(ex);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_INVOICE_CONTROLLER), "Get_V_TA_CheckPartsAndVend", ex.ToString());
if (ex.InnerException != null && ex.InnerException.GetType() == typeof(UpdateException))
{
var inner = (UpdateException)ex.InnerException;
throw new ScpException(ResultCode.Exception, "0000", ex.ToString());
}
else
{
if (ex.InnerException != null) throw ex.InnerException;
}
}
catch (Exception e)
{
_ret.State = ReturnStatus.Failed;
_ret.ErrorList.Add(e);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_INVOICE_CONTROLLER), "Get_V_TA_CheckPartsAndVend", e.Message);
throw e;
}
}
/// <summary>
/// 导入检查
/// </summary>
/// <param name="db"></param>
/// <param name="p_excel"></param>
/// <param name="site"></param>
/// <returns></returns>
private static List<string> CheckExcelMode_VenderPart(ScpEntities db, SCP_CHECKPARTANDVENDER_EXPORT p_excel, string site)
{
List<string> ErrorList = new List<string>();
if (!string.IsNullOrEmpty(p_excel.))
{
int count = db.TA_PART.Count(p => p.PartCode == p_excel..Trim());
if (count == 0)
{
ErrorList.Add(string.Format("零件编号【{0}】不存在!", p_excel.));
}
}
if (!string.IsNullOrEmpty(p_excel.))
{
int count1 = db.TA_VENDER.Count(p => p.VendId == p_excel..Trim());
if (count1 == 0)
{
ErrorList.Add(string.Format("供应商【{0}】不存在!", p_excel.));
}
}
else if (string.IsNullOrEmpty(p_excel.) || string.IsNullOrEmpty(p_excel.))
{
ErrorList.Add(string.Format("零件号码【{0}】有填写为空!", p_excel.));
}
return ErrorList;
}
/// <summary>
/// 导入零件供应商对应关系表
/// </summary>
/// <param name="p_order_list"></param>
/// <param name="site"></param>
/// <param name="p_creator"></param>
/// <returns></returns>
public static ResultObject<bool> EXCEL_VENDER_PART(List<SCP_CHECKPARTANDVENDER_EXPORT> p_order_list, string site, string p_creator)
{
ResultObject<bool> _ret = new ResultObject<bool>();
try
{
using (ScpEntities db = EntitiesFactory.CreateScpInstance())
{
int number = 1;
List<string> lineError = new List<string>();
List<string> ErrorList = new List<string>();
var _lst = p_order_list;
_lst.ForEach(p =>
{
var _count = _lst.Count(itm => itm. == p. && itm. == p.);
if (_count > 1)
{
lineError.Add(string.Format("零件号码有重", p.));
ErrorList = lineError;
}
});
_lst.ForEach(p =>
{
var _ls = CheckExcelMode_VenderPart(db, p, site);
if (_ls.Count > 0)
{
lineError.Add(number.ToString());
ErrorList.Add(string.Join("<br>", _ls.ToArray()));
}
number++;
});
if (lineError.Count > 0)
{
_ret.State = ReturnStatus.Failed;
_ret.MessageList.AddRange(ErrorList);
_ret.Result = false;
}
else
{
_lst.ForEach(p =>
{
var _partdes = db.TA_CHECKPARTANDVEND.Count(t => t.PartCode == p..Trim() && t.VendID == p..Trim());
if (_partdes == 0)
{
TA_CHECKPARTANDVEND _entity = new TA_CHECKPARTANDVEND();
_entity.PartCode = p..Trim();
_entity.VendID = p..Trim();
_entity.Model = p..Trim();
db.TA_CHECKPARTANDVEND.Add(_entity);
}
else
{
var _partde = db.TA_CHECKPARTANDVEND.SingleOrDefault(t => t.PartCode == p..Trim() && t.VendID == p..Trim());
_partde.PartCode = p..Trim();
_partde.VendID = p..Trim();
_partde.Model = p..Trim();
db.TA_CHECKPARTANDVEND.AddOrUpdate(_partde);
}
});
if (_ret.MessageList.Count == 0)
{
int state = db.SaveChanges();
if (state != -1)
{
_ret.State = ReturnStatus.Succeed;
_ret.Result = true;
}
else
{
_ret.State = ReturnStatus.Failed;
_ret.Result = false;
}
}
else
{
_ret.State = ReturnStatus.Failed;
_ret.Result = false;
}
}
}
}
catch (System.Data.Entity.Validation.DbEntityValidationException dbEx)//捕获实体验证异常
{
var sb = new StringBuilder();
foreach (var error in dbEx.EntityValidationErrors.ToList())
{
error.ValidationErrors.ToList().ForEach(i =>
{
sb.AppendFormat("表:{0},字段:{1},信息:{2}\r\n", error.Entry.Entity.GetType().Name, i.PropertyName, i.ErrorMessage);
});
}
_ret.State = ReturnStatus.Failed;
_ret.Result = false;
_ret.ErrorList.Add(dbEx);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_INVOICE_CONTROLLER), "EXCEL_VENDER_PART", sb.ToString());
throw new ScpException(ResultCode.DbEntityValidationException, sb.ToString(), "字段验证失败" + sb.ToString());
}
catch (OptimisticConcurrencyException ex)//并发冲突异常
{
_ret.State = ReturnStatus.Failed;
_ret.Result = false;
_ret.ErrorList.Add(ex);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_INVOICE_CONTROLLER), "EXCEL_VENDER_PART", ex.ToString());
throw new ScpException(ResultCode.Exception, "9999", ex.ToString());
}
catch (ScpException ex)
{
_ret.State = ReturnStatus.Failed;
_ret.Result = false;
_ret.ErrorList.Add(ex);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_INVOICE_CONTROLLER), "EXCEL_VENDER_PART", ex.ToString());
if (ex.InnerException != null && ex.InnerException.GetType() == typeof(UpdateException))
{
var inner = (UpdateException)ex.InnerException;
throw new ScpException(ResultCode.Exception, "0000", ex.ToString());
}
else
{
if (ex.InnerException != null) throw ex.InnerException;
}
}
catch (Exception e)
{
_ret.State = ReturnStatus.Failed;
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_INVOICE_CONTROLLER), "EXCEL_VENDER_PART", e.Message);
_ret.Result = false;
_ret.ErrorList.Add(e);
}
return _ret;
}
/// <summary>
/// 删除
/// </summary>
/// <param name="_ls"></param>
/// <param name="_ls1"></param>
/// <returns></returns>
public static ResultObject<bool> Del_VENDER_PART(string partcode, string vendid)
{
ResultObject<bool> _ret = new ResultObject<bool>();
try
{
using (ScpEntities db = EntitiesFactory.CreateScpInstance())
{
var _entity = db.TA_CHECKPARTANDVEND.FirstOrDefault(p => p.VendID == vendid && p.PartCode == partcode);
if (_entity != null)
{
db.TA_CHECKPARTANDVEND.Remove(_entity);
if (db.SaveChanges() != -1)
{
_ret.State = ReturnStatus.Succeed;
_ret.Result = true;
}
else
{
_ret.State = ReturnStatus.Failed;
_ret.Result = false;
}
}
else
{
_ret.State = ReturnStatus.Failed;
_ret.Message = "请刷新后重新选择数据再进行删除!";
_ret.Result = false;
}
}
}
catch (System.Data.Entity.Validation.DbEntityValidationException dbEx)//捕获实体验证异常
{
var sb = new StringBuilder();
foreach (var error in dbEx.EntityValidationErrors.ToList())
{
error.ValidationErrors.ToList().ForEach(i =>
{
sb.AppendFormat("表:{0},字段:{1},信息:{2}\r\n", error.Entry.Entity.GetType().Name, i.PropertyName, i.ErrorMessage);
});
}
_ret.State = ReturnStatus.Failed;
_ret.Result = false;
_ret.ErrorList.Add(dbEx);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_INFO_CONTROLLER), "Del_VENDER_PART", sb.ToString());
throw new ScpException(ResultCode.DbEntityValidationException, sb.ToString(), "字段验证失败" + sb.ToString());
}
catch (OptimisticConcurrencyException ex)//并发冲突异常
{
_ret.State = ReturnStatus.Failed;
_ret.Result = false;
_ret.ErrorList.Add(ex);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_INFO_CONTROLLER), "Del_VENDER_PART", ex.ToString());
throw new ScpException(ResultCode.Exception, "9999", ex.ToString());
}
catch (ScpException ex)
{
_ret.State = ReturnStatus.Failed;
_ret.Result = false;
_ret.ErrorList.Add(ex);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_INFO_CONTROLLER), "Del_VENDER_PART", ex.ToString());
if (ex.InnerException != null && ex.InnerException.GetType() == typeof(UpdateException))
{
var inner = (UpdateException)ex.InnerException;
throw new ScpException(ResultCode.Exception, "0000", ex.ToString());
}
else
{
if (ex.InnerException != null) throw ex.InnerException;
}
}
catch (Exception e)
{
_ret.State = ReturnStatus.Failed;
_ret.Result = false;
_ret.ErrorList.Add(e);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_INFO_CONTROLLER), "Del_VENDER_PART", e.Message);
throw e;
}
return _ret;
}
/// <summary>
/// 保存零件供应商对应关系表
/// </summary>
/// <param name="p_entitys"></param>
/// <returns></returns>
public static ResultObject<bool> Save_TA_CHECKPARTANDVEND(TA_CHECKPARTANDVEND p_entitys)
{
ResultObject<bool> _ret = new ResultObject<bool>();
int pcount = 0;
int vcount = 0;
try
{
using (ScpEntities db = EntitiesFactory.CreateScpInstance())
{
var appliance = db.TA_CHECKPARTANDVEND.FirstOrDefault(p => p.PartCode == p_entitys.PartCode && p.VendID == p_entitys.VendID);
pcount = db.TA_PART.Count(q => q.PartCode == p_entitys.PartCode);
if (pcount == 0)
{
_ret.State = ReturnStatus.Failed;
_ret.Message = "未找到零件号:" + p_entitys.PartCode;
_ret.Result = false;
return _ret;
}
vcount = db.TA_VENDER.Count(q => q.VendId == p_entitys.VendID);
if (vcount == 0)
{
_ret.State = ReturnStatus.Failed;
_ret.Message = "未找到供应商:" + p_entitys.VendID;
_ret.Result = false;
return _ret;
}
if (appliance == null)
{
TA_CHECKPARTANDVEND applianc = new TA_CHECKPARTANDVEND();
applianc.PartCode = p_entitys.PartCode;
applianc.VendID = p_entitys.VendID;
applianc.Model = p_entitys.Model;
db.TA_CHECKPARTANDVEND.AddOrUpdate(applianc);
}
else
{
appliance.Model = p_entitys.Model;
db.TA_CHECKPARTANDVEND.AddOrUpdate(appliance);
}
if (db.SaveChanges() != -1)
{
_ret.State = ReturnStatus.Succeed;
_ret.Result = true;
}
else
{
_ret.State = ReturnStatus.Failed;
_ret.Result = false;
}
}
}
catch (System.Data.Entity.Validation.DbEntityValidationException dbEx)//捕获实体验证异常
{
var sb = new StringBuilder();
foreach (var error in dbEx.EntityValidationErrors.ToList())
{
error.ValidationErrors.ToList().ForEach(i =>
{
sb.AppendFormat("表:{0},字段:{1},信息:{2}\r\n", error.Entry.Entity.GetType().Name, i.PropertyName, i.ErrorMessage);
});
}
_ret.State = ReturnStatus.Failed;
_ret.Result = false;
_ret.ErrorList.Add(dbEx);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_INVOICE_CONTROLLER), "Save_TA_LANGUAGE", sb.ToString());
throw new ScpException(ResultCode.DbEntityValidationException, sb.ToString(), "字段验证失败" + sb.ToString());
}
catch (OptimisticConcurrencyException ex)//并发冲突异常
{
_ret.State = ReturnStatus.Failed;
_ret.Result = false;
_ret.ErrorList.Add(ex);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_INVOICE_CONTROLLER), "Save_TA_LANGUAGE", ex.ToString());
throw new ScpException(ResultCode.Exception, "9999", ex.ToString());
}
catch (ScpException ex)
{
_ret.State = ReturnStatus.Failed;
_ret.Result = false;
_ret.ErrorList.Add(ex);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_INVOICE_CONTROLLER), "Save_TA_LANGUAGE", ex.ToString());
if (ex.InnerException != null && ex.InnerException.GetType() == typeof(UpdateException))
{
var inner = (UpdateException)ex.InnerException;
throw new ScpException(ResultCode.Exception, "0000", ex.ToString());
}
else
{
if (ex.InnerException != null) throw ex.InnerException;
}
}
catch (Exception e)
{
_ret.State = ReturnStatus.Failed;
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_INVOICE_CONTROLLER), "Save_TA_LANGUAGE", e.Message);
_ret.Result = false;
_ret.ErrorList.Add(e);
throw e;
}
return _ret;
}
}
}

30
Controller/SCP_PO_CONTROLLER.cs

@ -1872,6 +1872,14 @@ namespace CK.SCP.Controller
ErrorList.Add(string.Format("普通采购订单不涉及组件物料号,请到委外采购订单菜单导入"));
}
var _part = db.TA_PART.SingleOrDefault(p => p.PartCode == p_excel.);
if ((!string.IsNullOrEmpty(p_excel.))&& (_part.PartGroup == "WT" || _part.PartGroup == "YC"))
{
int checkCount = db.TA_CHECKPARTANDVEND.Count(q => q.PartCode == p_excel. && q.VendID == p_excel.);
if (checkCount == 0)
{
ErrorList.Add(string.Format("物料号码{0}与供应商{1}在现货原料与供应商对照关系表内没有对应的基础信息!", p_excel., p_excel.));
}
}
if (_part.PartCode.ToString() != p_excel..ToString())
{
ErrorList.Add(string.Format("物料号码{0}填写不正确请注意大小写!", p_excel.));
@ -5092,9 +5100,9 @@ namespace CK.SCP.Controller
{
if (_maxpo.SurplusQty > _PlanQTY)
{
_maxpo.SurplusQty = _maxpo.SurplusQty - _PlanQTY;
//_maxpo.SurplusQty = _maxpo.SurplusQty - _PlanQTY;
db.TB_MAXPO_DETAIL.AddOrUpdate(_maxpo);
//db.TB_MAXPO_DETAIL.AddOrUpdate(_maxpo);
TB_MAXPO_CONSUME CONSUME = new TB_MAXPO_CONSUME();
CONSUME.PoBillNum = _maxpo.PoBillNum;
CONSUME.BillNum = _ls.PoBillNum;
@ -5107,8 +5115,8 @@ namespace CK.SCP.Controller
}
else if (_maxpo.SurplusQty == _PlanQTY)
{
_maxpo.SurplusQty = 0;
db.TB_MAXPO_DETAIL.AddOrUpdate(_maxpo);
//_maxpo.SurplusQty = 0;
//db.TB_MAXPO_DETAIL.AddOrUpdate(_maxpo);
TB_MAXPO_CONSUME CONSUME = new TB_MAXPO_CONSUME();
CONSUME.PoBillNum = _maxpo.PoBillNum;
CONSUME.BillNum = _ls.PoBillNum;
@ -5130,8 +5138,8 @@ namespace CK.SCP.Controller
CONSUME.ShipTime = DateTime.Now;
consum.Add(CONSUME);
_PlanQTY = _PlanQTY - _maxpo.SurplusQty;
_maxpo.SurplusQty = 0;
db.TB_MAXPO_DETAIL.AddOrUpdate(_maxpo);
//_maxpo.SurplusQty = 0;
//db.TB_MAXPO_DETAIL.AddOrUpdate(_maxpo);
}
@ -9468,10 +9476,10 @@ namespace CK.SCP.Controller
{
_ret.MessageList.Add("零件号" + _entity.PartCode + "单次削减量不能大于剩余订货量(千克)");
}
if (((_entity.OrderQtydNow + itm.ReductionQty) * 1000) < _entity.OrderQtykg - _entity.AsnQty)
{
_ret.MessageList.Add("零件号" + _entity.PartCode + "剩余可消耗订货量不足");
}
//if (((_entity.OrderQtydNow + itm.ReductionQty) * 1000) < _entity.OrderQtykg - _entity.AsnQty)
//{
// _ret.MessageList.Add("零件号" + _entity.PartCode + "剩余可消耗订货量不足");
//}
if ((_entity.OrderQtydNow + itm.ReductionQty) < 0)
{
_ret.MessageList.Add("削减失败,零件号" + _entity.PartCode + "本次填写的削减量过大,将会使得订货量小于0!");
@ -9507,7 +9515,7 @@ namespace CK.SCP.Controller
}
_entity.OrderQtykg = (_entity.OrderQtydNow + itm.ReductionQty).Value * 1000;
_entity.AsnQty = (itm.ReductionQty * 1000 + _entity.AsnQty).Value;
//_entity.AsnQty = (itm.ReductionQty * 1000 + _entity.AsnQty).Value;
_entity.SurplusQty = (itm.ReductionQty * 1000 + _entity.SurplusQty).Value;
// 修改数据
TS_UNI_API maxuni = new TS_UNI_API();

3
Models/CK.SCP.Models.csproj

@ -351,10 +351,12 @@
<Compile Include="ScpEntity\ExcelExportEnttity\SCP_PART_ToleranceProportion.cs" />
<Compile Include="ScpEntity\ExcelExportEnttity\SCP_PART_EXPORT.cs" />
<Compile Include="ScpEntity\ExcelExportEnttity\SCP_PRICE_EXPORT.cs" />
<Compile Include="ScpEntity\ExcelExportEnttity\SCP_CHECKPARTANDVENDER_EXPORT.cs" />
<Compile Include="ScpEntity\ExcelExportEnttity\SCP_VENDER_EXPORT.cs" />
<Compile Include="ScpEntity\ExcelExportEnttity\SCP_VENDER_PART_EXPORT.cs" />
<Compile Include="ScpEntity\ExcelImportEntity\SCP_ASN_EXCEL.cs" />
<Compile Include="ScpEntity\PURSubcontractor.cs" />
<Compile Include="ScpEntity\TA_CHECKPARTANDVEND.cs" />
<Compile Include="ScpEntity\TA_Appliance.cs" />
<Compile Include="ScpEntity\TA_ASK_SUBPART.cs" />
<Compile Include="ScpEntity\TA_BOXTYPE.cs" />
@ -362,6 +364,7 @@
<Compile Include="ScpEntity\TA_MoldSharing.cs" />
<Compile Include="ScpEntity\TA_MOLDSHARING_INVOICE.cs" />
<Compile Include="ScpEntity\TA_Part_User.cs" />
<Compile Include="ScpEntity\V_TA_CheckPartsAndVend.cs" />
<Compile Include="ScpEntity\V_TA_ToleranceProportion.cs" />
<Compile Include="ScpEntity\TA_ToleranceProportion.cs" />
<Compile Include="ScpEntity\V_MPO_PRINT.cs" />

2
Models/ScpEntities.cs

@ -44,6 +44,8 @@ namespace CK.SCP.Models
public virtual DbSet<TB_PALLETS_BTL> TB_PALLETS_BTL { get; set; }
public virtual DbSet<TA_Receiving_Information> TA_Receiving_Information { get; set; }
public virtual DbSet<V_TA_APPLIANCE> V_TA_APPLIANCE { get; set; }
public virtual DbSet<V_TA_CheckPartsAndVend> V_TA_CheckPartsAndVend { get; set; }
public virtual DbSet<TA_CHECKPARTANDVEND> TA_CHECKPARTANDVEND { get; set; }
public virtual DbSet<TA_SubPart> TA_SubPart { get; set; }
public virtual DbSet<TB_MAXPO> TB_MAXPO { get; set; }
public virtual DbSet<TB_MAXPO_DETAIL> TB_MAXPO_DETAIL { get; set; }

15
Models/ScpEntity/ExcelExportEnttity/SCP_CHECKPARTANDVENDER_EXPORT.cs

@ -0,0 +1,15 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CK.SCP.Models.ScpEntity.ExcelExportEnttity
{
public class SCP_CHECKPARTANDVENDER_EXPORT
{
public string { get; set; }
public string { get; set; }
public string { get; set; }
}
}

18
Models/ScpEntity/TA_CHECKPARTANDVEND.cs

@ -0,0 +1,18 @@
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace CK.SCP.Models.ScpEntity
{
public partial class TA_CHECKPARTANDVEND
{
[Key]
public long UID { get; set; }
public string PartCode { get; set; }
public string Model { get; set; }
public string VendID { get; set; }
}
}

21
Models/ScpEntity/V_TA_CheckPartsAndVend.cs

@ -0,0 +1,21 @@
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace CK.SCP.Models.ScpEntity
{
public partial class V_TA_CheckPartsAndVend
{
[Key]
public long UID { get; set; }
public string PartCode { get; set; }
public string Model { get; set; }
public string PartDesc1 { get; set; }
public string PartDesc2 { get; set; }
public string PartDesc { get; set; }
public string VendID { get; set; }
public string VendName { get; set; }
}
}

16
SCP/SCP.csproj

@ -263,6 +263,8 @@
<Content Include="Scripts\ECharts\echarts-all.js" />
<Content Include="Scripts\ECharts\echarts.js" />
<Content Include="VersionUpdateInfo.txt" />
<Content Include="Views\BasicData\SCP_CheckPartsAndVend_EDIT.aspx" />
<Content Include="Views\BasicData\SCP_CheckPartsAndVend.aspx" />
<Content Include="Views\BasicData\Appliance.aspx" />
<Content Include="Views\BasicData\Appliance_DETAIL.aspx" />
<Content Include="Views\BasicData\BoxType.aspx" />
@ -5013,6 +5015,20 @@
<Compile Include="Handlers\MakeVerifyCode.ashx.cs">
<DependentUpon>MakeVerifyCode.ashx</DependentUpon>
</Compile>
<Compile Include="Views\BasicData\SCP_CheckPartsAndVend_EDIT.aspx.cs">
<DependentUpon>SCP_CheckPartsAndVend_EDIT.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="Views\BasicData\SCP_CheckPartsAndVend_EDIT.aspx.designer.cs">
<DependentUpon>SCP_CheckPartsAndVend_EDIT.aspx</DependentUpon>
</Compile>
<Compile Include="Views\BasicData\SCP_CheckPartsAndVend.aspx.cs">
<DependentUpon>SCP_CheckPartsAndVend.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="Views\BasicData\SCP_CheckPartsAndVend.aspx.designer.cs">
<DependentUpon>SCP_CheckPartsAndVend.aspx</DependentUpon>
</Compile>
<Compile Include="Views\BasicData\Appliance.aspx.cs">
<DependentUpon>Appliance.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>

82
SCP/Views/BasicData/SCP_CheckPartsAndVend.aspx

@ -0,0 +1,82 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SCP_CheckPartsAndVend.aspx.cs" Inherits="SCP.Views.BasicData.SCP_CheckPartsAndVend" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
<script language="javascript" src="../js/jquery-1.4.1.min.js"></script>
<link href="/css/exaspnet.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" runat="server" AutoSizePanelID="Panel1" />
<f:Panel ID="Panel1" runat="server" Title="" AutoScroll="false" Layout="VBox">
<Items>
<f:Toolbar ID="Toolbar1" runat="server">
<Items>
<f:TextBox ID="txtPartCode" runat="server" Label="零件号码" Text="">
</f:TextBox>
<f:TextBox ID="TextBox1" runat="server" Label="供应商代码" Text="">
</f:TextBox>
<f:Button ID="btnSearch" runat="server" Text="快速查找" OnClick="btnSearch_Click" Icon="SystemSearch">
</f:Button>
<f:Button ID="Button3" runat="server" EnablePostBack="false" Text="刷新" Icon="Reload" OnClientClick="location.reload();">
</f:Button>
<f:Button ID="Insert" runat="server" Text="新增" Icon="Add" OnClick="Button2_Click" EnablePostBack="True">
</f:Button>
<f:Button ID="Delete" runat="server" Text="删除" Icon="Delete" OnClick="Buttondelete_Click" OnClientClick="if(!confirm('是否要将数据删除'))return false;">
</f:Button>
<f:Button ID="Update" runat="server" Text="修改" Icon="BasketEdit" OnClick="Button4_Click" EnablePostBack="True">
</f:Button>
<f:ToolbarSeparator runat="server" />
<f:FileUpload runat="server" ID="FileUp" EmptyText="请选择要货单据" Required="true" Width="200" ButtonIcon="Add" ShowRedStar="true"></f:FileUpload>
<f:Button ID="btnInput" runat="server" Text="导入" Icon="PageExcel" OnClick="btnInput_Click">
</f:Button>
<f:Button ID="btnOutput" runat="server" Text="导出" OnClick="btnOutput_OnClick" Icon="PageExcel">
</f:Button>
<f:LinkButton ID="linkbutton" runat="server" Text="模板下载" OnClick="LinkButton_Click" ></f:LinkButton>
</Items>
</f:Toolbar>
<f:Grid ID="Grid1" runat="server" BoxFlex="1"
ShowHeader="False" DataKeyNames=" UID,PartCode,PartDesc,Model,VendID,VendName"
AllowPaging="True" PageSize="50" OnPageIndexChange="Grid1_OnPageIndexChange"
ShowBorder="False"
AllowSorting="true" IsDatabasePaging="true" SortField="PartCode" EnableCheckBoxSelect="true">
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
</f:ToolbarText>
<f:DropDownList ID="ddlGridPageSize" Width="80px" AutoPostBack="true" OnSelectedIndexChanged="ddlGridPageSize_SelectedIndexChanged"
runat="server">
<f:ListItem Text="100" Value="100" />
<f:ListItem Text="200" Value="200" />
<f:ListItem Text="500" Value="500" />
<f:ListItem Text="1000" Value="1000" />
<f:ListItem Text="5000" Value="5000" />
<f:ListItem Text="10000" Value="10000" />
</f:DropDownList>
</PageItems>
<Columns>
<f:BoundField SortField="UID" DataField="UID" ColumnID="UID" Width="100px" Hidden="true" />
<f:BoundField SortField="PartCode" DataField="PartCode" HeaderText="零件号(原料)" ColumnID="PartCode" Width="200px" />
<f:BoundField SortField="PartDesc" DataField="PartDesc" HeaderText="零件描述" ColumnID="PartDesc" Width="200px" />
<f:BoundField SortField="Model" DataField="Model" HeaderText="车型" ColumnID="Model" Width="100px" />
<f:BoundField SortField="VendID" DataField="VendID" HeaderText="供应商代码" ColumnID="VendID" Width="100px" />
<f:BoundField SortField="VendName" DataField="VendName" HeaderText="供应商" ColumnID="VendName" Width="200px" ID="VendName" />
</Columns>
</f:Grid>
</Items>
</f:Panel>
</form>
<f:Window runat="server" ID="Window1" Hidden="True" AutoScroll="false" Width="800px" Height="450px" CloseAction="HidePostBack"
WindowPosition="Center" IsModal="true" Title="零件明细" Target="Parent" EnableIFrame="true" OnClose="Window1_Close"
IFrameUrl="about:blank" />
</body>
</html>

177
SCP/Views/BasicData/SCP_CheckPartsAndVend.aspx.cs

@ -0,0 +1,177 @@
using CK.SCP.Controller;
using CK.SCP.Models;
using CK.SCP.Models.ScpEntity;
using CK.SCP.Models.ScpEntity.ExcelExportEnttity;
using CK.SCP.Utils;
using FineUI;
using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace SCP.Views.BasicData
{
public partial class SCP_CheckPartsAndVend : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindData();
}
}
public void BindData()
{
SearchInvoice((ret) =>
{
Grid1.RecordCount = ret.Count();
var list = SortAndPage(ret, Grid1);
Grid1.DataSource = list;
Grid1.DataBind();
});
}
public void SearchInvoice(Action<IQueryable<V_TA_CheckPartsAndVend>> p_action)
{
V_TA_CheckPartsAndVend _entity = new V_TA_CheckPartsAndVend();
if (txtPartCode.Text != null)
{
_entity.PartCode = txtPartCode.Text;
}
if (TextBox1.Text != null)
{
_entity.VendID = TextBox1.Text;
}
SCP_INVOICE_CONTROLLER.Get_V_TA_CheckPartsAndVend(_entity, (ret) =>
{
if (ret.State == ReturnStatus.Succeed)
{
p_action(ret.Result);
}
});
}
protected void ddlGridPageSize_SelectedIndexChanged(object sender, EventArgs e)
{
Grid1.PageSize = Convert.ToInt32(ddlGridPageSize.SelectedValue);
BindData();
}
//查询
protected void btnSearch_OnClick(object sender, EventArgs e)
{
BindData();
}
protected void Grid1_OnPageIndexChange(object sender, GridPageEventArgs e)
{
BindData();
}
protected void btnOutput_OnClick(object sender, EventArgs e)
{
SearchInvoice((ret) =>
{
Dictionary<string, string> cellheader = new Dictionary<string, string>(){
{ "PartCode", "零件号" },
{ "PartDesc", "零件描述" },
{ "Model", "车型" },
{ "VendID", "供应商代码" },
{ "VendName", "供应商" },
};
string url = EntityListToExcel2003(cellheader, ret.ToList(), "零件供应商对应关系");
});
}
protected void btnSearch_Click(object sender, EventArgs e)
{
BindData();
}
protected void Button2_Click(object sender, EventArgs e)
{
string url = String.Format("../BasicData/SCP_CheckPartsAndVend_EDIT.aspx?");
PageContext.RegisterStartupScript(Window1.GetShowReference(url));
}
protected void Buttondelete_Click(object sender, EventArgs e)
{
string partcode = GetSelectedDataKey(Grid1, 1);
string vendid = GetSelectedDataKey(Grid1, 4);
var ret = SCP_INVOICE_CONTROLLER.Del_VENDER_PART( partcode,vendid);
if (ret.State == ReturnStatus.Succeed)
{
BindData();
}
}
protected void Button4_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Count() == 0)
{
PageContext.RegisterStartupScript(Alert.GetShowInTopReference("没有选择数据!"));
return;
}
object[] rowDataKeys = Grid1.DataKeys[Grid1.SelectedRowIndex];
if (rowDataKeys.Count() > 0)
{
string PartCode = rowDataKeys[1] as string;
string VendID = rowDataKeys[4] as string;
string Model = rowDataKeys[3] as string;
string url = String.Format("../BasicData/SCP_CheckPartsAndVend_EDIT.aspx?PartCode={0}&&VendID={1}&&Model={2}", PartCode, VendID, Model);
PageContext.RegisterStartupScript(Window1.GetShowReference(url));
}
}
/// <summary>
/// 上传文件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnInput_Click(object sender, EventArgs e)
{
string _fileName = FileUp.FileName;
if (string.IsNullOrEmpty(_fileName))
{
Alert.Show("选择文件为空!");
return;
}
string _lx = _fileName.Split('.')[1];
Stream _stream = FileUp.PostedFile.InputStream;
DataTable _dt = new DataTable();
if (_lx == "xls")
{
_dt = ExcelHelper.GetDataTable(_stream);
}
else
{
_dt = ExcelHelper.GetDataTableOfXlsx(_stream);
}
var list = ConvertHelper.ToList<SCP_CHECKPARTANDVENDER_EXPORT>(ExcelHelper.RemoveEmpty(_dt)).ToList();
var ret = SCP_INVOICE_CONTROLLER.EXCEL_VENDER_PART(list, CurrentUser.FactoryList[0], CurrentUser.Name);
if (ret.State == ReturnStatus.Succeed && ret.Result == true)
{
Alert.Show("导入成功");
BindData();
}
else
{
Alert.Show(string.Join("<br>", ret.MessageList));
}
}
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
BindData();
}
protected void LinkButton_Click(object sender, EventArgs e)
{
Alert.Show($"<a href=\'/uploadfiles/{".xlsx"}\'>{".xlsx"}</a>", "请点击文件名下载", MessageBoxIcon.Information);
}
}
}

215
SCP/Views/BasicData/SCP_CheckPartsAndVend.aspx.designer.cs

@ -0,0 +1,215 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace SCP.Views.BasicData
{
public partial class SCP_CheckPartsAndVend
{
/// <summary>
/// Head1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlHead Head1;
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.Panel Panel1;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.Toolbar Toolbar1;
/// <summary>
/// txtPartCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.TextBox txtPartCode;
/// <summary>
/// TextBox1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.TextBox TextBox1;
/// <summary>
/// btnSearch 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.Button btnSearch;
/// <summary>
/// Button3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.Button Button3;
/// <summary>
/// Insert 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.Button Insert;
/// <summary>
/// Delete 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.Button Delete;
/// <summary>
/// Update 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.Button Update;
/// <summary>
/// FileUp 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.FileUpload FileUp;
/// <summary>
/// btnInput 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.Button btnInput;
/// <summary>
/// btnOutput 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.Button btnOutput;
/// <summary>
/// linkbutton 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.LinkButton linkbutton;
/// <summary>
/// Grid1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.Grid Grid1;
/// <summary>
/// ToolbarSeparator1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.ToolbarSeparator ToolbarSeparator1;
/// <summary>
/// ToolbarText1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.ToolbarText ToolbarText1;
/// <summary>
/// ddlGridPageSize 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.DropDownList ddlGridPageSize;
/// <summary>
/// VendName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.BoundField VendName;
/// <summary>
/// Window1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.Window Window1;
}
}

38
SCP/Views/BasicData/SCP_CheckPartsAndVend_EDIT.aspx

@ -0,0 +1,38 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SCP_CheckPartsAndVend_EDIT.aspx.cs" Inherits="SCP.Views.BasicData.SCP_CheckPartsAndVend_EDIT" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server" >
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server"/>
<f:Panel ID="Panel1" CssClass="blockpanel" runat="server" ShowBorder="true" ShowHeader="true" Layout="Region">
<Toolbars>
<f:Toolbar ID="Toolbar2" runat="server">
<Items>
<f:Button ID="Btn_Save" runat="server" EnablePostBack="True" Text="保存" Icon="SystemSave" OnClick="Btn_Save_Click">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Items>
<f:Form runat="server" Width="550px" BodyPadding="25 25 30 25">
<Items>
<f:TextBox runat = "server" Label = "零件号(原料)" EmptyText = "" ID = "TXT_PART" />
<f:TextBox runat = "server" Label = "车型" EmptyText = "" ID = "TXT_Model" />
<f:TextBox runat = "server" Label = "供应商ID" EmptyText = "" ID = "TXT_VENDID" />
</Items>
</f:Form>
</Items>
</f:Panel>
</form>
</body>
</html>

74
SCP/Views/BasicData/SCP_CheckPartsAndVend_EDIT.aspx.cs

@ -0,0 +1,74 @@
using System;
using System.Linq;
using System.Web.UI;
using CK.SCP.Models.ScpEntity;
using CK.SCP.Controller;
using FineUI;
using ChangKeTec.Wms.Models.Wms;
namespace SCP.Views.BasicData
{
public partial class SCP_CheckPartsAndVend_EDIT : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
Bind();
}
}
private void Bind()
{
if (!string.IsNullOrEmpty(Request["PartCode"]))
{
TXT_PART.Text = Request["PartCode"];
TXT_PART.Readonly = true;
TXT_Model.Text = Request["Model"];
TXT_VENDID.Text = Request["VendID"];
TXT_VENDID.Readonly = true;
}
}
protected void Btn_Save_Click(object sender, EventArgs e)
{
TA_CHECKPARTANDVEND _entity = new TA_CHECKPARTANDVEND();
if (string.IsNullOrWhiteSpace(TXT_PART.Text))
{
Alert.Show("零件号不能为空");
return;
}
else
{
_entity.PartCode = TXT_PART.Text.Trim();
}
if (string.IsNullOrWhiteSpace(TXT_VENDID.Text))
{
Alert.Show("供应商ID不能为空");
return;
}
else
{
_entity.VendID = TXT_VENDID.Text.Trim();
}
_entity.Model = TXT_Model.Text;
var ret1 = SCP_INVOICE_CONTROLLER.Save_TA_CHECKPARTANDVEND(_entity);
if (ret1.State == ReturnStatus.Succeed)
{
Alert.Show("保存成功");
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
else
{
if (ret1.Message.Count() > 0)
{
Alert.Show(string.Join("<br>", ret1.Message));
return;
}
}
}
}
}

89
SCP/Views/BasicData/SCP_CheckPartsAndVend_EDIT.aspx.designer.cs

@ -0,0 +1,89 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace SCP.Views.BasicData
{
public partial class SCP_CheckPartsAndVend_EDIT
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.Panel Panel1;
/// <summary>
/// Toolbar2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.Toolbar Toolbar2;
/// <summary>
/// Btn_Save 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.Button Btn_Save;
/// <summary>
/// TXT_PART 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.TextBox TXT_PART;
/// <summary>
/// TXT_Model 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.TextBox TXT_Model;
/// <summary>
/// TXT_VENDID 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.TextBox TXT_VENDID;
}
}

2
SCP/Views/PlanData/SCP_ASK.aspx

@ -26,7 +26,7 @@
<f:Button ID="btnDelete" runat="server" Text="删除看板" Icon="Delete" OnClick="btnDelete_Click" Hidden="true">
</f:Button>
<f:Button ID="Button9" runat="server" Text="看板删除(新建状态)" Icon="Delete" OnClick="btnInput_Click1" >
<f:Button ID="Button9" runat="server" Text="看板删除(新建状态)" Icon="Delete" OnClick="btnInput_Click1" Hidden="true" >
</f:Button>
<f:Button ID="btnCopy" runat="server" Text="复制看板" Icon="PageCopy" OnClick="btnCopy_Click" OnClientClick="if(!confirm('是否要复制订单,只能复制合同看板不能复制离散订单?'))return false;" Hidden="true">
</f:Button>

2
SCP/Views/PlanData/SCP_ASK.aspx.cs

@ -61,7 +61,7 @@ namespace SCP.PlanData
if (CurrentUser.Name == "admin" || CurrentUser.RoleList.Contains("分厂管理员"))
{
btnDelete.Hidden = false;
Button9.Hidden = false;
}
BindAsk();

72
SCP/Views/富维冲压件/SCP_MAXPO_INCOMPLETE.aspx

@ -34,10 +34,9 @@
<Rows>
<f:FormRow ColumnWidths="25% 25% 25% 25%" ID="FormRow_1" runat="server">
<Items>
<f:DatePicker runat="server" Label="大订单创建日期" ID="TextBillTime1" ></f:DatePicker>
<f:DatePicker runat="server" Label="大订单创建日期" ID="TextBillTime1"></f:DatePicker>
<f:DatePicker runat="server" Label="至" ID="TextBillTime2"></f:DatePicker>
<f:TextBox runat="server" Label="创建者" ID="TextBox1">
</f:TextBox>
<f:TextBox runat="server" Label="大订单号" ID="TextBillNo">
</f:TextBox>
@ -46,12 +45,12 @@
<f:FormRow ColumnWidths="25% 25% 25% 25%" ID="FormRow_2" runat="server">
<Items>
<f:DropDownList ID="ddl_Vender" runat="server" Label="供应商" EnableEdit="true" ></f:DropDownList>
<f:DropDownList ID="ddl_Vender" runat="server" Label="供应商" EnableEdit="true"></f:DropDownList>
<f:TextBox runat="server" Label="零件号" ID="TextBox3">
</f:TextBox>
<f:TextBox runat="server" Label="原材物料号" ID="TextPartCode">
</f:TextBox>
<f:TextBox runat="server" Label="合同月" ID="TextPartName" >
<f:TextBox runat="server" Label="合同月" ID="TextPartName">
</f:TextBox>
</Items>
</f:FormRow>
@ -64,7 +63,7 @@
</Rows>
</f:Form>
<f:Grid ID="Grid_V_TB_PO_SUBDETAIL" ShowBorder="true" ShowHeader="true" PageSize="100" BoxFlex="1" CssClass="maingrid"
runat="server" DataKeyNames="UID,PoBillNum,PartCode" EnableCheckBoxSelect = "true" EnableTextSelection="true"
runat="server" DataKeyNames="UID,PoBillNum,PartCode" EnableCheckBoxSelect="true" EnableTextSelection="true"
IsDatabasePaging="true" AllowPaging="true" SortField="PoBillNum" SortDirection="ASC" OnPageIndexChange="Grid_V_TB_INCOMPLETE_ASK_PageIndexChange"
AutoScroll="True" EnableRowDoubleClickEvent="True">
<PageItems>
@ -79,37 +78,40 @@
</f:DropDownList>
</PageItems>
<Columns>
<f:BoundField Width = "130px" DataField = "PoBillNum" DataFormatString = "{0}" HeaderText = "大订单号" SortField="PoBillNum"/>
<f:BoundField Width = "130px" DataField = "ContractMonth" DataFormatString = "{0}" HeaderText = "合同月" SortField="ContractMonth"/>
<f:BoundField Width = "130px" DataField = "PartCode" DataFormatString = "{0}" HeaderText = "原料物料号" SortField="PartCode"/>
<f:BoundField Width = "130px" DataField = "PartNumber" DataFormatString = "{0}" HeaderText = "零件号" SortField="PartNumber"/>
<f:BoundField Width = "130px" DataField = "VendId" DataFormatString = "{0}" HeaderText = "供应商编号" SortField="VendId"/>
<f:BoundField Width = "100px" DataField = "VendName" DataFormatString = "{0}" HeaderText = "供应商名称" SortField="VendName"/>
<f:BoundField Width = "100px" DataField = "CreateUser" DataFormatString = "{0}" HeaderText = "创建者" SortField="CreateUser"/>
<f:BoundField Width = "130px" DataField = "CreateTime" DataFormatString = "{0}" HeaderText = "创建时间" SortField="CreateTime"/>
<f:BoundField Width = "100px" DataField = "PoLine" DataFormatString = "{0}" HeaderText = "行号" SortField="PoLine"/>
<f:BoundField Width = "100px" DataField = "Texture" DataFormatString = "{0}" HeaderText = "材质" SortField="Texture"/>
<f:BoundField Width = "100px" DataField = "Model" DataFormatString = "{0}" HeaderText = "车型" SortField="Model"/>
<f:BoundField Width = "100px" DataField = "Matermanu" DataFormatString = "{0}" HeaderText = "材料厂家" SortField="Matermanu"/>
<f:BoundField Width = "100px" DataField = "Finprspec" DataFormatString = "{0}" HeaderText = "成品规格" SortField="Finprspec"/>
<f:BoundField Width = "100px" DataField = "TechStandard" DataFormatString = "{0}" HeaderText = "技术标准" SortField="TechStandard"/>
<f:BoundField Width = "100px" DataField = "MinordQty" DataFormatString = "{0}" HeaderText = "起订量" SortField="MinordQty"/>
<f:BoundField Width = "100px" DataField = "Singlecon" DataFormatString = "{0}" HeaderText = "单件消耗(千克)" SortField="Singlecon"/>
<f:BoundField Width = "100px" DataField = "OrderQtyd" DataFormatString = "{0}" HeaderText = "订货量(吨)" SortField="OrderQtyd"/>
<f:BoundField Width = "100px" DataField = "OrderQtykg" DataFormatString = "{0}" HeaderText = "订货量(KG)" SortField="OrderQtykg"/>
<f:BoundField Width = "100px" DataField = "OrderNumber" DataFormatString = "{0}" HeaderText = "订货件数" SortField="OrderNumber"/>
<f:BoundField Width = "100px" DataField = "SurplusQty" DataFormatString = "{0}" HeaderText = "差异数" SortField="SurplusQty"/>
<f:BoundField Width="130px" DataField="PoBillNum" DataFormatString="{0}" HeaderText="大订单号" SortField="PoBillNum" />
<f:BoundField Width="130px" DataField="ContractMonth" DataFormatString="{0}" HeaderText="合同月" SortField="ContractMonth" />
<f:BoundField Width="130px" DataField="PartCode" DataFormatString="{0}" HeaderText="原料物料号" SortField="PartCode" />
<f:BoundField Width="130px" DataField="PartNumber" DataFormatString="{0}" HeaderText="零件号" SortField="PartNumber" />
<f:BoundField Width="100px" DataField="OrderQtykg" DataFormatString="{0}" HeaderText="订货量(KG)" SortField="OrderQtykg" />
<f:BoundField Width="100px" DataField="ReceQty" DataFormatString="{0}" HeaderText="剩余收货数" SortField="ReceQty" />
<f:BoundField Width="100px" DataField="RecQty" DataFormatString="{0}" HeaderText="收货数" SortField="RecQty" />
<f:BoundField Width="100px" DataField="ReturnQty" DataFormatString="{0}" HeaderText="退货数" SortField="ReturnQty" />
<f:BoundField Width="130px" DataField="VendId" DataFormatString="{0}" HeaderText="供应商编号" SortField="VendId" />
<f:BoundField Width="100px" DataField="VendName" DataFormatString="{0}" HeaderText="供应商名称" SortField="VendName" />
<f:BoundField Width="100px" DataField="CreateUser" DataFormatString="{0}" HeaderText="创建者" SortField="CreateUser" />
<f:BoundField Width="130px" DataField="CreateTime" DataFormatString="{0}" HeaderText="创建时间" SortField="CreateTime" />
<f:BoundField Width="100px" DataField="PoLine" DataFormatString="{0}" HeaderText="行号" SortField="PoLine" />
<f:BoundField Width="100px" DataField="Texture" DataFormatString="{0}" HeaderText="材质" SortField="Texture" />
<f:BoundField Width="100px" DataField="Model" DataFormatString="{0}" HeaderText="车型" SortField="Model" />
<f:BoundField Width="100px" DataField="Matermanu" DataFormatString="{0}" HeaderText="材料厂家" SortField="Matermanu" />
<f:BoundField Width="100px" DataField="Finprspec" DataFormatString="{0}" HeaderText="成品规格" SortField="Finprspec" />
<f:BoundField Width="100px" DataField="TechStandard" DataFormatString="{0}" HeaderText="技术标准" SortField="TechStandard" />
<f:BoundField Width="100px" DataField="MinordQty" DataFormatString="{0}" HeaderText="起订量" SortField="MinordQty" />
<f:BoundField Width="100px" DataField="Singlecon" DataFormatString="{0}" HeaderText="单件消耗(千克)" SortField="Singlecon" />
<f:BoundField Width="100px" DataField="OrderQtyd" DataFormatString="{0}" HeaderText="订货量(吨)" SortField="OrderQtyd" />
<f:BoundField Width="100px" DataField="OrderNumber" DataFormatString="{0}" HeaderText="订货件数" SortField="OrderNumber" />
<%-- <f:BoundField Width = "100px" DataField = "SurplusQty" DataFormatString = "{0}" HeaderText = "差异数" SortField="SurplusQty"/>
<f:BoundField Width = "100px" DataField = "AsnQty" DataFormatString = "{0}" HeaderText = "剩余发货数" SortField="AsnQty"/>
<f:BoundField Width = "100px" DataField = "AnQty" DataFormatString = "{0}" HeaderText = "发货数" SortField="AnQty"/>
<f:BoundField Width = "100px" DataField = "ReceQty" DataFormatString = "{0}" HeaderText = "剩余收货数" SortField="ReceQty"/>
<f:BoundField Width = "100px" DataField = "RecQty" DataFormatString = "{0}" HeaderText = "收货数" SortField="RecQty"/>
<f:BoundField Width = "100px" DataField = "ReturnQty" DataFormatString = "{0}" HeaderText = "退货数" SortField="ReturnQty"/>
<f:BoundField Width = "100px" DataField = "forecastone" DataFormatString = "{0}" HeaderText = "预测1(日期/数量)" SortField="forecastone"/>
<f:BoundField Width = "100px" DataField = "forecasttwo" DataFormatString = "{0}" HeaderText = "预测2(日期/数量)" SortField="forecasttwo"/>
<f:BoundField Width = "100px" DataField = "forecastthree" DataFormatString = "{0}" HeaderText = "预测3(日期/数量)" SortField="forecastthree"/>
<f:BoundField Width = "100px" DataField = "forecastfour" DataFormatString = "{0}" HeaderText = "预测4(日期/数量)" SortField="forecastfour"/>
<f:BoundField Width = "100px" DataField = "forecastfive" DataFormatString = "{0}" HeaderText = "预测5(日期/数量)" SortField="forecastfive"/>
<f:BoundField Width = "100px" DataField = "forecastsix" DataFormatString = "{0}" HeaderText = "预测6(日期/数量)" SortField="forecastsix"/>
<f:BoundField Width = "100px" DataField = "AnQty" DataFormatString = "{0}" HeaderText = "发货数" SortField="AnQty"/> --%>
<f:BoundField Width="100px" DataField="forecastone" DataFormatString="{0}" HeaderText="预测1(日期/数量)" SortField="forecastone" />
<f:BoundField Width="100px" DataField="forecasttwo" DataFormatString="{0}" HeaderText="预测2(日期/数量)" SortField="forecasttwo" />
<f:BoundField Width="100px" DataField="forecastthree" DataFormatString="{0}" HeaderText="预测3(日期/数量)" SortField="forecastthree" />
<f:BoundField Width="100px" DataField="forecastfour" DataFormatString="{0}" HeaderText="预测4(日期/数量)" SortField="forecastfour" />
<f:BoundField Width="100px" DataField="forecastfive" DataFormatString="{0}" HeaderText="预测5(日期/数量)" SortField="forecastfive" />
<f:BoundField Width="100px" DataField="forecastsix" DataFormatString="{0}" HeaderText="预测6(日期/数量)" SortField="forecastsix" />
</Columns>
</f:Grid>

4
SCP/Views/富维冲压件/SCP_MAXPO_INCOMPLETE.aspx.cs

@ -132,8 +132,8 @@ namespace SCP.Views.富维冲压件
Dictionary<string, string> cellheader = new Dictionary<string, string>
{
{ "PoBillNum", "大订单号" },
{ "PartCode", "零件号" },
{ "PartNumber", "原料物料号" },
{ "PartNumber", "零件号" },
{ "PartCode", "原料物料号" },
{ "VendId", "供应商编号" },
{ "VendName", "供应商名称" },
{ "CreateUser", "创建者" },

7
SCP/Views/富维冲压件/SCP_MAXPO_INCOMPLETE_DETAIL.aspx

@ -27,7 +27,8 @@
</Toolbars>
</f:Form>
<f:Label runat="server" Label="单据号指的是期货订单号(CYD开头),发货单号(N开头),收货单号(M开头或者C开头),退货单号(R开头)。时间指的是期货订单创建时间,发货单确认发货时间,收货单收货时间。" LabelWidth="1000" ColumnWidth="800" Width="1000" ID="LABLE" />
<f:Label runat="server" Label="收货单号(M开头或者C开头),退货单号(R开头)。时间指的是期货订单创建时间,发货单确认发货时间,收货单收货时间。" LabelWidth="1000" ColumnWidth="800" Width="1000" ID="LABLE" />
<%--<f:Label runat="server" Label="单据号指的是期货订单号(CYD开头),发货单号(N开头),收货单号(M开头或者C开头),退货单号(R开头)。时间指的是期货订单创建时间,发货单确认发货时间,收货单收货时间。" LabelWidth="1000" ColumnWidth="800" Width="1000" ID="Label1" />--%>
<f:Grid ID="Grid_V_TB_PO_SUBDETAIL" ShowBorder="true" ShowHeader="true" PageSize="100" BoxFlex="1" CssClass="maingrid"
runat="server" DataKeyNames="UID,PoBillNum"
IsDatabasePaging="true" AllowPaging="true" SortField="PoBillNum" SortDirection="ASC" OnPageIndexChange="Grid_V_TB_INCOMPLETE_ASK_PageIndexChange"
@ -49,10 +50,10 @@
<f:BoundField Width = "130px" DataField = "PartCode" DataFormatString = "{0}" HeaderText = "物料号" SortField="PartCode"/>
<f:BoundField Width = "130px" DataField = "PartDesc1" DataFormatString = "{0}" HeaderText = "物料名称" SortField="PartDesc1"/>
<f:BoundField Width = "130px" DataField = "PartDesc2" DataFormatString = "{0}" HeaderText = "物料规格" SortField="PartDesc2"/>
<f:BoundField Width = "100px" DataField = "VendId" DataFormatString = "{0}" HeaderText = "供应商编号" SortField="VendId"/>
<f:BoundField Width = "180px" DataField = "VendName" DataFormatString = "{0}" HeaderText = "供应商描述" SortField="VendName"/>
<f:BoundField Width = "130px" DataField = "ShipTime" DataFormatString = "{0}" HeaderText = "时间" SortField="ShipTime"/>
<f:BoundField Width = "130px" DataField = "PoQty" DataFormatString = "{0}" HeaderText = "消耗数" SortField="PoQty"/>
<f:BoundField Width = "100px" DataField = "VendId" DataFormatString = "{0}" HeaderText = "供应商编号" SortField="VendId"/>
<f:BoundField Width = "180px" DataField = "VendName" DataFormatString = "{0}" HeaderText = "供应商描述" SortField="VendName"/>
</Columns>
</f:Grid>
</Items>

2
SCP/Views/富维冲压件/SCP_PO_MAX_DETAIL.aspx

@ -26,7 +26,7 @@
</Toolbars>
<Items>
<f:Grid ID="Grid_V_TB_PO_SUBDETAIL" Title="大订单明细" BoxFlex="1" ShowBorder="True" ShowHeader="True" AllowCellEditing="True" ClicksToEdit="1" EnableCheckBoxSelect="true"
runat="server" PageSize="1000" SortField="UID" IsDatabasePaging="True" AllowPaging="True" SortDirection="Desc" AutoScroll="True"
runat="server" PageSize="1000" SortField="PoLine" IsDatabasePaging="True" AllowPaging="True" SortDirection="ASC" AutoScroll="True"
DataKeyNames="UID,PoBillNum,PartCode,Qty,SubQty,ReductionQty,ReductionQtyOne,ReductionQtyTwo,ReductionQtyThree,ReductionQtyFour,ReductionQtyFive" >
<Columns>
<f:BoundField Width="100px" DataField="PartCode" DataFormatString="{0}" HeaderText="原料物料号" SortField="PartCode" />

6
SCP/Views/富维冲压件/SCP_PO_MAX_DETAIL.aspx.cs

@ -169,7 +169,11 @@ namespace SCP.Views.富维冲压件
Alert.Show(string.Join("<br>", ret.MessageList));
}
}
/// <summary>
/// 保存削减量
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Btn_SaveReductionQty_Click(object sender, EventArgs e)
{
List<TB_MAXPO_DETAIL> list = new List<TB_MAXPO_DETAIL>();

3
UniApiGroup/Controller/OdbcApiQadController.cs

@ -822,7 +822,8 @@ namespace CK.SCP.GrupUniApi.Controller
//var _liii = _lii.ToList();
//var _entity = _liii.First();
// 根据 零件号作废
var askdetaill = wdb.TB_ASK_DETAIL.Where(p => p.PoBillNum == _lii.purDocNO && p.PartCode == _lii.mtlNO && p.PoLine == int.Parse(_lii.PURDOCITEMNO)).ToList();
int dpoline = Convert.ToInt32(_lii.PURDOCITEMNO);
var askdetaill = wdb.TB_ASK_DETAIL.Where(p => p.PoBillNum == _lii.purDocNO && p.PartCode == _lii.mtlNO && p.PoLine == dpoline).ToList();
askdetaill.ForEach(p =>
{
p.State = -1;

3
UniApiGroup/Controller/OdbcApiWmsController.cs

@ -362,6 +362,7 @@ namespace CK.SCP.GrupUniApi.Controller
if (maxpodetail != null)
{
maxpodetail.ReceQty = maxpodetail.ReceQty + qty;
maxpodetail.SurplusQty = maxpodetail.SurplusQty - qty;
scpMaxPoDetailList.Add(maxpodetail);
TB_MAXPO_CONSUME cONSUME = new TB_MAXPO_CONSUME();
cONSUME.PoBillNum = pobillnum;
@ -396,6 +397,7 @@ namespace CK.SCP.GrupUniApi.Controller
if (maxpodetail != null)
{
maxpodetail.ReturnQty = maxpodetail.ReturnQty - qty;
maxpodetail.SurplusQty = maxpodetail.SurplusQty - qty;
scpMaxPoDetailList.Add(maxpodetail);
TB_MAXPO_CONSUME cONSUME = new TB_MAXPO_CONSUME();
cONSUME.PoBillNum = pobillnum;
@ -853,6 +855,7 @@ namespace CK.SCP.GrupUniApi.Controller
if (maxpodetail != null)
{
maxpodetail.ReturnQty = maxpodetail.ReturnQty -qty;
maxpodetail.SurplusQty = maxpodetail.SurplusQty + qty;
scpMaxPoDetailList.Add(maxpodetail);
TB_MAXPO_CONSUME cONSUME = new TB_MAXPO_CONSUME();
cONSUME.PoBillNum = pobillnum;

Loading…
Cancel
Save