using System; using System.Collections.Generic; using System.Linq; using System.Web; using Microsoft.Practices.EnterpriseLibrary.Data; using System.Data; using DSWeb.MvcShipping.DAL.Chfee_AuditDAL; using DSWeb.Areas.Account.Models.MsOpBill; using System.Text; using DSWeb.Areas.Mobile.Models.Approval; using DSWeb.MvcShipping.DAL.MsSysParamSet; using DSWeb.TruckMng.Helper; using HcUtility.Comm; namespace DSWeb.Areas.Mobile.DAL { public class ApprovalDAL { /// /// 获取Content的HTML /// /// public static string GetBillStatus (string billno) { return ""; } /// /// 获取利润与金额合计 /// /// 主题单号 /// public static YSYFAmountModel GetAmountAndLirun ( string mblno) { StringBuilder sb = new StringBuilder(); sb.Append("select "); sb.Append("ISNULL(SUM(cfsrmb.AMOUNT),0) as yingshourmb, "); sb.Append("ISNULL(SUM(cffrmb.AMOUNT),0) as yingfurmb ,"); sb.Append("ISNULL(SUM(cfsusd.AMOUNT),0) as yingshouusd,"); sb.Append("ISNULL(SUM(cffusd.AMOUNT),0) as yingfuusd "); sb.Append("from ch_fee cf "); sb.Append("LEFT JOIN v_op_bs os on cf.BSNO = os.BSNO "); sb.Append("LEFT JOIN ch_fee cfsrmb on cf.GID = cfsrmb.GID AND cfsrmb.FEETYPE = 1 AND cfsrmb.CURRENCY = 'RMB' "); sb.Append("LEFT JOIN ch_fee cffrmb on cf.GID = cffrmb.GID AND cffrmb.FEETYPE = 2 AND cffrmb.CURRENCY = 'RMB' "); sb.Append("LEFT JOIN ch_fee cfsusd on cf.GID = cfsusd.GID AND cfsusd.FEETYPE = 1 AND cfsusd.CURRENCY= 'USD' "); sb.Append("LEFT JOIN ch_fee cffusd on cf.GID = cffusd.GID AND cffusd.FEETYPE = 2 AND cffusd.CURRENCY= 'USD' "); sb.Append("WHERE os.MBLNO LIKE '%"+mblno+"%' "); Database db = DatabaseFactory.CreateDatabase(); YSYFAmountModel ysyf = new YSYFAmountModel(); using (IDataReader reader = db.ExecuteReader(CommandType.Text, sb.ToString())) { while (reader.Read()) { ysyf.yingfurmb = reader["yingfurmb"].ToString(); ysyf.yingfuusd = reader["yingfuusd"].ToString(); ysyf.yingshourmb = reader["yingshourmb"].ToString(); ysyf.yingshouusd = reader["yingshouusd"].ToString(); } } return ysyf; } /// /// 应收应付审批 2017年9月14日15:10:01 拷贝自 Chfee_AuditController.cs 的 SelAudit方法 /// /// /// /// /// /// public static bool SelAudit (string userid, string showname, string comid, List billData ) { var AuditAutoLock = MsSysParamSetDAL.GetData("PARAMNAME='AuditAutoLock'"); var workflowstr = ""; var AMENDSELFWORK = MsSysParamSetDAL.GetData("PARAMNAME='AMENDSELFWORKFLOW'"); if (AMENDSELFWORK.PARAMVALUE == "1") workflowstr = "AmendFeefyAudit"; DBResult result = null; foreach (var enumValue in billData) { if (enumValue.OPTYPE == "更改单" && AMENDSELFWORK.PARAMVALUE == "1") workflowstr = "AmendFeefyAudit"; else workflowstr = ""; result = Chfee_AuditDAL.PiliangAudit(enumValue.OPLB, enumValue.BSNO, userid, showname, comid, workflowstr); if (result.Success == true) { if (AuditAutoLock.PARAMVALUE == "1") { Chfee_AuditDAL.UpLock(enumValue.BSNO, enumValue.OPLB); } } } return result.Success; } /// /// 根据提单号获取更改单利润统计 /// /// public static GGDAmountModel GetGGDLirunWithMBLNO ( string mblno,string bsno,bool single) { string sql = @" SELECT ISNULL(SUM(ggdsrmb.AMOUNT),0) as ggdsrmb, ISNULL(SUM(ggdsusd.AMOUNT),0) as ggdsusd, ISNULL(SUM(ggdfrmb.AMOUNT),0) as ggdfrmb, ISNULL(SUM(ggdfusd.AMOUNT),0) as ggdfusd from ch_fee cf LEFT JOIN op_amend am on am.BSNO = cf.BSNO JOIN v_op_bs si on si.BSNO = am.PARENTID LEFT JOIN ch_fee ggdsrmb on ggdsrmb.GID = cf.GID AND ggdsrmb.FEETYPE = 1 AND ggdsrmb.CURRENCY= 'RMB' --更改单应收 LEFT JOIN ch_fee ggdsusd on ggdsusd.GID = cf.GID AND ggdsusd.FEETYPE = 1 AND ggdsusd.CURRENCY= 'USD' --更改单应收 LEFT JOIN ch_fee ggdfrmb on ggdfrmb.GID = cf.GID AND ggdfrmb.FEETYPE = 2 AND ggdfrmb.CURRENCY= 'RMB' --更改单应付 LEFT JOIN ch_fee ggdfusd on ggdfusd.GID = cf.GID AND ggdfusd.FEETYPE = 2 AND ggdfusd.CURRENCY= 'USD' --更改单应付 where si.MBLNO like '%" + mblno + "%' AND am.CREATETIME <= (SELECT CREATETIME FROM op_amend WHERE BSNO = '"+bsno+"')"; string sqlwhere = ""; if (single) { sqlwhere = "AND am.BSNO = '"+bsno+"'"; } else { sqlwhere = "AND am.CREATETIME <= (SELECT CREATETIME FROM op_amend WHERE BSNO = '"+bsno+"')"; } Database db = DatabaseFactory.CreateDatabase(); GGDAmountModel ggd = new GGDAmountModel(); using (IDataReader reader = db.ExecuteReader(CommandType.Text, sql+sqlwhere)) { while (reader.Read()) { ggd.ggdsrmb = reader["ggdsrmb"].ToString(); ggd.ggdsusd = reader["ggdsusd"].ToString(); ggd.ggdfrmb = reader["ggdfrmb"].ToString(); ggd.ggdfusd = reader["ggdfusd"].ToString(); } } return ggd; } /// /// 根据bsno,用户id获取机密费用名称,数额 /// /// /// /// public static JiMiFeeModel GetJiMiFeeInfo ( string bsno, string userid ) { //判断用户权限 string sql = @"select count(*) from user_action where userid = '"+userid+"' and ACTIONID = (SELECT GID from action where DESCRIPTION = '机密费用')"; Database db = DatabaseFactory.CreateDatabase(); int rst = Convert.ToInt32(db.ExecuteScalar(CommandType.Text, sql)); if (rst>0) { //查询机密费用 string sql2 = @"select FEENAME,SUM(AMOUNT) AS AMOUNT from ch_fee where bsno = '"+bsno+"' and FEENAME = (select PARAMVALUE from sys_param_set where PARAMDESCRIPTION = '佣金默认费用名称') and FEETYPE = 2 and CURRENCY = 'USD' GROUP BY FEENAME "; JiMiFeeModel jm = null; using (IDataReader reader = db.ExecuteReader(CommandType.Text,sql2)) { while (reader.Read()) { jm = new JiMiFeeModel(); jm.JimiName = Convert.ToString(reader["FEENAME"]); jm.JimiUsd = Convert.ToString(reader["AMOUNT"]); break; } } return jm; } else { return null; } } } }