test_user пре 2 година
родитељ
комит
888c9d788e

+ 28 - 10
controllers/schedule_api_controller.go Прегледај датотеку

@@ -91,8 +91,8 @@ func ScheduleApiRegistRouters() {
91 91
 func (c *ScheduleApiController) CoverSch() {
92 92
 	id_one, _ := c.GetInt64("id_one")
93 93
 	id_two, _ := c.GetInt64("id_two")
94
-	sch, _ := service.GetSchedule(c.GetAdminUserInfo().CurrentOrgId, id_one)
95
-	sch_two, _ := service.GetSchedule(c.GetAdminUserInfo().CurrentOrgId, id_two)
94
+	sch, _ := service.GetScheduleTen(c.GetAdminUserInfo().CurrentOrgId, id_one)
95
+	sch_two, _ := service.GetScheduleTen(c.GetAdminUserInfo().CurrentOrgId, id_two)
96 96
 	order, _ := service.GetDialysisOrder(sch.ScheduleDate, sch.PatientId, sch.UserOrgId)
97 97
 	if order.ID > 0 {
98 98
 		c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodePatientDialysisOrderOne)
@@ -103,8 +103,19 @@ func (c *ScheduleApiController) CoverSch() {
103 103
 		c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodePatientDialysisOrderTwo)
104 104
 		return
105 105
 	}
106
+	count, _ := service.GetScheduleCountByDate(c.GetAdminUserInfo().CurrentOrgId, sch_two.ScheduleDate, sch_two.PatientId)
107
+	if count > 1 {
108
+		c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodePatientScheduleRepeat)
109
+		return
110
+	}
111
+
112
+	count1, _ := service.GetScheduleCountByDate(c.GetAdminUserInfo().CurrentOrgId, sch_two.ScheduleDate, sch.PatientId)
113
+	if count1 > 0 {
114
+		c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodePatientScheduleRepeat)
115
+		return
116
+	}
106 117
 
107
-	var new_sch *models.Schedule
118
+	var new_sch models.Schedule
108 119
 	new_sch = sch
109 120
 	new_sch.BedId = sch_two.BedId
110 121
 	new_sch.ScheduleDate = sch_two.ScheduleDate
@@ -112,14 +123,10 @@ func (c *ScheduleApiController) CoverSch() {
112 123
 	new_sch.PartitionId = sch_two.PartitionId
113 124
 	new_sch.ScheduleType = sch_two.ScheduleType
114 125
 	new_sch.ID = 0
115
-	sch_two.Status = 0
116
-	sch.Status = 0
117 126
 	//删除原来的排班
118
-	service.SaveSchTwo(sch_two)
119
-	service.SaveSchTwo(sch)
127
+	service.SaveSchTwo(sch, sch_two)
120 128
 	//生成新的排班
121
-	service.SaveSchTwo(new_sch)
122
-	//service.UpdateScheduleThree(sch,sch_two)
129
+	service.SaveSch(new_sch)
123 130
 	c.ServeSuccessJSON(map[string]interface{}{
124 131
 		"msg": "覆盖成功",
125 132
 	})
@@ -140,9 +147,20 @@ func (c *ScheduleApiController) ExchangeSch() {
140 147
 		c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodePatientDialysisOrderTwo)
141 148
 		return
142 149
 	}
150
+
151
+	//count1, _ := service.GetScheduleCountByDate(c.GetAdminUserInfo().CurrentOrgId,sch.ScheduleDate,sch.PatientId)
152
+	//if count1 > 0 {
153
+	//	c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodePatientScheduleRepeat)
154
+	//	return
155
+	//}
156
+	//count2, _ := service.GetScheduleCountByDate(c.GetAdminUserInfo().CurrentOrgId,sch_two.ScheduleDate,sch_two.PatientId)
157
+	//if count2 > 0 {
158
+	//	c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodePatientScheduleRepeat)
159
+	//	return
160
+	//}
143 161
 	service.UpdateScheduleThree(sch, sch_two)
144 162
 	c.ServeSuccessJSON(map[string]interface{}{
145
-		"msg": "替换成功",
163
+		"msg": "换成功",
146 164
 	})
147 165
 }
