using System; using System.Data; using System.Text; using System.Web.UI; using System.Web.UI.WebControls; using GThinking.N_CONTROL; using GThinking.N_MODEL.Page; using GThinking.N_MISPRO; using GThinking.N_MISPRO.Data; using GThinking.N_MISPRO.Utility; namespace GThinking.N_XLXSBJ { public partial class XLBJD_WBBJDXYCLGZList : SingleGridBase { XLBJD_WBBJDXYCLGZ entity = new XLBJD_WBBJDXYCLGZ(); XLBJD_WBBJDXYCLGZ_M queryentity = new XLBJD_WBBJDXYCLGZ_M(); protected void Page_Load(object sender, EventArgs e) { this.UMID = 100860043; this.UMName = "外部线缆产品导入"; this.CurMaster = Master; this.ModuleGV = grdContentGrid; this.CurEntity = entity; this.CurQueryEntity = queryentity; this.sURLTarget = ""; this.sQueryURLTarget = "XLBJD_WBBJDXYCLGZQuery.aspx"; this.PageWidth = 920; this.PageHeight = 620; base.DataKeyNames = new string[] { "XLXSBJDXYCLGZ_YCLLX", "XLXSBJDXYCLGZ_YCLGZ" }; this.Master.EnablePrintBtn = false; this.Master.EnableAttachBtn = false; this.Master.EnableNewBtn = false; this.Master.EnableCopyBtn = false; this.Master.EnableViewBtn = false; this.Master.EnableEditBtn = false; this.Master.EnableDeleteBtn = false; base.InitPage(); // InitPage 内 MGetReplacePage 会把空 sURLTarget 换成模块缺省 Info;且 Page_Load 调用的是 base.InitPage(),子类 override InitPage 不会执行。 this.sURLTarget = ""; ScriptManager.RegisterStartupScript( this, GetType(), "urltarget_ycl_clear", "try{sURLTarget='';}catch(e){}", true); if (!IsPostBack) { Master_OnStandardQuery(null, null); } } /// /// 与 XLXSBJYWPZ_SDJXDRMRPXList 相同:为 Grid 订阅 RowDoubleClick 后,行 ondblclick 走回传而非默认打开卡片(本页无详情页)。 /// protected void grdContentGrid_RowDoubleClick(object sender, RowDoubleClickEventArgs e) { } protected void btnYclTy_Click(object sender, EventArgs e) { string ycllx; string yclgz; if (!TryGetSelectedKeys(out ycllx, out yclgz)) return; ApplyYclStopState(ycllx, yclgz, true); } protected void btnYclQy_Click(object sender, EventArgs e) { string ycllx; string yclgz; if (!TryGetSelectedKeys(out ycllx, out yclgz)) return; ApplyYclStopState(ycllx, yclgz, false); } private bool TryGetSelectedKeys(out string ycllx, out string yclgz) { ycllx = ""; yclgz = ""; if (grdContentGrid.SelectedIndex < 0) { ShowMessage("请先选择一条预处理规则。"); return false; } ycllx = grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJDXYCLGZ_YCLLX"].ToString().Trim(); yclgz = grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJDXYCLGZ_YCLGZ"].ToString().Trim(); return true; } private void ApplyYclStopState(string ycllx, string yclgz, bool stop) { try { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL sql = new TSQL(dberp); sql.Clear(); if (stop) { sql.Add("update XLXSBJDXYCLGZ set XLXSBJDXYCLGZ_TYBZ = 'Y', "); sql.Add(" XLXSBJDXYCLGZ_TYRQ = :pTYRQ, "); sql.Add(" XLXSBJDXYCLGZ_QYRQ = null, "); sql.Add(" XLXSBJDXYCLGZ_WHR = :pWHR, XLXSBJDXYCLGZ_WHRID = :pWHRID, XLXSBJDXYCLGZ_WHSJ = :pWHSJ "); sql.Add(" where XLXSBJDXYCLGZ_YCLLX = :pYCLLX and XLXSBJDXYCLGZ_YCLGZ = :pYCLGZ "); sql.ParamByName("pTYRQ").Value = CMISproConvert.ConvertDate(DateTime.Now); } else { sql.Add("update XLXSBJDXYCLGZ set XLXSBJDXYCLGZ_TYBZ = 'N', "); sql.Add(" XLXSBJDXYCLGZ_QYRQ = :pQYRQ, "); sql.Add(" XLXSBJDXYCLGZ_TYRQ = null, "); sql.Add(" XLXSBJDXYCLGZ_WHR = :pWHR, XLXSBJDXYCLGZ_WHRID = :pWHRID, XLXSBJDXYCLGZ_WHSJ = :pWHSJ "); sql.Add(" where XLXSBJDXYCLGZ_YCLLX = :pYCLLX and XLXSBJDXYCLGZ_YCLGZ = :pYCLGZ "); sql.ParamByName("pQYRQ").Value = CMISproConvert.ConvertDate(DateTime.Now); } sql.ParamByName("pYCLLX").Value = ycllx; sql.ParamByName("pYCLGZ").Value = yclgz; sql.ParamByName("pWHR").Value = tSession.UserName; sql.ParamByName("pWHRID").Value = tSession.UserId; sql.ParamByName("pWHSJ").Value = CMISproConvert.ConvertTime(DateTime.Now); dberp.ExecSQL(sql); Master_OnStandardQuery(null, null); ShowMessage(stop ? "已停用所选规则。" : "已启用所选规则。"); } catch (Exception ex) { ShowMessage("更新状态时出错:" + ex.Message); } } protected override void Master_OnStandardQuery(object sender, EventArgs e) { base.InitEntityByCondition(); entity.EntityTable.QuerySelSql = GetQuerySelSQL().ToString(); base.Master_OnStandardQuery(sender, e); entity.GridDataBind(grdContentGrid, tSession); } protected override void moduleGV_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { DataRowView drv = (DataRowView)e.Row.DataItem; e.Row.Cells[0].Text = FormatYcllxDisplay(drv["XLXSBJDXYCLGZ_YCLLX"].ToString().Trim()); CheckBox chk = (CheckBox)e.Row.FindControl("chkYclQy"); if (chk != null) { string ty = drv["XLXSBJDXYCLGZ_TYBZ"].ToString().Trim().ToUpper(); chk.Checked = !ty.Equals("Y"); } } base.moduleGV_RowDataBound(sender, e); } private static string FormatYcllxDisplay(string code) { if (code == null) return ""; string u = code.Trim().ToUpper(); if (u.Equals("GGYCL")) return "规格预处理"; if (u.Equals("XHYCL")) return "型号预处理"; return code.Trim(); } protected override void moduleGV_PageIndexChanging(object sender, GridViewPageEventArgs e) { entity.EntityTable.QuerySelSql = GetQuerySelSQL().ToString(); grdContentGrid.SelectedIndex = -1; base.moduleGV_PageIndexChanging(sender, e); } protected override void BeforeDelete(TDatabase db, ref bool ActionIsDone) { entity.Param.Add("XLXSBJDXYCLGZ_YCLLX", grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJDXYCLGZ_YCLLX"].ToString().Trim()); entity.Param.Add("XLXSBJDXYCLGZ_YCLGZ", grdContentGrid.DataKeys[grdContentGrid.SelectedIndex]["XLXSBJDXYCLGZ_YCLGZ"].ToString().Trim()); base.BeforeDelete(db, ref ActionIsDone); } protected override bool Master_AfterDeleteAction(object sender, EventArgs e) { if (!base.Master_AfterDeleteAction(sender, e)) { return false; } entity.EntityTable.QuerySelSql = GetQuerySelSQL().ToString(); entity.GridDataBind(grdContentGrid, tSession); grdContentGrid.SelectedIndex = -1; return true; } private StringBuilder GetQuerySelSQL() { StringBuilder strSQL = new StringBuilder(); strSQL.AppendLine("select XLXSBJDXYCLGZ_YCLLX, XLXSBJDXYCLGZ_YCLGZ, XLXSBJDXYCLGZ_TYBZ, XLXSBJDXYCLGZ_TYRQ, XLXSBJDXYCLGZ_BZ, "); strSQL.AppendLine(" XLXSBJDXYCLGZ_WHR, XLXSBJDXYCLGZ_WHRID, XLXSBJDXYCLGZ_WHSJ, XLXSBJDXYCLGZ_ZXSX "); strSQL.AppendLine(" from XLXSBJDXYCLGZ "); strSQL.AppendLine(" where 1=1 "); if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("YCLLX").Value.Trim())) { strSQL.AppendLine(" and XLXSBJDXYCLGZ_YCLLX like :pYCLLX "); entity.Param.Add("pYCLLX", "%" + CurQueryEntity.FieldByName("YCLLX").Value.Trim() + "%"); } if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("YCLGZ").Value.Trim())) { strSQL.AppendLine(" and XLXSBJDXYCLGZ_YCLGZ like :pYCLGZ "); entity.Param.Add("pYCLGZ", "%" + CurQueryEntity.FieldByName("YCLGZ").Value.Trim() + "%"); } strSQL.AppendLine(" order by XLXSBJDXYCLGZ_YCLLX, XLXSBJDXYCLGZ_ZXSX "); return strSQL; } } }