You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
257 lines
9.8 KiB
257 lines
9.8 KiB
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Linq.Expressions;
|
|
using System.Web;
|
|
using System.Web.UI;
|
|
using System.Web.UI.WebControls;
|
|
using CK.SCP.Models.Enums;
|
|
using CK.SCP.Models.ScpEntity;
|
|
using CK.SCP.Utils;
|
|
using CK.SCP.Controller;
|
|
using FineUI;
|
|
using System.Data.Entity.Migrations;
|
|
|
|
namespace SCP.WarehouseData
|
|
{
|
|
public partial class SCP_RECEIVE_DETAIL : PageBase
|
|
{
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
if (!IsPostBack)
|
|
{
|
|
if (!string.IsNullOrEmpty(Request["ID"].Trim()))
|
|
{
|
|
F_PO_DETAIL.Hidden = false;
|
|
LoadData();
|
|
BindData();
|
|
}
|
|
else
|
|
{
|
|
F_PO_DETAIL.Hidden = true;
|
|
BindData_View();
|
|
}
|
|
}
|
|
}
|
|
|
|
public void LoadData()
|
|
{
|
|
var _receive = new V_TB_RECEIVE();
|
|
_receive.RecvBillNum = GetQueryValue("ID");
|
|
_receive.UserInAddress = CurrentUser.FactoryList;
|
|
if (GetQueryValue("STATE") != null)
|
|
{
|
|
_receive.State = int.Parse(GetQueryValue("STATE"));
|
|
}
|
|
|
|
SCP_RECIVECE_CONTROLLER.Get_V_TB_RECEIVE_List(_receive, (ret) => {
|
|
if (ret.State == ReturnStatus.Succeed)
|
|
{
|
|
var _rec = ret.Result.FirstOrDefault();
|
|
txtState.Text = _rec.State_DESC;
|
|
txtBillNo.Text = _rec.RecvBillNum;
|
|
txtReceiveTime.Text = Convert.ToDateTime(_rec.ShipTime).ToString("yyyy-MM-dd");
|
|
txtShipBillNo.Text = _rec.AsnBillNum;
|
|
txtPlanBillNo.Text = _rec.PoBillNum;
|
|
txtUserName.Text = _rec.OperName;
|
|
txtSupplierName.Text = _rec.VendName;
|
|
txtMemo.Text = _rec.Remark;
|
|
txtDeliveryAddress.Text = _rec.Site_Desc;
|
|
}
|
|
});
|
|
}
|
|
|
|
public void BindData()
|
|
{
|
|
var _receive = new V_TB_RECEIVE_DETAIL();
|
|
_receive.Site =CurrentUser.UsedDomain;
|
|
_receive.RecvBillNum = GetQueryValue("ID");
|
|
|
|
SCP_RECIVECE_CONTROLLER.Get_V_TB_RECEIVE_DETAIL_List(_receive, (ret) =>
|
|
{
|
|
if (ret.State == ReturnStatus.Succeed)
|
|
{
|
|
|
|
Grid_V_TB_RECEIVE_DETAIL.RecordCount = ret.Result.Count();
|
|
var _ls = SortAndPage(ret.Result, Grid_V_TB_RECEIVE_DETAIL);
|
|
|
|
Grid_V_TB_RECEIVE_DETAIL.DataSource = _ls;
|
|
Grid_V_TB_RECEIVE_DETAIL.DataBind();
|
|
}
|
|
});
|
|
}
|
|
public void BindData_View()
|
|
{
|
|
var _receive = new V_TB_RECEIVE_DETAIL();
|
|
_receive.RecvBillNum = GetQueryValue("ID");
|
|
if (string.IsNullOrEmpty(Request["ID"].Trim()))
|
|
{
|
|
if (!string.IsNullOrEmpty("PartCode"))
|
|
{
|
|
_receive.PartCode = Request["PartCode"];
|
|
}
|
|
if (!string.IsNullOrEmpty(Request["State"]))
|
|
{
|
|
_receive.State = int.Parse(Request["State"]);
|
|
}
|
|
}
|
|
SCP_RECIVECE_CONTROLLER.Get_V_TB_RECEIVE_DETAIL_List(_receive, (ret) =>
|
|
{
|
|
if (ret.State == ReturnStatus.Succeed)
|
|
{
|
|
|
|
Grid_V_TB_RECEIVE_DETAIL.RecordCount = ret.Result.Count();
|
|
var _ls = SortAndPage(ret.Result, Grid_V_TB_RECEIVE_DETAIL);
|
|
|
|
Grid_V_TB_RECEIVE_DETAIL.DataSource = _ls;
|
|
Grid_V_TB_RECEIVE_DETAIL.DataBind();
|
|
}
|
|
});
|
|
}
|
|
protected void btnCheck_OnClick(object sender, EventArgs e)
|
|
{
|
|
//try
|
|
//{
|
|
// string id = GetQueryValue("ID");
|
|
// _Model = ReceiveDetailController.GetlistByBillNum(id);
|
|
// bool flag = ReceiveDetailController.UpdateReceive(_Model);
|
|
// if (flag)
|
|
// PageContext.Refresh();
|
|
//}
|
|
//catch (Exception ex)
|
|
//{
|
|
// Alert.ShowInTop(ex.Message);
|
|
//}
|
|
}
|
|
//导出
|
|
protected void btnOutput_OnClick(object sender, EventArgs e)
|
|
{
|
|
var _receive = new V_TB_RECEIVE_DETAIL();
|
|
_receive.RecvBillNum = GetQueryValue("ID");
|
|
_receive.Site = CurrentUser.UsedDomain;
|
|
SCP_RECIVECE_CONTROLLER.Get_V_TB_RECEIVE_DETAIL_List(_receive, (ret) =>
|
|
{
|
|
if (ret.State == ReturnStatus.Succeed)
|
|
{
|
|
|
|
Dictionary<string, string> cellheader = new Dictionary<string, string> {
|
|
{ "RecvBillNum", "单据号" },
|
|
{ "AsnBillNum", "发货单号" },
|
|
{ "PoBillNum", "订单号" },
|
|
{ "PoLine", "订单行" },
|
|
{ "PartCode", "零件号" },
|
|
{ "PartDesc1", "零件名称" },
|
|
{ "Unit", "单位" },
|
|
{ "Qty", "数量" },
|
|
{ "DockCode", "ERP库位" },
|
|
//{ "ReceivedQty", "已开票数量" },
|
|
{ "ShipTime", "时间" },
|
|
{ "Remark", "备注" },
|
|
};
|
|
|
|
string url = EntityListToExcel2003(cellheader, ret.Result.ToList(), "审核明细");
|
|
|
|
}
|
|
});
|
|
|
|
|
|
}
|
|
|
|
protected void btnDelete_Click(object sender, EventArgs e)
|
|
{
|
|
|
|
var _receive = new V_TB_RECEIVE();
|
|
_receive.RecvBillNum = GetQueryValue("ID");
|
|
_receive.Site = GetQueryValue("Site");
|
|
if (GetQueryValue("STATE") != null)
|
|
{
|
|
_receive.State = int.Parse(GetQueryValue("STATE"));
|
|
}
|
|
SCP_RECIVECE_CONTROLLER.Get_V_TB_RECEIVE_List(_receive, (ret) =>
|
|
{
|
|
if (ret.State == ReturnStatus.Succeed)
|
|
{
|
|
var _rec = ret.Result.FirstOrDefault();
|
|
if (CurrentUser.Name == "admin")
|
|
{
|
|
var asn = SCPDB.TB_RECEIVE_QAD.Where(p => p.RecvBillNum == _rec.RecvBillNum && p.Site==_rec.Site).FirstOrDefault();
|
|
var detail = SCPDB.TB_RECEIVE_DETAIL_QAD.Where(p => p.RecvBillNum == _rec.RecvBillNum && p.Site == _rec.Site).ToArray();
|
|
if (asn != null)
|
|
{
|
|
asn.State = -1;
|
|
asn.IsDeleted = true;
|
|
SCPDB.TB_RECEIVE_QAD.AddOrUpdate(asn);
|
|
}
|
|
if (detail.Count() > 0)
|
|
{
|
|
foreach (var itm in detail)
|
|
{
|
|
itm.IsDeleted = true;
|
|
itm.State = -1;
|
|
}
|
|
SCPDB.TB_RECEIVE_DETAIL_QAD.AddOrUpdate(detail);
|
|
}
|
|
if (SCPDB.SaveChanges() != -1)
|
|
{
|
|
Alert.Show("收货单删除成功");
|
|
}
|
|
}
|
|
}
|
|
});
|
|
}
|
|
|
|
protected void btnBack_Click(object sender, EventArgs e)
|
|
{
|
|
var _receive = new V_TB_RECEIVE();
|
|
_receive.RecvBillNum = GetQueryValue("ID");
|
|
_receive.Site =GetQueryValue("Site");
|
|
_receive.State = 1;
|
|
SCP_RECIVECE_CONTROLLER.Get_V_TB_RECEIVE_List(_receive, (ret) =>
|
|
{
|
|
if (ret.State == ReturnStatus.Succeed)
|
|
{
|
|
var _rec = ret.Result.FirstOrDefault();
|
|
if (CurrentUser.Name == "admin" || CurrentUser.RoleList.Contains("分厂管理员") || CurrentUser.RoleList.Contains("收货审核人员"))
|
|
{
|
|
if (_rec != null)
|
|
{
|
|
int _count=SCPDB.TB_INVOICE_DETAIL.Where(p => p.RecvBillNum == _rec.RecvBillNum && p.PoBillNum == _rec.PoBillNum).Count();
|
|
if (_count > 0)
|
|
{
|
|
Alert.Show("不能取消已经开票!");
|
|
return;
|
|
}
|
|
var rec = SCPDB.TB_RECEIVE_QAD.Where(p => p.RecvBillNum == _rec.RecvBillNum && p.Site == _rec.Site).FirstOrDefault();
|
|
var detail = SCPDB.TB_RECEIVE_DETAIL_QAD.Where(p => p.RecvBillNum == _rec.RecvBillNum && p.Remark == _rec.Site).ToArray();
|
|
if (rec != null)
|
|
{
|
|
rec.State = 0;
|
|
rec.IsDeleted = false;
|
|
SCPDB.TB_RECEIVE_QAD.AddOrUpdate(rec);
|
|
}
|
|
if (detail.Count() > 0)
|
|
{
|
|
foreach (var itm in detail)
|
|
{
|
|
itm.IsDeleted = false;
|
|
itm.State = 0;
|
|
}
|
|
SCPDB.TB_RECEIVE_DETAIL_QAD.AddOrUpdate(detail);
|
|
}
|
|
if (SCPDB.SaveChanges() != -1)
|
|
{
|
|
BindData();
|
|
Alert.Show("成功取消审核状态!");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Alert.Show("当前单据不是审核状态单据!");
|
|
}
|
|
}
|
|
}
|
|
|
|
});
|
|
}
|
|
}
|
|
}
|