Browse Source

增补及页面调整

SCP_CYJ
钱峰 2 days ago
parent
commit
9a32e11a1c
  1. 10
      Controller/SCP_ASK_CONTROLLER.cs
  2. 27
      Controller/SCP_ASN_CONTROLLER.cs
  3. 144
      Controller/SCP_CONTRACT_CONTROLLER.cs
  4. 695
      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. 90
      SCP/Views/富维冲压件/SCP_MAXPO_INCOMPLETE.aspx
  21. 4
      SCP/Views/富维冲压件/SCP_MAXPO_INCOMPLETE.aspx.cs
  22. 9
      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. 5
      UniApiGroup/Controller/OdbcApiWmsController.cs

10
Controller/SCP_ASK_CONTROLLER.cs

@ -1918,11 +1918,13 @@ namespace CK.SCP.Controller
{ {
_tDetail.VendBatch = itm.VendBatch; _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); if (_t.PoBillNum.Substring(0, 5) == "CYD03" && _t.Site == "W21")
_tDetail.VendBatch = podetail.SubSite + "," + podetail.Extend3 + "," + itm.VendBatch + "#"; {
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.UpdateUser = itm.VendBatch;
_tDetail.PackQty = itm.PackQty == 0 ? 1 : itm.PackQty; _tDetail.PackQty = itm.PackQty == 0 ? 1 : itm.PackQty;

27
Controller/SCP_ASN_CONTROLLER.cs

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

144
Controller/SCP_CONTRACT_CONTROLLER.cs

@ -18,8 +18,8 @@ namespace CK.SCP.Controller
public class SCP_CONTRACT_CONTROLLER public class SCP_CONTRACT_CONTROLLER
{ {
public static void Get_TB_CONTRACT_List(TB_CONTRACT p_entity, Action<ResultObject<IQueryable<TB_CONTRACT>>> p_action) public static void Get_TB_CONTRACT_List(TB_CONTRACT p_entity, Action<ResultObject<IQueryable<TB_CONTRACT>>> p_action)
{ {
ResultObject<IQueryable<TB_CONTRACT>> _ret = new ResultObject<IQueryable<TB_CONTRACT>>(); ResultObject<IQueryable<TB_CONTRACT>> _ret = new ResultObject<IQueryable<TB_CONTRACT>>();
try try
@ -63,11 +63,11 @@ namespace CK.SCP.Controller
{ {
q = q.Where(p => p.BillNo.Contains(p_entity.BillNo)); q = q.Where(p => p.BillNo.Contains(p_entity.BillNo));
} }
_ret.State = ReturnStatus.Succeed; _ret.State = ReturnStatus.Succeed;
_ret.Result = q; _ret.Result = q;
p_action(_ret); p_action(_ret);
} }
} }
catch (System.Data.Entity.Validation.DbEntityValidationException dbEx)//捕获实体验证异常 catch (System.Data.Entity.Validation.DbEntityValidationException dbEx)//捕获实体验证异常
@ -87,7 +87,7 @@ namespace CK.SCP.Controller
} }
catch (OptimisticConcurrencyException ex)//并发冲突异常 catch (OptimisticConcurrencyException ex)//并发冲突异常
{ {
_ret.State = ReturnStatus.Failed; _ret.State = ReturnStatus.Failed;
_ret.ErrorList.Add(ex); _ret.ErrorList.Add(ex);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_CONTRACT_CONTROLLER), "Get_TB_CONTRACT_List", ex.ToString()); LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_CONTRACT_CONTROLLER), "Get_TB_CONTRACT_List", ex.ToString());
@ -95,7 +95,7 @@ namespace CK.SCP.Controller
} }
catch (ScpException ex) catch (ScpException ex)
{ {
_ret.State = ReturnStatus.Failed; _ret.State = ReturnStatus.Failed;
_ret.ErrorList.Add(ex); _ret.ErrorList.Add(ex);
@ -103,7 +103,7 @@ namespace CK.SCP.Controller
if (ex.InnerException != null && ex.InnerException.GetType() == typeof(UpdateException)) if (ex.InnerException != null && ex.InnerException.GetType() == typeof(UpdateException))
{ {
var inner = (UpdateException)ex.InnerException; var inner = (UpdateException)ex.InnerException;
throw new ScpException(ResultCode.Exception, "0000", ex.ToString()); throw new ScpException(ResultCode.Exception, "0000", ex.ToString());
} }
else else
@ -118,7 +118,7 @@ namespace CK.SCP.Controller
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_CONTRACT_CONTROLLER), "Get_TB_CONTRACT_List", e.Message); LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_CONTRACT_CONTROLLER), "Get_TB_CONTRACT_List", e.Message);
throw e; throw e;
} }
} }
public static ResultObject<List<TB_CONTRACT_DETAIL>> Get_TB_CONTRACT_DETAIL_List(TB_CONTRACT_DETAIL p_entity) public static ResultObject<List<TB_CONTRACT_DETAIL>> Get_TB_CONTRACT_DETAIL_List(TB_CONTRACT_DETAIL p_entity)
{ {
@ -164,10 +164,10 @@ namespace CK.SCP.Controller
{ {
q = q.Where(p => p.UpdateInfo.Contains(p_entity.UpdateInfo)); q = q.Where(p => p.UpdateInfo.Contains(p_entity.UpdateInfo));
} }
q = q.Where(p => p.IsDeleted == p_entity.IsDeleted); q = q.Where(p => p.IsDeleted == p_entity.IsDeleted);
_ret.State = ReturnStatus.Succeed; _ret.State = ReturnStatus.Succeed;
_ret.Result = q.ToList(); _ret.Result = q.ToList();
} }
@ -191,7 +191,7 @@ namespace CK.SCP.Controller
} }
catch (OptimisticConcurrencyException ex)//并发冲突异常 catch (OptimisticConcurrencyException ex)//并发冲突异常
{ {
_ret.State = ReturnStatus.Failed; _ret.State = ReturnStatus.Failed;
_ret.ErrorList.Add(ex); _ret.ErrorList.Add(ex);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_CONTRACT_CONTROLLER), "Get_TB_CONTRACT_DETAIL_List", ex.ToString()); LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_CONTRACT_CONTROLLER), "Get_TB_CONTRACT_DETAIL_List", ex.ToString());
@ -199,7 +199,7 @@ namespace CK.SCP.Controller
} }
catch (ScpException ex) catch (ScpException ex)
{ {
_ret.State = ReturnStatus.Failed; _ret.State = ReturnStatus.Failed;
_ret.ErrorList.Add(ex); _ret.ErrorList.Add(ex);
@ -209,7 +209,7 @@ namespace CK.SCP.Controller
{ {
var inner = (UpdateException)ex.InnerException; var inner = (UpdateException)ex.InnerException;
throw new ScpException(ResultCode.Exception, "0000", ex.ToString()); throw new ScpException(ResultCode.Exception, "0000", ex.ToString());
} }
else else
@ -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) 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>(); 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 join price in p_priceList on po.PartCode equals price.PartCode
select new { VAL1 = po, VAL2 = price }; 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)); 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) 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; return msgList;
@ -250,7 +250,7 @@ namespace CK.SCP.Controller
// { // {
// using (ScpEntities db = EntitiesFactory.CreateScpInstance()) // using (ScpEntities db = EntitiesFactory.CreateScpInstance())
// { // {
// } // }
// } // }
@ -264,14 +264,14 @@ namespace CK.SCP.Controller
{ {
if (p_list.Count > 0) 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) if (ret.State == ReturnStatus.Succeed)
{ {
var p_priceList = ret.Result; var p_priceList = ret.Result;
List<string> msgList = new List<string>(); List<string> msgList = new List<string>();
var ls = from po in p_list var ls = from po in p_list
join price in p_priceList on po.PartCode equals price.PartCode join price in p_priceList on po.PartCode equals price.PartCode
select new { VAL1 = po, VAL2 = price }; select new { VAL1 = po, VAL2 = price };
var list = ls.Where(p => p.VAL1.BeginTime >= p.VAL2.BeginTime && p.VAL1.BeginTime <= p.VAL2.EndTime && p.VAL1.Qty >= p.VAL2.QtyBegin && p.VAL1.Qty < p.VAL2.QtyEnd); var list = ls.Where(p => p.VAL1.BeginTime >= p.VAL2.BeginTime && p.VAL1.BeginTime <= p.VAL2.EndTime && p.VAL1.Qty >= p.VAL2.QtyBegin && p.VAL1.Qty < p.VAL2.QtyEnd);
p_list.ForEach(p => p_list.ForEach(p =>
{ {
@ -365,23 +365,23 @@ namespace CK.SCP.Controller
{ {
if (p_list.Count > 0) if (p_list.Count > 0)
{ {
p_list.ForEach(p => p_list.ForEach(p =>
{
using (ScpEntities db = EntitiesFactory.CreateScpInstance())
{ {
using (ScpEntities db = EntitiesFactory.CreateScpInstance()) if (!string.IsNullOrEmpty(p.SubSite))
{ {
if (!string.IsNullOrEmpty(p.SubSite)) var part = db.TA_PART.FirstOrDefault(t => t.PartCode == p.SubSite);
if (part != null)
{ {
var part = db.TA_PART.FirstOrDefault(t => t.PartCode == p.SubSite); p.Subpartspec = part.PartDesc2;
if (part != null)
{
p.Subpartspec = part.PartDesc2;
}
} }
} }
}); }
});
} }
return p_list; return p_list;
} }
@ -396,26 +396,26 @@ namespace CK.SCP.Controller
using (ScpEntities db = EntitiesFactory.CreateScpInstance()) using (ScpEntities db = EntitiesFactory.CreateScpInstance())
{ {
List<string> _ls = new List<string>(); 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(); 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)) if (!_ls.Contains(Mo.ContractMonth))
{ {
_ls.Add(Mo.ContractMonth); _ls.Add(Mo.ContractMonth);
} }
} }
string ContactNo = string.Join(";",_ls); string ContactNo = string.Join(";", _ls);
p.ContractMonth = ContactNo; p.ContractMonth = ContactNo;
foreach (var pa in _No) foreach (var pa in _No)
{ {
ContactNo = ContactNo + pa.PoBillNum + ";"; ContactNo = ContactNo + pa.PoBillNum + ";";
} }
p.ContractNo = ContactNo.Substring(0, ContactNo.Length - 1).Trim(); p.ContractNo = ContactNo.Substring(0, ContactNo.Length - 1).Trim();
} }
}); });
} }
@ -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>>(); ResultObject<List<TB_CONTRACT_DETAIL_PRICE>> _ret = new ResultObject<List<TB_CONTRACT_DETAIL_PRICE>>();
try try
@ -489,7 +489,7 @@ namespace CK.SCP.Controller
using (ScpEntities db = EntitiesFactory.CreateScpInstance()) using (ScpEntities db = EntitiesFactory.CreateScpInstance())
{ {
IQueryable<TB_CONTRACT_DETAIL_PRICE> q = db.TB_CONTRACT_DETAIL_PRICE; IQueryable<TB_CONTRACT_DETAIL_PRICE> q = db.TB_CONTRACT_DETAIL_PRICE;
if (p_entity.UID != 0) if (p_entity.UID != 0)
{ {
@ -523,10 +523,10 @@ namespace CK.SCP.Controller
{ {
q = q.Where(p => p.VendId.Contains(p_entity.VendId)); q = q.Where(p => p.VendId.Contains(p_entity.VendId));
} }
q = q.Where(p => p.IsDeleted == p_entity.IsDeleted); q = q.Where(p => p.IsDeleted == p_entity.IsDeleted);
_ret.State = ReturnStatus.Succeed; _ret.State = ReturnStatus.Succeed;
_ret.Result = q.ToList(); _ret.Result = q.ToList();
} }
@ -550,7 +550,7 @@ namespace CK.SCP.Controller
} }
catch (OptimisticConcurrencyException ex)//并发冲突异常 catch (OptimisticConcurrencyException ex)//并发冲突异常
{ {
_ret.State = ReturnStatus.Failed; _ret.State = ReturnStatus.Failed;
_ret.ErrorList.Add(ex); _ret.ErrorList.Add(ex);
LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_CONTRACT_CONTROLLER), "Get_TB_CONTRACT_DETAIL_PRICE_List", ex.ToString()); LogHelper.Writlog(LogHelper.LogType.Error, typeof(SCP_CONTRACT_CONTROLLER), "Get_TB_CONTRACT_DETAIL_PRICE_List", ex.ToString());
@ -558,7 +558,7 @@ namespace CK.SCP.Controller
} }
catch (ScpException ex) catch (ScpException ex)
{ {
_ret.State = ReturnStatus.Failed; _ret.State = ReturnStatus.Failed;
_ret.ErrorList.Add(ex); _ret.ErrorList.Add(ex);
@ -568,7 +568,7 @@ namespace CK.SCP.Controller
{ {
var inner = (UpdateException)ex.InnerException; var inner = (UpdateException)ex.InnerException;
throw new ScpException(ResultCode.Exception, "0000", ex.ToString()); throw new ScpException(ResultCode.Exception, "0000", ex.ToString());
} }
else else
@ -595,11 +595,11 @@ namespace CK.SCP.Controller
if (string.IsNullOrEmpty(itm.)) if (string.IsNullOrEmpty(itm.))
{ {
_buffer.AppendFormat(string.Format("导入错误合同编号未填写!")); _buffer.AppendFormat(string.Format("导入错误合同编号未填写!"));
} }
if (string.IsNullOrEmpty(itm.) || string.IsNullOrEmpty(itm.)) if (string.IsNullOrEmpty(itm.) || string.IsNullOrEmpty(itm.))
{ {
_buffer.AppendFormat(string.Format("导入错误供应商编号或供应商名称未填写!")); _buffer.AppendFormat(string.Format("导入错误供应商编号或供应商名称未填写!"));
} }
if (string.IsNullOrEmpty(itm.) || string.IsNullOrEmpty(itm.)) if (string.IsNullOrEmpty(itm.) || string.IsNullOrEmpty(itm.))
{ {
@ -685,7 +685,7 @@ namespace CK.SCP.Controller
} }
if (_buffer.Length > 0) 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 _buffer.ToString();
} }
return string.Empty; return string.Empty;
@ -694,7 +694,7 @@ namespace CK.SCP.Controller
{ {
ResultObject<bool> _ret = new ResultObject<bool>(); ResultObject<bool> _ret = new ResultObject<bool>();
int line = 1; int line = 1;
foreach (var itm in p_contract_list) foreach (var itm in p_contract_list)
{ {
if (!string.IsNullOrEmpty(IMPORT_CONTRACT_CHECK(itm))) if (!string.IsNullOrEmpty(IMPORT_CONTRACT_CHECK(itm)))
@ -711,15 +711,15 @@ namespace CK.SCP.Controller
{ {
var _contract = p_contract_list.FirstOrDefault(); var _contract = p_contract_list.FirstOrDefault();
#region 删除老合同 #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) if (contract.Count() > 0)
{ {
var c = contract.FirstOrDefault(); var c = contract.FirstOrDefault();
if (!string.IsNullOrEmpty(c.BillNo)) 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); 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_DETAIL.RemoveRange(detail);
db.TB_CONTRACT.Remove(c); db.TB_CONTRACT.Remove(c);
} }
@ -732,11 +732,11 @@ namespace CK.SCP.Controller
_tbContract.CreateUser = p_creator; _tbContract.CreateUser = p_creator;
_tbContract.ContractNo = _contract.; _tbContract.ContractNo = _contract.;
_tbContract.IsDeleted = false; _tbContract.IsDeleted = false;
db.TB_CONTRACT.Add(_tbContract); db.TB_CONTRACT.Add(_tbContract);
var list = p_contract_list.Distinct(new SCP_CONTRACT_EXCEL_COMPARE()).ToList(); var list = p_contract_list.Distinct(new SCP_CONTRACT_EXCEL_COMPARE()).ToList();
foreach (var itm in list) foreach (var itm in list)
{ {
var _tbContract_detail = new TB_CONTRACT_DETAIL(); var _tbContract_detail = new TB_CONTRACT_DETAIL();
@ -760,7 +760,7 @@ namespace CK.SCP.Controller
_detail_price.EndTime = ConvertHelper.To<DateTime>(itm.); _detail_price.EndTime = ConvertHelper.To<DateTime>(itm.);
_detail_price.ContractNo = _tbContract.ContractNo; _detail_price.ContractNo = _tbContract.ContractNo;
_detail_price.QtyBegin = int.Parse(itm.1); _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.BillNo = _tbContract.BillNo;
_detail_price.IsDeleted = false; _detail_price.IsDeleted = false;
_detail_price.PartCode = itm.; _detail_price.PartCode = itm.;
@ -843,7 +843,7 @@ namespace CK.SCP.Controller
{ {
_ret.State = ReturnStatus.Failed; _ret.State = ReturnStatus.Failed;
_ret.Result = false; _ret.Result = false;
} }
} }
@ -867,7 +867,7 @@ namespace CK.SCP.Controller
} }
catch (OptimisticConcurrencyException ex)//并发冲突异常 catch (OptimisticConcurrencyException ex)//并发冲突异常
{ {
_ret.State = ReturnStatus.Failed; _ret.State = ReturnStatus.Failed;
_ret.Result = false; _ret.Result = false;
_ret.ErrorList.Add(ex); _ret.ErrorList.Add(ex);
@ -876,7 +876,7 @@ namespace CK.SCP.Controller
} }
catch (ScpException ex) catch (ScpException ex)
{ {
_ret.State = ReturnStatus.Failed; _ret.State = ReturnStatus.Failed;
_ret.Result = false; _ret.Result = false;
@ -887,7 +887,7 @@ namespace CK.SCP.Controller
{ {
var inner = (UpdateException)ex.InnerException; var inner = (UpdateException)ex.InnerException;
throw new ScpException(ResultCode.Exception, "0000", ex.ToString()); throw new ScpException(ResultCode.Exception, "0000", ex.ToString());
} }
else else

695
Controller/SCP_INVOICE_CONTROLLER.cs

File diff suppressed because it is too large

30
Controller/SCP_PO_CONTROLLER.cs

@ -1872,6 +1872,14 @@ namespace CK.SCP.Controller
ErrorList.Add(string.Format("普通采购订单不涉及组件物料号,请到委外采购订单菜单导入")); ErrorList.Add(string.Format("普通采购订单不涉及组件物料号,请到委外采购订单菜单导入"));
} }
var _part = db.TA_PART.SingleOrDefault(p => p.PartCode == p_excel.); 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()) if (_part.PartCode.ToString() != p_excel..ToString())
{ {
ErrorList.Add(string.Format("物料号码{0}填写不正确请注意大小写!", p_excel.)); ErrorList.Add(string.Format("物料号码{0}填写不正确请注意大小写!", p_excel.));
@ -5092,9 +5100,9 @@ namespace CK.SCP.Controller
{ {
if (_maxpo.SurplusQty > _PlanQTY) 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(); TB_MAXPO_CONSUME CONSUME = new TB_MAXPO_CONSUME();
CONSUME.PoBillNum = _maxpo.PoBillNum; CONSUME.PoBillNum = _maxpo.PoBillNum;
CONSUME.BillNum = _ls.PoBillNum; CONSUME.BillNum = _ls.PoBillNum;
@ -5107,8 +5115,8 @@ namespace CK.SCP.Controller
} }
else if (_maxpo.SurplusQty == _PlanQTY) else if (_maxpo.SurplusQty == _PlanQTY)
{ {
_maxpo.SurplusQty = 0; //_maxpo.SurplusQty = 0;
db.TB_MAXPO_DETAIL.AddOrUpdate(_maxpo); //db.TB_MAXPO_DETAIL.AddOrUpdate(_maxpo);
TB_MAXPO_CONSUME CONSUME = new TB_MAXPO_CONSUME(); TB_MAXPO_CONSUME CONSUME = new TB_MAXPO_CONSUME();
CONSUME.PoBillNum = _maxpo.PoBillNum; CONSUME.PoBillNum = _maxpo.PoBillNum;
CONSUME.BillNum = _ls.PoBillNum; CONSUME.BillNum = _ls.PoBillNum;
@ -5130,8 +5138,8 @@ namespace CK.SCP.Controller
CONSUME.ShipTime = DateTime.Now; CONSUME.ShipTime = DateTime.Now;
consum.Add(CONSUME); consum.Add(CONSUME);
_PlanQTY = _PlanQTY - _maxpo.SurplusQty; _PlanQTY = _PlanQTY - _maxpo.SurplusQty;
_maxpo.SurplusQty = 0; //_maxpo.SurplusQty = 0;
db.TB_MAXPO_DETAIL.AddOrUpdate(_maxpo); //db.TB_MAXPO_DETAIL.AddOrUpdate(_maxpo);
} }
@ -9468,10 +9476,10 @@ namespace CK.SCP.Controller
{ {
_ret.MessageList.Add("零件号" + _entity.PartCode + "单次削减量不能大于剩余订货量(千克)"); _ret.MessageList.Add("零件号" + _entity.PartCode + "单次削减量不能大于剩余订货量(千克)");
} }
if (((_entity.OrderQtydNow + itm.ReductionQty) * 1000) < _entity.OrderQtykg - _entity.AsnQty) //if (((_entity.OrderQtydNow + itm.ReductionQty) * 1000) < _entity.OrderQtykg - _entity.AsnQty)
{ //{
_ret.MessageList.Add("零件号" + _entity.PartCode + "剩余可消耗订货量不足"); // _ret.MessageList.Add("零件号" + _entity.PartCode + "剩余可消耗订货量不足");
} //}
if ((_entity.OrderQtydNow + itm.ReductionQty) < 0) if ((_entity.OrderQtydNow + itm.ReductionQty) < 0)
{ {
_ret.MessageList.Add("削减失败,零件号" + _entity.PartCode + "本次填写的削减量过大,将会使得订货量小于0!"); _ret.MessageList.Add("削减失败,零件号" + _entity.PartCode + "本次填写的削减量过大,将会使得订货量小于0!");
@ -9507,7 +9515,7 @@ namespace CK.SCP.Controller
} }
_entity.OrderQtykg = (_entity.OrderQtydNow + itm.ReductionQty).Value * 1000; _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; _entity.SurplusQty = (itm.ReductionQty * 1000 + _entity.SurplusQty).Value;
// 修改数据 // 修改数据
TS_UNI_API maxuni = new TS_UNI_API(); 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_ToleranceProportion.cs" />
<Compile Include="ScpEntity\ExcelExportEnttity\SCP_PART_EXPORT.cs" /> <Compile Include="ScpEntity\ExcelExportEnttity\SCP_PART_EXPORT.cs" />
<Compile Include="ScpEntity\ExcelExportEnttity\SCP_PRICE_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_EXPORT.cs" />
<Compile Include="ScpEntity\ExcelExportEnttity\SCP_VENDER_PART_EXPORT.cs" /> <Compile Include="ScpEntity\ExcelExportEnttity\SCP_VENDER_PART_EXPORT.cs" />
<Compile Include="ScpEntity\ExcelImportEntity\SCP_ASN_EXCEL.cs" /> <Compile Include="ScpEntity\ExcelImportEntity\SCP_ASN_EXCEL.cs" />
<Compile Include="ScpEntity\PURSubcontractor.cs" /> <Compile Include="ScpEntity\PURSubcontractor.cs" />
<Compile Include="ScpEntity\TA_CHECKPARTANDVEND.cs" />
<Compile Include="ScpEntity\TA_Appliance.cs" /> <Compile Include="ScpEntity\TA_Appliance.cs" />
<Compile Include="ScpEntity\TA_ASK_SUBPART.cs" /> <Compile Include="ScpEntity\TA_ASK_SUBPART.cs" />
<Compile Include="ScpEntity\TA_BOXTYPE.cs" /> <Compile Include="ScpEntity\TA_BOXTYPE.cs" />
@ -362,6 +364,7 @@
<Compile Include="ScpEntity\TA_MoldSharing.cs" /> <Compile Include="ScpEntity\TA_MoldSharing.cs" />
<Compile Include="ScpEntity\TA_MOLDSHARING_INVOICE.cs" /> <Compile Include="ScpEntity\TA_MOLDSHARING_INVOICE.cs" />
<Compile Include="ScpEntity\TA_Part_User.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\V_TA_ToleranceProportion.cs" />
<Compile Include="ScpEntity\TA_ToleranceProportion.cs" /> <Compile Include="ScpEntity\TA_ToleranceProportion.cs" />
<Compile Include="ScpEntity\V_MPO_PRINT.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<TB_PALLETS_BTL> TB_PALLETS_BTL { get; set; }
public virtual DbSet<TA_Receiving_Information> TA_Receiving_Information { 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_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<TA_SubPart> TA_SubPart { get; set; }
public virtual DbSet<TB_MAXPO> TB_MAXPO { get; set; } public virtual DbSet<TB_MAXPO> TB_MAXPO { get; set; }
public virtual DbSet<TB_MAXPO_DETAIL> TB_MAXPO_DETAIL { 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-all.js" />
<Content Include="Scripts\ECharts\echarts.js" /> <Content Include="Scripts\ECharts\echarts.js" />
<Content Include="VersionUpdateInfo.txt" /> <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.aspx" />
<Content Include="Views\BasicData\Appliance_DETAIL.aspx" /> <Content Include="Views\BasicData\Appliance_DETAIL.aspx" />
<Content Include="Views\BasicData\BoxType.aspx" /> <Content Include="Views\BasicData\BoxType.aspx" />
@ -5013,6 +5015,20 @@
<Compile Include="Handlers\MakeVerifyCode.ashx.cs"> <Compile Include="Handlers\MakeVerifyCode.ashx.cs">
<DependentUpon>MakeVerifyCode.ashx</DependentUpon> <DependentUpon>MakeVerifyCode.ashx</DependentUpon>
</Compile> </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"> <Compile Include="Views\BasicData\Appliance.aspx.cs">
<DependentUpon>Appliance.aspx</DependentUpon> <DependentUpon>Appliance.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType> <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 ID="btnDelete" runat="server" Text="删除看板" Icon="Delete" OnClick="btnDelete_Click" Hidden="true">
</f:Button> </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>
<f:Button ID="btnCopy" runat="server" Text="复制看板" Icon="PageCopy" OnClick="btnCopy_Click" OnClientClick="if(!confirm('是否要复制订单,只能复制合同看板不能复制离散订单?'))return false;" Hidden="true"> <f:Button ID="btnCopy" runat="server" Text="复制看板" Icon="PageCopy" OnClick="btnCopy_Click" OnClientClick="if(!confirm('是否要复制订单,只能复制合同看板不能复制离散订单?'))return false;" Hidden="true">
</f:Button> </f:Button>

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

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

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

@ -21,8 +21,8 @@
<f:Button ID="btnRefresh" runat="server" Text="刷新" EnablePostBack="True" Icon="Reload" OnClientClick="location.reload();"> <f:Button ID="btnRefresh" runat="server" Text="刷新" EnablePostBack="True" Icon="Reload" OnClientClick="location.reload();">
</f:Button> </f:Button>
<f:Button ID="btnOutput" runat="server" Text="导出" OnClick="btnOutput_Click" Icon="PageExcel"> <f:Button ID="btnOutput" runat="server" Text="导出" OnClick="btnOutput_Click" Icon="PageExcel">
</f:Button> </f:Button>
<f:Button ID="btnDetail" runat="server" Text="查看消耗明细" Icon="Zoom" OnClick="btnDetail_Click"> <f:Button ID="btnDetail" runat="server" Text="查看消耗明细" Icon="Zoom" OnClick="btnDetail_Click">
</f:Button> </f:Button>
</Items> </Items>
</f:Toolbar> </f:Toolbar>
@ -34,28 +34,27 @@
<Rows> <Rows>
<f:FormRow ColumnWidths="25% 25% 25% 25%" ID="FormRow_1" runat="server"> <f:FormRow ColumnWidths="25% 25% 25% 25%" ID="FormRow_1" runat="server">
<Items> <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:DatePicker runat="server" Label="至" ID="TextBillTime2"></f:DatePicker>
<f:TextBox runat="server" Label="创建者" ID="TextBox1"> <f:TextBox runat="server" Label="创建者" ID="TextBox1">
</f:TextBox> </f:TextBox>
<f:TextBox runat="server" Label="大订单号" ID="TextBillNo"> <f:TextBox runat="server" Label="大订单号" ID="TextBillNo">
</f:TextBox> </f:TextBox>
</Items> </Items>
</f:FormRow> </f:FormRow>
<f:FormRow ColumnWidths="25% 25% 25% 25%" ID="FormRow_2" runat="server"> <f:FormRow ColumnWidths="25% 25% 25% 25%" ID="FormRow_2" runat="server">
<Items> <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 runat="server" Label="零件号" ID="TextBox3">
</f:TextBox> </f:TextBox>
<f:TextBox runat="server" Label="原材物料号" ID="TextPartCode"> <f:TextBox runat="server" Label="原材物料号" ID="TextPartCode">
</f:TextBox> </f:TextBox>
<f:TextBox runat="server" Label="合同月" ID="TextPartName" > <f:TextBox runat="server" Label="合同月" ID="TextPartName">
</f:TextBox> </f:TextBox>
</Items> </Items>
</f:FormRow> </f:FormRow>
<f:FormRow ColumnWidths="33% 33% 33%" ID="FormRow1" runat="server"> <f:FormRow ColumnWidths="33% 33% 33%" ID="FormRow1" runat="server">
<Items> <Items>
<f:Button runat="server" ID="btnQuery" Text="查询" OnClick="btnSearch_Click"></f:Button> <f:Button runat="server" ID="btnQuery" Text="查询" OnClick="btnSearch_Click"></f:Button>
@ -64,7 +63,7 @@
</Rows> </Rows>
</f:Form> </f:Form>
<f:Grid ID="Grid_V_TB_PO_SUBDETAIL" ShowBorder="true" ShowHeader="true" PageSize="100" BoxFlex="1" CssClass="maingrid" <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" IsDatabasePaging="true" AllowPaging="true" SortField="PoBillNum" SortDirection="ASC" OnPageIndexChange="Grid_V_TB_INCOMPLETE_ASK_PageIndexChange"
AutoScroll="True" EnableRowDoubleClickEvent="True"> AutoScroll="True" EnableRowDoubleClickEvent="True">
<PageItems> <PageItems>
@ -79,44 +78,47 @@
</f:DropDownList> </f:DropDownList>
</PageItems> </PageItems>
<Columns> <Columns>
<f:BoundField Width = "130px" DataField = "PoBillNum" DataFormatString = "{0}" HeaderText = "大订单号" SortField="PoBillNum"/> <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="ContractMonth" DataFormatString="{0}" HeaderText="合同月" SortField="ContractMonth" />
<f:BoundField Width = "130px" DataField = "PartCode" DataFormatString = "{0}" HeaderText = "原料物料号" SortField="PartCode"/> <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="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="OrderQtykg" DataFormatString="{0}" HeaderText="订货量(KG)" SortField="OrderQtykg" />
<f:BoundField Width = "100px" DataField = "CreateUser" DataFormatString = "{0}" HeaderText = "创建者" SortField="CreateUser"/> <f:BoundField Width="100px" DataField="ReceQty" DataFormatString="{0}" HeaderText="剩余收货数" SortField="ReceQty" />
<f:BoundField Width = "130px" DataField = "CreateTime" DataFormatString = "{0}" HeaderText = "创建时间" SortField="CreateTime"/> <f:BoundField Width="100px" DataField="RecQty" DataFormatString="{0}" HeaderText="收货数" SortField="RecQty" />
<f:BoundField Width = "100px" DataField = "PoLine" DataFormatString = "{0}" HeaderText = "行号" SortField="PoLine"/> <f:BoundField Width="100px" DataField="ReturnQty" DataFormatString="{0}" HeaderText="退货数" SortField="ReturnQty" />
<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="130px" DataField="VendId" DataFormatString="{0}" HeaderText="供应商编号" SortField="VendId" />
<f:BoundField Width = "100px" DataField = "Matermanu" DataFormatString = "{0}" HeaderText = "材料厂家" SortField="Matermanu"/> <f:BoundField Width="100px" DataField="VendName" DataFormatString="{0}" HeaderText="供应商名称" SortField="VendName" />
<f:BoundField Width = "100px" DataField = "Finprspec" DataFormatString = "{0}" HeaderText = "成品规格" SortField="Finprspec"/> <f:BoundField Width="100px" DataField="CreateUser" DataFormatString="{0}" HeaderText="创建者" SortField="CreateUser" />
<f:BoundField Width = "100px" DataField = "TechStandard" DataFormatString = "{0}" HeaderText = "技术标准" SortField="TechStandard"/> <f:BoundField Width="130px" DataField="CreateTime" DataFormatString="{0}" HeaderText="创建时间" SortField="CreateTime" />
<f:BoundField Width = "100px" DataField = "MinordQty" DataFormatString = "{0}" HeaderText = "起订量" SortField="MinordQty"/> <f:BoundField Width="100px" DataField="PoLine" DataFormatString="{0}" HeaderText="行号" SortField="PoLine" />
<f:BoundField Width = "100px" DataField = "Singlecon" DataFormatString = "{0}" HeaderText = "单件消耗(千克)" SortField="Singlecon"/> <f:BoundField Width="100px" DataField="Texture" DataFormatString="{0}" HeaderText="材质" SortField="Texture" />
<f:BoundField Width = "100px" DataField = "OrderQtyd" DataFormatString = "{0}" HeaderText = "订货量(吨)" SortField="OrderQtyd"/> <f:BoundField Width="100px" DataField="Model" DataFormatString="{0}" HeaderText="车型" SortField="Model" />
<f:BoundField Width = "100px" DataField = "OrderQtykg" DataFormatString = "{0}" HeaderText = "订货量(KG)" SortField="OrderQtykg"/> <f:BoundField Width="100px" DataField="Matermanu" DataFormatString="{0}" HeaderText="材料厂家" SortField="Matermanu" />
<f:BoundField Width = "100px" DataField = "OrderNumber" DataFormatString = "{0}" HeaderText = "订货件数" SortField="OrderNumber"/> <f:BoundField Width="100px" DataField="Finprspec" DataFormatString="{0}" HeaderText="成品规格" SortField="Finprspec" />
<f:BoundField Width = "100px" DataField = "SurplusQty" DataFormatString = "{0}" HeaderText = "差异数" SortField="SurplusQty"/> <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 = "AsnQty" DataFormatString = "{0}" HeaderText = "剩余发货数" SortField="AsnQty"/>
<f:BoundField Width = "100px" DataField = "AnQty" DataFormatString = "{0}" HeaderText = "发货数" SortField="AnQty"/> <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="forecastone" DataFormatString="{0}" HeaderText="预测1(日期/数量)" SortField="forecastone" />
<f:BoundField Width = "100px" DataField = "ReturnQty" DataFormatString = "{0}" HeaderText = "退货数" SortField="ReturnQty"/> <f:BoundField Width="100px" DataField="forecasttwo" DataFormatString="{0}" HeaderText="预测2(日期/数量)" SortField="forecasttwo" />
<f:BoundField Width = "100px" DataField = "forecastone" DataFormatString = "{0}" HeaderText = "预测1(日期/数量)" SortField="forecastone"/> <f:BoundField Width="100px" DataField="forecastthree" DataFormatString="{0}" HeaderText="预测3(日期/数量)" SortField="forecastthree" />
<f:BoundField Width = "100px" DataField = "forecasttwo" DataFormatString = "{0}" HeaderText = "预测2(日期/数量)" SortField="forecasttwo"/> <f:BoundField Width="100px" DataField="forecastfour" DataFormatString="{0}" HeaderText="预测4(日期/数量)" SortField="forecastfour" />
<f:BoundField Width = "100px" DataField = "forecastthree" DataFormatString = "{0}" HeaderText = "预测3(日期/数量)" SortField="forecastthree"/> <f:BoundField Width="100px" DataField="forecastfive" DataFormatString="{0}" HeaderText="预测5(日期/数量)" SortField="forecastfive" />
<f:BoundField Width = "100px" DataField = "forecastfour" DataFormatString = "{0}" HeaderText = "预测4(日期/数量)" SortField="forecastfour"/> <f:BoundField Width="100px" DataField="forecastsix" DataFormatString="{0}" HeaderText="预测6(日期/数量)" SortField="forecastsix" />
<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> </Columns>
</f:Grid> </f:Grid>
</Items> </Items>
</f:Panel> </f:Panel>
<f:Window runat="server" ID="Window1" Hidden="True" Height="600px" Width="950px" AutoScroll="True" OnClose="Window1_Close" <f:Window runat="server" ID="Window1" Hidden="True" Height="600px" Width="950px" AutoScroll="True" OnClose="Window1_Close"
WindowPosition="Center" IsModal="true" Title="明细详情" Target="Parent" EnableIFrame="true" WindowPosition="Center" IsModal="true" Title="明细详情" Target="Parent" EnableIFrame="true"
IFrameUrl="about:blank" /> IFrameUrl="about:blank" />
</form> </form>

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

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

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

@ -27,7 +27,8 @@
</Toolbars> </Toolbars>
</f:Form> </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" <f:Grid ID="Grid_V_TB_PO_SUBDETAIL" ShowBorder="true" ShowHeader="true" PageSize="100" BoxFlex="1" CssClass="maingrid"
runat="server" DataKeyNames="UID,PoBillNum" runat="server" DataKeyNames="UID,PoBillNum"
IsDatabasePaging="true" AllowPaging="true" SortField="PoBillNum" SortDirection="ASC" OnPageIndexChange="Grid_V_TB_INCOMPLETE_ASK_PageIndexChange" IsDatabasePaging="true" AllowPaging="true" SortField="PoBillNum" SortDirection="ASC" OnPageIndexChange="Grid_V_TB_INCOMPLETE_ASK_PageIndexChange"
@ -48,11 +49,11 @@
<f:BoundField Width = "130px" DataField = "BillNum" DataFormatString = "{0}" HeaderText = "单据号" SortField="BillNum"/> <f:BoundField Width = "130px" DataField = "BillNum" DataFormatString = "{0}" HeaderText = "单据号" SortField="BillNum"/>
<f:BoundField Width = "130px" DataField = "PartCode" DataFormatString = "{0}" HeaderText = "物料号" SortField="PartCode"/> <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 = "PartDesc1" DataFormatString = "{0}" HeaderText = "物料名称" SortField="PartDesc1"/>
<f:BoundField Width = "130px" DataField = "PartDesc2" DataFormatString = "{0}" HeaderText = "物料规格" SortField="PartDesc2"/> <f:BoundField Width = "130px" DataField = "PartDesc2" DataFormatString = "{0}" HeaderText = "物料规格" SortField="PartDesc2"/>
<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 = "100px" DataField = "VendId" DataFormatString = "{0}" HeaderText = "供应商编号" SortField="VendId"/>
<f:BoundField Width = "180px" DataField = "VendName" DataFormatString = "{0}" HeaderText = "供应商描述" SortField="VendName"/> <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"/>
</Columns> </Columns>
</f:Grid> </f:Grid>
</Items> </Items>

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

@ -26,7 +26,7 @@
</Toolbars> </Toolbars>
<Items> <Items>
<f:Grid ID="Grid_V_TB_PO_SUBDETAIL" Title="大订单明细" BoxFlex="1" ShowBorder="True" ShowHeader="True" AllowCellEditing="True" ClicksToEdit="1" EnableCheckBoxSelect="true" <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" > DataKeyNames="UID,PoBillNum,PartCode,Qty,SubQty,ReductionQty,ReductionQtyOne,ReductionQtyTwo,ReductionQtyThree,ReductionQtyFour,ReductionQtyFive" >
<Columns> <Columns>
<f:BoundField Width="100px" DataField="PartCode" DataFormatString="{0}" HeaderText="原料物料号" SortField="PartCode" /> <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)); 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) protected void Btn_SaveReductionQty_Click(object sender, EventArgs e)
{ {
List<TB_MAXPO_DETAIL> list = new List<TB_MAXPO_DETAIL>(); 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 _liii = _lii.ToList();
//var _entity = _liii.First(); //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 => askdetaill.ForEach(p =>
{ {
p.State = -1; p.State = -1;

5
UniApiGroup/Controller/OdbcApiWmsController.cs

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

Loading…
Cancel
Save