private void 旧件处理_Load(object sender, EventArgs e) { m_rukuku mr = new m_rukuku(); Dt = mr.Select("and id =" + id); int toHeig = 50; string sNumm = string.Format("待处理[{0}] 已处理[{1}] 总量[{2}]", oldNum, Dt[0].已处理, Dt[0].数量); Skincss.AddLable(this, " > 单据编号:" + Dt[0].CODE + "[" + Dt[0].机床码 + "]" + "[" + Dt[0].质保 + "]", "10/" + toHeig, "426/30", "#100100100", 10, "", 0, -1, false, "#240240240"); toHeig += 40; Skincss.AddLable(this, " > 物料名称:" + Dt[0].物料 + "[" + Dt[0].借用类型 + "]", "10/" + toHeig, "426/30", "#100100100", 10, "", 0, -1, false, "#240240240"); toHeig += 40; Skincss.AddLable(this, " > " + sNumm, "10/" + toHeig, "426/30", "#100100100", 10, "", 0, -1, false, "#240240240"); toHeig = 170; Label Cg = Skincss.AddLable(this, "供应商维修", "70/" + toHeig, "90/30", "#255255255", 10, "", 1, -1, false, Skin.upBColor); Cg.Click += Cg_Click; Label Cj = Skincss.AddLable(this, "车间维修", "180/" + toHeig, "90/30", "#255255255", 10, "", 1, -1, false, Skin.upBColor); Cj.Click += Cj_Click; Label Sh = Skincss.AddLable(this, "售后维修", "286/" + toHeig, "90/30", "#255255255", 10, "", 1, -1, false, Skin.upBColor); Sh.Click += Sh_Click; Label Bf = Skincss.AddLable(this, "报废", "10/" + toHeig, "50/30", "#255255255", 10, "", 1, -1, false, Skin.upRcolor); Bf.Click += Bf_Click; Label Hg = Skincss.AddLable(this, "合格", "385/" + toHeig, "50/30", "#255255255", 10, "", 1, -1, false, Skin.upYcolor); Hg.Click += Hg_Click; toHeig += 40; Skincss.AddLable(this, "处理量", "10/" + toHeig, "300/30", "#100100100"); toHeig += 30; Tbnum = Skincss.AddTxt(this, "Tbnum", (Dt[0].数量 - Dt[0].已处理).ToString(), "10/" + toHeig, "426/25", Skin.upRcolor, 14); Tbnum.TextChanged += Tbnum_TextChanged; toHeig += 30; Skincss.AddLable(this, "处理依据", "10/" + toHeig, "300/30", "#100100100"); toHeig += 30; Tbinfo = Skincss.AddTxt(this, "Tbinfo", "无", "10/" + toHeig, "426/120", "#100100100", 10, -1, true); toHeig += Tbinfo.Height + 10; //日期处理 Jhtime_lab = Skincss.AddLable(this, "要求完成时间:", "10/" + toHeig, "120/30", "#100100100"); Jhtime = Skincss.AddTxt(this, "Jhtime", "", "130/" + toHeig, "200/24", "#100100100", 12, -1, true); BigMli = new IMrili(Jhtime, "0/40", Jhtime.Width + "/180", DateTime.Now, 8, false, 1, null, GetTexinfo); info = Skincss.AddLable(this, " ", "10/" + (Height - 100), "426/30", "#100100100", 10, "", 0); Btn = Skincss.AddLable(this, "取消", "10/" + (Height - 60), "426/50", "#100100100", 10, "", 1, -1, false, "#220220220"); Btn.Click += Btn_Click; }
/// <summary> /// 接收或是处理 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Bbt_Click(object sender, EventArgs e) { Label bt = sender as Label; if (Sx == "接收") { bt.Enabled = false; BILLnouse2 bi = new BILLnouse2(); bi.FREENUM5 = 1; bi.Updata(" and id=" + id); //mc.Update接收维修信息(id); string getcode = IData.GetCode("m_rukuku", "NB"); m_rukuku Mr = new m_rukuku { CODE = getcode, 关联ID = id, 关联号 = (string)Ifun.IsDBnull(Dg.SelectedRows[0].Cells["code"].Value.ToString(), ""), 维修单 = Dg.SelectedRows[0].Cells["paytype"].Value.ToString(), 录单人 = UserInfo.UName, 录单时间 = SysTime.GetTime, 借用类型 = Ifun.IsDBnull(Dg.SelectedRows[0].Cells["freestr7"].Value.ToString(), "无借用").ToString(), 编号 = Dg.SelectedRows[0].Cells["materialCODE"].Value.ToString(), 物料 = Dg.SelectedRows[0].Cells["materialNAME"].Value.ToString(), 物料型号 = Dg.SelectedRows[0].Cells["specs"].Value.ToString(), 单位 = Dg.SelectedRows[0].Cells["UNITNAME"].Value.ToString(), 质保 = WXB, 数量 = decimal.Parse(Dg.SelectedRows[0].Cells["QUANTITY"].Value.ToString()), 仓库 = "维修库", 客户 = KF, 机床码 = JC, 维修人 = WXM }; Mr.Insert(); Dg.Rows.RemoveAt(Dg.SelectedRows[0].Index); } if (Sx == "评判") { decimal A = decimal.Parse(Dg.SelectedRows[0].Cells["数量"].Value.ToString()); decimal B = Dg.SelectedRows[0].Cells["已处理"].Value.ToString() == "" ? 0 : decimal.Parse(Dg.SelectedRows[0].Cells["已处理"].Value.ToString()); if (A - B > 0) { num = A - B; 旧件处理 Js = new 旧件处理(id, num, KF); if (Js.doBack) { Lb1_Click(null, null); } } else { Msg err = new Msg(3, "单据数量已处理完!"); } } }
/// <summary> /// 维修单 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Lb1_Click(object sender, EventArgs e) { SetButton(lb1, "评判"); m_rukuku mr = new m_rukuku(); Dg.数据表名称 = "m_rukuku_内部维修_评判"; List <m_rukuku> ts = mr.Select("and isnull(is完成,0)=0 and 数量!=已处理 "); var m = from r in ts select r.维修单; Dg.ShowList(ts); GetWxinfo(m); }
/// <summary> /// 历史单据 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Lb2_Click(object sender, EventArgs e) { SetButton(lb2, "历史"); m_rukuku mr = new m_rukuku(); Dg.数据表名称 = "m_rukuku_内部维修_评判"; List <m_rukuku> ts = mr.Select("and is完成=4 order by id desc"); var m = from r in ts select r.维修单; Dg.ShowList(ts); GetWxinfo(m); }
private void 领取物料_Load(object sender, EventArgs e) { //模拟数据 // Iscode = "CL001254"; m_rukukuinfo Tp = new m_rukukuinfo(); m_rukuku Ftp = new m_rukuku(); List <m_rukuku> fmrt = Ftp.Select(" and id =" + Tp.Select(" and id =" + id)[0].FID); GetSqllist = "and billtype = '旧件维修' and freestr9 ='" + Iscode + "' and referCode ='" + fmrt[0].CODE + "' and Paytype ='" + fmrt[0].维修单 + "' and introducer = '" + UserInfo.UName + "' "; Label tmep = new Label(); //-----领料清单------ tmep = Skincss.AddLable(this, "领料清单", "10/45", "300/30", "#050050050"); mMt = new MTable { 分页 = false, 皮肤设置 = MTable.Skinlist.默认皮肤, 数据表名称 = "m_rukuku_内部维修_领料清单", Width = Width - 20, Left = 10, Top = 85, Height = 195, Parent = this, ReadOnly = true }; mMt.ShowList(bi.Select(GetSqllist)); string sql = "WITH locs (id,materialCODE,completecode )AS( "; sql += "select id, materialCODE, completecode from peiLiaodanku where completecode = '" + Iscode + "' UNION ALL SELECT p.ID, p.materialCODE, p.completecode FROM peiLiaodanku p inner join locs as c on c.materialCODE = p.completecode ) "; sql += " select * from peiLiaodanku where ID in(select id from locs) OPTION(MAXRECURSION 0)"; WBLL wBLL = new WBLL(); wBLL.Start(BLL.数据库.默认数据库, BLL.数据类型.Table, sql); wBLL.WBLL_BgWorker.RunWorkerCompleted += WBLL_BgWorker_RunWorkerCompleted; // DataTable cdd = (DataTable)BLL.SqltoView(); //-------选料清单------ tmep = Skincss.AddLable(this, "选料清单", "10/290", "300/30", "#050050050"); Mt = new MTable { 分页 = true, 皮肤设置 = MTable.Skinlist.默认皮肤, 每页数量 = 200, 数据表名称 = "m_rukuku_内部维修_选料清单", Width = Width - 20, Name = "m_rukuku_内部维修_选料清单", Left = 10, Top = 330, Height = 300, Parent = this, ReadOnly = true }; // Label lld = Skincss.AddLable(this, "生成领料单", "10/650", "180/30", "#255255255", 10, "", 1, -1, false, Skin.upBColor); lld.Click += Lld_Click; }
private void 物料判定_Load(object sender, EventArgs e) { m_rukukuinfo mr = new m_rukukuinfo(); Dt = mr.Select("and id =" + id); int toHeig = 50; Is合格 = Dt[0].终判类型; Is借用 = Dt[0].借用类型; Is客户 = Dt[0].处罚部门; m_rukuku bn = new m_rukuku(); List <m_rukuku> bs = bn.Select("and id=" + Dt[0].FID); Is保修 = bs[0].质保; string sNumm = string.Format("{0}/数量:{2}/{1}/{3}", Dt[0].物料, Is借用, Dt[0].数量, Is保修); if (Is借用 == "新件维修") { sNumm = string.Format("{0}/数量:{2}/{1}", Dt[0].物料, Is借用, Dt[0].数量); } string zRumm = string.Format("由{0}-{1}维修 维修结果为:{2}", Is客户, Dt[0].责任人, Is合格); string fNumm = string.Format("处罚部门[{0}] 处罚人[{1}] 费用[{2}]", Dt[0].处罚部门, Dt[0].处罚人, Dt[0].处罚费用); if (Is客户 == "客户问题") { zRumm = string.Format("由{0} 结果为:{1}", Is客户, Is合格); } Skincss.AddLable(this, " > " + sNumm, "10/" + toHeig, (Width - 20) + "/30", "#100100100", 10, "", 0, -1, false, "#240240240"); toHeig += 40; Skincss.AddLable(this, " > " + zRumm, "10/" + toHeig, (Width - 20) + "/30", "#100100100", 10, "", 0, -1, false, "#240240240"); if (Dt[0].处罚部门 != null) { toHeig += 40; Skincss.AddLable(this, " > " + fNumm, "10/" + toHeig, (Width - 20) + "/30", "#100100100", 10, "", 0, -1, false, "#240240240"); } toHeig += 40; info = Skincss.AddLable(this, "", "10/" + toHeig, (Width - 20) + "/30", "#100100100", 10, "", 0, -1, false, "#240240240"); //----------智能提示------------------ if (Is合格 == "合格") { string jRumm = "当前物料无借用,请安排人员实施安装!"; toHeig += 40; Label SetWl = Skincss.AddLable(this, " > " + jRumm, "10/" + toHeig, (Width - 20) + "/30", Skin.upRcolor, 10, "", 0, -1, false, "#240240240"); SetWl.Name = "借用拆回"; if (Is借用 == "客户借用") { Getck = ReadNum(); decimal GetSq = ReadSenqing(); if (Getck == 0) { if (GetSq > 0) { SetWl.Text = "已经推送消息给仓库,待仓库入库"; SetWl.Click += SetWl_Click; } else { SetWl.Text = "当前物料客户借用,请换回物料![点击执行]"; SetWl.Click += SetWl_Click; } } else { SetWl.Text = "维修人员已换回数量:[" + Getck + "]"; } } } //----------智能提示------------------ Label titile = new Label(); toHeig += 40; Label Bf = new Label(); if (Is合格 == "报废") { if (Is借用 == "客户借用") { Bf = Skincss.AddLable(this, "借用件留用", "10/" + toHeig, "120/30", "#100100100", 10, "", 1, -1, false, "#240240240"); Bf.Click += Bf_Click; } else { Bf = Skincss.AddLable(this, "新物件领用", "10/" + toHeig, "120/30", "#100100100", 10, "", 1, -1, false, "#240240240"); Bf.Click += Bf_Click1; } } if (Is客户 == "客户问题" || Is保修 == "保外") { if (Is借用 != "新件维修") { MF = Skincss.AddLable(this, "申请免费", (Width - 180) + "/" + toHeig, "80/30", "#100100100", 10, "", 1, -1, false, "#240240240"); MF.Click += MF_Click; YH = Skincss.AddLable(this, "申请优惠", (Width - 90) + "/" + toHeig, "80/30", "#100100100", 10, "", 1, -1, false, "#240240240"); YH.Click += MF_Click; } //YH.Click += Cf_Click; } toHeig += 40; Skincss.AddLable(this, "服务费:", "10/" + toHeig, "140/30", "#100100100"); toHeig += 40; TextBox box = Skincss.AddTxt(this, "Setinfo", "0", "10/" + toHeig, (Width - 20) + "/30", Skin.upBColor, 18); box.TextChanged += FYBox_TextChanged; toHeig += 40; titile = Skincss.AddLable(this, "维修总结", "10/" + toHeig, "140/30", "#100100100"); toHeig += 40; Setinfo = Skincss.AddTxt(this, "Setinfo", "无", "10/" + toHeig, (Width - 20) + "/140", "#100100100", 10, -1, true); toHeig += 100; //------------------------------ // 给出处理方案 //------------------------------ toHeig += 40; makeSay = Skincss.AddLable(this, BackInfo(), "10/" + toHeig, "140/30", Skin.upBColor); makeSay.Click += MakeSay_Click; Height += toHeig + 60; Btn = Skincss.AddLable(this, "保 存", "10/" + (Height - 60), (Width - 20) + "/50", "#255255255", 10, "", 1, -1, false, Skin.upBColor); Btn.Click += Btn_Click; if (Is保修 == "保内" && Is合格 == "报废" && Is借用 == "客户借用") { Bf_Click(Bf, null); Bf.Click -= Bf_Click; } }
private void Btn_Click(object sender, EventArgs e) { //---------------------------- Label Tb = sender as Label; if (Is合格 == "合格" && Is借用 == "客户借用" && Is留用 == false) { if (Dt[0].数量 > Getck) { Msg Err = new Msg(3, "未换回客户借用件!请先处理!"); return; } } Tb.Enabled = false; if (Setinfo.Text.Trim() == "") { Msg cc = new Msg(3, "没有维修信息总结!单据无法继续"); Tb.Enabled = true; return; } //------------ //--获取所有记录信息 string SetTo = info.Text + " 优惠金额:" + Wxtime + ",";//发送给配件销售人员 string Zpsx = SetTo; Zpsx += makeSay.Text + ","; if (Is留用) { Zpsx += UserInfo.UName + "选择借用件留用,"; } if (Is免费) { Zpsx += UserInfo.UName + "选择申请免费,"; } if (Is新件) { Zpsx += UserInfo.UName + "选择新物件领用,"; } // ------物料流向---------- //第一情况: if (Is合格 == "合格" && Is借用 == "客户借用") { //Add("借用件换回", Zpsx,true,false); //Zpsx += "合格+客户借用--无需出库"; Add("维修零件结算", Zpsx, false, true, WxFy); #region 除 //RukuKu Rk = new RukuKu(); //Rk.MATERIALCODE = Dt[0].编号; //Rk.REMARK = ""; //Rk.BOXES = 0; //Rk.GUSERDEF3 = ""; //Rk.PRICE = 0; //Rk.AMOUNT = 0; //Rk.PAYEDAMOUNT = 0; //Rk.PAYTYPE =Dt[0].维修单; //Rk.INTRODUCERDATE = SysTime.GetTime; //Rk.BILLTYPE = "借用件换回"; //Rk.ORIGPRICE = 0; //Rk.REFERCODE = Dt[0].维修单; //Rk.TAXRATE = 0; //Rk.BILLNOTE = Zpsx; //Rk.SPECS = Dt[0].物料型号; //Rk.KILLBILLQTY = 0; //Rk.GUSERDEF5 = ""; //Rk.BILLDATE = SysTime.GetTime; //Rk.STORAGEWHERE = ""; //Rk.UNITNAME = Dt[0].单位; //Rk.QUANTITY = Dt[0].数量; //Rk.REFERQTY = 0; //Rk.BATCHNUMBER = Dt[0].维修单; //Rk.GUSERDEF1 = ""; //Rk.CODE = Mcode; //Rk.CLIENT = Kf; //Rk.TAXTYPE = ""; //Rk.BILLMAN = UserInfo.UName; //Rk.AUDITING = "系统自动审核"; //Rk.STORAGENAME = "原材料库"; //Rk.DISCOUNT = 100; //Rk.GUSERDEF2 = ""; //Rk.GUSERDEF4 = ""; //Rk.MAXVALUE = ""; //Rk.FREESTR10 = ","+ Dt[0].维修单; //Rk.Insert(); #endregion } if (Is合格 == "合格" && Is借用 != "客户借用") { Zpsx += "维修完成+无借用--无需出库"; Add("维修零件结算", Zpsx, false, true, WxFy); } if (Is合格 == "合格" && Is借用 == "新件维修") { // Msg Err = new Msg(3, "vvvvvvvvvvvvvvvvvv"); //Zpsx += "维修完成+无借用--无需出库"; //Add("维修零件结算", Zpsx, false, true, WxFy); } if (Is合格 == "报废" && Is借用 == "客户借用") { string Temp = string.Empty; Temp = Zpsx; Zpsx = Temp + "报废+客户借用--无需出库"; Add("维修零件结算", Zpsx, true, true, WxFy); Zpsx = Temp + "报废+客户借用--报废件入库"; Add("售后返厂报废", Zpsx, true, false, 0); } if (Is合格 == "报废" && Is借用 != "客户借用" && Is借用 != "新件维修") { Zpsx += "报废+客户借用--必须出库"; Add("维修零件结算", Zpsx, true, true, WxFy); } if (Is合格 == "报废" && Is借用 == "新件维修") { Add("新件维修", Zpsx, true, false, WxFy); } if (Is新件) { Add("售后服务领料", Zpsx, true, false, WxFy); } m_rukukuinfo mp = new m_rukukuinfo { 物判内容 = Zpsx, 物判总结 = Setinfo.Text, 物判费用 = WxFy, IS完成 = 4 }; mp.Updata("and id=" + id); mp.Reset_m_rukukuinfo(); //---修改单据状态-------- m_rukukuinfo mc = new m_rukukuinfo(); m_rukuku mx = new m_rukuku(); //查询合计数: decimal SumUpNum = mc.Select("and is完成=4 and fid=" + Dt[0].FID).Sum(r => r.数量); decimal SumFNum = mx.Select("and id=" + Dt[0].FID).Sum(r => r.数量); // Msg A = new Msg(3, "分单总量:" + SumUpNum + "/ 总单数量:" + SumFNum); if (SumUpNum == SumFNum) { mx.Reset_m_rukuku(); mx.IS完成 = 4; mx.Updata("and id=" + Dt[0].FID); } //m_rukuku mx = new m_rukuku //{ // IS完成 = 4 //}; //mx.Updata("and id=" + Dt[0].FID); //------------------- //------------------------- doBack = true; Close(); }
private void Btn_Click(object sender, EventArgs e) { Label btnn = sender as Label; if (btnn.Text == "取消") { doBack = false; Close(); } if (Jhtime.Text == "") { Msg Er = new Msg(3, "请选择(要求完成时间)"); return; } if (Tbinfo.Text == "") { Msg Er = new Msg(3, "请输入(处理依据)"); return; } if (Wxman == "") { Msg Er = new Msg(3, "请选择(责任人)"); return; } btnn.Text = "正在保存数据中..."; btnn.Enabled = false; //拆单逻辑 for (int i = 1; i <= num; i++) { //保存逻辑 m_rukukuinfo minfo = new m_rukukuinfo { FID = id, 物料 = Dt[0].物料, 物料型号 = Ifun.IsDBnull(Dt[0].物料型号, " ").ToString(), 编号 = Dt[0].编号, 单位 = Dt[0].单位, 借用类型 = Ifun.IsDBnull(Dt[0].借用类型, "无借用").ToString(), 维修类型 = typ, 预警时间 = DateTime.Parse(Jhtime.Text), 责任部门 = Ctyp, 责任人 = Wxman, 处罚部门 = CfBmn, 处罚人 = Cfmen, 判断时间 = SysTime.GetTime, 处理意见 = Tbinfo.Text.Trim(), 数量 = 1, 维修单 = Dt[0].维修单, IS完成 = isWc, 要求时间 = Wxtime, }; if (typ == "报废" || typ == "合格") { minfo.终判类型 = typ; minfo.过程信息 = Tbinfo.Text.Trim(); } minfo.Insert(); } doBack = true; //更新原数据条 m_rukuku mr = new m_rukuku { 已处理 = Dt[0].已处理 + num }; mr.Updata("and id=" + id); Close(); }
private void Btn_Click(object sender, EventArgs e) { (sender as Label).Text = "正在保存中..."; (sender as Label).Enabled = false; m_rukukuinfo Tp = new m_rukukuinfo(); m_rukuku Ftp = new m_rukuku(); List <m_rukukuinfo> mrt = Tp.Select(" and id =" + id); List <m_rukuku> fmrt = Ftp.Select(" and id =" + mrt[0].FID); string Iscode = IData.GetCode("BILLnouse2", "YL"); for (int i = 0; i < Mt.RowCount; i++) { BILLnouse2 bl = new BILLnouse2 { CODE = Iscode, BILLTYPE = "旧件维修", BILLDATE = DateTime.Now.Date, CLIENT = Kf, TAXRATE = 1, PAYTYPE = mrt[0].维修单, BILLMAN = UserInfo.UName, BILLNOTE = "", STORAGENAME = "", STORAGEWHERE = "", AUDITING = "", INTRODUCER = UserInfo.UName, INTRODUCERDATE = DateTime.Now, FINISHDATE = DateTime.Now, MATERIALCODE = Mt.Rows[i].Cells["物料编码"].Value.ToString(), MATERIALNAME = Mt.Rows[i].Cells["物料名称"].Value.ToString(), SPECS = Mt.Rows[i].Cells["物料型号"].Value.ToString(), UNITNAME = Mt.Rows[i].Cells["单位"].Value.ToString(), QUANTITY = decimal.Parse(Mt.Rows[i].Cells["数量"].Value.ToString()), ORIGPRICE = 0, PRICE = 0, AMOUNT = 0, KILLBILLQTY = 0, REFERQTY = -1, PAYEDAMOUNT = 0, BATCHNUMBER = "", REFERCODE = fmrt[0].CODE, DISCOUNT = 100, BOXES = 0, GUSERDEF1 = "", GUSERDEF4 = "", GUSERDEF5 = "", MAXVALUE = "", FREESTR7 = "", FREESTR8 = mrt[0].维修单, FREESTR9 = Fcode, FREESTR10 = "," + mrt[0].维修单 + "," + fmrt[0].CODE, 引用单号2 = mrt[0].维修单 }; bl.Insert(); } ResData(); Close(); }