148 166
 func (c *ScheduleApiController) BatchPostSmartSch() {

+ 2 - 0
enums/error_code.go Прегледај датотеку

@@ -271,6 +271,7 @@ const ( // ErrorCode
271 271
 
272 272
 	ErrorCodePatientDialysisOrderOne = 60000000
273 273
 	ErrorCodePatientDialysisOrderTwo = 60000001
274
+	ErrorCodePatientScheduleRepeat   = 60000002
274 275
 )
275 276
 
276 277
 var ErrCodeMsgs = map[int]string{
@@ -527,6 +528,7 @@ var ErrCodeMsgs = map[int]string{
527 528
 
528 529
 	ErrorCodePatientDialysisOrderOne: "替换的患者已经上机,无法替换排班",
529 530
 	ErrorCodePatientDialysisOrderTwo: "被替换的患者已经上机,无法替换排班",
531
+	ErrorCodePatientScheduleRepeat:   "一天只能存在一次排班",
530 532
 }
531 533
 
532 534
 type SGJError struct {

+ 3 - 0
models/his_charge_models.go Прегледај датотеку

@@ -104,6 +104,9 @@ type HisChargeOrder struct {
104 104
 	FundPaySumamt      float64 `gorm:"column:fund_pay_sumamt" json:"fund_pay_sumamt" form:"fund_pay_sumamt"`
105 105
 	AcctPay            float64 `gorm:"column:acct_pay" json:"acct_pay" form:"acct_pay"`
106 106
 	MedfeeSumamt       float64 `gorm:"column:medfee_sumamt" json:"medfee_sumamt" form:"medfee_sumamt"`
107
+	IsUploadDiagnose   int64   `gorm:"column:is_upload_diagnose" json:"is_upload_diagnose" form:"is_upload_diagnose"`
108
+	IsUploadOrderInfo  int64   `gorm:"column:is_upload_order_info" json:"is_upload_order_info" form:"is_upload_order_info"`
109
+	IsUploadSuccess    int64   `gorm:"column:is_upload_success" json:"is_upload_success" form:"is_upload_success"`
107 110
 
108 111
 	PsnCashPay          float64               `gorm:"column:psn_cash_pay" json:"psn_cash_pay" form:"psn_cash_pay"`
109 112
 	IsMedicineInsurance int64                 `gorm:"column:is_medicine_insurance" json:"is_medicine_insurance" form:"is_medicine_insurance"`

+ 25 - 1
models/his_models.go Прегледај датотеку

@@ -502,7 +502,10 @@ type TempHisOrder struct {
502 502
 	FaPiaoCode            string    `gorm:"column:fa_piao_code" json:"fa_piao_code" form:"fa_piao_code"`
503 503
 	FaPiaoNumber          string    `gorm:"column:fa_piao_number" json:"fa_piao_number" form:"fa_piao_number"`
504 504
 
505
-	AdminUser AdminUser `gorm:"ForeignKey:ID;AssociationForeignKey:OrderId" json:"order_info"`
505
+	AdminUser         AdminUser `gorm:"ForeignKey:ID;AssociationForeignKey:OrderId" json:"order_info"`
506
+	IsUploadDiagnose  int64     `gorm:"column:is_upload_diagnose" json:"is_upload_diagnose" form:"is_upload_diagnose"`
507
+	IsUploadOrderInfo int64     `gorm:"column:is_upload_order_info" json:"is_upload_order_info" form:"is_upload_order_info"`
508
+	IsUploadSuccess   int64     `gorm:"column:is_upload_success" json:"is_upload_success" form:"is_upload_success"`
506 509
 
507 510
 	SettleType      int64  `gorm:"column:settle_type" json:"settle_type" form:"settle_type"`
508 511
 	SettleStartTime int64  `gorm:"column:settle_start_time" json:"settle_start_time" form:"settle_start_time"`
@@ -1054,6 +1057,9 @@ type HisOrder struct {
1054 1057
 	IsPre                   int64                   `gorm:"column:is_pre" json:"is_pre" form:"is_pre"`
1055 1058
 	Diagnosis               string                  `gorm:"column:diagnosis" json:"diagnosis" form:"diagnosis"`
1056 1059
 	FaPiaoBatchnumberId     int64                   `gorm:"column:fa_piao_batchnumber_id" json:"fa_piao_batchnumber_id" form:"fa_piao_batchnumber_id"`
1060
+	IsUploadDiagnose        int64                   `gorm:"column:is_upload_diagnose" json:"is_upload_diagnose" form:"is_upload_diagnose"`
1061
+	IsUploadOrderInfo       int64                   `gorm:"column:is_upload_order_info" json:"is_upload_order_info" form:"is_upload_order_info"`
1062
+	IsUploadSuccess         int64                   `gorm:"column:is_upload_success" json:"is_upload_success" form:"is_upload_success"`
1057 1063
 }
1058 1064
 
1059 1065
 func (HisOrder) TableName() string {
@@ -1604,6 +1610,9 @@ type NewHisOrder struct {
1604 1610
 	PatientId          int64             `gorm:"column:patient_id" json:"patient_id" form:"patient_id"`
1605 1611
 	VMHisOrderInfo     []*VMHisOrderInfo `gorm:"ForeignKey:Number;AssociationForeignKey:OrderNumber" json:"order_info"`
1606 1612
 	HisPatient         HisPatient        `gorm:"ForeignKey:MdtrtId;AssociationForeignKey:Number" json:"his_patient"`
1613
+	IsUploadDiagnose   int64             `gorm:"column:is_upload_diagnose" json:"is_upload_diagnose" form:"is_upload_diagnose"`
1614
+	IsUploadOrderInfo  int64             `gorm:"column:is_upload_order_info" json:"is_upload_order_info" form:"is_upload_order_info"`
1615
+	IsUploadSuccess    int64             `gorm:"column:is_upload_success" json:"is_upload_success" form:"is_upload_success"`
1607 1616
 }
1608 1617
 
1609 1618
 func (NewHisOrder) TableName() string {
@@ -1699,6 +1708,9 @@ type VMHisOrderTwo struct {
1699 1708
 	HisHospitalCheckRecord HisHospitalCheckRecord `gorm:"ForeignKey:MdtrtId,PatientId;AssociationForeignKey:Number,PatientId" json:"his_hospital_patient"`
1700 1709
 
1701 1710
 	HisPrescriptionInfo HisPrescriptionInfo `gorm:"ForeignKey:PatientId;AssociationForeignKey:PatientId" json:"p_info"`
1711
+	IsUploadDiagnose    int64               `gorm:"column:is_upload_diagnose" json:"is_upload_diagnose" form:"is_upload_diagnose"`
1712
+	IsUploadOrderInfo   int64               `gorm:"column:is_upload_order_info" json:"is_upload_order_info" form:"is_upload_order_info"`
1713
+	IsUploadSuccess     int64               `gorm:"column:is_upload_success" json:"is_upload_success" form:"is_upload_success"`
1702 1714
 
1703 1715
 	HisFundSettleListResult HisFundSettleListResult `gorm:"ForeignKey:ID;AssociationForeignKey:OrderId" json:"result"`
1704 1716
 	IsPre                   int64                   `gorm:"column:is_pre" json:"is_pre" form:"is_pre"`
@@ -1845,6 +1857,9 @@ type NewCustomHisOrder struct {
1845 1857
 	DoctorName            string    `gorm:"-" json:"doctor_name" form:"doctor_name"`
1846 1858
 	Creator               int64     `gorm:"column:creator" json:"creator" form:"creator"`
1847 1859
 	PType                 int64     `gorm:"column:p_type" json:"p_type" form:"p_type"`
1860
+	IsUploadDiagnose      int64     `gorm:"column:is_upload_diagnose" json:"is_upload_diagnose" form:"is_upload_diagnose"`
1861
+	IsUploadOrderInfo     int64     `gorm:"column:is_upload_order_info" json:"is_upload_order_info" form:"is_upload_order_info"`
1862
+	IsUploadSuccess       int64     `gorm:"column:is_upload_success" json:"is_upload_success" form:"is_upload_success"`
1848 1863
 
1849 1864
 	FaPiaoCode   string `gorm:"column:fa_piao_code" json:"fa_piao_code" form:"fa_piao_code"`
1850 1865
 	FaPiaoNumber string `gorm:"column:fa_piao_number" json:"fa_piao_number" form:"fa_piao_number"`
@@ -2114,6 +2129,9 @@ type VmHisOrder struct {
2114 2129
 	Diagnosis               string    `gorm:"column:diagnosis" json:"diagnosis" form:"diagnosis"`
2115 2130
 	FaPiaoBatchnumberId     int64     `gorm:"column:fa_piao_batchnumber_id" json:"fa_piao_batchnumber_id" form:"fa_piao_batchnumber_id"`
2116 2131
 	Decimal                 float64   `gorm:"column:decimal" json:"decimal" form:"decimal"`
2132
+	IsUploadDiagnose        int64     `gorm:"column:is_upload_diagnose" json:"is_upload_diagnose" form:"is_upload_diagnose"`
2133
+	IsUploadOrderInfo       int64     `gorm:"column:is_upload_order_info" json:"is_upload_order_info" form:"is_upload_order_info"`
2134
+	IsUploadSuccess         int64     `gorm:"column:is_upload_success" json:"is_upload_success" form:"is_upload_success"`
2117 2135
 }
2118 2136
 
2119 2137
 func (VmHisOrder) TableName() string {
@@ -2135,6 +2153,9 @@ type NewHisOrderTwo struct {
2135 2153
 	PsnName            string `gorm:"column:psn_name" json:"psn_name" form:"psn_name"`
2136 2154
 	PsnType            string `gorm:"column:psn_type" json:"psn_type" form:"psn_type"`
2137 2155
 	Certno             string `gorm:"column:certno" json:"certno" form:"certno"`
2156
+	IsUploadDiagnose   int64  `gorm:"column:is_upload_diagnose" json:"is_upload_diagnose" form:"is_upload_diagnose"`
2157
+	IsUploadOrderInfo  int64  `gorm:"column:is_upload_order_info" json:"is_upload_order_info" form:"is_upload_order_info"`
2158
+	IsUploadSuccess    int64  `gorm:"column:is_upload_success" json:"is_upload_success" form:"is_upload_success"`
2138 2159
 
2139 2160
 	NewHisChargeOrderInfo     []*NewHisChargeOrderInfo  `gorm:"ForeignKey:OrderNumber;AssociationForeignKey:Number" json:"info"`
2140 2161
 	NewHisHospitalCheckRecord NewHisHospitalCheckRecord `gorm:"ForeignKey:Number;AssociationForeignKey:Number" json:"his"`
@@ -2276,6 +2297,9 @@ type HisOrderTenty struct {
2276 2297
 	HisOrderInfoTwenty           []*HisOrderInfoTwenty        `gorm:"ForeignKey:OrderId;AssociationForeignKey:ID" json:"order_info"`
2277 2298
 	Patients                     Patients                     `gorm:"ForeignKey:PatientId;AssociationForeignKey:ID" json:"patient"`
2278 2299
 	HisHospitalCheckRecordTwenty HisHospitalCheckRecordTwenty `gorm:"ForeignKey:PatientId;AssociationForeignKey:ID" json:"hisPatient"`
2300
+	IsUploadDiagnose             int64                        `gorm:"column:is_upload_diagnose" json:"is_upload_diagnose" form:"is_upload_diagnose"`
2301
+	IsUploadOrderInfo            int64                        `gorm:"column:is_upload_order_info" json:"is_upload_order_info" form:"is_upload_order_info"`
2302
+	IsUploadSuccess              int64                        `gorm:"column:is_upload_success" json:"is_upload_success" form:"is_upload_success"`
2279 2303
 }
2280 2304
 
2281 2305
 func (HisOrderTenty) TableName() string {

+ 5 - 2
service/app_version.go Прегледај датотеку

@@ -1034,7 +1034,10 @@ func SaveSch(sch models.Schedule) (err error) {
1034 1034
 	return
1035 1035
 }
1036 1036
 
1037
-func SaveSchTwo(sch *models.Schedule) (err error) {
1038
-	err = writeDb.Save(&sch).Error
1037
+func SaveSchTwo(sch models.Schedule, sch_two models.Schedule) (err error) {
1038
+	//err = writeDb.Save(&sch).Error
1039
+	err = writeDb.Model(&Schedule{}).Where("status=1 AND id = ?", sch.ID).Updates(map[string]interface{}{"status": 0}).Error
1040
+	err = writeDb.Model(&Schedule{}).Where("status=1 AND id = ?", sch_two.ID).Updates(map[string]interface{}{"status": 0}).Error
1041
+
1039 1042
 	return
1040 1043
 }

+ 7 - 0
service/schedule_service.go Прегледај датотеку

@@ -1450,3 +1450,10 @@ func GetLastDialysisSolutionType(org_id int64, patient_id int64, mode_id int64)
1450 1450
 	return dialysisprescription, err
1451 1451
 
1452 1452
 }
1453
+
1454
+func GetScheduleTen(orgID, id int64) (models.Schedule, error) {
1455
+	var schedule models.Schedule
1456
+	var err error
1457
+	err = readDb.Model(&models.Schedule{}).Where("id = ? and user_org_id=? and status=1", id, orgID).First(&schedule).Error
1458
+	return schedule, err
1459
+}

+ 5 - 0
service/smart_sch.go Прегледај датотеку

@@ -166,3 +166,8 @@ func GetAllAvaildTemplateDeviceNumbersByZone(orgID int64, weekday int64, schedul
166 166
 	}
167 167
 	return vms, nil
168 168
 }
169
+
170
+func GetScheduleCountByDate(org_id int64, schedule_date int64, patient_id int64) (total int64, err error) {
171
+	err = readDb.Model(&models.SmartSchedule{}).Where(" user_org_id = ? AND schedule_date = ? AND status = 1 AND patient_id = ?", org_id, schedule_date, patient_id).Count(&total).Error
172
+	return
173
+}