Browse Source

no message

xingzai 9 months ago
parent
commit
21d94c4308

+ 4 - 0
controllers/cygx/contract_allocation.go

@@ -317,6 +317,10 @@ func (this *ContractAllocationController) CompanyContractList() {
 				v.MoneyPoint = mapMoneyPoint[v.CompanyContractId]
 				v.PermissionName = mappermissionName[v.CompanyContractId]
 				v.IsGray = mapIsGray[v.CompanyContractId]
+				if v.ContractType == "打分派点" {
+					quarter, _ := utils.GetQuarterStrStartDatesInRange(v.StartDate, v.EndDate)
+					v.Quarter = strings.Replace(quarter, ",", "+", -1)
+				}
 			}
 		}
 	}

+ 35 - 0
controllers/cygx/enter_score.go

@@ -365,6 +365,41 @@ func (this *EnterScoreController) EnterScoreUpdate() {
 		return
 	}
 
+	var condition string
+	var pars []interface{}
+
+	condition += " AND  company_id =? AND end_date BETWEEN ? AND ?  "
+	pars = append(pars, companyId, startDate, endDate)
+	total, err := cygx.GetCygxEnterScoreCount(condition, pars)
+	if err != nil {
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取失败,Err:" + err.Error()
+		return
+	}
+
+	if total > 0 {
+		listEnterScore, err := cygx.GetCygxEnterScoreList(condition, pars, 0, 1)
+		if err != nil {
+			br.Msg = "获取失败"
+			br.ErrMsg = "获取失败,Err:" + err.Error()
+			return
+		}
+		var startDateEnter, endDateEnter string
+		for _, v := range listEnterScore {
+			startDateEnter = v.StartDate
+			endDateEnter = v.EndDate
+		}
+
+		quarter, err := utils.GetQuarterStrStartDatesInRangeHaveYear(startDateEnter, endDateEnter)
+		if err != nil {
+			br.Msg = "操作失败"
+			br.ErrMsg = "获取已录过分的季度失败,Err:" + err.Error()
+			return
+		}
+		br.Msg = quarter + "季度已录过分,请核实"
+		return
+	}
+
 	companyProduct, err := company.GetCompanyProductByCompanyIdAndProductId(companyId, utils.COMPANY_PRODUCT_RAI_ID)
 	if err != nil {
 		br.Msg = "查询客户产品信息失败"

+ 8 - 0
models/company/company_contract.go

@@ -299,6 +299,14 @@ func UpdateCompanyContractPackageDifference(packageDifference string, companyCon
 	return
 }
 
+// 更新合同类型
+func UpdateCompanyContractType(contractType string, companyContractId int) (err error) {
+	o := orm.NewOrm()
+	sql := `UPDATE company_contract SET contract_type = ?  WHERE company_contract_id=? `
+	_, err = o.Raw(sql, contractType, companyContractId).Exec()
+	return
+}
+
 // GetLastContractListByEndDate 通过最近一份合同的日期获取早于该合同的最晚一份合同
 func GetLastContractListByEndDate(companyId, productId int, endDate string) (item *CompanyContract, err error) {
 	o := orm.NewOrm()

+ 1 - 0
models/cygx/company_contract.go

@@ -26,6 +26,7 @@ type CompanyContractResp struct {
 	ContractId        int     `description:"合同唯一id"`
 	MoneyPoint        float64 `description:"派点金额"`
 	PermissionName    string  `description:"权限名"`
+	Quarter           string  `description:"季度(X类试用客户使用)"`
 }
 
 // 增量客户统计报表返回类

+ 1 - 0
services/company_apply/company_approval.go

@@ -421,6 +421,7 @@ func Approved(approvalRecord *contract.ContractApprovalRecord, opUser *system.Ad
 				//客户研选行业转正时(王芳审批通过),模板消息提醒汪洋
 				services.AddCompanyApprovalMessageWangYang(recordInfo.CompanyId, recordInfo.CompanyContractId, recordInfo.ApplyRealName, companyInfo.CompanyName)
 				cygxService.YanXuanCompanyApproval(recordInfo.CompanyId, recordInfo.CompanyContractId) //研选审批通过的时候研选扣点更新
+				cygxService.HandleCompanyContractTypeByRaiXClass(recordInfo.CompanyContractId)         //所有x类试用转正的合同都记为 :打分派点
 				//cygxService.HandleAllocationCompanyContractByYanXuan(recordInfo.CompanyContractId)     //如果合同只有研选的时候,自动处理派点
 				cygxService.HandleCompanyContractPackageDifference(recordInfo.CompanyContractId)      // 更新与上一份合同的金额的对比 '增加套餐','减少套餐','维持套餐'
 				cygxService.HandleCompanyContractPermissionContractType(recordInfo.CompanyContractId) // 更新合同权限表中的权限名称,以及对应的行业权限类型(行业新签、行业续约)

+ 33 - 0
services/cygx/contract_allocation.go

@@ -449,6 +449,39 @@ func HandleCompanyContractPackageDifference(companyContractId int) (err error) {
 
 }
 
+// HandleCompanyContractTypeByRaiXClass 所有x类试用转正的合同都记为 :打分派点
+func HandleCompanyContractTypeByRaiXClass(companyContractId int) (err error) {
+	defer func() {
+		if err != nil {
+			go alarm_msg.SendAlarmMsg(fmt.Sprint(" 所有x类试用转正的合同都记为 :打分派点失败,HandleCompanyContractTypeByRaiXClass Err:", err.Error(), "companyContractId", companyContractId), 2)
+		}
+	}()
+	var condition string
+	var pars []interface{}
+	condition = " AND company_contract_id = ?  "
+	pars = append(pars, companyContractId)
+	detail, e := company.GetCompanyContracDetail(condition, pars)
+	if e != nil {
+		err = errors.New("GetCompanyContracDetail,detail Err: " + e.Error())
+		return
+	}
+	companyProduct, e := company.GetCompanyProductByCompanyIdAndProductId(detail.CompanyId, utils.COMPANY_PRODUCT_RAI_ID)
+	if e != nil {
+		err = errors.New("GetCompanyProductByCompanyIdAndProductId Err: " + e.Error())
+		return
+	}
+	//权益非永续客户不处理
+	if companyProduct.Status != utils.COMPANY_STATUS_FOREVER {
+		return
+	}
+	e = company.UpdateCompanyContractType("打分派点", companyContractId)
+	if e != nil {
+		err = errors.New("UpdateCompanyContractType, Err: " + e.Error())
+		return
+	}
+	return
+}
+
 // HandleCompanyContractPermissionContractType 更新合同权限表中的权限名称,以及对应的行业权限类型(行业新签、行业续约)
 func HandleCompanyContractPermissionContractType(companyContractId int) (err error) {
 	defer func() {