private string getBudget() { string docCode = Request.Form["docCode"]; string sql = "select * from yl_reimburse where id = " + docCode; DataTable dt = SqlHelper.Find(sql).Tables[0]; return(ReimbursementManage.IsOverBudget(dt.Rows[0]["fee_department"].ToString(), dt.Rows[0]["fee_detail"].ToString() , Convert.ToDouble(dt.Rows[0]["fee_amount"].ToString()), DateTime.Now).ToString()); }
private string approvalReimburse() { string docCode = Request.Form["docCode"]; string ApprovalResult = Request.Form["ApprovalResult"]; string ApprovalOpinions = Request.Form["ApprovalOpinions"]; UserInfo userInfo = (UserInfo)Session["user"]; string sql = "select * from yl_reimburse where id = " + docCode; DataTable dt = SqlHelper.Find(sql).Tables[0]; string code = dt.Rows[0]["code"].ToString(); // 查询这一级的审批人是否是该用户 DataSet checkApproverDt = ReimbursementManage.checkApprover(code, userInfo.userId.ToString()); string msg = ""; if (checkApproverDt == null || checkApproverDt.Tables[0] == null || checkApproverDt.Tables[0].Columns.Count == 0 || checkApproverDt.Tables[0].Rows.Count == 0) { msg = "当前用户无审批权限"; return(JsonHelper.SerializeObject(msg)); } //// 若提交时间超过当月25号 则不允许审批 // DateTime submitTime = Convert.ToDateTime(dt.Rows[0]["apply_time"]); // DateTime theTime = Convert.ToDateTime(DateTime.Now.Year + "-" + DateTime.Now.Month + "-25" + " 00:00:00"); // if (submitTime > theTime) // { // msg = "该单据超过25号提交,暂无法审批!"; // return JsonHelper.SerializeObject(msg); // } //if (ApprovalResult == "同意" && dt.Rows[0]["IsOverBudget"].ToString() != "1") //{ // JObject j = ReimbursementManage.IsOverBudget(dt.Rows[0]["fee_department"].ToString(), dt.Rows[0]["fee_detail"].ToString(), Convert.ToDouble(dt.Rows[0]["fee_amount"].ToString()), DateTime.Now); // if (msg.Contains("预算余额不足")) // { // return JsonHelper.SerializeObject(msg); // } //} if (ApprovalResult == "同意" && dt.Rows[0]["isOverBudget"].ToString() != "1") { JObject res = ReimbursementManage.IsOverBudget(dt.Rows[0]["fee_department"].ToString(), dt.Rows[0]["fee_detail"].ToString(), Convert.ToDouble(dt.Rows[0]["fee_amount"].ToString()) , Convert.ToDateTime(dt.Rows[0]["apply_time"].ToString())); if (res == null || Convert.ToDouble(res["budget"]) < Convert.ToDouble(res["hasApprove"]) + Convert.ToDouble(dt.Rows[0]["fee_amount"].ToString())) { return(JsonHelper.SerializeObject("预算余额不足")); } } msg = ApprovalFlowManage.ApproveDocument("yl_reimburse", docCode, userInfo, ApprovalResult, ApprovalOpinions, "http://yelioa.top/mMySubmittedReimburse.aspx?docCode=" + code, "http://yelioa.top/mMobileReimbursement.aspx?docCode=" + code, "http://yelioa.top/mMySubmittedReimburse.aspx?docCode=" + code, "UM0i5TXSIqQIOWk-DmUlfTqBqvZAfbZdGGDKiFZ-nRk", "yl_reimburse", "1000006"); if ("审批流程结束".Equals(msg) || "审批拒绝!".Equals(msg)) { // 清除approval_process表中内容 MobileReimburseManage.clearApprovalProcess(docCode); // 更新审批时间 MobileReimburseManage.updateApprovalTimeAndResultAndOpinion(docCode, ApprovalResult, ApprovalOpinions); // 删除关联差旅申请 sql += string.Format("delete from wf_form_差旅申请 where reimburseCode = '{0}';", code); // 删除关联借款单 并把借款单的金额还原 dt = SqlHelper.Find(string.Format("select * from yl_reimburse_loan where ReimburseCode = '{0}'", code)).Tables[0]; sql += string.Format("delete from yl_reimburse_loan where ReimburseCode = '{0}';", code); foreach (DataRow dr in dt.Rows) { decimal amount = Decimal.Parse(dr["amount"].ToString()); string tempCode = dr["docCode"].ToString(); sql += string.Format("update wf_form_借款单 set remainAmount = remainAmount + {0} where docCode = '{1}';", amount, tempCode); } SqlHelper.Exce(sql); } return(JsonHelper.SerializeObject(msg)); }
private string submitReimburse() { UserInfo user = (UserInfo)Session["user"]; string apply_time = Request.Form["apply_time"]; string product = Request.Form["product"]; string branch = Request.Form["branch"]; string fee_department = Request.Form["fee_department"]; string fee_company = Request.Form["fee_company"]; string fee_detail = Request.Form["fee_detail"]; string fee_amount = Request.Form["fee_amount"]; string file = Request.Form["file"]; string remark = SqlHelper.DesEncrypt(Request.Form["remark"]); string approver = Request.Form["approvers"]; string department = Request.Form["department"]; string informer = Request.Form["chooseInformerId"]; string approverData = Request.Form["approverData"]; string uploadFileUrls = Request.Form["uploadFileUrls"]; string docCode = Request.Form["docCode"]; string project = Request.Form["project"]; string isOverBudget = Request.Form["isOverBudget"];//是否是预算外的标志,1表示预算外,0表示预算内 string isPrepaid = Request.Form["isPrepaid"]; string isHasReceipt = Request.Form["isHasReceipt"]; string reimburseDetail = Request.Form["reimburseDetail"]; string travelCode = Request.Form["travelCode"]; string loanCode = Request.Form["loanCode"]; List <string> informerList = JsonHelper.DeserializeJsonToList <string>(informer); List <JObject> approverDataList = JsonHelper.DeserializeJsonToList <JObject>(approverData); List <string> uploadFileUrlsList = JsonHelper.DeserializeJsonToList <string>(uploadFileUrls); List <JObject> reimburseDetailList = JsonHelper.DeserializeJsonToList <JObject>(reimburseDetail); string msg = ""; JObject res = ReimbursementManage.IsOverBudget(fee_department, fee_detail, Convert.ToDouble(fee_amount) , Convert.ToDateTime(apply_time)); if (res == null || Convert.ToDouble(res["budget"]) >= Convert.ToDouble(res["hasApprove"]) + Convert.ToDouble(fee_amount) || isOverBudget == "1") { msg = MobileReimburseManage.insertMobileReimburse(apply_time, product, branch, fee_department, fee_detail, fee_amount, file, remark, user, approver, department, informerList, approverDataList, uploadFileUrlsList, docCode, project, isOverBudget, isPrepaid, isHasReceipt, reimburseDetailList, fee_company, travelCode, loanCode); } else { string code = GenerateDocCode.getReimburseCode(); if (department == null || "".Equals(department)) { department = MobileReimburseSrv.findDepartmentNameByWechatUserId(user.wechatUserId).Tables[0].Rows[0][0].ToString(); } if (string.IsNullOrEmpty(docCode)) { MobileReimburseSrv.insertMobileReimburse(code, apply_time, product, branch, fee_department, fee_detail, fee_amount, file, remark, user, approver, department, project, isOverBudget, isPrepaid, isHasReceipt, fee_company, ""); SqlHelper.Exce(string.Format("update yl_reimburse set status = '草稿' where code = '{0}'", code)); } msg = "本月预算为" + res["budget"].ToString() + ",已用" + res["hasApprove"].ToString() + ",预算不足,请减少申请金额或者走预算外报销申请," + code; } return(msg); }