/// <summary> /// 插入生活补贴类 /// </summary> /// <param name="project"></param> /// <param name="strStuType"></param> private void InsertIntoLifeApplyData(Shoolar_project_head project, string strStuType) { if (strStuType.Contains("Y")) { strStuType += ",P"; } Dictionary <string, string> param = new Dictionary <string, string>(); param.Add(string.Format(" STUTYPE IN ({0}) ", ComHandleClass.getInstance().GetNoRepeatAndNoEmptyStringSql(strStuType)), string.Empty); List <Basic_stu_info> stuList = StuHandleClass.getInstance().GetStuInfoArray(param); if (stuList == null) { return; } foreach (Basic_stu_info stu in stuList) { if (stu == null) { continue; } //删除重复数据,再插入 string strDelHead = string.Format("DELETE FROM SHOOLAR_APPLY_HEAD WHERE PROJECT_SEQ_NO = '{0}' AND STU_NUMBER = '{1}' ", project.SEQ_NO, stu.NUMBER); ds.ExecuteTxtNonQuery(strDelHead); Shoolar_apply_head head = InsertIntoApplyHead(project, stu); //删除重复数据,再插入 string strDelChk = string.Format("DELETE FROM SHOOLAR_APPLY_CHECK WHERE SEQ_NO = '{0}' ", head.SEQ_NO); ds.ExecuteTxtNonQuery(strDelChk); ProjectCheckHandleClass.getInstance().InsertIntoCheckInfo(head.SEQ_NO, head.STU_IDCARDNO, head.STU_BANKCODE); } }
/// <summary> /// 发送信息核对信息 /// </summary> /// <returns></returns> private string SendMsg(string strProjectSeqNo) { Dictionary <string, string> dic = ProjectCheckHandleClass.getInstance().GetCheckInfoMsgAccpterList(strProjectSeqNo); string strMsgOid = string.Empty; MessgeHandleClass.getInstance().SendMessge("J", Post("MSG_CONTENT"), user.User_Id, user.User_Name, dic, out strMsgOid); return(strMsgOid); }
/// <summary> /// 提交数据 /// </summary> /// <returns></returns> private string SubmitData() { try { #region 基础校验 if (string.IsNullOrEmpty(Get("id"))) { return("请先保存数据之后再进行提交!"); } Shoolar_apply_head head = new Shoolar_apply_head(); head.OID = Get("id"); ds.RetrieveObject(head); if (head == null) { return("读取奖助申请信息出错,不允许提交!"); } #endregion 基础校验 string strMsg = string.Empty; string strOpNotes = string.Format("提交奖助申请操作"); if (!WKF_ExternalInterface.getInstance().WKF_BusDeclare(head.DOC_TYPE, head.SEQ_NO, user.User_Id, user.User_Role, strOpNotes, out strMsg)) { return(strMsg); } #region 往信息核对表中插入一条记录 //首先判断是否已经存在数据,已经存在不需要再次插入 string strSql = string.Format("SELECT COUNT(1) AS COUNT_NUM FROM SHOOLAR_APPLY_CHECK WHERE SEQ_NO = '{0}' ", head.SEQ_NO); int nCount = cod.ChangeInt(ds.ExecuteTxtScalar(strSql).ToString()); if (nCount == 0) { //提交成功之后,往信息核对表中插入一条记录 ProjectCheckHandleClass.getInstance().InsertIntoCheckInfo(head.SEQ_NO, head.STU_IDCARDNO, head.STU_BANKCODE); } #endregion 往信息核对表中插入一条记录 #region 申请时,插入一条文档编号 ComHandleClass.getInstance().InsertIntoBasicStuWordNo(head.STU_NUMBER, head.PROJECT_YEAR); #endregion 申请时,插入一条文档编号 return(string.Empty); } catch (Exception ex) { LogDBHandleClass.getInstance().LogException(CValue.LOG_LEVEL_ERROR, "提交奖助申请信息,出错:" + ex.ToString()); return("提交失败!"); } }
/// <summary> /// 判断是否可以核对 /// </summary> /// <returns></returns> private string IsCanCheck() { try { if (string.IsNullOrEmpty(Get("id"))) { return("奖助申请主键不能为空!"); } string strMsg = string.Empty; if (!ProjectCheckHandleClass.getInstance().IsCanCheck(Get("id"), user.User_Role, "single", out strMsg)) { return(strMsg); } return(string.Empty); } catch (Exception ex) { LogDBHandleClass.getInstance().LogException(CValue.LOG_LEVEL_ERROR, "校验是否可以进行奖助信息核对失败:" + ex.ToString()); return("校验是否可以进行信息核对失败!"); } }
/// <summary> /// 批量确认核对信息 /// </summary> /// <returns></returns> private string MultiCheck() { try { DataTable dtMultiCheck = GetMultiCheckData(); if (dtMultiCheck == null) { return("批量核对失败:批量核对数据读取失败!"); } int nSuccessNum = 0; int nFailNum = 0; foreach (DataRow row in dtMultiCheck.Rows) { #region 筛选可以核对信息的数据 //筛选可以核对信息的数据 if (row == null) { continue; } string strMsg = string.Empty; if (!ProjectCheckHandleClass.getInstance().IsCanCheck(row["OID"].ToString(), user.User_Role, "multi", out strMsg)) { nFailNum++; continue; } #endregion 筛选可以核对信息的数据 #region 更新核对信息 Shoolar_apply_head head = new Shoolar_apply_head(); head.OID = row["OID"].ToString(); ds.RetrieveObject(head); if (head == null) { continue; } Shoolar_apply_check check = ProjectCheckHandleClass.getInstance().GetApplyCheckInfo(head.SEQ_NO); check.OID = check.OID; ds.RetrieveObject(check); #region 批量核对时,也需要校验学生核对情况 if (head.PROJECT_CLASS.Equals("LIFE")) { //学生需要有饭卡号,银行卡号才可以核对通过 if (StuHandleClass.getInstance().ByStuNoGetRiceCard(head.STU_NUMBER).Length == 0) { nFailNum++; continue; } if (check.OLD_BANKCODE.Length == 0 && check.NEW_BANKCODE.Length == 0) { nFailNum++; continue; } } else { //学生需要有银行卡号,身份证号 才可以核对通过 if (check.OLD_BANKCODE.Length == 0 && check.NEW_BANKCODE.Length == 0) { nFailNum++; continue; } if (check.OLD_IDCARDNO.Length == 0 && check.NEW_IDCARDNO.Length == 0) { nFailNum++; continue; } } #endregion 批量核对时,也需要校验学生核对情况 switch (user.User_Role) { case "F": //辅导员 check.CHECK_STEP = "2"; //辅导员已核对 check.F_CHECK_CODE = user.User_Id; check.F_CHECK_NAME = user.User_Name; check.F_CHECK_TIME = GetDateLongFormater(); break; case "Y": //学院 check.CHECK_STEP = "3"; //学院已核对 check.Y_CHECK_CODE = user.User_Id; check.Y_CHECK_NAME = user.User_Name; check.Y_CHECK_TIME = GetDateLongFormater(); break; } ds.UpdateObject(check); nSuccessNum++; #endregion 更新核对信息 #region 步学生信息中的银行卡与身份证号,修改成核对后的数据 if (check.CHECK_STEP.Equals("3")) { #region 银行卡 if (check.NEW_BANKCODE.Length > 0) { head.STU_BANKCODE = check.NEW_BANKCODE; //更新至学生银行卡信息中的银行卡号 string strSqlBank = string.Format("UPDATE BASIC_STU_BANK_INFO SET BANKCODE = '{0}' WHERE NUMBER = '{1}' ", head.STU_BANKCODE, head.STU_NUMBER); ds.ExecuteTxtNonQuery(strSqlBank); } #endregion 银行卡 #region 身份证 if (check.NEW_IDCARDNO.Length > 0) { head.STU_IDCARDNO = check.NEW_IDCARDNO; //更新至学生信息中的身份证号 string strSqlID = string.Format("UPDATE BASIC_STU_INFO SET IDCARDNO = '{0}' WHERE NUMBER = '{1}' ", head.STU_IDCARDNO, head.STU_NUMBER); ds.ExecuteTxtNonQuery(strSqlID); } #endregion 身份证 ds.UpdateObject(head); } #endregion 步学生信息中的银行卡与身份证号,修改成核对后的数据 } return(string.Format("批量核对成功:生效{0}条记录,不生效{1}条记录。", nSuccessNum, nFailNum)); } catch (Exception ex) { LogDBHandleClass.getInstance().LogException(CValue.LOG_LEVEL_ERROR, "批量审批奖助核对失败:" + ex.ToString()); return("批量核对失败!"); } }