Ver Fonte

后:模板调整;导出评价

dubch há 4 anos atrás
pai
commit
ff80016344

+ 17 - 0
src/dashoo.cn/backend/api/business/oilcontract/contractEvaluationItems/contractEvaluationItemsService.go

@@ -14,3 +14,20 @@ func GetOilContractEvaluationItemsService(xormEngine *xorm.Engine) *OilContractE
 	s.DBE = xormEngine
 	return s
 }
+
+func (s *OilContractEvaluationItemsService) GetSumScore(entitiesPtr interface{}, where string) {
+
+	sql := "SELECT a.Id ItemId,a.NormalScore,sum(b.Score) Score,GROUP_CONCAT(b.Remark) Remark,min(b.Value) Value,a.Category Type,a.ParentId FROM OilEvaluationItems a "
+	sql += " LEFT JOIN OilContractEvaluationItems b on a.Id = b.ItemId"
+	sql += " WHERE " + where +  " GROUP BY a.Id"
+
+	s.DBE.SQL(sql).Find(entitiesPtr)
+}
+
+func (s *OilContractEvaluationItemsService) GetCountItems(entitiesPtr interface{}, where string) {
+
+	sql := "SELECT count(*) as ContentReviewId from OilContractEvaluationItems"
+	sql += " WHERE " + where +  " GROUP BY Category"
+
+	s.DBE.SQL(sql).Find(entitiesPtr)
+}

+ 2 - 2
src/dashoo.cn/backend/api/conf/app.conf

@@ -63,8 +63,8 @@ callbackHost=http://localhost:10091/api
 # BaseUrl=http://localhost:8080/acti-api/api/acti
 
 contractUrl=http://weed1.labsop.cn:9390/4,03b0345ae913f9
-reviewGoodsUrl=http://weed1.labsop.cn:9390/3,04bcc0d2f6bf6e
-reviewServiceUrl=http://weed1.labsop.cn:9390/5,04bcbf3657f007
+reviewGoodsUrl=http://weed1.labsop.cn:9390/3,04bd11be92260c
+reviewServiceUrl=http://weed1.labsop.cn:9390/4,04bd0e8e219881
 reviewBasisUrl=http://weed1.labsop.cn:9390/6,03b041cda73303
 contractSumScoreUrl=http://weed1.labsop.cn:9390/3,04b52a0cbe710e
 ServiceSumScoreUrl=http://weed1.labsop.cn:9390/1,036a3addb41d61

+ 34 - 25
src/dashoo.cn/backend/api/controllers/oilcontract/contractReview.go

@@ -308,6 +308,7 @@ func (this *OilContractReviewController) DocExport() {
 	svc := contractReview.GetOilContractReviewService(utils.DBE)
 
 	var items []contractEvaluationItems.OilContractEvaluationItems
+	var items1 []contractEvaluationItems.OilContractEvaluationItems
 	itemSvc := contractEvaluationItems.GetOilContractEvaluationItemsService(utils.DBE)
 
 	var contractModel contract.OilContract
@@ -316,38 +317,46 @@ func (this *OilContractReviewController) DocExport() {
 	where := " Id = '" + Id + "'"
 	svc.GetEntityByWhere(OilContractReviewName, where, &model)
 
-	where2 := " ContentReviewId=" + Id + " AND Category = 0 "
-	itemSvc.GetEntitysByWhere(OilContractEvaluationItemsName, where2, &items)
-
 	where3 := " Id= '" + utils.ToStr(model.ContractId) + "' "
 	contractSvc.GetEntityByWhere(OilContractName, where3, &contractModel)
 
-	var supplierEntity supplier.OilSupplier
-	supplierSvc := supplier.GetOilSupplierService(utils.DBE)
-	supplierSvc.GetEntityByIdBytbl(OilSupplierName, contractModel.SupplierId, &supplierEntity)
-
-	datamap := structToMapDemo(model)
-
 	var score = 0.00
 	var normalScore = 0.00
-	// 新增配置项
-	for i, v := range items {
-		fmt.Print(i)
-		fmt.Print(utils.ToStr(v.ItemId))
-
-		if v.Type == 1 {
-			datamap["score_"+utils.ToStr(v.ItemId)] = v.Score
-			datamap["content_"+utils.ToStr(v.ItemId)] = v.Remark
-			if v.ParentId == 0 {
-				tmp, _ := strconv.ParseFloat(v.Score, 64)
-				score = score + tmp
-				normal, _ := strconv.ParseFloat(v.NormalScore, 64)
-				normalScore = normalScore + normal
+	var count = 1.00
+	datamap := structToMapDemo(model)
+	where2 := " b.ContentReviewId = " + Id + " AND a.Type  = '" + contractModel.ContractClass + "'"
+	itemSvc.GetSumScore(&items, where2)
+
+	where2 = " ContentReviewId = " + Id
+	itemSvc.GetCountItems(&items1, where2)
+
+	if len(items1) == 2 {
+		count += 1
+	}
+	if items != nil {
+		for i, v := range items {
+			fmt.Print(i)
+			fmt.Print(utils.ToStr(v.ItemId))
+
+			if v.Type == 1 {
+				Score1, _ := strconv.ParseFloat(v.Score, 64)
+				datamap["score_"+utils.ToStr(v.ItemId)] = Score1/count
+				datamap["content_"+utils.ToStr(v.ItemId)] = v.Remark
+				if v.ParentId == 0 {
+					score = score + (Score1/count)
+					normal, _ := strconv.ParseFloat(v.NormalScore, 64)
+					normalScore = normalScore + (normal/count)
+				}
+			} else {
+				datamap["bool_"+utils.ToStr(v.ItemId)] = If(v.Value == 1, "是", "否")
 			}
-		} else {
-			datamap["bool_"+utils.ToStr(v.ItemId)] = If(v.Value == 1, "是", "否")
 		}
 	}
+
+	var supplierEntity supplier.OilSupplier
+	supplierSvc := supplier.GetOilSupplierService(utils.DBE)
+	supplierSvc.GetEntityByIdBytbl(OilSupplierName, contractModel.SupplierId, &supplierEntity)
+
 	datamap["Score"] = utils.ToStr(score)
 	datamap["Standard"] = utils.ToStr(normalScore)
 	datamap["Discount"] = score
@@ -355,7 +364,7 @@ func (this *OilContractReviewController) DocExport() {
 	if contractModel.Id != 0 {
 		datamap["Amount"] = contractModel.Amount
 		datamap["SupplierName"] = contractModel.SupplierName
-		datamap["ProjectName"] = contractModel.ProjectName
+		datamap["ProjectName"] = contractModel.ContractName
 		datamap["ContractNo"] = contractModel.ContractNo
 		datamap["SubPackage"] = If(contractModel.SubPackage == 1, "是", "否")
 		if contractModel.ProjectType == "咨询" {

BIN
src/dashoo.cn/doc/供应商日常业绩评价表模板.docx


BIN
src/dashoo.cn/doc/服务商日常业绩评价表模板.docx