Browse Source

添加 发票日期字段

master
钱峰 4 months ago
parent
commit
a213acb390
  1. 9
      北京北汽/Controller/SCP_DC_UNI_CONTROLLER.cs
  2. 235
      北京北汽/Controller/SCP_INVOICE_CONTROLLER.cs
  3. 4
      北京北汽/Models/ScpEntity/TB_INVOICE.cs
  4. 4
      北京北汽/SCP/Views/WarehouseData/SCP_INVOICE_DELTAIL.aspx
  5. 49
      北京北汽/SCP/Views/WarehouseData/SCP_INVOICE_DELTAIL.aspx.cs
  6. 9
      北京北汽/SCP/Views/WarehouseData/SCP_INVOICE_DELTAIL.aspx.designer.cs

9
北京北汽/Controller/SCP_DC_UNI_CONTROLLER.cs

@ -647,8 +647,8 @@ namespace CK.SCP.Controller
{
ScpEntities scpdb = EntitiesFactory.CreateScpInstance();
ExchangeCenterContext db = EntitiesFactory.CreateExchangeCenterInstance();
var _list = scpdb.TS_UNI_API.Where(p => p.State == (int)DataState.Enabled && p.Domain == "CQBMPT").OrderBy(p => p.UID).ToList();
var _list1 = scpdb.TS_UNI_API.Where(p => p.State == (int)DataState.Enabled && p.Domain == "CQBMPT" && p.InterfaceType == "Price").OrderBy(p => p.UID).ToList();
var _list = scpdb.TS_UNI_API.Where(p => p.State == (int)DataState.Enabled && p.Domain == "BJBMPT").OrderBy(p => p.UID).ToList();
var _list1 = scpdb.TS_UNI_API.Where(p => p.State == (int)DataState.Enabled && p.Domain == "BJBMPT" && p.InterfaceType == "Price").OrderBy(p => p.UID).ToList();
var apiii = _list1.Count();
if (apiii > 0)
@ -1706,6 +1706,7 @@ namespace CK.SCP.Controller
#region 发票主表
TED_INVOICE_MSTR _invMast = new TED_INVOICE_MSTR();
var _vinvoice = JsonConvert.DeserializeObject<V_TB_INVOICE>(_api.Extend1);
var inv = scpdb.TB_INVOICE.FirstOrDefault(q => q.InvoiceNum == _vinvoice.InvoiceNum);
_invMast.GUID = Guid.NewGuid();
_invMast.Status = "0";
_invMast.Invoice_ID = 1000;
@ -1720,12 +1721,12 @@ namespace CK.SCP.Controller
_invMast.InvoiceRegistrationNbr = 1000;
_invMast.PostingDate = _vinvoice.PostingDate == null ? DateTime.Now : _vinvoice.PostingDate.Value;
_invMast.Currency = "CNY";
_invMast.InvoiceDate = _vinvoice.UpdateTime == null ? DateTime.Now : _vinvoice.UpdateTime.Value;
_invMast.InvoiceDate = inv == null ? DateTime.Now : inv.InvoiceDate.Value;
_invMast.GUID = Guid.NewGuid();
_invMast.Invoice_ID = 1000;
_invMast.CreateInvoice = true;
_invMast.PaymentCondCode = "90";
_invMast.InvoiceDueDate = _invMast.InvoiceDate.AddDays(int.Parse(_invMast.PaymentCondCode));
_invMast.InvoiceDueDate = DateTime.Now.AddDays(int.Parse(_invMast.PaymentCondCode));
_invMast.InvoiceIsStatusFinal = true;
_invMast.InvoicePostingYear = _vinvoice.PostingDate == null ? DateTime.Now.Year : _vinvoice.PostingDate.Value.Year;
_invMast.APMatchingIsStatusFinal = true;

235
北京北汽/Controller/SCP_INVOICE_CONTROLLER.cs

@ -197,7 +197,7 @@ namespace CK.SCP.Controller
}
if (!string.IsNullOrEmpty(p_entity.VendId))
{
_builder.AppendFormat(" and B.VendId = '{0}' \r\n ",p_entity.VendId);
_builder.AppendFormat(" and B.VendId = '{0}' \r\n ", p_entity.VendId);
}
if (!string.IsNullOrEmpty(p_entity.SubSite))
{
@ -216,14 +216,14 @@ 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())
{
StringBuilder _builder = new StringBuilder();
_builder.Append( "SELECT DISTINCT InvcBillNum FROM TB_INVOICE_DETAIL a Inner join TB_RECEIVE B on A.RecvBillNum = B.RecvBillNum\r\n");
_builder.Append("SELECT DISTINCT InvcBillNum FROM TB_INVOICE_DETAIL a Inner join TB_RECEIVE B on A.RecvBillNum = B.RecvBillNum\r\n");
_builder.AppendFormat(" WHERE 1=1 \r\n");
if (!string.IsNullOrEmpty(p_begin))
{
@ -239,10 +239,10 @@ 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;
@ -440,7 +440,7 @@ namespace CK.SCP.Controller
{
q = q.Where(p => p_entity.BillStateList.Contains(p.State));
}
if (!string.IsNullOrEmpty( p_entity.Site))
if (!string.IsNullOrEmpty(p_entity.Site))
{
q = q.Where(p => p.Site == p_entity.Site);
}
@ -481,11 +481,11 @@ namespace CK.SCP.Controller
{
q = q.Where(p => p.CreateUser.Contains(p_entity.CreateUser));
}
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));
}
if (p_entity.EndTimeb!= null)
if (p_entity.EndTimeb != null)
{
q = q.Where(p => p.EndTimeb == p_entity.EndTimeb);
}
@ -579,7 +579,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.VendId))
{
@ -728,7 +728,7 @@ namespace CK.SCP.Controller
//{
// q = q.Where(p => p.UID == p_entity.UID);
//}
if (p_ls!=null && p_ls.Count>0)
if (p_ls != null && p_ls.Count > 0)
{
q = q.Where(p => p_ls.Contains(p.InvcBillNum));
}
@ -1178,7 +1178,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))
{
@ -1333,7 +1333,7 @@ namespace CK.SCP.Controller
using (ScpEntities db = EntitiesFactory.CreateScpInstance())
{
IQueryable<V_TB_INVOICE_DETAIL> q = db.V_TB_INVOICE_DETAIL;
if (p_list.Count>0)
if (p_list.Count > 0)
{
q = q.Where(p => p_list.Contains(p.InvcBillNum));
}
@ -1490,14 +1490,14 @@ 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 _tax = db.TA_VENDER.Where(p => p.VendId == p_entity.VendId).Select(p => p.Tax).FirstOrDefault();
TB_INVOICE invoice = new TB_INVOICE();
invoice.InvcBillNum = SCP_BILLCODE_CONTROLLER.MakeInvoiceCode();
invoice.VendId = p_entity.VendId;
@ -1518,10 +1518,11 @@ namespace CK.SCP.Controller
invoice.SubSite = p_entity.SubSite;
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;
invocieDetail.InvcBillNum = invoice.InvcBillNum;
invocieDetail.AsnBillNum = p.AsnBillNum;
invocieDetail.PoBillNum = p.PoBillNum;
invocieDetail.PoLineNum = p.PoLine;
@ -1667,7 +1668,8 @@ namespace CK.SCP.Controller
invoice.BlancePrice = p_entity.BlancePrice;
invoice.SubSite = p_entity.SubSite;
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;
invocieDetail.AsnBillNum = p.AsnBillNum;
@ -1854,7 +1856,8 @@ namespace CK.SCP.Controller
invoice.BlancePrice = p_entity.BlancePrice;
invoice.SubSite = p_entity.SubSite;
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;
invocieDetail.AsnBillNum = p.AsnBillNum;
@ -2102,7 +2105,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 财务审核通过任务新
@ -2135,11 +2138,12 @@ namespace CK.SCP.Controller
//_item.ITEM_ADDRESS = _entity.Site;
_item.GUID = Guid.NewGuid();
db.TB_PENING_ITEMS.Add(_item);
#endregion
#endregion
}
var _list = db.TB_INVOICE_DETAIL.Where(p => p.InvcBillNum == p_billno).ToList();
_list.ForEach(p => {
_list.ForEach(p =>
{
p.State = (int)p_state;
});
@ -2152,14 +2156,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))
{
@ -2232,7 +2237,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
@ -2390,7 +2395,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;
});
@ -2403,7 +2409,8 @@ 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))
@ -2587,7 +2594,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>();
@ -2595,7 +2602,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;
@ -2606,10 +2613,11 @@ namespace CK.SCP.Controller
_bill.Remark = p_invoice.Remark;
_bill.State = (int)p_invoice.State;
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;
@ -2622,8 +2630,8 @@ 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)&& p.BlancePrice>0)
db.TB_INVOICE_DETAIL.AddOrUpdate(itm => itm.UID, _detail);
if (!string.IsNullOrEmpty(p_flag) && p.BlancePrice > 0)
{
var _ms = db.TA_MoldSharing.SingleOrDefault(t => t.PartCode == _detail.PartCode && t.VendId == _bill.VendId);
var _price = db.TB_PRICE.Where(q => p.State != (int)PriceState.Reject && q.PartCode == p.PartCode).ToList();
@ -2635,7 +2643,7 @@ namespace CK.SCP.Controller
string _str = "供应商" + _ms.VendId + "零件名称" + _ms.PartCode + "超出分摊数量" + (_ms.Count - _ms.Qty).ToString();
_list.Add(_str);
}
if(_ms.Count == _ms.Qty&& _price.Count>0)
if (_ms.Count == _ms.Qty && _price.Count > 0)
{
_price.ForEach(t =>
{
@ -2752,7 +2760,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)
@ -2836,7 +2844,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);
});
@ -3001,7 +3009,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
@ -3279,7 +3287,7 @@ namespace CK.SCP.Controller
return _ret;
}
public static ResultObject<bool> UpdateMemoByInvcBillNum(string p_InvcBillNum, string p_Memo, decimal p_blan, string p_inv,
string p_CInvoiceCostCenterCode ,
string p_CInvoiceCostCenterCode,
string p_CInvoiceDescription,
string p_CInvoiceDivisionCode,
string p_CInvoiceType,
@ -3404,10 +3412,10 @@ 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;
@ -3500,6 +3508,151 @@ namespace CK.SCP.Controller
return _ret;
}
/// <summary>
/// 带发票时间的保存
/// </summary>
/// <param name="p_InvcBillNum"></param>
/// <param name="p_state"></param>
/// <param name="p_CInvoiceCostCenterCode"></param>
/// <param name="p_CInvoiceDescription"></param>
/// <param name="p_CInvoiceDivisionCode"></param>
/// <param name="p_CInvoiceType"></param>
/// <param name="p_PostingDate"></param>
/// <param name="time"></param>
/// <returns></returns>
public static ResultObject<bool> SET_INVOICE_STATE_AND_DATE(string p_InvcBillNum, InvoiceState p_state, string p_CInvoiceCostCenterCode, string p_CInvoiceDescription, string p_CInvoiceDivisionCode,string p_CInvoiceType, DateTime? p_PostingDate, DateTime? time)
{
ResultObject<bool> _ret = new ResultObject<bool>();
try
{
using (ScpEntities db = EntitiesFactory.CreateScpInstance())
{
TB_INVOICE invoice = db.TB_INVOICE.Where(p => p.InvcBillNum == p_InvcBillNum).FirstOrDefault();
if (invoice != null)
{
invoice.State = (int)p_state;
invoice.CInvoiceCostCenterCode = p_CInvoiceCostCenterCode;
invoice.CInvoiceDescription = p_CInvoiceDescription;
invoice.CInvoiceDivisionCode = p_CInvoiceDivisionCode;
invoice.CInvoiceType = p_CInvoiceType;
invoice.PostingDate = p_PostingDate;
invoice.InvoiceDate = time;
db.TB_INVOICE.AddOrUpdate(invoice);
List<TB_INVOICE_DETAIL> invoicedetail = db.TB_INVOICE_DETAIL.Where(p => p.InvcBillNum == p_InvcBillNum).ToList();
foreach (TB_INVOICE_DETAIL det in invoicedetail)
{
det.State = (int)p_state;
}
//财务审核通过,把所有代办信息设为已办状态
List<TB_PENING_ITEMS> items = db.TB_PENING_ITEMS.Where(p => p.ITEM_NO == p_InvcBillNum).ToList();
foreach (TB_PENING_ITEMS item in items)
{
item.ITEM_STATE = (int)PENDING_STATE.COMPLETED;
}
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();
var _colne = ConvertHelper.GetObjectClone(_bill);
_colne.CInvoiceCostCenterCode = p_CInvoiceCostCenterCode;
_colne.CInvoiceDescription = p_CInvoiceDescription;
_colne.CInvoiceDivisionCode = p_CInvoiceDivisionCode;
_colne.CInvoiceType = p_CInvoiceType;
_colne.PostingDate = p_PostingDate;
foreach (V_TB_INVOICE_DETAIL itm in _ls)
{
TS_UNI_API _api = UniApiController.CreateBy(_colne, itm, UniApiType.Invoice);
_api.State = 1;
db.TS_UNI_API.AddOrUpdate(_api);
itm.State = (int)p_state;
}
if (db.SaveChanges() != -1)
{
_ret.State = ReturnStatus.Succeed;
_ret.Result = true;
_ret.Message = invoice.VendId;
}
else
{
_ret.State = ReturnStatus.Failed;
_ret.Result = false;
_ret.Message = invoice.VendId;
}
}
else
{
_ret.State = ReturnStatus.Failed;
_ret.Result = false;
_ret.Message = invoice.VendId;
}
}
}
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), "SET_INVOICE_STATE_AND_DATE", 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), "SET_INVOICE_STATE_AND_DATE", 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), "SET_INVOICE_STATE_AND_DATE", 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_INVOICE_CONTROLLER), "SET_INVOICE_STATE", e.Message); throw e;
}
return _ret;
}
public static ResultObject<bool> SET_INVOICE_STATE(string p_InvcBillNum, InvoiceState p_state,
string p_CInvoiceCostCenterCode,
@ -3549,7 +3702,7 @@ 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();
var _colne=ConvertHelper.GetObjectClone(_bill);
var _colne = ConvertHelper.GetObjectClone(_bill);
_colne.CInvoiceCostCenterCode = p_CInvoiceCostCenterCode;
_colne.CInvoiceDescription = p_CInvoiceDescription;

4
北京北汽/Models/ScpEntity/TB_INVOICE.cs

@ -61,5 +61,9 @@ namespace CK.SCP.Models.ScpEntity
public DateTime? PostingDate { get; set; }
public DateTime? StartTime { get; set; }
public DateTime? EndTimeb { get; set; }
/// <summary>
/// 发票日期
/// </summary>
public DateTime? InvoiceDate { get; set; }
}
}

