Browse Source

电动机生成报表

lining 6 years ago
parent
commit
997f1be5a2

+ 8 - 0
src/dashoo.cn/backend/api/business/codecsequence/codecsequenceService.go

@@ -419,4 +419,12 @@ func (s *CodecSequenceService)GetDetailHSSequence(accCode string) string{
 	sequence := s.GetSequenceByName(accCode, seqName)
 	seqStr := "J计QW1.1-" + fmt.Sprintf("%03s", strconv.Itoa(sequence))
 	return seqStr
+}
+
+//电动机报表
+func (s *CodecSequenceService)GetReportMotor(accCode string) string{
+	seqName := "MotorReport"
+	sequence := s.GetSequenceByName(accCode, seqName)
+	seqStr := "J能QD-1-"+ strconv.Itoa(time.Now().Year()) + "-" + fmt.Sprintf("%03s", strconv.Itoa(sequence))
+	return seqStr
 }

+ 17 - 5
src/dashoo.cn/backend/api/business/limsreportmotor/limsreportmotorService.go

@@ -20,7 +20,7 @@ func GetLimsReportMotorService(xormEngine *xorm.Engine) *LimsReportMotorService
 }
 
 /**
- * 生成[液压安全阀]报告
+ * 生成报告
  */
 func (s *LimsReportMotorService) DataToExcelReport(entrustMainEntity limsentrust.LimsEntrustMain, dateentryname string, createreportname string,tablename string, seqStr string, retUrl string, entrustId string, dataentryIds string) (reportUrl string, err error) {
 	var reportList []LimsReportMotor
@@ -33,13 +33,25 @@ func (s *LimsReportMotorService) DataToExcelReport(entrustMainEntity limsentrust
 
 	svcActiviti := workflow.GetActivitiService(utils.DBE)
 	datamap := make(map[string]interface{})
-	datamap["key"] = "val"
-	svcActiviti.FillWordTemplate(datamap, templateUrl, fileName)
+	datamap["code"] = seqStr
+	datamap["company"] = reportList[0].TestDepart
+	datamap["jcnum"] = reportList[0].SectionMonitor
+	datamap["jcdate"] =  reportList[0].CreateOn.Format("2006年01月02日")
+	datamap["oname"] = reportList[0].DeviceName
+	datamap["spec"] = reportList[0].MotorType
+	datamap["number"] = reportList[0].DeviceName
+	datamap["place"] = reportList[0].InstalPosition
+	datamap["instr"] = reportList[0].UseInstrument
+	datamap["jcproject"] = ""
+	datamap["jcdata"] = "65.32"
+	datamap["limitval"] = "36.32"
+	datamap["result"] = "合格"
+	reportUrl = svcActiviti.FillWordTemplate(datamap, templateUrl, fileName)
 
 	//urlArr := strings.Split(template.FileURL, "|")
 	//templateUrl := "http://" + urlArr[0]
 	//fileName := urlArr[1]
 	//DocUrl = svcActiviti.FillWordTemplate(datamap, templateUrl, fileName)
-	//err = nil
-	return 
+	err = nil
+	return  reportUrl, err
 }

+ 10 - 2
src/dashoo.cn/backend/api/controllers/lims/limscreatereport.go

@@ -298,6 +298,12 @@ func (this *CreateReportController) GetReportUrl() {
 	order := " b.CreateOn desc"
 	svc := limscreatereport.GetCreateReportService(utils.DBE)
 	reportlist = svc.GetReportUrl(this.User.AccCode+LimsCreateReportName, this.User.AccCode+LimsReportHistoryName, order, where)
+	var doctemplate []limsdataentry.LimsDocTemplate
+	docwhere := "Id=" + strconv.Itoa(reportlist[0].TemplateId)
+	//svc.GetEntity(doctemplate, docwhere)
+	svc.GetEntitysByWhere(this.User.AccCode + LimsDocTemplateName, docwhere , &doctemplate)
+	fileurl := strings.Split(doctemplate[0].FileURL, "|")
+	file := strings.Split(fileurl[1], ".")
 	if reportlist[0].UnHGReportUrl == "" {
 		ReportUrl = reportlist[0].ReportUrl
 	} else {
@@ -306,7 +312,7 @@ func (this *CreateReportController) GetReportUrl() {
 	reportrequest.ReportAddress = "http://" + ReportUrl
 	reportrequest.ReportId = reportlist[0].Id
 	reportrequest.ReportUrl = base64.RawURLEncoding.EncodeToString(quickStringByte(ReportUrl))
-	reportname := strconv.Itoa(reportlist[0].Id) + "_" + reportlist[0].TemplateName + ".xlsx"
+	reportname := strconv.Itoa(reportlist[0].Id) + "_" + reportlist[0].TemplateName + "." + file[1]
 	reportrequest.ReportName = base64.RawURLEncoding.EncodeToString(quickStringByte(reportname))
 	var errinfo ErrorDataInfo
 	errinfo.Item = reportrequest
@@ -975,7 +981,9 @@ func (this *CreateReportController) generateExcelReportN(entrustMain limsentrust
 		reportUrl, err = svc.DataToExcelReport(this.User.AccCode+LimsDateEntryName, this.User.AccCode+LimsCreateReportName, this.User.AccCode+LimsReportAlertorName, this.User.AccCode+LimsReportAlertorCertificateName, this.User.AccCode+LimsReportAlertorDeviationName, this.User.AccCode+LimsReportAlertorResponseTimeName, this.User.AccCode+LimsReportAlertorRepeatName, this.User.AccCode+LimsReportAlertorShiftName, seqStr, docTemplate.FileURL, entrustId, dataentryIds)
 
 	case limsdoctemplate.DAYT_LIMSREPORTMOTOR_REPORT:
-		seqStr := entrustMain.EntrustNo
+		codecSvc := codecsequence.GetCodecSequenceService(utils.DBE)
+		seqStr := codecSvc.GetReportMotor(this.User.AccCode)
+		fmt.Println(time.Now().Month())
 		svc := limsreportmotor.GetLimsReportMotorService(utils.DBE)
 		reportUrl, err = svc.DataToExcelReport(entrustMain, this.User.AccCode+LimsDateEntryName, this.User.AccCode+LimsCreateReportName, this.User.AccCode+LimsReportMotorName, seqStr, docTemplate.FileURL, entrustId, dataentryIds)
 	}