| | |
| | | flwtype = data.Rows[0]["FLWTYPE"].ToString();//获取工序属性 |
| | | isbott = data.Rows[0]["ISBOTT"].ToString();//首道工序 |
| | | isend = data.Rows[0]["ISEND"].ToString();//末道工序 |
| | | seq = data.Rows[0]["SEQ"].ToString();//工序序号 |
| | | rt.seq = data.Rows[0]["SEQ"].ToString();//工序序号 |
| | | |
| | | //获取当前工序下道工序 |
| | | sql = @"select A.isbott,A.isend,T.stepcode,T.stepname from TK_Wrk_Step A |
| | | left join TStep T on A.step_code=T.stepcode |
| | | where A.wo_code=ordercode and A.step_code=@stepcode and A.seq=@seq+1 "; |
| | | where A.wo_code=@ordercode and A.seq=@seq+1 "; |
| | | dynamicParams.Add("@ordercode", ordercode); |
| | | dynamicParams.Add("@stepcode", stepcode); |
| | | dynamicParams.Add("@seq", decimal.Parse(data.Rows[0]["SEQ"].ToString())); |
| | | var dt = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (dt.Rows.Count > 0) //有下道工序 |
| | | { |
| | | rt.nextstepcode = dt.Rows[0]["STEPCODE"].ToString();//下道工序编码 |
| | | rt.nextstepcode = dt.Rows[0]["STEPNAME"].ToString();//下道工序名称 |
| | | rt.nextstepname = dt.Rows[0]["STEPNAME"].ToString();//下道工序名称 |
| | | } |
| | | if (isend == "Y") //当前工序是末道工序 |
| | | { |
| | | rt.nextstepcode = data.Rows[0]["STEPCODE"].ToString();//当前工序编码 |
| | | rt.nextstepcode = data.Rows[0]["STEPNAME"].ToString();//当前工序名称 |
| | | rt.nextstepcode = "";//data.Rows[0]["STEPCODE"].ToString();//当前工序编码 |
| | | rt.nextstepname = "";// data.Rows[0]["STEPNAME"].ToString();//当前工序名称 |
| | | } |
| | | } |
| | | else |
| | |
| | | var data1 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data1.Rows.Count > 0) |
| | | { |
| | | string good_qty = data1.Rows[0]["GOOD_QTY"].ToString();//报工数量 |
| | | string ng_qty = data1.Rows[0]["NG_QTY"].ToString();// 不良数量 |
| | | decimal kbqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()) - (decimal.Parse(good_qty) + decimal.Parse(ng_qty)); //剩余可报工数量=任务数量-(报工数量+不良数量) |
| | | decimal good_qty = data1.AsEnumerable().Select(d => d.Field<decimal>("GOOD_QTY")).Sum(); //报工总数量 |
| | | decimal ng_qty = data1.AsEnumerable().Select(d => d.Field<decimal>("NG_QTY")).Sum(); //不良数量 |
| | | decimal bad_qty = data1.AsEnumerable().Select(d => d.Field<decimal>("BAD_QTY")).Sum(); //报废数量 |
| | | |
| | | decimal kbqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()) - (good_qty + ng_qty+bad_qty); //剩余可报工数量=任务数量-(报工数量+不良数量+报废数量) |
| | | if (kbqty <= 0)//无可报工数量 |
| | | { |
| | | mes.code = "300"; |
| | |
| | | { |
| | | rt.planqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()); //任务数量 |
| | | rt.startqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()); //开工数量=任务数量 |
| | | rt.noreportqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()) - kbqty; //未报数量=任务数量-已报数量 |
| | | rt.reportqty = decimal.Parse(good_qty) + decimal.Parse(ng_qty); //已报数量=报工数量-不良数量 |
| | | rt.noreportqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()) - good_qty- ng_qty-bad_qty; //未报数量=任务数量-已报数量-不良数量-报废数量 |
| | | rt.reportqty = good_qty + ng_qty+bad_qty; //已报数量=报工数量+不良数量+报废数量 |
| | | mes.code = "200"; |
| | | mes.count = 1; |
| | | mes.Message = "弹窗报工界面!"; |
| | |
| | | sql = @"select A.step_code,S.stepname,S.flwtype from TFlw_Rtdt A |
| | | left join TK_Wrk_Man M on A.rout_code=M.route_code |
| | | left join TStep S on A.step_code=S.stepcode |
| | | where M.wo_code=@wocode and A.step_code=@stepcode and A.seq=@seq-1"; |
| | | where M.wo_code=@wocode and A.seq=@seq-1"; |
| | | dynamicParams.Add("@wocode", data.Rows[0]["WO_CODE"].ToString()); |
| | | dynamicParams.Add("@stepcode", data.Rows[0]["STEPCODE"].ToString()); |
| | | dynamicParams.Add("@seq", decimal.Parse(data.Rows[0]["SEQ"].ToString())); |
| | | var data0 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data0.Rows.Count > 0) |
| | |
| | | var data2 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data2.Rows.Count > 0) //有报工记录 |
| | | { |
| | | if (data1.Rows[0]["FLWTYPE"].ToString() == "Z") //自制工序 |
| | | if (data0.Rows[0]["FLWTYPE"].ToString() == "Z") //自制工序 |
| | | { |
| | | //查找上到工序报工记录 |
| | | sql = @"select * from TK_Wrk_Record where wo_code=@ordercode and step_code=@stepcode and style='B'"; |
| | | dynamicParams.Add("@ordercode", ordercode); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEPNAME"].ToString()); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEP_CODE"].ToString()); |
| | | var data3 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data3.Rows.Count > 0) //上道有报工 |
| | | { |
| | | string sgood_qty = data3.Rows[0]["GOOD_QTY"].ToString();//上道报工数量 |
| | | string good_qty = data2.Rows[0]["GOOD_QTY"].ToString();//本道报工数量 |
| | | string ng_qty = data2.Rows[0]["NG_QTY"].ToString();// 本道不良数量 |
| | | decimal sybqty = decimal.Parse(sgood_qty) - decimal.Parse(good_qty) - decimal.Parse(ng_qty);//本道剩余可报数量=上道报工数量-本道报工数量-本道不良数量 |
| | | decimal sgood_qty = data3.AsEnumerable().Select(d => d.Field<decimal>("GOOD_QTY")).Sum(); //上道报工总数量 |
| | | decimal good_qty = data2.AsEnumerable().Select(d => d.Field<decimal>("GOOD_QTY")).Sum(); //本道报工总数量 |
| | | decimal ng_qty = data2.AsEnumerable().Select(d => d.Field<decimal>("NG_QTY")).Sum(); //本道不良总数量 |
| | | decimal bad_qty = data2.AsEnumerable().Select(d => d.Field<decimal>("BAD_QTY")).Sum(); //本道总报废数量 |
| | | |
| | | decimal sybqty = sgood_qty - good_qty - ng_qty-bad_qty;//本道剩余可报数量=上道报工总数量-本道报工总数量-本道不良总数量-本道报废总数 |
| | | if (sybqty <= 0) |
| | | { |
| | | mes.code = "300"; |
| | |
| | | rt.planqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()); //任务数量 |
| | | rt.startqty = sybqty; //开工数量=本道剩余可报数量 |
| | | rt.noreportqty = sybqty; //未报数量=本道剩余可报数量 |
| | | rt.reportqty = 0; //已报数量 |
| | | rt.reportqty = good_qty + ng_qty+bad_qty; //已报数量=本道报工总数量+本道报工总不良+本道报废总数 |
| | | mes.code = "200"; |
| | | mes.count = 1; |
| | | mes.Message = "弹窗报工界面!"; |
| | |
| | | return mes; |
| | | } |
| | | } |
| | | if (data1.Rows[0]["FLWTYPE"].ToString() == "W") //委外工序 |
| | | if (data0.Rows[0]["FLWTYPE"].ToString() == "W") //委外工序 |
| | | { |
| | | //查找上到工序收料记录 |
| | | sql = @"select * from TK_Wrk_OutRecord where wo_code=@ordercode and step_code=@stepcode and style='S'"; |
| | | dynamicParams.Add("@ordercode", ordercode); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEPNAME"].ToString()); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEP_CODE"].ToString()); |
| | | var data3 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data3.Rows.Count > 0) //上道有收料 |
| | | { |
| | | decimal sqty = decimal.Parse(data3.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("SQTY"))).Sum().ToString());//上道收料数量 |
| | | string good_qty = data2.Rows[0]["GOOD_QTY"].ToString();//本道报工数量 |
| | | string ng_qty = data2.Rows[0]["NG_QTY"].ToString();// 本道不良数量 |
| | | decimal sybqty = sqty - decimal.Parse(good_qty) - decimal.Parse(ng_qty);//本道剩余可报数量=上道收料数量-本道报工数量-本道不良数量 |
| | | decimal sqty = data3.AsEnumerable().Select(d => d.Field<decimal>("SQTY")).Sum(); //上道收料数量 |
| | | decimal good_qty = data2.AsEnumerable().Select(d => d.Field<decimal>("GOOD_QTY")).Sum(); //本道报工总数量 |
| | | decimal ng_qty = data2.AsEnumerable().Select(d => d.Field<decimal>("NG_QTY")).Sum(); //本道不良总数量 |
| | | decimal bad_qty = data2.AsEnumerable().Select(d => d.Field<decimal>("BAD_QTY")).Sum(); //本道总报废数量 |
| | | |
| | | decimal sybqty = sqty - good_qty - ng_qty-bad_qty;//本道剩余可报数量=上道收料总数量-本道报工总数量-本道不良总数量-本道总报废数 |
| | | if (sybqty <= 0) |
| | | { |
| | | mes.code = "300"; |
| | |
| | | rt.planqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()); //任务数量 |
| | | rt.startqty = sybqty; //开工数量=本道剩余可报数量 |
| | | rt.noreportqty = sybqty; //未报数量=本道剩余可报数量 |
| | | rt.reportqty = 0; //已报数量 |
| | | rt.reportqty = good_qty + ng_qty+bad_qty; //已报数量=本道报工总数量+本道报工总不良+本道总报废数 |
| | | mes.code = "200"; |
| | | mes.count = 1; |
| | | mes.Message = "弹窗报工界面!"; |
| | |
| | | } |
| | | else //本道无报工记录 |
| | | { |
| | | if (data1.Rows[0]["FLWTYPE"].ToString() == "Z") //自制工序 |
| | | if (data0.Rows[0]["FLWTYPE"].ToString() == "Z") //自制工序 |
| | | { |
| | | //查找上到工序报工记录 |
| | | sql = @"select * from TK_Wrk_Record where wo_code=@ordercode and step_code=@stepcode and style='B'"; |
| | | dynamicParams.Add("@ordercode", ordercode); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEPNAME"].ToString()); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEP_CODE"].ToString()); |
| | | var data3 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data3.Rows.Count > 0) //上道有报工 |
| | | { |
| | | string sgood_qty = data3.Rows[0]["GOOD_QTY"].ToString();//上道报工数量 |
| | | decimal sybqty = decimal.Parse(sgood_qty); //本道剩余可报数量=上道报工数量 |
| | | decimal sgood_qty = data3.AsEnumerable().Select(d => d.Field<decimal>("GOOD_QTY")).Sum(); //本道报工总数量 |
| | | decimal sybqty = sgood_qty; //本道剩余可报数量=上道报工数量 |
| | | |
| | | rt.planqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()); //任务数量 |
| | | rt.startqty = sybqty; //开工数量=本道剩余可报数量 |
| | |
| | | return mes; |
| | | } |
| | | } |
| | | if (data1.Rows[0]["FLWTYPE"].ToString() == "W") //委外工序 |
| | | if (data0.Rows[0]["FLWTYPE"].ToString() == "W") //委外工序 |
| | | { |
| | | //查找上到工序收料记录 |
| | | sql = @"select * from TK_Wrk_OutRecord where wo_code=@ordercode and step_code=@stepcode and style='S'"; |
| | | dynamicParams.Add("@ordercode", ordercode); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEPNAME"].ToString()); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEP_CODE"].ToString()); |
| | | var data3 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data3.Rows.Count > 0) //上道有收料 |
| | | { |
| | | decimal sqty = decimal.Parse(data3.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("SQTY"))).Sum().ToString());//上道收料数量 |
| | | decimal sybqty = sqty; //本道剩余可报数量=上道收料数量 |
| | | decimal sqty = data3.AsEnumerable().Select(d =>d.Field<decimal>("SQTY")).Sum();//上道收料数量 |
| | | decimal sybqty = sqty; //本道剩余可收数量=上道收料数量 |
| | | |
| | | rt.planqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()); //任务数量 |
| | | rt.startqty = sybqty; //开工数量=本道剩余可报数量 |
| | | rt.noreportqty = sybqty; //未报数量=本道剩余可报数量 |
| | | rt.startqty = sybqty; //开工数量=本道剩余可收数量 |
| | | rt.noreportqty = sybqty; //未报数量=本道剩余可收数量 |
| | | rt.reportqty = 0; //已报数量 |
| | | mes.code = "200"; |
| | | mes.count = 1; |
| | |
| | | } |
| | | else //无开工记录 |
| | | { |
| | | if (data1.Rows[0]["FLWTYPE"].ToString() == "Z") //自制工序 |
| | | if (data0.Rows[0]["FLWTYPE"].ToString() == "Z") //自制工序 |
| | | { |
| | | //查找上到工序报工记录 |
| | | sql = @"select * from TK_Wrk_Record where wo_code=@ordercode and step_code=@stepcode and style='B'"; |
| | | dynamicParams.Add("@ordercode", ordercode); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEPNAME"].ToString()); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEP_CODE"].ToString()); |
| | | var data2 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data2.Rows.Count > 0) //上到工序有报工 |
| | | { |
| | | string good_qty = data2.Rows[0]["GOOD_QTY"].ToString();//报工数量 |
| | | string ng_qty = data2.Rows[0]["NG_QTY"].ToString();// 不良数量 |
| | | string bad_qty = data2.Rows[0]["BAD_QTY"].ToString();// 报废数量 |
| | | |
| | | rt.planqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()); //任务数量 |
| | | rt.startqty = decimal.Parse(good_qty); //开工数量=(上一道的报工数量) |
| | |
| | | return mes; |
| | | } |
| | | } |
| | | if (data1.Rows[0]["FLWTYPE"].ToString() == "W") //委外工序 |
| | | if (data0.Rows[0]["FLWTYPE"].ToString() == "W") //委外工序 |
| | | { |
| | | //查找上道工序外协收料记录 |
| | | sql = @"select * from TK_Wrk_OutRecord where wo_code=@ordercode and step_code=@stepcode and style='S'"; |
| | | dynamicParams.Add("@ordercode", ordercode); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEPNAME"].ToString()); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEP_CODE"].ToString()); |
| | | var data2 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data2.Rows.Count > 0) //上道工序有收料 |
| | | { |
| | | decimal sqty = decimal.Parse(data2.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("SQTY"))).Sum().ToString());//收料数量 |
| | | decimal ng_qty = decimal.Parse(data2.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("NG_QTY"))).Sum().ToString());// 不良数量 |
| | | decimal sqty = data2.AsEnumerable().Select(d => d.Field<decimal>("SQTY")).Sum();//收料数量 |
| | | decimal ng_qty = data2.AsEnumerable().Select(d => d.Field<decimal>("NG_QTY")).Sum();// 不良数量 |
| | | decimal bad_qty = data2.AsEnumerable().Select(d => d.Field<decimal>("BAD_QTY")).Sum();// 报废数量 |
| | | |
| | | rt.planqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()); //任务数量 |
| | | rt.startqty = sqty; //开工数量=(上一道的收料数量) |
| | |
| | | flwtype = data.Rows[0]["FLWTYPE"].ToString();//获取工序属性 |
| | | isbott = data.Rows[0]["ISBOTT"].ToString();//首道工序 |
| | | isend = data.Rows[0]["ISEND"].ToString();//末道工序 |
| | | seq = data.Rows[0]["SEQ"].ToString();//工序序号 |
| | | rt.seq = data.Rows[0]["SEQ"].ToString();//工序序号 |
| | | |
| | | //获取当前工序下道工序 |
| | | sql = @"select A.isbott,A.isend,T.stepcode,T.stepname from TK_Wrk_Step A |
| | | left join TStep T on A.step_code=T.stepcode |
| | | where A.wo_code=ordercode and A.step_code=@stepcode and A.seq=@seq+1 "; |
| | | where A.wo_code=@ordercode and A.seq=@seq+1 "; |
| | | dynamicParams.Add("@ordercode", ordercode); |
| | | dynamicParams.Add("@stepcode", stepcode); |
| | | dynamicParams.Add("@seq", decimal.Parse(data.Rows[0]["SEQ"].ToString())); |
| | | var dt = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (dt.Rows.Count > 0) //有下道工序 |
| | | { |
| | | rt.nextstepcode = dt.Rows[0]["STEPCODE"].ToString();//下道工序编码 |
| | | rt.nextstepcode = dt.Rows[0]["STEPNAME"].ToString();//下道工序名称 |
| | | rt.nextstepname = dt.Rows[0]["STEPNAME"].ToString();//下道工序名称 |
| | | } |
| | | if (isend == "Y") //当前工序是末道工序 |
| | | { |
| | | rt.nextstepcode = data.Rows[0]["STEPCODE"].ToString();//当前工序编码 |
| | | rt.nextstepcode = data.Rows[0]["STEPNAME"].ToString();//当前工序名称 |
| | | rt.nextstepcode = "";// data.Rows[0]["STEPCODE"].ToString();//当前工序编码 |
| | | rt.nextstepname = "";// data.Rows[0]["STEPNAME"].ToString();//当前工序名称 |
| | | } |
| | | } |
| | | else |
| | | { |
| | | mes.code = "300"; |
| | | mes.count = 0; |
| | | mes.Message = "未找到当前工序的上道工序信息,请联系管理员核实!"; |
| | | mes.Message = "当前扫码工序任务不存在!"; |
| | | mes.data = null; |
| | | return mes; |
| | | } |
| | |
| | | var data0 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data0.Rows.Count > 0) //有发料记录 |
| | | { |
| | | decimal fqty = decimal.Parse(data0.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("FQTY"))).Sum().ToString());//发料数量 |
| | | decimal ng_qty = decimal.Parse(data0.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("NG_QTY"))).Sum().ToString());// 不良数量 |
| | | decimal kfqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()) - fqty - ng_qty; //剩余可发数量 |
| | | decimal fqty = data0.AsEnumerable().Select(d => d.Field<decimal>("FQTY")).Sum(); //发料数量 |
| | | decimal ng_qty =data0.AsEnumerable().Select(d => d.Field<decimal>("NG_QTY")).Sum();// 不良数量 |
| | | decimal bad_qty = data0.AsEnumerable().Select(d => d.Field<decimal>("BAD_QTY")).Sum(); //报废数量 |
| | | decimal kfqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()) - fqty - ng_qty- bad_qty; //剩余可发数量 |
| | | if (kfqty <= 0) |
| | | { |
| | | mes.code = "300"; |
| | |
| | | sql = @"select A.step_code,S.stepname,S.flwtype from TFlw_Rtdt A |
| | | left join TK_Wrk_Man M on A.rout_code=M.route_code |
| | | left join TStep S on A.step_code=S.stepcode |
| | | where M.wo_code=@wocode and A.step_code=@stepcode and A.seq=@seq-1"; |
| | | where M.wo_code=@wocode and A.seq=@seq-1"; |
| | | dynamicParams.Add("@wocode", data.Rows[0]["WO_CODE"].ToString()); |
| | | dynamicParams.Add("@stepcode", data.Rows[0]["STEPCODE"].ToString()); |
| | | dynamicParams.Add("@seq", decimal.Parse(data.Rows[0]["SEQ"].ToString())); |
| | | var data0 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data0.Rows.Count > 0) |
| | |
| | | //查找上到工序报工记录 |
| | | sql = @"select * from TK_Wrk_Record where wo_code=@ordercode and step_code=@stepcode and style='B'"; |
| | | dynamicParams.Add("@ordercode", ordercode); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEPNAME"].ToString()); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEP_CODE"].ToString()); |
| | | var data3 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data3.Rows.Count > 0) //上道有报工 |
| | | { |
| | | string sgood_qty = data3.Rows[0]["GOOD_QTY"].ToString();//上道报工数量 |
| | | decimal sqty = decimal.Parse(data1.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("FQTY"))).Sum().ToString());//本道发料数量 |
| | | decimal ng_qty = decimal.Parse(data1.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("NG_QTY"))).Sum().ToString());// 本道不良数量 |
| | | decimal sgood_qty = data3.AsEnumerable().Select(d => d.Field<decimal>("GOOD_QTY")).Sum(); //本道报工总数量 |
| | | decimal sqty = data1.AsEnumerable().Select(d => d.Field<decimal>("FQTY")).Sum();//本道发料数量 |
| | | decimal ng_qty = data1.AsEnumerable().Select(d => d.Field<decimal>("NG_QTY")).Sum();// 本道不良数量 |
| | | decimal bad_qty = data1.AsEnumerable().Select(d => d.Field<decimal>("BAD_QTY")).Sum(); //本道报废数量 |
| | | |
| | | decimal sybqty = decimal.Parse(sgood_qty) - sqty - ng_qty;//本道剩余可发数量=上道报工数量-本道发料数量-本道不良数量 |
| | | decimal sybqty =sgood_qty - sqty - ng_qty- bad_qty;//本道剩余可发数量=上道报工数量-本道发料数量-本道不良数量-本道报废数量 |
| | | if (sybqty <= 0) |
| | | { |
| | | mes.code = "300"; |
| | |
| | | { |
| | | rt.planqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()); //任务数量 |
| | | rt.noreportqty = sybqty; //未发数量=剩余可发数量 |
| | | rt.reportqty = sqty + ng_qty; //已发数量= 本道发料数量+本道不良数量 |
| | | rt.reportqty = sqty + ng_qty+bad_qty; //已发数量= 本道发料数量+本道不良数量+本道报废数量 |
| | | rt.startqty = sybqty; //收料数量=剩余可发数量 |
| | | |
| | | mes.code = "200"; |
| | |
| | | //查找上到工序收料记录 |
| | | sql = @"select * from TK_Wrk_OutRecord where wo_code=@ordercode and step_code=@stepcode and style='S'"; |
| | | dynamicParams.Add("@ordercode", ordercode); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEPNAME"].ToString()); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEP_CODE"].ToString()); |
| | | var data3 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data3.Rows.Count > 0) //上道有收料 |
| | | { |
| | | decimal ssqty = decimal.Parse(data3.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("SQTY"))).Sum().ToString());//上道收料数量 |
| | | decimal sqty = decimal.Parse(data1.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("FQTY"))).Sum().ToString());//本道发料数量 |
| | | decimal ng_qty = decimal.Parse(data1.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("NG_QTY"))).Sum().ToString());// 本道不良数量 |
| | | decimal ssqty = data3.AsEnumerable().Select(d => d.Field<decimal>("SQTY")).Sum();//上道收料数量 |
| | | decimal sqty = data1.AsEnumerable().Select(d => d.Field<decimal>("FQTY")).Sum();//本道发料数量 |
| | | decimal ng_qty = data1.AsEnumerable().Select(d => d.Field<decimal>("NG_QTY")).Sum();// 本道不良数量 |
| | | decimal bad_qty = data1.AsEnumerable().Select(d => d.Field<decimal>("BAD_QTY")).Sum(); //本道报废数量 |
| | | |
| | | decimal sybqty = ssqty - sqty - ng_qty;//本道剩余可发数量=上道收料数量-本道发料数量-本道不良数量 |
| | | decimal sybqty = ssqty - sqty - ng_qty-bad_qty;//本道剩余可发数量=上道收料数量-本道发料数量-本道不良数量-本道报废数量 |
| | | if (sybqty <= 0) |
| | | { |
| | | mes.code = "300"; |
| | |
| | | { |
| | | rt.planqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()); //任务数量 |
| | | rt.noreportqty = sybqty; //未发数量=剩余可发数量 |
| | | rt.reportqty = sqty + ng_qty; //已发数量= 本道发料数量+本道不良数量 |
| | | rt.reportqty = sqty + ng_qty+bad_qty; //已发数量= 本道发料数量+本道不良数量+本道报废数量 |
| | | rt.startqty = sybqty; //收料数量=剩余可发数量 |
| | | |
| | | mes.code = "200"; |
| | |
| | | //查找上到工序报工记录 |
| | | sql = @"select * from TK_Wrk_Record where wo_code=@ordercode and step_code=@stepcode and style='B'"; |
| | | dynamicParams.Add("@ordercode", ordercode); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEPNAME"].ToString()); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEP_CODE"].ToString()); |
| | | var data3 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data3.Rows.Count > 0) //上道有报工 |
| | | { |
| | | string sgood_qty = data3.Rows[0]["GOOD_QTY"].ToString();//上道报工数量 |
| | | decimal sgood_qty = data3.AsEnumerable().Select(d => d.Field<decimal>("GOOD_QTY")).Sum(); //本道报工总数量 |
| | | |
| | | decimal sybqty = decimal.Parse(sgood_qty);//本道剩余可发数量=上道报工数量 |
| | | decimal sybqty = sgood_qty;//本道剩余可发数量=上道报工总数量 |
| | | |
| | | rt.planqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()); //任务数量 |
| | | rt.noreportqty = sybqty; //未发数量=剩余可发数量 |
| | |
| | | //查找上到工序收料记录 |
| | | sql = @"select * from TK_Wrk_OutRecord where wo_code=@ordercode and step_code=@stepcode and style='S'"; |
| | | dynamicParams.Add("@ordercode", ordercode); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEPNAME"].ToString()); |
| | | dynamicParams.Add("@stepcode", data0.Rows[0]["STEP_CODE"].ToString()); |
| | | var data3 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data3.Rows.Count > 0) //上道有收料 |
| | | { |
| | | decimal ssqty = decimal.Parse(data3.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("SQTY"))).Sum().ToString());//上道收料数量 |
| | | decimal ssqty = data3.AsEnumerable().Select(d => d.Field<decimal>("SQTY")).Sum();//上道收料数量 |
| | | |
| | | decimal sybqty = ssqty;//本道剩余可发数量=上道收料数量 |
| | | if (sybqty <= 0) |
| | |
| | | var data1 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data1.Rows.Count > 0) //有收料记录 |
| | | { |
| | | decimal fqty = decimal.Parse(data0.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("FQTY"))).Sum().ToString());//本道发料数量 |
| | | decimal sqty = decimal.Parse(data1.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("SQTY"))).Sum().ToString());//本道收料数量 |
| | | decimal ng_qty = decimal.Parse(data1.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("NG_QTY"))).Sum().ToString());//本道不良数量 |
| | | decimal ksqty = fqty - sqty - ng_qty; //剩余可发数量=本道发料数量-本道收料数量-本道不良数量 |
| | | decimal fqty = data0.AsEnumerable().Select(d => d.Field<decimal>("FQTY")).Sum();//本道发料数量 |
| | | decimal sqty = data1.AsEnumerable().Select(d => d.Field<decimal>("SQTY")).Sum();//本道收料数量 |
| | | decimal ng_qty = data1.AsEnumerable().Select(d => d.Field<decimal>("NG_QTY")).Sum();//本道不良数量 |
| | | decimal bad_qty = data1.AsEnumerable().Select(d => d.Field<decimal>("BAD_QTY")).Sum(); //本道报废数量 |
| | | decimal ksqty = fqty - sqty - ng_qty+bad_qty; //剩余可发数量=本道发料数量-本道收料数量-本道不良数量-本道报废数量 |
| | | if (ksqty <= 0) |
| | | { |
| | | mes.code = "300"; |
| | |
| | | { |
| | | rt.planqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()); //任务数量 |
| | | rt.noreportqty = ksqty; //未收数量=本道发料数量 |
| | | rt.reportqty = sqty + ng_qty; //已收数量 |
| | | rt.startqty = fqty; //收料数量=本道发料数量 |
| | | rt.reportqty = sqty + ng_qty+bad_qty; //已收数量 |
| | | rt.startqty = ksqty; //收料数量=本道发料数量 |
| | | |
| | | mes.code = "200"; |
| | | mes.count = 3; |
| | |
| | | } |
| | | else |
| | | { |
| | | decimal fqty = decimal.Parse(data0.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("FQTY"))).Sum().ToString());//本道发料数量 |
| | | decimal fqty = data0.AsEnumerable().Select(d => d.Field<decimal>("FQTY")).Sum();//本道发料数量 |
| | | |
| | | rt.planqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()); //任务数量 |
| | | rt.noreportqty = fqty; //未收数量=本道发料数量 |
| | |
| | | sql = @"select A.step_code,S.stepname,S.flwtype from TFlw_Rtdt A |
| | | left join TK_Wrk_Man M on A.rout_code=M.route_code |
| | | left join TStep S on A.step_code=S.stepcode |
| | | where M.wo_code=@wocode and A.step_code=@stepcode and A.seq=@seq-1"; |
| | | where M.wo_code=@wocode and A.seq=@seq-1"; |
| | | dynamicParams.Add("@wocode", data.Rows[0]["WO_CODE"].ToString()); |
| | | dynamicParams.Add("@stepcode", data.Rows[0]["STEPCODE"].ToString()); |
| | | dynamicParams.Add("@seq", decimal.Parse(data.Rows[0]["SEQ"].ToString())); |
| | | var data0 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data0.Rows.Count > 0) |
| | |
| | | var data2 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data2.Rows.Count > 0) //有收料记录 |
| | | { |
| | | decimal fqty = decimal.Parse(data1.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("FQTY"))).Sum().ToString());//本道发料数量 |
| | | decimal sqty = decimal.Parse(data2.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("SQTY"))).Sum().ToString());//本道收料数量 |
| | | decimal ng_qty = decimal.Parse(data2.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("NG_QTY"))).Sum().ToString());//本道不良数量 |
| | | decimal ksqty = fqty - sqty - ng_qty; //剩余可发数量=本道发料数量-本道收料数量-本道不良数量 |
| | | decimal fqty = data1.AsEnumerable().Select(d => d.Field<decimal>("FQTY")).Sum();//本道发料数量 |
| | | decimal sqty = data2.AsEnumerable().Select(d => d.Field<decimal>("SQTY")).Sum();//本道收料数量 |
| | | decimal ng_qty = data2.AsEnumerable().Select(d => d.Field<decimal>("NG_QTY")).Sum();//本道不良数量 |
| | | decimal bad_qty = data2.AsEnumerable().Select(d => d.Field<decimal>("BAD_QTY")).Sum(); //本道报废数量 |
| | | decimal ksqty = fqty - sqty - ng_qty-bad_qty;//剩余可发数量=本道发料数量-本道收料数量-本道不良数量-本道报废数量 |
| | | if (ksqty <= 0) |
| | | { |
| | | mes.code = "300"; |
| | |
| | | { |
| | | rt.planqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()); //任务数量 |
| | | rt.noreportqty = ksqty; //未收数量=本道发料数量 |
| | | rt.reportqty = sqty + ng_qty; //已收数量 |
| | | rt.startqty = fqty; //收料数量=本道发料数量 |
| | | rt.reportqty = sqty + ng_qty+bad_qty; //已收数量 |
| | | rt.startqty = ksqty; //收料数量=本道发料数量 |
| | | |
| | | mes.code = "200"; |
| | | mes.count = 3; |
| | |
| | | } |
| | | else |
| | | { |
| | | decimal fqty = decimal.Parse(data1.AsEnumerable().Select(d => Convert.ToDouble(d.Field<Int32>("FQTY"))).Sum().ToString());//本道发料数量 |
| | | decimal fqty = data1.AsEnumerable().Select(d => d.Field<decimal>("FQTY")).Sum(); //本道发料数量 |
| | | |
| | | rt.planqty = decimal.Parse(data.Rows[0]["PLAN_QTY"].ToString()); //任务数量 |
| | | rt.noreportqty = fqty; //未收数量=本道发料数量 |