zhangchuanxing 3 месяцев назад
Родитель
Сommit
19d673f74a

+ 13 - 0
models/tables/company_product/company_product.go

@@ -36,6 +36,7 @@ type CompanyProduct struct {
 	CompanyType      string    `description:"客户类型"`
 	PackageType      int       `description:"套餐类型,0:无,1:大套餐,2:小套餐"`
 	IsFormal         int       `description:"是否已经转正式,0是没有转正式,1是已经转过正式"`
+	ShareSeller      string    `description:"共享销售员"`
 	ShareSellerId    int       `description:"共享销售员id"`
 }
 
@@ -136,3 +137,15 @@ func GetCompanyProductList(condition string, pars []interface{}) (items []*Compa
 	_, err = o.Raw(sql, pars).QueryRows(&items)
 	return
 }
+
+// 合同未到期更新对应销售的信息
+func UpdateCompanyProductSellerUnexpired(sellerId, shareSellerInit int, sellerName, shareSeller string, companyId int) (err error) {
+	o := orm.NewOrm()
+	sql := `UPDATE company_product SET
+                            seller_id_last = ? , 
+                            seller_name_last = ? , 
+                            share_seller_id_last  = ? , 
+                            share_seller_last = ?  WHERE company_id = ?  AND product_id= 2 `
+	_, err = o.Raw(sql, sellerId, sellerName, shareSellerInit, shareSeller, companyId).Exec()
+	return
+}

+ 4 - 2
services/company_approval/company_approval.go

@@ -23,6 +23,7 @@ import (
 	"hongze/hongze_mobile_admin/models/tables/contract_approval_record"
 	"hongze/hongze_mobile_admin/services"
 	"hongze/hongze_mobile_admin/services/alarm_msg"
+	contractService "hongze/hongze_mobile_admin/services/contract"
 	cygxService "hongze/hongze_mobile_admin/services/cygx"
 	"hongze/hongze_mobile_admin/services/flow"
 	"hongze/hongze_mobile_admin/utils"
@@ -439,8 +440,9 @@ func Approved(approvalRecord *contract_approval_record.ContractApprovalRecord, o
 
 				cygxService.YanXuanCompanyApproval(recordInfo.CompanyId, recordInfo.CompanyContractId) //研选审批通过的时候研选扣点更新
 				//cygxService.HandleAllocationCompanyContractByYanXuan(recordInfo.CompanyContractId)     //如果合同只有研选的时候,自动处理派点
-				cygxService.HandleCompanyContractPackageDifference(recordInfo.CompanyContractId)      // 更新与上一份合同的金额的对比 '增加套餐','减少套餐','维持套餐'
-				cygxService.HandleCompanyContractPermissionContractType(recordInfo.CompanyContractId) // 更新合同权限表中的权限名称,以及对应的行业权限类型(行业新签、行业续约)
+				cygxService.HandleCompanyContractPackageDifference(recordInfo.CompanyContractId)           // 更新与上一份合同的金额的对比 '增加套餐','减少套餐','维持套餐'
+				cygxService.HandleCompanyContractPermissionContractType(recordInfo.CompanyContractId)      // 更新合同权限表中的权限名称,以及对应的行业权限类型(行业新签、行业续约)
+				contractService.UpdateCompanyProductSellerMove(recordInfo.CompanyId, recordInfo.ProductId) // 权益客户创建新的有效合同之后,更新所关联的销售信息
 			}
 		}()
 	} else {

+ 39 - 0
services/contract/company_contract.go

@@ -0,0 +1,39 @@
+package contract
+
+import (
+	"errors"
+	"fmt"
+	"hongze/hongze_mobile_admin/models/tables/company_product"
+	"hongze/hongze_mobile_admin/services/alarm_msg"
+	"hongze/hongze_mobile_admin/utils"
+	"time"
+)
+
+// 权益客户创建新的有效合同之后,更新所关联的销售信息
+func UpdateCompanyProductSellerMove(companyId, productId int) {
+	if productId != utils.COMPANY_PRODUCT_RAI_ID {
+		return
+	}
+	time.Sleep(1 * time.Second) // 延迟1秒
+	var err error
+	defer func() {
+		if err != nil {
+			fmt.Println(err)
+			go alarm_msg.SendAlarmMsg("权益客户创建新的有效合同之后,更新所关联的销售信息,UpdateCompanyProductSellerMove "+fmt.Sprint("companyId:", companyId, ";err:", err), 3)
+		}
+	}()
+
+	cp, e := company_product.GetCompanyProductByCompanyIdAndProductId(companyId, productId)
+	if e != nil {
+		err = errors.New("GetCompanyProductByCompanyIdAndProductId Err: " + e.Error())
+		return
+	}
+
+	e = company_product.UpdateCompanyProductSellerUnexpired(cp.SellerId, cp.ShareSellerId, cp.SellerName, cp.ShareSeller, cp.CompanyId)
+	if e != nil {
+		err = errors.New("UpdateCompanyProductSellerUnexpired, Err: " + e.Error())
+		return
+	}
+
+	return
+}