/// <summary> /// 更新一条数据 /// </summary> public int Update(Entities.CallRecord_ORIG_Business model) { //触发器,入库CallRecord_ORIG_Task表 TriggerCallRecord_ORIG_Task(model.CallID, model.BusinessID); SqlParameter[] parameters = { new SqlParameter("@RecID", SqlDbType.Int, 4), new SqlParameter("@CallID", SqlDbType.BigInt, 8), new SqlParameter("@BGID", SqlDbType.Int, 4), new SqlParameter("@SCID", SqlDbType.Int, 4), new SqlParameter("@BusinessID", SqlDbType.NVarChar, 200), new SqlParameter("@CreateUserID", SqlDbType.Int, 4), new SqlParameter("@CreateTime", SqlDbType.DateTime) }; parameters[0].Direction = ParameterDirection.Output; parameters[1].Value = model.CallID; parameters[2].Value = model.BGID; parameters[3].Value = model.SCID; parameters[4].Value = model.BusinessID; parameters[5].Value = model.CreateUserID; parameters[6].Value = model.CreateTime; SqlHelper.ExecuteNonQuery(CONNECTIONSTRINGS, CommandType.StoredProcedure, P_CALLRECORD_ORIG_BUSINESS_UPDATE, parameters); int num = (int)parameters[0].Value; return(num); }
/// 转换实体类 /// <summary> /// 转换实体类 /// </summary> /// <param name="row"></param> /// <returns></returns> private Entities.CallRecord_ORIG_Business LoadSingleCallRecord_ORIG_Business(DataRow row) { Entities.CallRecord_ORIG_Business model = new Entities.CallRecord_ORIG_Business(); if (row["RecID"].ToString() != "") { model.RecID = long.Parse(row["RecID"].ToString()); } if (row["CallID"].ToString() != "") { model.CallID = Int64.Parse(row["CallID"].ToString()); } if (row["BGID"].ToString() != "") { model.BGID = int.Parse(row["BGID"].ToString()); } if (row["SCID"].ToString() != "") { model.SCID = int.Parse(row["SCID"].ToString()); } model.BusinessID = row["BusinessID"].ToString(); if (row["CreateUserID"].ToString() != "") { model.CreateUserID = int.Parse(row["CreateUserID"].ToString()); } if (row["CreateTime"].ToString() != "") { model.CreateTime = DateTime.Parse(row["CreateTime"].ToString()); } return(model); }
/// 维护成绩表 /// <summary> /// 维护成绩表 /// </summary> /// <param name="sInfoData"></param> /// <param name="userID"></param> /// <param name="QS_RTID"></param> /// <param name="status"></param> /// <returns></returns> private int InsertOrUpdateResult(QS_ResultData sInfoData, int userID, out int QS_RTID, QSResultStatus status, string tableEndName) { Entities.QS_Result model = null; //由于易湃外呼业务签入cc系统,易湃不入库CallRecordInfo表,所以此处改成从CallRecord_ORIG_Business取录音创建坐席 modify by qizq 2014-4-17 Entities.CallRecord_ORIG_Business callModel = BLL.CallRecord_ORIG_Business.Instance.GetByCallID(Convert.ToInt64(sInfoData.CallID), tableEndName); //说明是初次 if (sInfoData.QS_RID == "0") { if (status == QSResultStatus.Submitted) { if (BLL.QS_Result.Instance.HasScored(sInfoData.CallID)) { // "此话务已评分过分了,不能再次评分!"; QS_RTID = 0; return(-9999); } } model = new Entities.QS_Result(); model.CallReCordID = Convert.ToInt64(sInfoData.CallID); model.CallID = Convert.ToInt64(sInfoData.CallID); model.QS_RTID = Convert.ToInt32(sInfoData.QS_RTID); model.SeatID = callModel.CreateUserID.ToString(); model.ScoreType = Convert.ToInt32(sInfoData.ScoreType); model.CreateTime = System.DateTime.Now; model.CreateUserID = userID; model.QualityAppraisal = sInfoData.QualityAppraisal; model.Status = (Int32)status; model.QS_RID = BLL.QS_Result.Instance.Insert(model, tableEndName); if (model.QS_RID == -9999) { // "此话务已评分过分了,不能再次评分!"; QS_RTID = 0; return(-9999); } } //再次保存 else { model = BLL.QS_Result.Instance.GetQS_Result(Convert.ToInt32(sInfoData.QS_RID)); model.QualityAppraisal = sInfoData.QualityAppraisal; model.ModifyTime = System.DateTime.Now; model.ModifyUserID = userID; model.ScoreType = Convert.ToInt32(sInfoData.ScoreType); model.Status = (Int32)status; BLL.QS_Result.Instance.Update(model); } //返回结果 QS_RTID = model.QS_RTID; return(model.QS_RID); }
/// 根据CallID,更新业务数据,businessID为业务ID,BGID为分组ID,SCID为分类ID /// <summary> /// 根据CallID,更新业务数据,businessID为业务ID,BGID为分组ID,SCID为分类ID /// </summary> /// <param name="Verifycode"></param> /// <param name="callID"></param> /// <param name="businessID"></param> /// <param name="BGID"></param> /// <param name="SCID"></param> /// <param name="createuserid"></param> /// <param name="msg"></param> /// <returns></returns> public int UpdateBusinessDataByCallID(Int64 callID, string businessID, int BGID, int SCID, int createuserid, ref string msg) { msg = ""; try { //插入更新数据,操作现表 if (BLL.CallRecord_ORIG_Business.Instance.IsExistsByCallID(callID)) { BLL.Loger.Log4Net.Info("[BLL.UpdateBusinessDataByCallID]在系统中已经存在业务数据,更新!callID=" + callID); Entities.CallRecord_ORIG_Business model = new Entities.CallRecord_ORIG_Business(); model.CallID = callID; model.BGID = BGID; model.SCID = SCID; model.BusinessID = businessID; model.CreateUserID = createuserid; model.CreateTime = DateTime.Now; int recID = BLL.CallRecord_ORIG_Business.Instance.Update(model); BLL.Loger.Log4Net.Info("[BLL.UpdateBusinessDataByCallID]更新完毕:callID=" + callID); return(recID); } else { BLL.Loger.Log4Net.Info("[BLL.UpdateBusinessDataByCallID]准备插入数据:callID=" + callID); Entities.CallRecord_ORIG_Business model = new Entities.CallRecord_ORIG_Business(); model.CallID = callID; model.BGID = BGID; model.SCID = SCID; model.BusinessID = businessID; model.CreateUserID = createuserid; model.CreateTime = DateTime.Now; int recID = BLL.CallRecord_ORIG_Business.Instance.Insert(model); model.RecID = recID; BLL.Loger.Log4Net.Info("[BLL.UpdateBusinessDataByCallID]插入完毕:callID=" + callID); return(recID); } } catch (Exception ex) { msg = ex.Message; BLL.Loger.Log4Net.Info("[BLL.UpdateBusinessDataByCallID]出错!callID=" + callID + ",errorMsg:" + msg); return(-1); } }
//插入话务总表跟业务分组中间表记录 public void InsertCallRecord_ORIG_Business(out string msg) { msg = string.Empty; int loginID = BLL.Util.GetLoginUserID(); Entities.CallRecord_ORIG_Business callrecordorgbusiness = new Entities.CallRecord_ORIG_Business(); callrecordorgbusiness.CreateUserID = loginID; //工单取业务组,分类 int _bgid = BLL.SurveyCategory.Instance.GetSelfBGIDByUserID(loginID); //登陆者所在业务组ID int _scid = BLL.SurveyCategory.Instance.GetSelfSCIDByUserID(loginID); //登陆者所在业务组下的工单分类ID callrecordorgbusiness.BGID = _bgid; callrecordorgbusiness.SCID = _scid; //西门子callid Int64 _callID = 0; if (Int64.TryParse(CallID, out _callID)) { } callrecordorgbusiness.CallID = _callID; callrecordorgbusiness.CreateTime = DateTime.Now; callrecordorgbusiness.BusinessID = TaskID; //update by lihf on 2014-01-23 //工单处理页外呼时 也需根据先判是否有该录音记录,防止重复数据 int RecID = 0; //查询现在表 if (!BLL.CallRecord_ORIG_Business.Instance.IsExistsByCallID(_callID)) { RecID = BLL.CallRecord_ORIG_Business.Instance.Insert(callrecordorgbusiness); } else { RecID = BLL.CallRecord_ORIG_Business.Instance.Update(callrecordorgbusiness); } msg = "{'success':'yes','recordid':'" + RecID + "'}"; }
private void VerifyData() { string sysId = ConfigurationUtil.GetAppSettingValue("ThisSysID"); int userId = BLL.Util.GetLoginUserID(); FirstTrialButton = BitAuto.YanFa.SysRightManager.Common.UserInfo.Instance.CheckRight("SYS024BUT600102", sysId, userId); RecheckButton = BitAuto.YanFa.SysRightManager.Common.UserInfo.Instance.CheckRight("SYS024BUT600103", sysId, userId); AppealButton = BitAuto.YanFa.SysRightManager.Common.UserInfo.Instance.CheckRight("SYS024BUT600106", sysId, userId); int rid = 0; if (int.TryParse(RequestQS_RID, out rid)) { Entities.QS_Result info = BLL.QS_Result.Instance.GetQS_Result(rid); if (info != null) { //由于易湃外呼业务签入cc系统,易湃不入库CallRecordInfo表,所以此处改成从CallRecord_ORIG_Business取录音创建坐席 modify by qizq 2014-4-17 Entities.CallRecord_ORIG_Business callRecordInfo = BLL.CallRecord_ORIG_Business.Instance.GetByCallID(Convert.ToInt64(info.CallID), tableEndName); //Entities.CallRecordInfo callRecordInfo = BLL.CallRecordInfo.Instance.GetCallRecordInfoByCallID(info.CallID); if (callRecordInfo != null) { //判断单据状态,如果不是待复审,不能复审 Entities.QS_RulesTable QS_RulesTableModel = BLL.QS_RulesTable.Instance.GetQS_RulesTable(info.QS_RTID); if (QS_RulesTableModel != null) { TableName = QS_RulesTableModel.Name; if (QS_RulesTableModel.ScoreType == 2) { TableName += "(致命项数" + QS_RulesTableModel.DeadItemNum + ",非致命项数" + QS_RulesTableModel.NoDeadItemNum + ")"; } } //如果具有申诉权限,并且当前人不是此录音的创建人员,关闭此页面 if (AppealButton && callRecordInfo.CreateUserID != BLL.Util.GetLoginUserID() & !RecheckButton & !AppealButton) { Response.Write(@"<script language='javascript'>alert('您没有权限查看此评分!');try { window.external.MethodScript('/browsercontrol/closepage'); } catch (e) { window.opener = null; window.open('', '_self'); window.close(); };</script>"); } //如果不是本人录音,申诉按钮不显示 if (AppealButton && callRecordInfo.CreateUserID != BLL.Util.GetLoginUserID()) { AppealButton = false; } this.ucCallRecordView.QS_RID = info.QS_RID; this.ucCallRecordView.CallID = info.CallID; this.ucCallRecordView.tableEndName = tableEndName; } Status = info.Status.ToString(); switch (Status) { case "20003": Title = "录音质检成绩初审"; this.UCScoreTableView.QS_RID = info.QS_RID; this.UCScoreTableView.QS_RTID = info.QS_RTID; break; case "20004": Title = "录音质检成绩复审"; this.ucTableDispose.CallID = info.CallID; this.ucTableDispose.QS_RID = info.QS_RID; this.ucTableDispose.QS_RTID = info.QS_RTID; break; default: Title = "录音质检成绩查看"; this.UCScoreTableView.QS_RID = info.QS_RID; this.UCScoreTableView.QS_RTID = info.QS_RTID; break; } } else { Response.Write(@"<script language='javascript'>alert('不存在此评分!');try { window.external.MethodScript('/browsercontrol/closepage'); } catch (e) { window.opener = null; window.open('', '_self',''); window.close(); };</script>"); } } else { Response.Write(@"<script language='javascript'>alert('参数有误!');try { window.external.MethodScript('/browsercontrol/closepage'); } catch (e) { window.opener = null; window.open('', '_self',''); window.close(); };</script>"); } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { int userId = BLL.Util.GetLoginUserID(); if (!BLL.Util.CheckRight(userId, "SYS024BUT600104")) { Response.Write(BLL.Util.GetNotAccessMsgPage("您没有访问该页面的权限")); Response.End(); } if (QS_RTID != 0 && CallID != 0) { if (QS_RID <= 0) { QS_RID = BLL.QS_Result.Instance.GetRidByCallidAndRtid(QS_RTID, CallID); } Entities.QS_RulesTable tablemodel = BLL.QS_RulesTable.Instance.GetQS_RulesTable(QS_RTID); //由于易湃外呼业务录音不入CC的CallRecordInfo表,所以取CallRecord_ORIG_Business来判断录音是否存在 modify by qizq 2014-4-17 //Entities.CallRecordInfo callmodel = BLL.CallRecordInfo.Instance.GetCallRecordInfoByCallID(CallID); Entities.CallRecord_ORIG_Business callmodel = BLL.CallRecord_ORIG_Business.Instance.GetByCallID(CallID, tableEndName); if (tablemodel != null && callmodel != null) { TableName = tablemodel.Name; if (tablemodel.ScoreType == 2) { TableName += "(致命项数" + tablemodel.DeadItemNum + ",非致命项数" + tablemodel.NoDeadItemNum + ")"; } bool flag = true; if (QS_RID != 0) { Entities.QS_Result modelQS_Result = BLL.QS_Result.Instance.GetQS_Result(QS_RID); if (modelQS_Result != null && modelQS_Result.Status == (Int32)Entities.QSResultStatus.WaitScore) { } else { flag = false; } } if (flag) { QualityStandardEditID.QS_RTID = QS_RTID; QualityStandardEditID.QS_RID = QS_RID; QualityStandardEditID.CallID = CallID; UCCallRecordView1.QS_RID = QS_RID; UCCallRecordView1.CallID = CallID; UCCallRecordView1.tableEndName = tableEndName; } else { Response.Write(@"<script language='javascript'>javascript:alert('当前评分成绩不是待评分状态!');try { window.external.MethodScript('/browsercontrol/closepage'); } catch (e) { window.opener = null; window.open('', '_self'); window.close(); };</script>"); } } else { Response.Write(@"<script language='javascript'>javascript:alert('评分表不存在或录音不存在!');try { window.external.MethodScript('/browsercontrol/closepage'); } catch (e) { window.opener = null; window.open('', '_self'); window.close(); };</script>"); } } else { Response.Write(@"<script language='javascript'>javascript:alert('页面请求参数不正确!');try { window.external.MethodScript('/browsercontrol/closepage'); } catch (e) { window.opener = null; window.open('', '_self'); window.close(); };</script>"); } } }
private void BindData() { #region 成绩结果 if (QS_RID != 0) { Entities.QS_Result model = BLL.QS_Result.Instance.GetQS_Result(QS_RID); if (model != null) { if (model.ScoreType == 1 || model.ScoreType == 3) { tdScore.InnerText = model.Score.ToString().Replace(".0", "") + "分"; } else { tdScore.InnerText = model.IsQualified == 1 ? "合格" : "不合格"; } if (model.Status != (int)QSResultStatus.WaitScore) { this.tdScore.Visible = true; } } } #endregion #region 录音 Entities.CallRecord_ORIG origM = BLL.CallRecord_ORIG.Instance.GetCallRecord_ORIGByCallID(CallID, tableEndName); Entities.CallRecord_ORIG_Business businessM = BLL.CallRecord_ORIG_Business.Instance.GetByCallID(CallID, tableEndName); if (origM != null && businessM != null) { this.spCallID.InnerText = origM.CallID.ToString(); this.spLiuShui.InnerHtml = string.Format("<a href='/KnowledgeLib/Personalization/DownLoadFilePage.aspx?theAction=1&theUrl={1}'>{0}</a>", origM.SessionID, HttpUtility.UrlEncode(origM.AudioURL)); this.spUserName.InnerText = BitAuto.YanFa.SysRightManager.Common.UserInfo.GerTrueName((int)businessM.CreateUserID); this.spBeginTime.InnerText = origM.EstablishedTime.ToString(); this.spTimeLong.InnerText = origM.TallTime.ToString(); this.spCallType.InnerText = BitAuto.ISDC.CC2012.BLL.Util.GetCallStatus(origM.CallStatus.Value.ToString()); FileUrl = origM.AudioURL; this.spTaskID.InnerText = businessM.BusinessID; //分类名称 Entities.SurveyCategory ScMode = BLL.SurveyCategory.Instance.GetSurveyCategory((int)businessM.SCID); if (ScMode != null) { this.spSCName.InnerText = ScMode.Name; } //链接 string url = BLL.CallRecord_ORIG_Business.Instance.GetTaskUrl(businessM.BusinessID, businessM.BGID.ToString(), businessM.SCID.ToString()); url = BLL.CallRecord_ORIG_Business.Instance.GetViewUrl(businessM.BusinessID, url); this.spTaskID.InnerHtml = BLL.Util.GenBusinessURLByBGIDAndSCID(businessM.BGID.ToString(), businessM.SCID.ToString(), url, businessM.BusinessID, YPFanXianHBuyCarURL, EPEmbedCCHBuyCar_APPID); } //满意度加载 int ivrscore = BLL.IVRSatisfaction.Instance.GetIVRScoreBYCallID(CallID, tableEndName); string strScore = ""; switch (ivrscore) { case 0: strScore = "未评价"; break; case 1: strScore = "满意"; break; case 2: strScore = "对问题处理结果不满意"; break; case 3: strScore = "对客服代表服务不满意"; break; case 10: strScore = "已解决,未评价"; break; case 11: strScore = "已解决,满意"; break; case 12: strScore = "已解决,对处理结果不满意"; break; case 13: strScore = "已解决,对客服代表服务不满意"; break; case 20: strScore = "未解决,未评价"; break; case 21: strScore = "未解决,满意"; break; case 22: strScore = "未解决,对处理结果不满意"; break; case 23: strScore = "未解决,对客服代表服务不满意"; break; default: break; } spIVRScore.InnerText = strScore; #endregion }
/// <summary> /// 更新一条数据 /// </summary> public int Update(Entities.CallRecord_ORIG_Business model) { return(Dal.CallRecord_ORIG_Business.Instance.Update(model)); }
/// <summary> /// 增加一条数据 /// </summary> public int Insert(Entities.CallRecord_ORIG_Business model) { BLL.Loger.Log4Net.Info("[BLL]InsertCallRecord_ORIG_Business ...插入开始...CallID:" + model.CallID); return(Dal.CallRecord_ORIG_Business.Instance.Insert(model)); }