4
北京北汽/SCP/Views/WarehouseData/SCP_INVOICE_DELTAIL.aspx

@ -74,8 +74,10 @@
<f:NumberBox ID="txtBlancePrice1" runat="server" Label="调整税额" MaxValue="1" />
</Items>
</f:FormRow>
<f:FormRow runat="server" ColumnWidths="25% 25% 50%">
<f:FormRow runat="server" ColumnWidths="25% 25% 25% 25%" >
<Items>
<f:DatePicker ID="DatePicker1" runat="server" Label="发票日期" ></f:DatePicker>
<f:DropDownList runat="server" ID="DLL_TYPE" Label="发票类型" >
<f:ListItem Text="-" Value=""/>
<f:ListItem Text="采购原辅材" Value="C1401" />

49
北京北汽/SCP/Views/WarehouseData/SCP_INVOICE_DELTAIL.aspx.cs

@ -87,6 +87,11 @@ namespace SCP.WarehouseData
protected void btnReceive_OnClick(object sender, EventArgs e)
{
bool flag = true;
if (DatePicker1.SelectedDate == null)
{
Alert.Show("请先选择发票日期后再进行操作");
return;
}
for (int i = 0, count = Grid1.Rows.Count; i < count; i++)
{
object[] rowDataKeys = Grid1.DataKeys[i];
@ -118,7 +123,7 @@ namespace SCP.WarehouseData
return;
}
SET_INVOICE_STATE("财务接收发票", InvoiceState.FinanceReceive);
SET_INVOICE_STATE_AND_SAVEDATE("财务接收发票", InvoiceState.FinanceReceive);
}
}
protected void PageManager1_CustomEvent(object sender, CustomEventArgs e)
@ -229,6 +234,43 @@ namespace SCP.WarehouseData
return;
}
}
/// <summary>
/// 带发票时间的保存
/// </summary>
/// <param name="p_msg"></param>
/// <param name="p_state"></param>
private void SET_INVOICE_STATE_AND_SAVEDATE(string p_msg, InvoiceState p_state)
{
string id = GetQueryValue("ID");
var ro = SCP_INVOICE_CONTROLLER.SET_INVOICE_STATE_AND_DATE(id, p_state,
TXT_InvoiceCostCenterCode.Text
, TXT_InvoiceDescription.Text
, TXT_InvoiceDivisionCode.Text
, DLL_TYPE.SelectedValue
, DP_PostingDate.SelectedDate
,DatePicker1.SelectedDate
);
if (ro.State == ReturnStatus.Succeed)
{
Alert.Show(p_msg + "成功!");
if (CurrentUser.ConfigList.Keys.Contains("供应商邮件"))
{
SCP.Common.MailManager.SendMail(ro.Message, p_msg, p_msg);
}
GetInvoice();
BindData();
return;
}
else
{
Alert.Show(p_msg + "失败!");
return;
}
}
private void GetInvoice()
{
string id = GetQueryValue("ID");
@ -261,6 +303,11 @@ namespace SCP.WarehouseData
TXT_InvoiceDivisionCode.Text = !string.IsNullOrEmpty(_Model.CInvoiceDivisionCode)?_Model.CInvoiceDivisionCode:string.Empty;
DLL_TYPE.SelectedValue = !string.IsNullOrEmpty(_Model.CInvoiceType)?_Model.CInvoiceType:string.Empty;
DP_PostingDate.SelectedDate = _Model.PostingDate != null ? _Model.PostingDate : null;
var inv = SCPDB.TB_INVOICE.FirstOrDefault(q => q.InvcBillNum == _Model.InvcBillNum);
if (inv != null)
{
DatePicker1.SelectedDate = inv.InvoiceDate;
}
if (Convert.ToInt32(_Model.State) == (int)InvoiceState.Mail)
{
btnInvoiceFail.Hidden = false;

9
北京北汽/SCP/Views/WarehouseData/SCP_INVOICE_DELTAIL.aspx.designer.cs

@ -230,6 +230,15 @@ namespace SCP.WarehouseData
/// </remarks>
protected global::FineUI.NumberBox txtBlancePrice1;
/// <summary>
/// DatePicker1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUI.DatePicker DatePicker1;
/// <summary>
/// DLL_TYPE 控件。
/// </summary>

Loading…
Cancel
Save