Browse Source

feature(报表统计): 转化项目统计表优化,统计第一条审批通过的合同的签订时间作为转化时间统计

lk 2 years ago
parent
commit
ad20283080
1 changed files with 1 additions and 1 deletions
  1. 1 1
      opms_parent/app/service/proj/report.go

+ 1 - 1
opms_parent/app/service/proj/report.go

@@ -133,7 +133,7 @@ func (s *BusinessReportService) QueryBusinessTransformNum(date string) (interfac
 	if err != nil {
 		return nil, err
 	}
-	err = s.Dao.DB.Model(fmt.Sprintf("(SELECT proj_business.* FROM proj_business INNER JOIN ((SELECT * FROM ctr_contract WHERE ctr_contract.appro_status='30' AND ctr_contract.deleted_time IS NULL GROUP BY nbo_id ORDER BY ctr_contract.contract_sign_time ASC) c) ON proj_business.id=c.nbo_id WHERE c.contract_sign_time LIKE '%v%%' AND proj_business.nbo_type<>'50' AND proj_business.appro_status='30' AND proj_business.deleted_time IS NULL %v GROUP BY proj_business.id) a", date, where)).LeftJoin("(SELECT * FROM proj_business_dynamics WHERE opn_content LIKE '%\"origNboType\":\"50\"%' AND opn_type='40' AND proj_business_dynamics.deleted_time IS NULL GROUP BY proj_business_dynamics.bus_id) b", "a.id=b.bus_id").Unscoped().Where("b.id IS NULL").Fields("a.*,COUNT(1) total").Group("a.sale_id, a.product_line").Order("a.sale_id ASC, a.product_line ASC").Scan(&businessInfos2)
+	err = s.Dao.DB.Model(fmt.Sprintf("(SELECT proj_business.* FROM proj_business INNER JOIN ((SELECT ctr_contract.* FROM ctr_contract INNER JOIN (SELECT nbo_id,MIN(contract_sign_time) contract_sign_time FROM ctr_contract WHERE ctr_contract.appro_status='30' AND ctr_contract.deleted_time IS NULL GROUP BY nbo_id) t ON ctr_contract.nbo_id=t.nbo_id AND ctr_contract.contract_sign_time=t.contract_sign_time WHERE ctr_contract.appro_status='30' AND ctr_contract.deleted_time IS NULL GROUP BY ctr_contract.id) c) ON proj_business.id=c.nbo_id WHERE c.contract_sign_time LIKE '%v%%' AND proj_business.nbo_type<>'50' AND proj_business.appro_status='30' AND proj_business.deleted_time IS NULL %v GROUP BY proj_business.id) a", date, where)).LeftJoin("(SELECT * FROM proj_business_dynamics WHERE opn_content LIKE '%\"origNboType\":\"50\"%' AND opn_type='40' AND proj_business_dynamics.deleted_time IS NULL GROUP BY proj_business_dynamics.bus_id) b", "a.id=b.bus_id").Unscoped().Where("b.id IS NULL").Fields("a.*,COUNT(1) total").Group("a.sale_id, a.product_line").Order("a.sale_id ASC, a.product_line ASC").Scan(&businessInfos2)
 	if err != nil {
 		return nil, err
 	}