Bladeren bron

Merge branch '20201014_xt_api_new_branch' of http://git.shengws.com/csx/XT_New into 20201014_xt_api_new_branch

csx 4 jaren geleden
bovenliggende
commit
990b2af35b
3 gewijzigde bestanden met toevoegingen van 213 en 59 verwijderingen
  1. 2 1
      controllers/data_api_controller.go
  2. 119 52
      controllers/manager_center_api_controller.go
  3. 92 6
      service/self_drug_service.go

+ 2 - 1
controllers/data_api_controller.go Bestand weergeven

@@ -79,6 +79,7 @@ func (c *DataApiController) CreateConfig() {
79 79
 	// 验证关键字段的值是否重复
80 80
 
81 81
 	thisConfig, _ := service.FindConfigByTitle(dataconfig.Module, dataconfig.FieldName, adminUserInfo.CurrentOrgId)
82
+	fmt.Println("99999", thisConfig)
82 83
 	if thisConfig.ID > 0 {
83 84
 		c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeFieldExist)
84 85
 		return
@@ -385,7 +386,7 @@ func configFormData(dataconfig *models.Dataconfig, data []byte) (code int) {
385 386
 	}
386 387
 	dataconfig.Module = module
387 388
 
388
-	if module == "education" || module == "summary" || module == "course_disease" || module == "rescue_record" || module == "nursing_record" || module == "special_record" {
389
+	if module == "education" || module == "summary" || module == "course_disease" || module == "rescue_record" || module == "nursing_record" || module == "special_record" || module == "special_treatment" {
389 390
 		if configBody["title"] == nil || reflect.TypeOf(configBody["title"]).String() != "string" {
390 391
 			utils.ErrorLog("title")
391 392
 			code = enums.ErrorCodeParamWrong

+ 119 - 52
controllers/manager_center_api_controller.go Bestand weergeven

@@ -8,6 +8,7 @@ import (
8 8
 	"encoding/json"
9 9
 	"fmt"
10 10
 	"github.com/astaxie/beego"
11
+	"github.com/jinzhu/gorm"
11 12
 	"reflect"
12 13
 	"strconv"
13 14
 	"time"
@@ -295,73 +296,139 @@ func (c *ManagerCenterApiController) EditBaseDrugLib() {
295 296
 
296 297
 	err := service.UpdateBaseDrugLib(drugLib)
297 298
 
298
-	//修改xt_drug_name 表
299
-	drugName := models.XtDrugName{
300
-		DrugName: drug_name,
299
+	//查询是否存在
300
+	_, errOne := service.GetDrugNameIsExist(id, adminInfo.CurrentOrgId)
301
+	if errOne == gorm.ErrRecordNotFound {
302
+		fmt.Println("进来了吗")
303
+		c.ServeSuccessJSON(map[string]interface{}{
304
+			"msg": "修改成功",
305
+		})
306
+		return
307
+	} else if errOne == nil {
308
+		//修改xt_drug_name 表
309
+		drugName := models.XtDrugName{
310
+			DrugName: drug_name,
311
+		}
312
+		service.UpdatedDrugName(id, adminInfo.CurrentOrgId, &drugName)
301 313
 	}
302
-	service.UpdatedDrugName(id, adminInfo.CurrentOrgId, &drugName)
303 314
 
304
-	//修改规格xt_stand_name表
305
-	standName := models.XtStandName{
306
-		DrugName:       drug_name,
307
-		DrugSpec:       drug_spec,
308
-		DrugStockLimit: drug_stock_limit,
309
-		MinUnit:        min_unit,
310
-	}
315
+	//查询是否存在
316
+	_, errTwo := service.GetStandNameIsExist(id, adminInfo.CurrentOrgId)
317
+	if errTwo == gorm.ErrRecordNotFound {
318
+		fmt.Println("进来了吗1")
319
+		c.ServeSuccessJSON(map[string]interface{}{
320
+			"msg": "修改成功",
321
+		})
322
+		return
323
+	} else if errTwo == nil {
324
+		//修改规格xt_stand_name表
325
+		standName := models.XtStandName{
326
+			DrugName:       drug_name,
327
+			DrugSpec:       drug_spec,
328
+			DrugStockLimit: drug_stock_limit,
329
+			MinUnit:        min_unit,
330
+		}
311 331
 
312
-	service.UpdateStandName(id, adminInfo.CurrentOrgId, &standName)
313
-	//修改药品表
314
-	medical := models.XtSelfMedical{
315
-		DrugName:           drug_name,
316
-		DrugSpec:           drug_spec,
317
-		ExecutionFrequency: execution_frequency,
318
-		PrescribingNumber:  prescribing_number,
319
-		DeliveryWay:        delivery_way,
320
-		SingleDose:         single_dose,
321
-		MinUnit:            min_unit,
332
+		service.UpdateStandName(id, adminInfo.CurrentOrgId, &standName)
322 333
 	}
323 334
 
324
-	service.UpdateSelfMedical(id, adminInfo.CurrentOrgId, &medical)
335
+	_, errThree := service.GetSelfMedicalIsExist(id, adminInfo.CurrentOrgId)
336
+
337
+	if errThree == gorm.ErrRecordNotFound {
338
+		fmt.Println("进来了吗2")
339
+		c.ServeSuccessJSON(map[string]interface{}{
340
+			"msg": "修改成功",
341
+		})
342
+		return
343
+	} else if errThree == nil {
344
+		//修改药品表
345
+		medical := models.XtSelfMedical{
346
+			DrugName:           drug_name,
347
+			DrugSpec:           drug_spec,
348
+			ExecutionFrequency: execution_frequency,
349
+			PrescribingNumber:  prescribing_number,
350
+			DeliveryWay:        delivery_way,
351
+			SingleDose:         single_dose,
352
+			MinUnit:            min_unit,
353
+		}
325 354
 
326
-	//修改入库表
327
-	//nameId, err := service.GetDrugNameId(id, adminInfo.CurrentOrgId)
355
+		service.UpdateSelfMedical(id, adminInfo.CurrentOrgId, &medical)
356
+	}
328 357
 
329
-	stock := models.XtSelfStock{
330
-		DrugSpec: drug_spec,
331
-		DrugName: drug_name,
332
-		MinUnit:  min_unit,
358
+	_, errFour := service.GetSelfStosckIsExist(id, adminInfo.CurrentOrgId)
359
+	if errFour == gorm.ErrRecordNotFound {
360
+		fmt.Println("进来了吗3")
361
+		c.ServeSuccessJSON(map[string]interface{}{
362
+			"msg": "修改成功",
363
+		})
364
+		return
365
+	} else if errFour == nil {
366
+		stock := models.XtSelfStock{
367
+			DrugSpec: drug_spec,
368
+			DrugName: drug_name,
369
+			MinUnit:  min_unit,
370
+		}
371
+		service.UpdatedSelfStock(&stock, id, adminInfo.CurrentOrgId)
333 372
 	}
334 373
 
335
-	service.UpdatedSelfStock(&stock, id, adminInfo.CurrentOrgId)
336
-	outStock := models.XtSelfOutStock{
337
-		DrugName: drug_name,
338
-		DrugSpec: drug_spec,
374
+	_, errFive := service.GetOutSelfOutStockIsExist(id, adminInfo.CurrentOrgId)
375
+	if errFive == gorm.ErrRecordNotFound {
376
+		fmt.Println("进来了吗4")
377
+		c.ServeSuccessJSON(map[string]interface{}{
378
+			"msg": "修改成功",
379
+		})
380
+		return
381
+	} else if errFive == nil {
382
+		outStock := models.XtSelfOutStock{
383
+			DrugName: drug_name,
384
+			DrugSpec: drug_spec,
385
+		}
386
+		//修改出库表
387
+		service.UpdatedOutSelfStock(&outStock, id, adminInfo.CurrentOrgId)
339 388
 	}
340
-	//修改出库表
341
-	service.UpdatedOutSelfStock(&outStock, id, adminInfo.CurrentOrgId)
342 389
 
343
-	//查询未执行的医嘱
344
-	advice := models.DoctorAdvice{
345
-		AdviceName:         drug_name,
346
-		AdviceDesc:         drug_spec,
347
-		DeliveryWay:        delivery_way,
348
-		ExecutionFrequency: execution_frequency,
349
-		SingleDose:         single_dose,
350
-		SingleDoseUnit:     min_unit,
390
+	_, errSix := service.GetDoctorAdviceIsExist(id, adminInfo.CurrentOrgId)
391
+	if errSix == gorm.ErrRecordNotFound {
392
+		fmt.Println("进来了吗5")
393
+		c.ServeSuccessJSON(map[string]interface{}{
394
+			"msg": "修改成功",
395
+		})
396
+		return
397
+	} else if errSix == nil {
398
+		//查询未执行的医嘱
399
+		advice := models.DoctorAdvice{
400
+			AdviceName:         drug_name,
401
+			AdviceDesc:         drug_spec,
402
+			DeliveryWay:        delivery_way,
403
+			ExecutionFrequency: execution_frequency,
404
+			SingleDose:         single_dose,
405
+			SingleDoseUnit:     min_unit,
406
+		}
407
+
408
+		service.UpdateNoExcuteDoctorAdvice(id, adminInfo.CurrentOrgId, &advice)
351 409
 	}
352 410
 
353
-	service.UpdateNoExcuteDoctorAdvice(id, adminInfo.CurrentOrgId, &advice)
411
+	_, errSeven := service.GetDoctorAdviceTemplateIsExist(id, adminInfo.CurrentOrgId)
412
+
413
+	if errSeven == gorm.ErrRecordNotFound {
414
+		fmt.Println("进来了吗6")
415
+		c.ServeSuccessJSON(map[string]interface{}{
416
+			"msg": "修改成功",
417
+		})
418
+		return
419
+	} else if errSeven == nil {
420
+		//修改医嘱模板
421
+		template := models.DoctorAdviceTemplate{
422
+			AdviceName:         drug_name,
423
+			AdviceDesc:         drug_spec,
424
+			DeliveryWay:        delivery_way,
425
+			ExecutionFrequency: execution_frequency,
426
+			SingleDose:         single_dose,
427
+			SingleDoseUnit:     min_unit,
428
+		}
429
+		service.UpdatedDoctorAdviceTemplate(id, adminInfo.CurrentOrgId, &template)
354 430
 
355
-	//修改医嘱模板
356
-	template := models.DoctorAdviceTemplate{
357
-		AdviceName:         drug_name,
358
-		AdviceDesc:         drug_spec,
359
-		DeliveryWay:        delivery_way,
360
-		ExecutionFrequency: execution_frequency,
361
-		SingleDose:         single_dose,
362
-		SingleDoseUnit:     min_unit,
363 431
 	}
364
-	service.UpdatedDoctorAdviceTemplate(id, adminInfo.CurrentOrgId, &template)
365 432
 
366 433
 	if err == nil {
367 434
 		c.ServeSuccessJSON(map[string]interface{}{

+ 92 - 6
service/self_drug_service.go Bestand weergeven

@@ -358,12 +358,12 @@ func GetAllPatientStockList(drug_name string, drug_spec string, startime int64,
358 358
 	if len(drug_spec) > 0 {
359 359
 		db = db.Where("x.drug_spec = ?", drug_spec)
360 360
 	}
361
-	if startime > 0 {
362
-		db = db.Where("x.storck_time >= ?", startime)
363
-	}
364
-	if endtime > 0 {
365
-		db = db.Where("x.storck_time <= ?", endtime)
366
-	}
361
+	//if startime > 0 {
362
+	//	db = db.Where("x.storck_time >= ?", startime)
363
+	//}
364
+	//if endtime > 0 {
365
+	//	db = db.Where("x.storck_time <= ?", endtime)
366
+	//}
367 367
 	if orgid > 0 {
368 368
 		db = db.Where("x.user_org_id = ?", orgid)
369 369
 	}
@@ -583,18 +583,54 @@ func DeleteDrugNameById(id int64) (models.XtSelfMedical, error) {
583 583
 	return medical, err
584 584
 }
585 585
 
586
+func GetDrugNameIsExist(drugid int64, orgid int64) (*models.XtDrugName, error) {
587
+	drugName := models.XtDrugName{}
588
+	err := XTReadDB().Model(&drugName).Where("drug_id = ? and user_org_id = ? and status = 1", drugid, orgid).Find(&drugName).Error
589
+	if err == gorm.ErrRecordNotFound {
590
+		return nil, err
591
+	}
592
+	if err != nil {
593
+		return nil, err
594
+	}
595
+	return &drugName, nil
596
+}
597
+
586 598
 func UpdatedDrugName(id int64, orgid int64, drugName *models.XtDrugName) error {
587 599
 
588 600
 	err := XTWriteDB().Model(&drugName).Where("drug_id = ? and user_org_id = ? and status = 1", id, orgid).Update(map[string]interface{}{"drug_name": drugName.DrugName}).Error
589 601
 	return err
590 602
 }
591 603
 
604
+func GetStandNameIsExist(id int64, orgid int64) (*models.XtStandName, error) {
605
+	standName := models.XtStandName{}
606
+	err := XTReadDB().Model(&standName).Where("drug_name_id = ? and user_org_id = ? and status = 1", id, orgid).Find(&standName).Error
607
+	if err == gorm.ErrRecordNotFound {
608
+		return nil, err
609
+	}
610
+	if err != nil {
611
+		return nil, err
612
+	}
613
+	return &standName, nil
614
+}
615
+
592 616
 func UpdateStandName(id int64, orgid int64, standName *models.XtStandName) error {
593 617
 
594 618
 	err := XTWriteDB().Model(&standName).Where("drug_name_id = ? and user_org_id = ? and status = 1", id, orgid).Update(map[string]interface{}{"drug_name": standName.DrugName, "drug_spec": standName.DrugSpec, "drug_stock_limit": standName.DrugStockLimit, "min_unit": standName.MinUnit}).Error
595 619
 	return err
596 620
 }
597 621
 
622
+func GetSelfMedicalIsExist(id int64, orgid int64) (*models.XtSelfMedical, error) {
623
+	medical := models.XtSelfMedical{}
624
+	err := XTReadDB().Model(&medical).Where("drug_name_id = ? and user_org_id = ? and status =1", id, orgid).Find(&medical).Error
625
+	if err == gorm.ErrRecordNotFound {
626
+		return nil, err
627
+	}
628
+	if err != nil {
629
+		return nil, err
630
+	}
631
+	return &medical, nil
632
+}
633
+
598 634
 func UpdateSelfMedical(id int64, orgid int64, medical *models.XtSelfMedical) error {
599 635
 
600 636
 	err := XTWriteDB().Model(&medical).Where("drug_name_id = ? and user_org_id = ? and status = 1", id, orgid).Update(map[string]interface{}{"drug_name": medical.DrugName, "drug_spec": medical.DrugSpec, "execution_frequency": medical.ExecutionFrequency, "prescribing_number": medical.PrescribingNumber, "delivery_way": medical.DeliveryWay, "single_dose": medical.SingleDose, "min_unit": medical.MinUnit}).Error
@@ -608,23 +644,73 @@ func GetDrugNameId(id int64, orgid int64) (models.XtSelfMedical, error) {
608 644
 	return medical, err
609 645
 }
610 646
 
647
+func GetSelfStosckIsExist(id int64, orgid int64) (*models.XtSelfStock, error) {
648
+
649
+	medical := models.XtSelfStock{}
650
+	err := XTReadDB().Model(&medical).Where("drug_name_id = ? and user_org_id = ? and status  =1", id, orgid).Find(&medical).Error
651
+	if err == gorm.ErrRecordNotFound {
652
+		return nil, err
653
+	}
654
+	if err != nil {
655
+		return nil, err
656
+	}
657
+	return &medical, nil
658
+}
659
+
611 660
 func UpdatedSelfStock(stock *models.XtSelfStock, id int64, orgid int64) error {
612 661
 	err := XTWriteDB().Model(&stock).Where("drug_name_id=? and user_org_id = ? and status = 1", id, orgid).Update(map[string]interface{}{"drug_name": stock.DrugName, "min_unit": stock.MinUnit, "drug_spec": stock.DrugSpec}).Error
613 662
 	return err
614 663
 }
615 664
 
665
+func GetOutSelfOutStockIsExist(id int64, orgid int64) (*models.XtSelfOutStock, error) {
666
+
667
+	outStock := models.XtSelfOutStock{}
668
+	err := XTReadDB().Model(&outStock).Where("drug_name_id = ? and user_org_id = ? and status = 1", id, orgid).Find(&outStock).Error
669
+	if err == gorm.ErrRecordNotFound {
670
+		return nil, err
671
+	}
672
+	if err != nil {
673
+		return nil, err
674
+	}
675
+	return &outStock, nil
676
+}
677
+
616 678
 func UpdatedOutSelfStock(stock *models.XtSelfOutStock, id int64, orgid int64) error {
617 679
 
618 680
 	err := XTWriteDB().Model(&stock).Where("drug_name_id = ? and user_org_id = ? and status = 1", id, orgid).Update(map[string]interface{}{"drug_name": stock.DrugName, "drug_spec": stock.DrugSpec}).Error
619 681
 	return err
620 682
 }
621 683
 
684
+func GetDoctorAdviceIsExist(id int64, orgid int64) (*models.DoctorAdvice, error) {
685
+	advice := models.DoctorAdvice{}
686
+	err := XTReadDB().Model(&advice).Where("drug_id = ? and user_org_id = ? and status = 1", id, orgid).Find(&advice).Error
687
+	if err == gorm.ErrRecordNotFound {
688
+		return nil, err
689
+	}
690
+	if err != nil {
691
+		return nil, err
692
+	}
693
+	return &advice, nil
694
+}
695
+
622 696
 func UpdateNoExcuteDoctorAdvice(id int64, orgid int64, advice *models.DoctorAdvice) error {
623 697
 
624 698
 	err := XTWriteDB().Model(&advice).Where("drug_id = ? and user_org_id = ? and status = 1 and  execution_state = 2", id, orgid).Updates(map[string]interface{}{"advice_name": advice.AdviceName, "advice_desc": advice.AdviceDesc, "single_dose": advice.SingleDose, "single_dose_unit": advice.SingleDoseUnit, "delivery_way": advice.DeliveryWay, "execution_frequency": advice.ExecutionFrequency}).Error
625 699
 	return err
626 700
 }
627 701
 
702
+func GetDoctorAdviceTemplateIsExist(id int64, orgid int64) (*models.DoctorAdviceTemplate, error) {
703
+	template := models.DoctorAdviceTemplate{}
704
+	err := XTReadDB().Model(&template).Where("drug_id = ? and org_id = ? and status = 1", id, orgid).Find(&template).Error
705
+	if err == gorm.ErrRecordNotFound {
706
+		return nil, err
707
+	}
708
+	if err != nil {
709
+		return nil, err
710
+	}
711
+	return &template, nil
712
+}
713
+
628 714
 func UpdatedDoctorAdviceTemplate(id int64, orgid int64, template *models.DoctorAdviceTemplate) error {
629 715
 
630 716
 	err := XTWriteDB().Model(&template).Where("drug_id = ? and org_id = ? and status = 1", id, orgid).Updates(map[string]interface{}{"advice_name": template.AdviceName, "advice_desc": template.AdviceDesc, "single_dose": template.SingleDose, "single_dose_unit": template.SingleDoseUnit, "delivery_way": template.DeliveryWay, "execution_frequency": template.ExecutionFrequency}).Error