xingzai 8 kuukautta sitten
vanhempi
commit
4edd2caeb2
2 muutettua tiedostoa jossa 46 lisäystä ja 3 poistoa
  1. 19 0
      models/rai_serve/rai_serve_company.go
  2. 27 3
      services/rai_serve_count.go

+ 19 - 0
models/rai_serve/rai_serve_company.go

@@ -116,6 +116,25 @@ func UpdateCygxRaiServeCompanyFormalNoMulti(items []*CygxRaiServeCompany) (err e
 	return
 }
 
+// UpdateCygxRaiServeCompanyFormalNoContractMulti 批量修改非正式,且没有签约过合同的客户信息
+func UpdateCygxRaiServeCompanyFormalNoContractMulti(items []*CygxRaiServeCompany) (err error) {
+	o := orm.NewOrm()
+	p, err := o.Raw("UPDATE cygx_rai_serve_company SET serve_coverage_rate =?  ,is_user_maker = ?    WHERE company_id = ?").Prepare()
+	if err != nil {
+		return
+	}
+	defer func() {
+		_ = p.Close() // 别忘记关闭 statement
+	}()
+	for _, v := range items {
+		_, err = p.Exec(v.ServeCoverageRate, v.IsUserMaker, v.CompanyId)
+		if err != nil {
+			return
+		}
+	}
+	return
+}
+
 // 获取当前所属权益服务公司表所有ID
 func GetCygxRaiServeCompanyAllList() (items []*CygxRaiServeCompany, err error) {
 	o := orm.NewOrm()

+ 27 - 3
services/rai_serve_count.go

@@ -1287,9 +1287,11 @@ func UpdateWeekAvg() (err error) {
 		return
 	}
 
-	//非正式客户数据修改
-	var itemsUpdateFormalNo []*rai_serve.CygxRaiServeCompany
-	if len(formalNoCompanyIds) > 0 { //非正式客户信息
+	var itemsUpdateFormalNo []*rai_serve.CygxRaiServeCompany         //非正式客户数据修改
+	var itemsUpdateFormalNoContract []*rai_serve.CygxRaiServeCompany //非正式客户没有合同的客户修改
+
+	mapContractCompanyIds := make(map[int]bool) //签过合同的试用客户ID
+	if len(formalNoCompanyIds) > 0 {            //非正式客户信息
 		condition = ""
 		pars = make([]interface{}, 0)
 		condition = `    AND product_id = 2 AND company_id IN  (` + utils.GetOrmInReplace(len(formalNoCompanyIds)) + `) AND status = 1  AND  end_date < ?  GROUP BY	company_id  ORDER BY	company_contract_id DESC `
@@ -1331,6 +1333,22 @@ func UpdateWeekAvg() (err error) {
 			}
 			item.PermissionName = permissionNameMapByContractId[v.CompanyContractId]
 			itemsUpdateFormalNo = append(itemsUpdateFormalNo, item)
+			mapContractCompanyIds[v.CompanyId] = true
+		}
+
+		for _, v := range formalNoCompanyIds {
+			if mapContractCompanyIds[v] {
+				continue
+			}
+			fmt.Println(v)
+			item := new(rai_serve.CygxRaiServeCompany)
+			item.CompanyId = v
+
+			item.ServeCoverageRate = utils.SubFloatToString(mapWeekServeCount[v]/4, 2)
+			if mapWeekIsKp[v] {
+				item.IsUserMaker = 1
+			}
+			itemsUpdateFormalNoContract = append(itemsUpdateFormalNoContract, item)
 		}
 	}
 	e = rai_serve.UpdateCygxRaiServeCompanyFormalNoMulti(itemsUpdateFormalNo)
@@ -1338,6 +1356,12 @@ func UpdateWeekAvg() (err error) {
 		err = errors.New("UpdateCygxRaiServeCompanyFormalNoMulti, Err: " + e.Error())
 		return
 	}
+
+	e = rai_serve.UpdateCygxRaiServeCompanyFormalNoContractMulti(itemsUpdateFormalNoContract)
+	if e != nil {
+		err = errors.New("UpdateCygxRaiServeCompanyFormalNoMulti, Err: " + e.Error())
+		return
+	}
 	fmt.Println(" UpdateWeekAvg  end")
 	return
 }