Пример #1
0
        private static void SetActualProductQty()
        {
            string userId  = ToolCode.Tool.GetUser().UserNumber;
            string tempSql = string.Format(@"
            select t.销售订单号+'^'+t.产品编号+'^'+t.版本+'^'+t.交期+'^'+t.行号+'^'+'{1}' as Id,
            t.销售订单号,t.产品编号,t.版本,
            case when t.未交货数量 <0 then 0 else t.未交货数量 end as 未交货数量 ,
            t.库存数量,t.在制品数量,t.需要生产数量,t.交期,t.行号,t.客户产品编号 from ({0})t where 1=1",
                                           WorkOrderManager.GetWorkOrderSql(), userId);

            List <string> sqls  = new List <string>();
            string        error = string.Empty;

            string sql = string.Format("delete T_WorkOrder_Temp where user_id='{0}'", userId);

            sqls.Add(sql);

            sql = string.Format(@"
            insert into T_WorkOrder_Temp(id,Qty,User_id)
            select t.Id,t.需要生产数量,'{1}' from ({0})t
            ", tempSql, userId);
            sqls.Add(sql);

            SqlHelper.BatchExecuteSql(sqls, ref error);
        }
Пример #2
0
        private static void GetPage()
        {
            ToolManager.ZDJC();
            //SetActualProductQty();

            string error         = string.Empty;
            string tdTextTemp    = string.Empty;
            string text          = string.Empty;
            string temp          = string.Empty;
            string sortName      = ToolManager.GetQueryString("sortName");
            string sortDirection = ToolManager.GetQueryString("sortDirection");
            string condition     = ToolManager.GetQueryString("condition");
            string userId        = ToolCode.Tool.GetUser().UserNumber;

            string tempSql = string.Format(@"
                    select
                        t.销售订单号+'^'+t.产品编号+'^'+t.版本+'^'+t.交期+'^'+t.行号+'^'+'{1}' as Id,
                        t.销售订单号,
                        t.产品编号,
                        t.版本,
                        case when  t.未交货数量 <0 then 0 else t.未交货数量  end as 未交货数量 ,
                        t.库存数量,
                        t.在制品数量,
                        t.未入库数量,
                        t.送货单未确认数量,
                        t.需要生产数量,
                        t.交期,
                        t.行号,
                        t.客户产品编号
                    from ({0})t
                    where 1=1"
                                           , WorkOrderManager.GetWorkOrderSql(), userId);

            string sql = string.Format(@"
                select
                        t.Id,
                        t.销售订单号,
                        so.CustomerOrderNumber as 客户采购订单号,
                        so.OdersType as 订单类型,
                        t.客户产品编号,
                        t.产品编号,
                        t.版本,
                        t.未交货数量,
                        t.库存数量 as 实时库存数量,
                        isnull( t.在制品数量,0),
                        t.未入库数量,
                        t.送货单未确认数量,
                        t.需要生产数量,
                        twt.Qty as 实际生产数量,
                        t.交期,
                        t.行号
                from
                ({0}) t
                left join SaleOder so on so.OdersNumber=t.销售订单号
                left join T_WorkOrder_Temp twt on twt.Id=t.Id
                {3}
                and  t.需要生产数量>0
                order by {1} {2}"
                                       , tempSql, sortName, sortDirection, condition);
            int       columCount = 0;
            DataTable dt         = SqlHelper.GetTable(sql);

            if (dt != null)
            {
                columCount = dt.Columns.Count;
            }
            else
            {
                HttpContext.Current.Response.Write(text);
                HttpContext.Current.Response.End();
                return;
            }

            string color      = string.Empty;
            string titileName = string.Empty;

            foreach (DataRow dr in dt.Rows)
            {
                tdTextTemp = "";
                temp       = "";
                for (int i = 0; i < columCount; i++)
                {
                    //if (i == 7)
                    //{
                    //    string sqlGetQty = string.Format("select StockQty from  ProductStock where ProductNumber='{0}' and  Version='{1}'", dr["产品编号"], dr["版本"]);
                    //    object ob = SqlHelper.GetScalar(sqlGetQty);
                    //    ob = ob == null ? 0 : ob;
                    //    tdTextTemp += string.Format("<td>{0}</td><td>{1}</td>", ob, dr[i]);
                    //}
                    //else
                    //{
                    if (!dt.Columns[i].ColumnName.Equals("Id"))
                    {
                        if (dt.Columns[i].ColumnName.Equals("客户产品编号"))
                        {
                            color       = HasGX(dr["产品编号"].ToString(), dr["版本"].ToString()) ? "black" : "red";
                            titileName  = HasGX(dr["产品编号"].ToString(), dr["版本"].ToString()) ? "" : "title='该产品没有工序信息'";
                            tdTextTemp += string.Format("<td><span style='color:{1};' {2}>{0}</span> </td>", dr[i], color, titileName);
                        }
                        else if (dt.Columns[i].ColumnName.Equals("产品编号"))
                        {
                            color       = HasBOM(dr["产品编号"].ToString(), dr["版本"].ToString()) ? "black" : "red";
                            titileName  = HasBOM(dr["产品编号"].ToString(), dr["版本"].ToString()) ? "" : "title='该产品没有BOM信息'";
                            tdTextTemp += string.Format("<td><span style='color:{1};' {2}>{0}</span> </td>", dr[i], color, titileName);
                        }
                        else
                        {
                            tdTextTemp += string.Format("<td>{0}</td>", dr[i]);
                        }
                    }
                    //}
                }
                //bool isQueLiao = GetIsQueLiao(dr["产品编号"].ToString(), dr["版本"].ToString(), dr["实际生产数量"].ToString());
                //if (isQueLiao)
                //{
                //    tdTextTemp += string.Format("<td><a href='###' title='点击查看缺料明细' onclick=\"Check('{0}','{1}','{2}','{3}')\">是</a></td>", dr["产品编号"].ToString(), dr["版本"].ToString(), dr["实际生产数量"].ToString(), dr["客户产品编号"]);
                //}
                //else
                //{
                //    tdTextTemp += string.Format("<td>否</td>");
                //}

                tdTextTemp += string.Format(@" <td><a href='###' onclick=""EditQty('{0}','{1}')"">编辑</a> </td>", dr["Id"], dr["需要生产数量"]);

                temp  = string.Format(" <input type='checkbox' name='subBox' value='{0}'/> ", dr["Id"]);
                text += string.Format(@"<tr><td>{0}</td>{1}</tr>", temp, tdTextTemp);
            }
            HttpContext.Current.Response.Write(text);
            HttpContext.Current.Response.End();
            return;
        }