CeramicProject/newyt/Module_data/Dispatch_browse.aspx.cs

348 lines
13 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Maticsoft.BLL;
using System.Data;
using System.Data.SqlClient;
using Ajax;
public partial class Dispatch_browse : CommonPage
{
//创建一个共用的生产单bll层
Maticsoft.BLL.nr_z_scd scdbll = new Maticsoft.BLL.nr_z_scd();
//创建一个共用的生产单模板
Maticsoft.Model.nr_z_scd scd = new Maticsoft.Model.nr_z_scd();
//创建一个操作记录模板
Maticsoft.Model.nr_sys_rizhi rizhi = new Maticsoft.Model.nr_sys_rizhi();
//创建一个操作记录bll
Maticsoft.BLL.nr_sys_rizhi rizhibll = new Maticsoft.BLL.nr_sys_rizhi();
protected void Page_Load(object sender, EventArgs e)
{
Utility.RegisterTypeForAjax(typeof(Dispatch_browse));
if (!IsPostBack)
{
if (Session["user"] == null)
{
Response.Redirect("../index.aspx");
}
Maticsoft.Model.nr_z_yhzh user = (Maticsoft.Model.nr_z_yhzh)(Session["user"]);
pdquanxian(user.juese);
if (Request.QueryString["uid"] != null && Request.QueryString["uid"] != "")
{
id.Value = Request.QueryString["uid"].ToString();
}
else
{
Response.Redirect("../Common/error.aspx");
}
initdata(id.Value);
getsccpxm(Convert.ToInt32(id.Value));
}
}
#region
private void initdata(string did)
{
DataSet scdds = DBHlper.Execute("select * from view_nr_z_scd where id='" + did + "'");
if (scdds != null && scdds.Tables[0].Rows.Count > 0)
{
bh.Text = scdds.Tables[0].Rows[0]["bh"].ToString();
sclx.Text = scdds.Tables[0].Rows[0]["sclx"].ToString();
if (scdds.Tables[0].Rows[0]["xdrq"] != null)
{
xdrq.Text = Convert.ToDateTime(scdds.Tables[0].Rows[0]["xdrq"]).ToString("yyyy-MM-dd");
}
else
{
xdrq.Text = "";
}
var wgrqData = scdds.Tables[0].Rows[0]["wgrq"].ToString();
if (wgrqData != null && !string.IsNullOrEmpty(wgrqData))
{
wgrq.Text = Convert.ToDateTime(scdds.Tables[0].Rows[0]["wgrq"]).ToString("yyyy-MM-dd");
}
else
{
wgrq.Text = "";
}
ywy.Text = scdds.Tables[0].Rows[0]["kdr"].ToString();
ddbz.Text = scdds.Tables[0].Rows[0]["bz"].ToString();
zt.Text = scdds.Tables[0].Rows[0]["zt"].ToString();
if (scdds.Tables[0].Rows[0]["zt"].ToString() == "生产中")
{
bianji.Enabled = false;
bianji.BackColor = System.Drawing.Color.Gray;
fwangong.Enabled = false;
fwangong.BackColor = System.Drawing.Color.Gray;
kaigong.Enabled = false;
kaigong.BackColor = System.Drawing.Color.Gray;
shanchu.Enabled = false;
shanchu.BackColor = System.Drawing.Color.Gray;
}
if (scdds.Tables[0].Rows[0]["zt"].ToString() == "未开工")
{
wangong.Enabled = false;
wangong.BackColor = System.Drawing.Color.Gray;
fwangong.Enabled = false;
fwangong.BackColor = System.Drawing.Color.Gray;
zanting.Enabled = false;
zanting.BackColor = System.Drawing.Color.Gray;
}
if (scdds.Tables[0].Rows[0]["zt"].ToString() == "已完工")
{
kaigong.Enabled = false;
kaigong.BackColor = System.Drawing.Color.Gray;
wangong.Enabled = false;
wangong.BackColor = System.Drawing.Color.Gray;
bianji.Enabled = false;
bianji.BackColor = System.Drawing.Color.Gray;
shanchu.Enabled = false;
shanchu.BackColor = System.Drawing.Color.Gray;
zanting.Enabled = false;
zanting.BackColor = System.Drawing.Color.Gray;
}
if (scdds.Tables[0].Rows[0]["zt"].ToString() == "暂停")
{
wangong.Enabled = false;
wangong.BackColor = System.Drawing.Color.Gray;
zanting.Enabled = false;
zanting.BackColor = System.Drawing.Color.Gray;
fwangong.Enabled = false;
fwangong.BackColor = System.Drawing.Color.Gray;
}
}
}
#endregion
#region
private void getsccpxm(int scdid)
{
//修改页面时,首先吧项目明细的表头加载出来
string biao = "<table id='scdcptab' class='bule' > <tr id='0' class='tbtilt'>"
+ "<td><span>单据编号</span></td><td><span>客户编号</span></td><td><span>产品货号</td>"
+ "<td><span>产品名称</span></td><td><span>种类</span></td> <td><span>特殊工艺</span></td><td><span>订单数量</span></td>"
+ "<td><span>提取库存数量</span></td><td><span>生产数量</span></td><td><span>交货日期</span></td>"
+ "<td><span>备注</span></td></tr>";
//查询数据视图,获取当前订单下的所有明细
DataSet ds = DBHlper.Execute("select * from nr_z_scd_cp where scdid='" + scdid + "' order by id ");
if (ds != null && ds.Tables[0].Rows.Count > 0)
{
//如果当前订单下存在明细就加载成tr行
foreach (DataRow r in ds.Tables[0].Rows)
{
//为保证唯一性获取id拼接保证稳定性
string hcount = r["id"].ToString();
DataSet tqds = DBHlper.Execute("select * from nr_z_scd_cp_tqkc where xmid='" + r["id"] + "'");
string tqxxst = "";
if (tqds != null && tqds.Tables[0].Rows.Count > 0)
{
tqxxst = tqds.Tables[0].Rows[0]["tptqsl"].ToString() + "," + tqds.Tables[0].Rows[0]["sptqsl"].ToString() + "," + tqds.Tables[0].Rows[0]["bdtqsl"].ToString();
}
biao += "<tr id='" + hcount + "' name='" + hcount + "'>"
+ "<td><span>" + r["djbh"].ToString() + "</span></td><td><span>" + r["khbh"].ToString() + "</span></td>"
+ "<td><span>" + r["cphh"].ToString() + "</span></td>"
+ "<td><span>" + r["cpmc"] + "</span></td><td><span>" + r["zl"].ToString() + "</span></td>"
+ "<td><span>" + r["scfs"].ToString() + "</span> </td><td><span>" + r["ddsl"].ToString() + "</span></td>"
+ "<td><span>" + tqxxst + "</span></td> "
+ "<td><span>" + r["scsl"].ToString() + "</span></td> "
+ "<td><span>" + Convert.ToDateTime(r["jhrq"]).ToString("yyyy-MM-dd") + "</span></td> "
+ "<td><span>" + r["bz"].ToString() + "</span></td></tr>";
}
}
cpxx.InnerHtml = biao + "</table>";
}
#endregion
#region
void pdquanxian(int juese)
{
Maticsoft.Model.nr_z_yhzh user = (Maticsoft.Model.nr_z_yhzh)(Session["user"]);
if (DBHlper.getzt(user.id) != 1)
{
Response.Redirect("../index.aspx");
}
if (DBHlper.GetPermission(juese, "生产施工单", "nr_z_scd", "查看全部") == false)
{
Response.Redirect("../Common/nopower.htm");
}
if (DBHlper.GetPermission(juese, "生产施工单", "nr_z_scd", "编辑"))
{
bianji.Visible = true;
}
if (DBHlper.GetPermission(juese, "生产施工单", "nr_z_scd", "删除"))
{
shanchu.Visible = true;
}
if (DBHlper.GetPermission(juese, "生产施工单", "nr_z_scd", "开工"))
{
kaigong.Visible = true;
}
if (DBHlper.GetPermission(juese, "生产施工单", "nr_z_scd", "完工"))
{
wangong.Visible = true;
}
if (DBHlper.GetPermission(juese, "生产施工单", "nr_z_scd", "暂停"))
{
zanting.Visible = true;
}
if (DBHlper.GetPermission(juese, "生产施工单", "nr_z_scd", "反完工"))
{
fwangong.Visible = true;
}
if (DBHlper.GetPermission(juese, "生产施工单", "nr_z_scd", "MRP运算"))
{
mrpys.Visible = true;
}
if (DBHlper.GetPermission(juese, "生产施工单", "nr_z_scd", "生成模具指令单"))
{
scmjzl.Visible = true;
}
if (DBHlper.GetPermission(juese, "生产施工单", "nr_z_scd", "打印"))
{
dayin.Visible = true;
}
}
#endregion
#region
private void getrizhi(string ml)
{
//给日志模板赋值
rizhi.riqi = DateTime.Now;
rizhi.leixing = "客户订单";
//将session转换对象取值
Maticsoft.Model.nr_z_yhzh zh = (Maticsoft.Model.nr_z_yhzh)Session["user"];
rizhi.yonghuming = zh.zhanghao;
//拼接字符串插入日志
rizhi.jilu = zh.zhanghao + ml + "了客户订单,订单编号为:" + bh.Text.Trim();
}
#endregion
protected void kaigong_Click(object sender, EventArgs e)
{
scd = scdbll.GetModel(Convert.ToInt32(id.Value));
scd.zt = "生产中";
if (scdbll.Update(scd))
{
Response.Redirect("Dispatch_browse.aspx?uid=" + id.Value, false);
}
}
protected void wangong_Click(object sender, EventArgs e)
{
scd = scdbll.GetModel(Convert.ToInt32(id.Value));
scd.zt = "已完工";
scd.wgrq = DateTime.Now;
if (scdbll.Update(scd))
{
Response.Redirect("Dispatch_browse.aspx?uid=" + id.Value, false);
}
}
protected void bianji_Click(object sender, EventArgs e)
{
Response.Redirect("Dispatch_Form.aspx?uid=" + id.Value, false);
}
protected void fwangong_Click(object sender, EventArgs e)
{
scd = scdbll.GetModel(Convert.ToInt32(id.Value));
scd.zt = "生产中";
scd.wgrq = null;
if (scdbll.Update(scd))
{
Response.Redirect("Dispatch_browse.aspx?uid=" + id.Value, false);
}
}
protected void zanting_Click(object sender, EventArgs e)
{
scd = scdbll.GetModel(Convert.ToInt32(id.Value));
scd.zt = "暂停";
if (scdbll.Update(scd))
{
Response.Redirect("Dispatch_browse.aspx?uid=" + id.Value, false);
}
}
protected void shanchu_Click(object sender, EventArgs e)
{
if (DBHlper.ExecuteReid("select count(*) from nr_z_scdck where djbh='" + bh.Text + "'") > 0)
{
z_error.Text = "生产单已领料,不能删除!";
return;
}
if (DBHlper.ExecuteReid("select count(*) from nr_z_shd where scdh='" + bh.Text + "'") > 0)
{
z_error.Text = "生产单已送货,不能删除!";
return;
}
if (DBHlper.ExecuteReid("select count(*) from nr_z_cpck where scdh='" + bh.Text + "'") > 0)
{
z_error.Text = "生产单已送货,不能删除!";
return;
}
if (DBHlper.ExecuteReid("select count(*) from nr_z_pcfkjl where bh='" + bh.Text + "'") > 0)
{
z_error.Text = "生产单已有反馈记录,不能删除!";
return;
}
if (DBHlper.ExecuteReid("select count(*) from nr_z_shengoudan where scdid='" + id.Value + "'") > 0)
{
z_error.Text = "生产单已有申购单,不能删除!";
return;
}
if (scdbll.Delete(Convert.ToInt32(id.Value)))
{
DBHlper.excutecmd("delete nr_z_scd_xm where scd_id='" + id.Value + "'");
getrizhi("删除");
rizhibll.Add(rizhi);
Response.Redirect("Dispatch_list.aspx?sczt=未开工", false);
}
}
protected void mrpys_Click(object sender, EventArgs e)
{
int sz = 0;
DataSet sccpds = DBHlper.Execute("select * from view_nr_z_allscdxm where scdid='" + id.Value + "'");
foreach (DataRow r in sccpds.Tables[0].Rows)
{
DataSet cpwlds = DBHlper.Execute("select * from view_nr_z_cpkc_wlxq where cpid='" + r["cpid"] + "'");
foreach (DataRow i in cpwlds.Tables[0].Rows)
{
string wlxqdh = DBHlper.getbh("SG-", "nr_z_shengoudan", "sgdbianhao", 4);
decimal xqsl = Convert.ToDecimal(i["xqyl"]) * Convert.ToDecimal(r["scsl"]);
sz = DBHlper.excutecmd("insert into nr_z_shengoudan (sgdbianhao,scdid,wlid,shengoushu,xuqiushuliang,yhriqi,riqi,zt,beizhu,cgzt) VALUES ('" + wlxqdh + "','" + id.Value + "','" + i["wlid"] + "','" + xqsl + "','" + xqsl + "','" + DateTime.Now.ToString("yyyy-MM-dd") + "','" + DateTime.Now.ToString("yyyy-MM-dd") + "','审核通过','','待采购')");
}
}
if (sz > 0)
{
Response.Write("<script Language='javascript'>alert('需求物料已自动加入需求单!');</script>");
}
}
protected void scmjzl_Click(object sender, EventArgs e)
{
Response.Redirect("DieInstruction_browse.aspx?scid=" + id.Value, false);
}
}