|
@@ -102,7 +102,7 @@ func HandleCompanyContractPackageDifference(companyContractId int) (err error) {
|
|
|
defer func() {
|
|
|
if err != nil {
|
|
|
fmt.Println(err)
|
|
|
- go alarm_msg.SendAlarmMsg(fmt.Sprint("如果合同只有研选的时候,自动处理派点失败,Err:", err.Error(), "companyContractId", companyContractId), 2)
|
|
|
+ go alarm_msg.SendAlarmMsg(fmt.Sprint("更新与上一份合同的金额的对比 '增加套餐','减少套餐','维持套餐'失败,,Err:", err.Error(), "companyContractId", companyContractId), 2)
|
|
|
}
|
|
|
}()
|
|
|
var condition string
|
|
@@ -115,25 +115,37 @@ func HandleCompanyContractPackageDifference(companyContractId int) (err error) {
|
|
|
err = errors.New("GetCompanyContracDetail,detail Err: " + e.Error())
|
|
|
return
|
|
|
}
|
|
|
+ if detail.ProductId != 2 {
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ startYeaar := utils.StrDateToDate(detail.StartDate).Year()
|
|
|
+
|
|
|
+ lastYearStartData := fmt.Sprint(startYeaar-1, "-01-01")
|
|
|
+ lastYearEndData := fmt.Sprint(startYeaar-1, "-12-31")
|
|
|
|
|
|
//如果不是续约合同就不做对比处理
|
|
|
if detail.ContractType != "续约合同" {
|
|
|
return
|
|
|
}
|
|
|
- //获取前一份合同的信息
|
|
|
+ //获取前一年所有的合同列表
|
|
|
pars = make([]interface{}, 0)
|
|
|
- condition = " AND company_id = ? AND company_contract_id < ? AND status = 1 AND product_id = ? ORDER BY company_contract_id DESC LIMIT 1 "
|
|
|
- pars = append(pars, detail.CompanyId, companyContractId, detail.ProductId)
|
|
|
- detailPrevious, e := company_contract.GetCompanyContracDetail(condition, pars)
|
|
|
+ condition = " AND company_id = ? AND company_contract_id < ? AND status = 1 AND product_id = ? AND start_date >= ? AND start_date <= ? "
|
|
|
+ pars = append(pars, detail.CompanyId, companyContractId, detail.ProductId, lastYearStartData, lastYearEndData)
|
|
|
+ companyContracList, e := company_contract.GetCompanyContracList(condition, pars)
|
|
|
if e != nil {
|
|
|
- err = errors.New("GetCompanyContracDetail,detailPrevious Err: " + e.Error())
|
|
|
+ err = errors.New("GetCompanyContracList Err: " + e.Error())
|
|
|
return
|
|
|
}
|
|
|
- var packageDifference string
|
|
|
|
|
|
- if detail.Money > detailPrevious.Money {
|
|
|
+ var sumMoney float64
|
|
|
+ var packageDifference string
|
|
|
+ for _, v := range companyContracList {
|
|
|
+ sumMoney += v.Money
|
|
|
+ }
|
|
|
+ if detail.Money > sumMoney {
|
|
|
packageDifference = "增加套餐"
|
|
|
- } else if detail.Money < detailPrevious.Money {
|
|
|
+ } else if detail.Money < sumMoney {
|
|
|
packageDifference = "减少套餐"
|
|
|
} else {
|
|
|
packageDifference = "维持套餐"
|