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.
471 lines
17 KiB
471 lines
17 KiB
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Linq;
|
|
using System.Linq.Expressions;
|
|
using System.Web;
|
|
using System.Web.UI;
|
|
using System.Web.UI.WebControls;
|
|
using CK.SCP.Models;
|
|
using CK.SCP.Models.AppBoxEntity;
|
|
using CK.SCP.Models.Enums;
|
|
using CK.SCP.Models.ScpEntity;
|
|
using CK.SCP.Utils;
|
|
using CK.SCP.Common;
|
|
using CK.SCP.Controller;
|
|
using EntityFramework.Audit;
|
|
using FineUI;
|
|
using Microsoft.Diagnostics.Instrumentation.Extensions.Intercept;
|
|
using SCP.Code;
|
|
using EntitiesHelper = CK.SCP.Controller.EntitiesHelper;
|
|
using System.IO;
|
|
using CK.SCP.Models.ScpEntity.ExcelImportEntity;
|
|
using CK.SCP.Models.ScpEntity.ExcelExportEnttity;
|
|
using System.Drawing;
|
|
|
|
namespace SCP.Views.青岛一汽法雷奥.PlanData
|
|
{
|
|
public partial class SCP_ASK : PageBase
|
|
{
|
|
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
if (!IsPostBack)
|
|
{
|
|
BindVender(ddl_Vender);
|
|
LoadData();
|
|
|
|
}
|
|
}
|
|
public void LoadData()
|
|
{
|
|
|
|
if (CurrentUser.FactoryList==null || CurrentUser.FactoryList.Count == 0)
|
|
{
|
|
Alert.Show("当前用户未选择地点!");
|
|
return;
|
|
}
|
|
else
|
|
{
|
|
var site=CurrentUser.FactoryList.FirstOrDefault();
|
|
if (site == "CQBMPT")//重庆北汽模塑
|
|
{
|
|
var column1= Grid_V_TB_ASK.FindColumn("BeginTime");
|
|
column1.HeaderText = "创建日期";
|
|
var column2= Grid_V_TB_ASK.FindColumn("EndTime");
|
|
column2.HeaderText = "需求日期";
|
|
column2.Hidden = false;
|
|
}
|
|
}
|
|
if (CurrentUser.Name == "admin" || CurrentUser.RoleList.Contains("分厂管理员"))
|
|
{
|
|
BtnStop.Hidden = false;
|
|
}
|
|
BindAsk();
|
|
}
|
|
public void BindAsk()
|
|
{
|
|
SearchV_TB_ASKData((result) => {
|
|
Grid_V_TB_ASK.RecordCount = result.Count();
|
|
var list = SortAndPage<V_TB_ASK>(result, Grid_V_TB_ASK);
|
|
|
|
var _ls=SCP_ASK_CONTROLLER.GET_IS_COMPLETED_SEND(list.ToList());
|
|
Grid_V_TB_ASK.DataSource = _ls .OrderBy(p => p.State).ThenByDescending(p => p.BeginTime);
|
|
Grid_V_TB_ASK.DataBind();
|
|
});
|
|
|
|
}
|
|
|
|
public void SearchV_TB_ASKData(Action<IQueryable<V_TB_ASK>> p_action)
|
|
{
|
|
var ls = SCPDB.TB_FACTORY.Where(p => p.ErpDomain == CurrentUser.UsedDomain).ToList();
|
|
DropDownList1.DataSource = ls;
|
|
DropDownList1.DataBind();
|
|
V_TB_ASK _entity = new V_TB_ASK();
|
|
_entity.IsDeleted = false;
|
|
_entity.PoBillNum = TXT_BillNo.Text;
|
|
_entity.VendId = ddl_Vender.SelectedValue;
|
|
_entity.State_DESC = TXT_Site_Desc.Text;
|
|
_entity.AskBillNum = TXT_AskBill.Text;
|
|
_entity.ErpBillNum = TXT_ProjectId.Text;
|
|
_entity.SubSite = DropDownList1.SelectedValue;
|
|
_entity.Extend1 = TXT_Extend1.Text;
|
|
_entity.Extend2 = TXT_Extend2.Text;
|
|
_entity.Extend3 = TXT_Extend3.Text;
|
|
if (DP_StartDate.SelectedDate != null)
|
|
{
|
|
_entity.BeginTime = DP_StartDate.SelectedDate;
|
|
}
|
|
if (DP_StartDate.SelectedDate != null)
|
|
{
|
|
_entity.EndTime = DP_StartDate.SelectedDate;
|
|
}
|
|
if (!string.IsNullOrEmpty(DDL_State.SelectedValue))
|
|
{
|
|
_entity.BillStateList = new List<int>() { int.Parse(DDL_State.SelectedValue) };
|
|
}
|
|
if (!string.IsNullOrEmpty(CurrentUser.Name))
|
|
{
|
|
if (CurrentUser.Name != "admin")
|
|
{
|
|
if (CurrentUser.FactoryList != null && CurrentUser.FactoryList.Count > 0)
|
|
{
|
|
if (!CurrentUser.RoleList.Contains("要货看板所有记录"))
|
|
{
|
|
_entity.CreateUser = CurrentUser.Name;
|
|
|
|
}
|
|
else
|
|
{
|
|
_entity.CreateUser = string.Empty;
|
|
this.txt_Planner.Hidden = false;
|
|
btn_planner.Hidden = false;
|
|
if (!string.IsNullOrEmpty(this.txt_Planner.Text))
|
|
{
|
|
_entity.Buyer = txt_Planner.Text;
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
_entity.UserInAddress = CurrentUser.FactoryList;
|
|
_entity.UserInVendIds = CurrentUser.VenderList;
|
|
SCP_ASK_CONTROLLER.Get_V_TB_ASK_List(_entity, (_ret) =>
|
|
{
|
|
if (_ret.State == ReturnStatus.Succeed)
|
|
{
|
|
p_action(_ret.Result);
|
|
}
|
|
});
|
|
}
|
|
|
|
protected void Grid_V_TB_ASK_RowDoubleClick(object sender, FineUI.GridRowClickEventArgs e)
|
|
{
|
|
object[] rowDataKeys = Grid_V_TB_ASK.DataKeys[e.RowIndex];
|
|
string AskBillNum = rowDataKeys[2] as string;
|
|
PageContext.RegisterStartupScript(Window1.GetShowReference(string.Format("../../PlanData/SCP_ASK_DETAIL.aspx?AskBillNum={0}", AskBillNum)));
|
|
}
|
|
|
|
protected void Grid_V_TB_ASK_Sort(object sender, GridSortEventArgs e)
|
|
{
|
|
BindAsk();
|
|
}
|
|
|
|
|
|
protected void Grid_V_TB_ASK_PageIndexChange(object sender, GridPageEventArgs e)
|
|
{
|
|
BindAsk();
|
|
}
|
|
|
|
protected void btnOutput_Click(object sender, EventArgs e)
|
|
{
|
|
if (Grid_V_TB_ASK.SelectedRowIndexArray.Count() == 0)
|
|
{
|
|
PageContext.RegisterStartupScript(Alert.GetShowInTopReference("没有选择数据!"));
|
|
return;
|
|
|
|
}
|
|
List<string> _ls = new List<string>();
|
|
for (int i = 0, count = Grid_V_TB_ASK.Rows.Count; i < count; i++)
|
|
{
|
|
if (Grid_V_TB_ASK.SelectedRowIndexArray.Contains(i))
|
|
{
|
|
object[] rowDataKeys = Grid_V_TB_ASK.DataKeys[i];
|
|
_ls.Add(rowDataKeys[2] as string);
|
|
}
|
|
}
|
|
DataSet ds = SCP_EXCEL_CONTROLLER.GET_ASK_EXECEL(_ls);
|
|
PageBase.DataSetToExcel(ds, "要货看板");
|
|
|
|
}
|
|
|
|
protected void btnDetail_Click(object sender, EventArgs e)
|
|
{
|
|
if (Grid_V_TB_ASK.SelectedRowIndexArray.Count() == 0)
|
|
{
|
|
PageContext.RegisterStartupScript(Alert.GetShowInTopReference("没有选择数据!"));
|
|
return;
|
|
}
|
|
object[] rowDataKeys = Grid_V_TB_ASK.DataKeys[Grid_V_TB_ASK.SelectedRowIndex];
|
|
|
|
string AskBillNum = rowDataKeys[2] as string;
|
|
|
|
PageContext.RegisterStartupScript(Window1.GetShowReference(string.Format("../../PlanData/SCP_ASK_DETAIL.aspx?AskBillNum={0}", AskBillNum)));
|
|
}
|
|
|
|
protected void BtnPublish_Click(object sender, EventArgs e)
|
|
{
|
|
int[] _selections = Grid_V_TB_ASK.SelectedRowIndexArray;
|
|
List<string> _AskList = new List<string>();
|
|
for (int i = 0, count = Grid_V_TB_ASK.Rows.Count; i < count; i++)
|
|
{
|
|
if (_selections.Contains(i))
|
|
{
|
|
object[] rowDataKeys = Grid_V_TB_ASK.DataKeys[i];
|
|
if (!string.IsNullOrEmpty(rowDataKeys[2].ToString()))
|
|
{
|
|
_AskList.Add(rowDataKeys[2].ToString());
|
|
}
|
|
}
|
|
}
|
|
var ret = SCP_ASK_CONTROLLER.Save_TB_ASK_STATE(_AskList, AskState.Release);
|
|
if (ret.State == ReturnStatus.Succeed)
|
|
{
|
|
BindAsk();
|
|
}
|
|
else
|
|
{
|
|
Alert.Show(ret.Message);
|
|
}
|
|
}
|
|
protected void BtnStop_Click(object sender, EventArgs e)
|
|
{
|
|
int[] _selections = Grid_V_TB_ASK.SelectedRowIndexArray;
|
|
List<string> _AskList = new List<string>();
|
|
for (int i = 0, count = Grid_V_TB_ASK.Rows.Count; i < count; i++)
|
|
{
|
|
if (_selections.Contains(i))
|
|
{
|
|
object[] rowDataKeys = Grid_V_TB_ASK.DataKeys[i];
|
|
if (!string.IsNullOrEmpty(rowDataKeys[2].ToString()))
|
|
{
|
|
_AskList.Add(rowDataKeys[2].ToString());
|
|
}
|
|
}
|
|
}
|
|
var ret = SCP_ASK_CONTROLLER.Save_TB_ASK_STATE(_AskList, AskState.Close);
|
|
if (ret.State == ReturnStatus.Succeed)
|
|
{
|
|
BindAsk();
|
|
}
|
|
else
|
|
{
|
|
Alert.Show(ret.Message);
|
|
}
|
|
}
|
|
protected void BtnCanclePublish_Click(object sender, EventArgs e)
|
|
{
|
|
int[] _selections = Grid_V_TB_ASK.SelectedRowIndexArray;
|
|
List<string> _AskList = new List<string>();
|
|
for (int i = 0, count = Grid_V_TB_ASK.Rows.Count; i < count; i++)
|
|
{
|
|
if (_selections.Contains(i))
|
|
{
|
|
object[] rowDataKeys = Grid_V_TB_ASK.DataKeys[i];
|
|
if (!string.IsNullOrEmpty(rowDataKeys[2].ToString()))
|
|
{
|
|
_AskList.Add(rowDataKeys[2].ToString());
|
|
}
|
|
}
|
|
}
|
|
var ret = SCP_ASK_CONTROLLER.Save_TB_ASK_STATE(_AskList, AskState.Confirm);
|
|
if (ret.State == ReturnStatus.Succeed)
|
|
{
|
|
BindAsk();
|
|
}
|
|
else
|
|
{
|
|
Alert.Show(ret.Message);
|
|
}
|
|
}
|
|
|
|
protected void btnShow_Click(object sender, EventArgs e)
|
|
{
|
|
gp1.Hidden = false;
|
|
}
|
|
|
|
protected void BtnClose_Click(object sender, EventArgs e)
|
|
{
|
|
gp1.Hidden = true;
|
|
}
|
|
|
|
protected void BtnSearch_Click(object sender, EventArgs e)
|
|
{
|
|
BindAsk();
|
|
}
|
|
|
|
|
|
protected void ddlGridPageSize_SelectedIndexChanged(object sender, EventArgs e)
|
|
{
|
|
Grid_V_TB_ASK.PageSize = Convert.ToInt32(ddlGridPageSize.SelectedValue);
|
|
BindAsk();
|
|
}
|
|
|
|
protected void btnInput_Click(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
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_PO_DETAIL_EXPORT_MODEL>(ExcelHelper.RemoveEmpty(_dt)).ToList();
|
|
|
|
list = list.Where(p => !p.订单数.Trim().Equals("0")).ToList();
|
|
|
|
bool _isAutoPublish = false;
|
|
if (CurrentUser.ConfigList.ContainsKey("导入要货看板自动发布"))
|
|
{
|
|
_isAutoPublish = true;
|
|
}
|
|
var ret = SCP_PO_CONTROLLER.EXCEL_PO_TO_ASK_MOD(list, CurrentUser.Name, CurrentUser.ChineseName, DateTime.Now, BillModType.Non_Contract, _isAutoPublish);
|
|
if (ret.State == ReturnStatus.Succeed && ret.Result == true)
|
|
{
|
|
BindAsk();
|
|
}
|
|
else
|
|
{
|
|
Alert.Show("必填项为空",string.Join("<br>", ret.MessageList));
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
Alert.Show(ex.Message);
|
|
}
|
|
|
|
}
|
|
|
|
protected void btnCreateAsk_Click(object sender, EventArgs e)
|
|
{
|
|
|
|
PageContext.RegisterStartupScript(Window1.GetShowReference("../PlanData/SCP_PO_ASK.aspx"));
|
|
|
|
}
|
|
|
|
protected void Window1_Close(object sender, WindowCloseEventArgs e)
|
|
{
|
|
BindAsk();
|
|
}
|
|
protected void BtnSearchDetail_Click (object sender , EventArgs e)
|
|
{
|
|
string AskBillNum = TXT_BillNo.Text;
|
|
string VendName = ddl_Vender.SelectedValue;
|
|
string State = DDL_State.SelectedValue;
|
|
string PartCode = TXT_PartCode.Text;
|
|
PageContext.RegisterStartupScript(Window1.GetShowReference(string.Format("../../PlanData/SCP_ASK_DETAIL.aspx?AskBillNum={0}&&VendName={1}&&State={2}&&PartCode={3}", AskBillNum, VendName, State, PartCode)));
|
|
}
|
|
protected void Grid_V_TB_ASK_RowDataBound(object sender, GridRowEventArgs e)
|
|
{
|
|
var itm = e.DataItem as V_TB_ASK;
|
|
if (itm.IsComplete == false)
|
|
{
|
|
System.Web.UI.WebControls.Label _label = (System.Web.UI.WebControls.Label)Grid_V_TB_ASK.Rows[e.RowIndex].FindControl("State_DESC");
|
|
|
|
//_label.Text = "发货未完";
|
|
_label.ForeColor = Color.Red;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
protected void Button1_Click(object sender, EventArgs e)
|
|
{
|
|
DDL_State.SelectedValue = "0";
|
|
BindAsk();
|
|
}
|
|
|
|
protected void Button2_Click(object sender, EventArgs e)
|
|
{
|
|
DDL_State.SelectedValue = "1";
|
|
BindAsk();
|
|
}
|
|
|
|
protected void Button4_Click(object sender, EventArgs e)
|
|
{
|
|
DDL_State.SelectedValue = "2";
|
|
BindAsk();
|
|
}
|
|
|
|
|
|
|
|
protected void Button6_Click(object sender, EventArgs e)
|
|
{
|
|
DDL_State.SelectedValue = string.Empty;
|
|
BindAsk();
|
|
}
|
|
|
|
protected void Button5_Click(object sender, EventArgs e)
|
|
{
|
|
DDL_State.SelectedValue = "3";
|
|
BindAsk();
|
|
}
|
|
|
|
protected void btn_planner_Click(object sender, EventArgs e)
|
|
{
|
|
BindAsk();
|
|
}
|
|
|
|
protected void btnCopy_Click(object sender, EventArgs e)
|
|
{
|
|
if (Grid_V_TB_ASK.SelectedRowIndexArray.Count() == 0)
|
|
{
|
|
PageContext.RegisterStartupScript(Alert.GetShowInTopReference("没有选择数据!"));
|
|
return;
|
|
}
|
|
if (Grid_V_TB_ASK.SelectedRowIndexArray.Count() > 1)
|
|
{
|
|
PageContext.RegisterStartupScript(Alert.GetShowInTopReference("选择数据必须为一条!"));
|
|
return;
|
|
}
|
|
object[] rowDataKeys = Grid_V_TB_ASK.DataKeys[Grid_V_TB_ASK.SelectedRowIndex];
|
|
string AskBillNum = rowDataKeys[2] as string;
|
|
|
|
int modtype =ConvertHelper.To<int>(rowDataKeys[19]);
|
|
|
|
if (modtype == 2)
|
|
{
|
|
Alert.Show("不能复制离散单,请去ERP重新创建订单然后创建!");
|
|
return;
|
|
}
|
|
|
|
var ret=SCP_ASK_CONTROLLER.COPY_ASK(new V_TB_ASK() {AskBillNum=AskBillNum });
|
|
if (ret.State == ReturnStatus.Succeed)
|
|
{
|
|
BindAsk();
|
|
Alert.Show(string.Join("<br>",ret.MessageList));
|
|
}
|
|
}
|
|
protected void btnDelete_Click(object sender, EventArgs e)
|
|
{
|
|
int[] _selections = Grid_V_TB_ASK.SelectedRowIndexArray;
|
|
List<string> _AskList = new List<string>();
|
|
for (int i = 0, count = Grid_V_TB_ASK.Rows.Count; i < count; i++)
|
|
{
|
|
if (_selections.Contains(i))
|
|
{
|
|
object[] rowDataKeys = Grid_V_TB_ASK.DataKeys[i];
|
|
if (!string.IsNullOrEmpty(rowDataKeys[2].ToString()))
|
|
{
|
|
_AskList.Add("'"+rowDataKeys[2].ToString()+"'");
|
|
}
|
|
}
|
|
}
|
|
string str = string.Format("update TB_ASN_DETAIL set State=-1,IsDeleted=1,UpdateUser='{1}' where AsnBillNum in (select AsnBillNum from tb_Asn b where b.AskBillNum in ({0}))", string.Join(",", _AskList.ToArray()), CurrentUser.Name);
|
|
int state = SCPDB.Database.ExecuteSqlCommand(str);
|
|
state = SCPDB.Database.ExecuteSqlCommand(string.Format("update tb_asn set state=-1,isdeleted=1 ,UpdateUser='{1}' where askbillnum in ({0})", string.Join(",", _AskList.ToArray()), CurrentUser.Name));
|
|
state = SCPDB.Database.ExecuteSqlCommand(string.Format("update tb_ask_detail set state=-1,isdeleted=1,UpdateUser='{1}' where askbillnum in ({0})", string.Join(",", _AskList.ToArray()), CurrentUser.Name));
|
|
state = SCPDB.Database.ExecuteSqlCommand(string.Format("update tb_ask set state=-1,isdeleted=1,UpdateUser='{1}' where askbillnum in ({0})", string.Join(",", _AskList.ToArray()),CurrentUser.Name));
|
|
if (SCPDB.SaveChanges() != -1)
|
|
{
|
|
BindAsk();
|
|
Alert.Show("删除看板成功");
|
|
}
|
|
}
|
|
}
|
|
}
|