コード例 #1
0
    private string GetYskmStr(string code)
    {
        string    strisdz = "";
        YsManager ysmgr   = new YsManager();
        string    strdydj = "02";
        string    result  = "";
        string    strsql  = "";

        if (!string.IsNullOrEmpty(code))
        {
            if (!string.IsNullOrEmpty(Request["isdz"]))
            {
                strisdz = Request["isdz"].ToString();
            }
            if (strisdz == "1")
            {
                //根据传参billname 获取billcode
                // strbillcode = server.GetCellValue("select billcode from bill_main where billname='" + code + "'");
                strsql = @"select  mxGuid ,fykm as yskmCode,(select  '['+yskmCode+']'+yskmMc as yskm  from bill_yskm where yskmCode=f.fykm ) as yskmMc,isnull(je ,0)  as je from bill_ybbxmxb_fykm f where billCode in(select billcode from bill_main where billname='" + code + "')";
            }
            else
            {
                strsql = @"select  mxGuid ,fykm as yskmCode,(select  '['+yskmCode+']'+yskmMc as yskm  from bill_yskm where yskmCode=f.fykm ) as yskmMc,isnull(je ,0)  as je from bill_ybbxmxb_fykm f where billCode='" + code + "'";
            }
            DataTable dt = server.GetDataTable(strsql, null);
            if (dt.Rows.Count > 0)
            {
                string billDate = lbBillData.Text;
                string deptCode = lbBillDept.Text;
                //预算金额

                deptCode = string.IsNullOrEmpty(deptCode) ? "" : deptCode.Split(']')[0].Trim('[');


                StringBuilder sb = new StringBuilder();
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    string kmCode = string.IsNullOrEmpty(dt.Rows[i]["yskmMc"].ToString()) ? "" : dt.Rows[i]["yskmMc"].ToString().Split(']')[0].Trim('[');
                    string gcbh   = ysmgr.GetYsgcCode(DateTime.Parse(billDate));

                    if (!string.IsNullOrEmpty(Request["flowid"]))
                    {
                        if (Request["flowid"].ToString() == "ybbx")
                        {
                            strdydj = "02";
                        }
                    }
                    decimal ysje = ysje = ysmgr.GetYueYs(gcbh, deptCode, kmCode);   //预算金额

                    decimal hfje = ysmgr.GetYueHf(gcbh, deptCode, kmCode, strdydj); //花费金额
                    //是否启用销售提成模块
                    bool    hasSaleRebate = new ConfigBLL().GetValueByKey("HasSaleRebate").Equals("1");
                    decimal syje          = ysje - hfje;

                    sb.Append("<div class='div-yskm'>");
                    sb.Append("<table class='tab-yskm'>");
                    sb.Append("<tr><td class=''>" + Convert.ToString(dt.Rows[i]["yskmMc"]) + "预算金额:¥(" + Convert.ToDecimal(ysje).ToString("N02") + ") 剩余金额:¥(" + Convert.ToDecimal(syje).ToString("N02") + ")" + "报销金额:¥(" + Convert.ToDecimal(dt.Rows[i]["je"]).ToString("N02") + ")</td></tr>");
                    sb.Append("</table>");
                    sb.Append("</div>");
                    DataTable temp = server.GetDataTable("select (select '['+deptCode+']'+deptName  from bill_departments where deptCode=a.deptCode) as Dept,isnull(je,0) as je  from bill_ybbxmxb_fykm_dept a where kmmxGuid ='" + Convert.ToString(dt.Rows[i]["mxGuid"]) + "'", null);
                    if (temp.Rows.Count > 0)
                    {
                        sb.Append("<div class='div-hs'>");
                        sb.Append("<h5>核算部门</h5>");
                        sb.Append("<table class='tab-hs ItemTable'  style='color:black;font-size:14px;'>");
                        // sb.Append("<tr><th class='tdOdd'>部门</th><th>核算金额</th></tr>");
                        for (int j = 0; j < temp.Rows.Count; j++)
                        {
                            sb.Append("<tr><td >" + Convert.ToString(temp.Rows[j]["Dept"]) + ":&nbsp;&nbsp;¥" + Convert.ToDecimal(temp.Rows[j]["je"]).ToString("N02") + "</td></tr>");
                        }
                        sb.Append("</table>");
                        sb.Append("</div>");
                    }

                    string strdeptsql = @"select distinct  '['+b.xmCode+']'+xmName as xmCode,isnull(je,0) as je from bill_ybbxmxb_hsxm a,bill_xm b where a.xmcode=b.xmcode and kmmxGuid='" + Convert.ToString(dt.Rows[i]["mxGuid"]) + "'";
                    temp = server.GetDataTable(strdeptsql, null);
                    if (temp.Rows.Count > 0)
                    {
                        sb.Append("<div class='div-hs'>");
                        sb.Append("<h5>核算项目</h5>");
                        sb.Append("<table class='tab-hs' style='color:black;font-size:14px;'>");
                        // sb.Append("<tr><th class='tdOdd'>项目</th><th>核算金额</th></tr>");
                        for (int j = 0; j < temp.Rows.Count; j++)
                        {
                            sb.Append("<tr><td >" + Convert.ToString(temp.Rows[j]["xmCode"]) + ":&nbsp;&nbsp;¥" + Convert.ToDecimal(temp.Rows[j]["je"]).ToString("N02") + "</td></tr>");
                        }
                        sb.Append("</table>");
                        sb.Append("</div>");
                    }
                    result = sb.ToString();
                }
            }
        }
        return(result);
    }