浏览代码

耗材参数

XMLWAN 3 年前
父节点
当前提交
21c6924683

文件差异内容过多而无法显示
+ 405 - 514
controllers/mobile_api_controllers/dialysis_api_controller.go


+ 2 - 0
controllers/mobile_api_controllers/mobile_api_router_register.go 查看文件

@@ -161,4 +161,6 @@ func MobileAPIControllersRegisterRouters() {
161 161
 	//医嘱批量执行
162 162
 	beego.Router("/m/api/batchadviceexecution", &DialysisAPIController{}, "Get:BatchAdviceExecution")
163 163
 
164
+	beego.Router("/m/api/updatestockgoods", &DialysisAPIController{}, "Get:UpdateStockGoods")
165
+
164 166
 }

+ 2 - 3
controllers/patient_api_controller.go 查看文件

@@ -1571,7 +1571,6 @@ func (c *PatientApiController) ExecGroupAdvice() {
1571 1571
 
1572 1572
 func (c *PatientApiController) ExecDoctorAdvice() {
1573 1573
 
1574
-	fmt.Println("hhhhhhhhhhhhhhh9999999999")
1575 1574
 	origin, _ := c.GetInt64("origin", 0)
1576 1575
 
1577 1576
 	patient, _ := c.GetInt64("patient", 0)
@@ -1650,10 +1649,10 @@ func (c *PatientApiController) ExecDoctorAdvice() {
1650 1649
 
1651 1650
 		//药品管理信息
1652 1651
 		_, drugStockConfig := service.FindDrugStockAutomaticReduceRecordByOrgId(adminUserInfo.CurrentOrgId)
1653
-
1652
+		fmt.Println("999999992322322323232", drugStockConfig.IsOpen)
1654 1653
 		//自备药信息
1655 1654
 		privateDrugConfig, _ := service.GetDrugSetByUserOrgId(adminUserInfo.CurrentOrgId)
1656
-		fmt.Println("9999999999999999999999999", drugStockConfig.IsOpen)
1655
+
1657 1656
 		if drugStockConfig.IsOpen == 1 {
1658 1657
 			//查询已经执行的医嘱
1659 1658
 			//advices, _ := service.GetExecutionDoctors(adminUserInfo.CurrentOrgId, patient, id)

+ 25 - 0
controllers/stock_in_api_controller.go 查看文件

@@ -88,6 +88,7 @@ func StockManagerApiRegistRouters() {
88 88
 
89 89
 	beego.Router("/api/good/getorderdetialbyorderid", &StockManagerApiController{}, "Get:GetOrderDetialByOrderId")
90 90
 	beego.Router("/api/good/getorderdetaibyid", &StockManagerApiController{}, "Get:GetOrderDetailById")
91
+	beego.Router("/api/good/getsingleoutorderdetail", &StockManagerApiController{}, "Get:GetSingleOutOrderDetail")
91 92
 }
92 93
 
93 94
 func (c *StockManagerApiController) CreateWarehouse() {
@@ -1129,6 +1130,8 @@ func (c *StockManagerApiController) CreateWarehouseOut() {
1129 1130
 
1130 1131
 				manufacturer := int64(items["manufacturer"].(float64))
1131 1132
 
1133
+				number := items["number"].(string)
1134
+				fmt.Println("number22222222222222", number)
1132 1135
 				warehouseOutInfo := &models.WarehouseOutInfo{
1133 1136
 					WarehouseOutOrderNumber: warehouseOut.WarehouseOutOrderNumber,
1134 1137
 					WarehouseOutId:          warehouseOut.ID,
@@ -1143,6 +1146,7 @@ func (c *StockManagerApiController) CreateWarehouseOut() {
1143 1146
 					OrgId:                   adminUserInfo.CurrentOrgId,
1144 1147
 					Type:                    types,
1145 1148
 					Manufacturer:            manufacturer,
1149
+					Number:                  number,
1146 1150
 				}
1147 1151
 				warehousingOutInfo = append(warehousingOutInfo, warehouseOutInfo)
1148 1152
 
@@ -1279,6 +1283,7 @@ func (c *StockManagerApiController) GetWarehouseOutInfoList() {
1279 1283
 }
1280 1284
 func (c *StockManagerApiController) EditWarehouseOut() {
1281 1285
 	warehouse_out_time := c.GetString("warehouse_out_time")
1286
+
1282 1287
 	id, _ := c.GetInt64("id", 0)
1283 1288
 	types, _ := c.GetInt64("type", 0)
1284 1289
 
@@ -1365,6 +1370,8 @@ func (c *StockManagerApiController) EditWarehouseOut() {
1365 1370
 				id := int64(items["id"].(float64))
1366 1371
 
1367 1372
 				manufacturer := int64(items["manufacturer"].(float64))
1373
+
1374
+				number := items["number"].(string)
1368 1375
 				if id == 0 {
1369 1376
 					warehouseOutInfo := &models.WarehouseOutInfo{
1370 1377
 						WarehouseOutOrderNumber: warehouseOut.WarehouseOutOrderNumber,
@@ -1381,6 +1388,7 @@ func (c *StockManagerApiController) EditWarehouseOut() {
1381 1388
 						Type:                    types,
1382 1389
 						IsSys:                   0,
1383 1390
 						SysRecordTime:           0,
1391
+						Number:                  number,
1384 1392
 					}
1385 1393
 					warehousingOutInfo = append(warehousingOutInfo, warehouseOutInfo)
1386 1394
 
@@ -1417,6 +1425,7 @@ func (c *StockManagerApiController) EditWarehouseOut() {
1417 1425
 						Manufacturer:            manufacturer,
1418 1426
 						IsSys:                   is_sys,
1419 1427
 						SysRecordTime:           sys_record_time,
1428
+						Number:                  number,
1420 1429
 					}
1421 1430
 					upDateWarehouseOutInfos = append(upDateWarehouseOutInfos, warehouseOutInfo)
1422 1431
 				}
@@ -3800,3 +3809,19 @@ func (this *StockManagerApiController) GetOrderDetailById() {
3800 3809
 		return
3801 3810
 	}
3802 3811
 }
3812
+
3813
+func (this *StockManagerApiController) GetSingleOutOrderDetail() {
3814
+	id, _ := this.GetInt64("id", 0)
3815
+	orgId := this.GetAdminUserInfo().CurrentOrgId
3816
+
3817
+	warehouseOutInfo, _ := service.GetOrderDetialByOrderId(id, orgId)
3818
+	manufacturerList, _ := service.GetAllManufacturerList(orgId)
3819
+	dealerList, _ := service.GetAllDealerList(orgId)
3820
+	goodType, _ := service.GetAllGoodType(orgId)
3821
+	this.ServeSuccessJSON(map[string]interface{}{
3822
+		"list":             warehouseOutInfo,
3823
+		"dealerList":       dealerList,
3824
+		"manufacturerList": manufacturerList,
3825
+		"goodType":         goodType,
3826
+	})
3827
+}

+ 56 - 55
models/good_models.go 查看文件

@@ -22,61 +22,62 @@ func (GoodsType) TableName() string {
22 22
 }
23 23
 
24 24
 type GoodInfo struct {
25
-	ID                          int64     `gorm:"column:id" json:"id" form:"id"`
26
-	GoodCode                    string    `gorm:"column:good_code" json:"good_code" form:"good_code"`
27
-	SpecificationName           string    `gorm:"column:specification_name" json:"specification_name" form:"specification_name"`
28
-	GoodTypeId                  int64     `gorm:"column:good_type_id" json:"good_type_id" form:"good_type_id"`
29
-	GoodUnit                    int64     `gorm:"column:good_unit" json:"good_unit" form:"good_unit"`
30
-	BuyPrice                    float64   `gorm:"column:buy_price" json:"buy_price" form:"buy_price"`
31
-	SellPrice                   float64   `gorm:"column:sell_price" json:"sell_price" form:"sell_price"`
32
-	Remark                      string    `gorm:"column:remark" json:"remark" form:"remark"`
33
-	Ctime                       int64     `gorm:"column:ctime" json:"ctime" form:"ctime"`
34
-	Mtime                       int64     `gorm:"column:mtime" json:"mtime" form:"mtime"`
35
-	Manufacturer                int64     `gorm:"column:manufacturer" json:"manufacturer" form:"manufacturer"`
36
-	Dealer                      int64     `gorm:"column:dealer" json:"dealer" form:"dealer"`
37
-	ExpiryDateWarnDayCount      int64     `gorm:"column:expiry_date_warn_day_count" json:"expiry_date_warn_day_count" form:"expiry_date_warn_day_count"`
38
-	StockWarnCount              int64     `gorm:"column:stock_warn_count" json:"stock_warn_count" form:"stock_warn_count"`
39
-	IsReuse                     int64     `gorm:"column:is_reuse" json:"is_reuse" form:"is_reuse"`
40
-	Status                      int64     `gorm:"column:status" json:"status" form:"status"`
41
-	FilmArea                    string    `gorm:"column:film_area" json:"film_area" form:"film_area"`
42
-	IsUse                       int64     `gorm:"column:is_use" json:"is_use" form:"is_use"`
43
-	FilmMaterialQuality         string    `gorm:"column:film_material_quality" json:"film_material_quality" form:"film_material_quality"`
44
-	OrgId                       int64     `gorm:"column:org_id" json:"org_id" form:"org_id"`
45
-	Modifier                    int64     `gorm:"column:modifier" json:"modifier" form:"modifier"`
46
-	Creater                     int64     `gorm:"column:creater" json:"creater" form:"creater"`
47
-	GoodName                    string    `gorm:"column:good_name" json:"good_name" form:"good_name"`
48
-	Pinyin                      string    `gorm:"column:pinyin" json:"pinyin" form:"pinyin"`
49
-	Wubi                        string    `gorm:"column:wubi" json:"wubi" form:"wubi"`
50
-	GoodKind                    int64     `gorm:"column:good_kind" json:"good_kind" form:"good_kind"`
51
-	MedicalInsuranceLevel       int64     `gorm:"column:medical_insurance_level" json:"medical_insurance_level" form:"medical_insurance_level"`
52
-	RetailPrice                 float64   `gorm:"column:retail_price" json:"retail_price" form:"retail_price"`
53
-	MedicalInsuranceNumber      string    `gorm:"column:medical_insurance_number" json:"medical_insurance_number" form:"medical_insurance_number"`
54
-	IsSpecialDiseases           int64     `gorm:"column:is_special_diseases" json:"is_special_diseases" form:"is_special_diseases"`
55
-	IsRecord                    int64     `gorm:"column:is_record" json:"is_record" form:"is_record"`
56
-	StatisticsCategory          int64     `gorm:"column:statistics_category" json:"statistics_category" form:"statistics_category"`
57
-	GoodStatus                  string    `gorm:"column:good_status" json:"good_status" form:"good_status"`
58
-	DefaultCount                int64     `gorm:"column:default_count" json:"default_count" form:"default_count"`
59
-	Sign                        int64     `gorm:"column:sign" json:"sign" form:"sign"`
60
-	IsDefault                   int64     `gorm:"column:is_default" json:"is_default" form:"is_default"`
61
-	IsChargeUse                 int64     `gorm:"column:is_charge_use" json:"is_charge_use" form:"is_charge_use"`
62
-	IsChargePredict             int64     `gorm:"column:is_charge_predict" json:"is_charge_predict" form:"is_charge_predict"`
63
-	IsStatisticsWork            int64     `gorm:"column:is_statistics_work" json:"is_statistics_work" form:"is_statistics_work"`
64
-	Sort                        int64     `gorm:"column:sort" json:"sort" form:"sort"`
65
-	IsDoctorUse                 int64     `gorm:"column:is_doctor_use" json:"is_doctor_use" form:"is_doctor_use"`
66
-	Agent                       string    `gorm:"column:agent" json:"agent" form:"agent"`
67
-	GoodNumber                  string    `gorm:"column:good_number" json:"good_number" form:"good_number"`
68
-	GoodsType                   GoodsType `gorm:"ForeignKey:ID;AssociationForeignKey:GoodTypeId" json:"type"`
69
-	CommdityCode                string    `gorm:"column:commdity_code" json:"commdity_code" form:"commdity_code"`
70
-	SocialSecurityDirectoryCode string    `gorm:"column:social_security_directory_code" json:"social_security_directory_code" form:"social_security_directory_code"`
71
-	ProductionType              string    `gorm:"column:production_type" json:"production_type" form:"production_type"`
72
-	SpecialMedical              string    `gorm:"column:special_medical" json:"special_medical" form:"special_medical"`
73
-	IsMark                      int64     `gorm:"column:is_mark" json:"is_mark" form:"is_mark"`
74
-	MinNumber                   int64     `gorm:"column:min_number" json:"min_number" form:"min_number"`
75
-	PackingUnit                 string    `gorm:"column:packing_unit" json:"packing_unit" form:"packing_unit"`
76
-	PackingPrice                float64   `gorm:"column:packing_price" json:"packing_price" form:"packing_price"`
77
-	DefaultCountUnit            string    `gorm:"column:default_count_unit" json:"default_count_unit" form:"default_count_unit"`
78
-	MinUnit                     string    `gorm:"column:min_unit" json:"min_unit" form:"min_unit"`
79
-	Total                       float64   `gorm:"column:total" json:"total" form:"total"`
25
+	ID                          int64                `gorm:"column:id" json:"id" form:"id"`
26
+	GoodCode                    string               `gorm:"column:good_code" json:"good_code" form:"good_code"`
27
+	SpecificationName           string               `gorm:"column:specification_name" json:"specification_name" form:"specification_name"`
28
+	GoodTypeId                  int64                `gorm:"column:good_type_id" json:"good_type_id" form:"good_type_id"`
29
+	GoodUnit                    int64                `gorm:"column:good_unit" json:"good_unit" form:"good_unit"`
30
+	BuyPrice                    float64              `gorm:"column:buy_price" json:"buy_price" form:"buy_price"`
31
+	SellPrice                   float64              `gorm:"column:sell_price" json:"sell_price" form:"sell_price"`
32
+	Remark                      string               `gorm:"column:remark" json:"remark" form:"remark"`
33
+	Ctime                       int64                `gorm:"column:ctime" json:"ctime" form:"ctime"`
34
+	Mtime                       int64                `gorm:"column:mtime" json:"mtime" form:"mtime"`
35
+	Manufacturer                int64                `gorm:"column:manufacturer" json:"manufacturer" form:"manufacturer"`
36
+	Dealer                      int64                `gorm:"column:dealer" json:"dealer" form:"dealer"`
37
+	ExpiryDateWarnDayCount      int64                `gorm:"column:expiry_date_warn_day_count" json:"expiry_date_warn_day_count" form:"expiry_date_warn_day_count"`
38
+	StockWarnCount              int64                `gorm:"column:stock_warn_count" json:"stock_warn_count" form:"stock_warn_count"`
39
+	IsReuse                     int64                `gorm:"column:is_reuse" json:"is_reuse" form:"is_reuse"`
40
+	Status                      int64                `gorm:"column:status" json:"status" form:"status"`
41
+	FilmArea                    string               `gorm:"column:film_area" json:"film_area" form:"film_area"`
42
+	IsUse                       int64                `gorm:"column:is_use" json:"is_use" form:"is_use"`
43
+	FilmMaterialQuality         string               `gorm:"column:film_material_quality" json:"film_material_quality" form:"film_material_quality"`
44
+	OrgId                       int64                `gorm:"column:org_id" json:"org_id" form:"org_id"`
45
+	Modifier                    int64                `gorm:"column:modifier" json:"modifier" form:"modifier"`
46
+	Creater                     int64                `gorm:"column:creater" json:"creater" form:"creater"`
47
+	GoodName                    string               `gorm:"column:good_name" json:"good_name" form:"good_name"`
48
+	Pinyin                      string               `gorm:"column:pinyin" json:"pinyin" form:"pinyin"`
49
+	Wubi                        string               `gorm:"column:wubi" json:"wubi" form:"wubi"`
50
+	GoodKind                    int64                `gorm:"column:good_kind" json:"good_kind" form:"good_kind"`
51
+	MedicalInsuranceLevel       int64                `gorm:"column:medical_insurance_level" json:"medical_insurance_level" form:"medical_insurance_level"`
52
+	RetailPrice                 float64              `gorm:"column:retail_price" json:"retail_price" form:"retail_price"`
53
+	MedicalInsuranceNumber      string               `gorm:"column:medical_insurance_number" json:"medical_insurance_number" form:"medical_insurance_number"`
54
+	IsSpecialDiseases           int64                `gorm:"column:is_special_diseases" json:"is_special_diseases" form:"is_special_diseases"`
55
+	IsRecord                    int64                `gorm:"column:is_record" json:"is_record" form:"is_record"`
56
+	StatisticsCategory          int64                `gorm:"column:statistics_category" json:"statistics_category" form:"statistics_category"`
57
+	GoodStatus                  string               `gorm:"column:good_status" json:"good_status" form:"good_status"`
58
+	DefaultCount                int64                `gorm:"column:default_count" json:"default_count" form:"default_count"`
59
+	Sign                        int64                `gorm:"column:sign" json:"sign" form:"sign"`
60
+	IsDefault                   int64                `gorm:"column:is_default" json:"is_default" form:"is_default"`
61
+	IsChargeUse                 int64                `gorm:"column:is_charge_use" json:"is_charge_use" form:"is_charge_use"`
62
+	IsChargePredict             int64                `gorm:"column:is_charge_predict" json:"is_charge_predict" form:"is_charge_predict"`
63
+	IsStatisticsWork            int64                `gorm:"column:is_statistics_work" json:"is_statistics_work" form:"is_statistics_work"`
64
+	Sort                        int64                `gorm:"column:sort" json:"sort" form:"sort"`
65
+	IsDoctorUse                 int64                `gorm:"column:is_doctor_use" json:"is_doctor_use" form:"is_doctor_use"`
66
+	Agent                       string               `gorm:"column:agent" json:"agent" form:"agent"`
67
+	GoodNumber                  string               `gorm:"column:good_number" json:"good_number" form:"good_number"`
68
+	GoodsType                   GoodsType            `gorm:"ForeignKey:ID;AssociationForeignKey:GoodTypeId" json:"type"`
69
+	CommdityCode                string               `gorm:"column:commdity_code" json:"commdity_code" form:"commdity_code"`
70
+	SocialSecurityDirectoryCode string               `gorm:"column:social_security_directory_code" json:"social_security_directory_code" form:"social_security_directory_code"`
71
+	ProductionType              string               `gorm:"column:production_type" json:"production_type" form:"production_type"`
72
+	SpecialMedical              string               `gorm:"column:special_medical" json:"special_medical" form:"special_medical"`
73
+	IsMark                      int64                `gorm:"column:is_mark" json:"is_mark" form:"is_mark"`
74
+	MinNumber                   int64                `gorm:"column:min_number" json:"min_number" form:"min_number"`
75
+	PackingUnit                 string               `gorm:"column:packing_unit" json:"packing_unit" form:"packing_unit"`
76
+	PackingPrice                float64              `gorm:"column:packing_price" json:"packing_price" form:"packing_price"`
77
+	DefaultCountUnit            string               `gorm:"column:default_count_unit" json:"default_count_unit" form:"default_count_unit"`
78
+	MinUnit                     string               `gorm:"column:min_unit" json:"min_unit" form:"min_unit"`
79
+	Total                       float64              `gorm:"column:total" json:"total" form:"total"`
80
+	StWarehousingInfo           []*StWarehousingInfo `gorm:"ForeignKey:good_id;AssociationForeignKey:ID" json:"xt_warehouse_info"`
80 81
 }
81 82
 
82 83
 func (GoodInfo) TableName() string {

+ 68 - 1
models/stock_models.go 查看文件

@@ -70,6 +70,35 @@ func (Warehousing) TableName() string {
70 70
 	return "xt_warehouse"
71 71
 }
72 72
 
73
+type StWarehousingInfo struct {
74
+	ID               int64   `gorm:"column:id" json:"id"`
75
+	WarehousingId    int64   `gorm:"column:warehousing_id" json:"warehousing_id"`
76
+	GoodId           int64   `gorm:"column:good_id" json:"good_id"`
77
+	GoodTypeId       int64   `gorm:"column:good_type_id" json:"good_type_id"`
78
+	Number           string  `gorm:"column:number" json:"number"`
79
+	ProductDate      int64   `gorm:"column:product_date" json:"product_date"`
80
+	ExpiryDate       int64   `gorm:"column:expiry_date" json:"expiry_date"`
81
+	WarehousingCount int64   `gorm:"column:warehousing_count" json:"warehousing_count"`
82
+	WarehousingUnit  string  `gorm:"column:warehousing_unit" json:"warehousing_unit"`
83
+	Price            float64 `gorm:"column:price" json:"price"`
84
+	TotalPrice       float64 `gorm:"column:total_price" json:"total_price"`
85
+	Dealer           int64   `gorm:"column:dealer" json:"dealer"`
86
+	Manufacturer     int64   `gorm:"column:manufacturer" json:"manufacturer"`
87
+	Remark           string  `gorm:"column:remark" json:"remark"`
88
+	Ctime            int64   `gorm:"column:ctime" json:"ctime"`
89
+	Mtime            int64   `gorm:"column:mtime" json:"mtime"`
90
+	Status           int64   `gorm:"column:status" json:"status"`
91
+	OrgId            int64   `gorm:"column:org_id" json:"org_id"`
92
+	IsReturn         int64   `gorm:"column:is_return" json:"is_return"`
93
+	StockCount       int64   `gorm:"column:stock_count" json:"stock_count" form:"stock_count"`
94
+	WarehousingOrder string  `gorm:"column:warehousing_order" json:"warehousing_order"`
95
+	Type             int64   `gorm:"column:type" json:"type"`
96
+}
97
+
98
+func (StWarehousingInfo) TableName() string {
99
+	return "xt_warehouse_info"
100
+}
101
+
73 102
 type WarehousingInfo struct {
74 103
 	ID               int64       `gorm:"column:id" json:"id"`
75 104
 	WarehousingId    int64       `gorm:"column:warehousing_id" json:"warehousing_id"`
@@ -129,7 +158,7 @@ type VmWarehousingInfo struct {
129 158
 	GoodName          string      `gorm:"column:good_name" json:"good_name"`
130 159
 	SpecificationName string      `gorm:"column:specification_name" json:"specification_name" form:"specification_name"`
131 160
 	MinNumber         int64       `gorm:"column:min_number" json:"min_number" form:"min_number"`
132
-	MinUnit           string      `gorm:"column:min_unit" json:"min_unit" form:"min_unit"`
161
+	PackingUnit       string      `gorm:"column:packing_unit" json:"packing_unit" form:"packing_unit"`
133 162
 }
134 163
 
135 164
 type WarehouseOut struct {
@@ -183,6 +212,7 @@ type WarehouseOutInfo struct {
183 212
 	IsSys                   int64        `gorm:"column:is_sys" json:"is_sys"`
184 213
 	SysRecordTime           int64        `gorm:"column:sys_record_time" json:"sys_record_time"`
185 214
 	PatientId               int64        `gorm:"column:patient_id" json:"patient_id"`
215
+	Number                  string       `gorm:"column:number" json:"number" form:"number"`
186 216
 }
187 217
 
188 218
 func (WarehouseOutInfo) TableName() string {
@@ -390,4 +420,41 @@ type WarehouseOutInfoOne struct {
390 420
 	MinNumber               int64   `gorm:"column:min_number" json:"min_number" form:"min_number"`
391 421
 	PackingPrice            float64 `gorm:"column:packing_price" json:"packing_price" form:"packing_price"`
392 422
 	MinUnit                 string  `gorm:"column:min_unit" json:"min_unit" form:"min_unit"`
423
+	Number                  string  `gorm:"column:number" json:"number" form:"number"`
424
+	PackingUnit             string  `gorm:"column:packing_unit" json:"packing_unit" form:"packing_unit"`
425
+}
426
+
427
+type WarehouseOutInfoTwo struct {
428
+	ID                      int64                `gorm:"column:id" json:"id"`
429
+	WarehouseOutId          int64                `gorm:"column:warehouse_out_id" json:"warehouse_out_id"`
430
+	WarehouseInfotId        int64                `gorm:"column:warehouse_info_id" json:"warehouse_info_id"`
431
+	GoodId                  int64                `gorm:"column:good_id" json:"good_id"`
432
+	GoodTypeId              int64                `gorm:"column:good_type_id" json:"good_type_id"`
433
+	WarehousingOutTarget    int64                `gorm:"column:warehousing_out_target" json:"warehousing_out_target"`
434
+	Count                   int64                `gorm:"column:count" json:"count"`
435
+	Price                   float64              `gorm:"column:price" json:"price"`
436
+	TotalPrice              float64              `gorm:"column:total_price" json:"total_price"`
437
+	ProductDate             int64                `gorm:"column:product_date" json:"product_date"`
438
+	ExpiryDate              int64                `gorm:"column:expiry_date" json:"expiry_date"`
439
+	Mtime                   int64                `gorm:"column:mtime" json:"mtime"`
440
+	Ctime                   int64                `gorm:"column:ctime" json:"ctime"`
441
+	Status                  int64                `gorm:"column:status" json:"status"`
442
+	OrgId                   int64                `gorm:"column:org_id" json:"org_id"`
443
+	Remark                  string               `gorm:"column:remark" json:"remark"`
444
+	IsCancel                int64                `gorm:"column:is_cancel" json:"is_cancel"`
445
+	WarehouseOutOrderNumber string               `gorm:"column:warehouse_out_order_number" json:"warehouse_out_order_number"`
446
+	Type                    int64                `gorm:"column:type" json:"type"`
447
+	Dealer                  int64                `gorm:"column:dealer" json:"dealer"`
448
+	Manufacturer            int64                `gorm:"column:manufacturer" json:"manufacturer"`
449
+	IsSys                   int64                `gorm:"column:is_sys" json:"is_sys"`
450
+	SysRecordTime           int64                `gorm:"column:sys_record_time" json:"sys_record_time"`
451
+	PatientId               int64                `gorm:"column:patient_id" json:"patient_id"`
452
+	GoodName                string               `gorm:"column:good_name" json:"good_name" form:"good_name"`
453
+	SpecificationName       string               `gorm:"column:specification_name" json:"specification_name" form:"specification_name"`
454
+	MinNumber               int64                `gorm:"column:min_number" json:"min_number" form:"min_number"`
455
+	PackingPrice            float64              `gorm:"column:packing_price" json:"packing_price" form:"packing_price"`
456
+	MinUnit                 string               `gorm:"column:min_unit" json:"min_unit" form:"min_unit"`
457
+	Number                  string               `gorm:"column:number" json:"number" form:"number"`
458
+	PackingUnit             string               `gorm:"column:packing_unit" json:"packing_unit" form:"packing_unit"`
459
+	StWarehousingInfo       []*StWarehousingInfo `gorm:"ForeignKey:good_id;AssociationForeignKey:GoodId" json:"xt_warehouse_info"`
393 460
 }

+ 21 - 0
service/mobile_dialysis_service.go 查看文件

@@ -2140,6 +2140,12 @@ func DeleteAutoReduceDetail(good_id int64, record_time int64, patient_id int64)
2140 2140
 	return err
2141 2141
 }
2142 2142
 
2143
+func DeleteDialysisBeforOne(good_id int64, record_time int64, patient_id int64) error {
2144
+	detail := models.DialysisBeforePrepare{}
2145
+	err := XTWriteDB().Model(&detail).Where("good_id = ? and status = 1 and record_date = ? and patient_id = ?", good_id, record_time, patient_id).Updates(map[string]interface{}{"status": 0}).Error
2146
+	return err
2147
+}
2148
+
2143 2149
 func BatchAdviceCheck(ids []string, creator int64) error {
2144 2150
 
2145 2151
 	advice := models.XtDoctorAdvice{}
@@ -2237,3 +2243,18 @@ func GetPCHisPrescriptionProject(orgID int64, scheduleDate int64, deliverWay str
2237 2243
 
2238 2244
 	return vms, err
2239 2245
 }
2246
+
2247
+func UpdateStockGoods(good_id int64, record_time int64, patient_id int64, count int64) error {
2248
+
2249
+	prepare := models.DialysisBeforePrepare{}
2250
+
2251
+	err := XTWriteDB().Model(&prepare).Where("good_id= ? and record_date = ? and patient_id = ? and count  <> 0 and status = 1", good_id, record_time, patient_id).Updates(map[string]interface{}{"count": count}).Error
2252
+	return err
2253
+}
2254
+
2255
+func UPdateAutoStockGoods(good_id int64, record_time int64, patient_id int64, count int64) error {
2256
+
2257
+	detail := models.AutomaticReduceDetail{}
2258
+	err := XTWriteDB().Model(&detail).Where("good_id = ? and record_time = ? and patient_id = ? and count <> 0 and status = 1", good_id, record_time, patient_id).Updates(map[string]interface{}{"count": count}).Error
2259
+	return err
2260
+}

+ 16 - 7
service/stock_service.go 查看文件

@@ -891,11 +891,11 @@ func CreateWarehousingOutInfo(warehouseOutInfo []*models.WarehouseOutInfo) (err
891 891
 	if len(warehouseOutInfo) > 0 {
892 892
 		utx := writeDb.Begin()
893 893
 		if len(warehouseOutInfo) > 0 {
894
-			thisSQL := "INSERT INTO xt_warehouse_out_info (warehouse_out_id, good_id, good_type_id, product_date,expiry_date,count,price,total_price,remark,ctime,status,org_id,warehouse_out_order_number,type,dealer,manufacturer) VALUES "
894
+			thisSQL := "INSERT INTO xt_warehouse_out_info (warehouse_out_id, good_id, good_type_id, product_date,expiry_date,count,price,total_price,remark,ctime,status,org_id,warehouse_out_order_number,type,dealer,manufacturer,number) VALUES "
895 895
 			insertParams := make([]string, 0)
896 896
 			insertData := make([]interface{}, 0)
897 897
 			for _, info := range warehouseOutInfo {
898
-				insertParams = append(insertParams, "(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)")
898
+				insertParams = append(insertParams, "(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)")
899 899
 				insertData = append(insertData, info.WarehouseOutId)
900 900
 				insertData = append(insertData, info.GoodId)
901 901
 				insertData = append(insertData, info.GoodTypeId)
@@ -912,7 +912,7 @@ func CreateWarehousingOutInfo(warehouseOutInfo []*models.WarehouseOutInfo) (err
912 912
 				insertData = append(insertData, info.Type)
913 913
 				insertData = append(insertData, info.Dealer)
914 914
 				insertData = append(insertData, info.Manufacturer)
915
-
915
+				insertData = append(insertData, info.Number)
916 916
 			}
917 917
 			thisSQL += strings.Join(insertParams, ", ")
918 918
 			err = utx.Exec(thisSQL, insertData...).Error
@@ -2677,7 +2677,9 @@ func GetSearchGoodList(keywords string, orgid int64) (good []*models.GoodInfo, e
2677 2677
 	db := XTReadDB().Model(&good).Where("org_id =? and status = 1", orgid)
2678 2678
 	if len(keywords) > 0 {
2679 2679
 		likekey := "%" + keywords + "%"
2680
-		err = db.Where("(good_name Like ?)", likekey).Find(&good).Error
2680
+		err = db.Where("(good_name Like ?)", likekey).Preload("StWarehousingInfo", func(db *gorm.DB) *gorm.DB {
2681
+			return XTReadDB().Where("org_id=? and status = 1 and warehousing_count <> 0", orgid)
2682
+		}).Find(&good).Error
2681 2683
 	} else {
2682 2684
 		err = db.Find(&good).Error
2683 2685
 	}
@@ -2694,7 +2696,7 @@ func GetAutoMaticReduceDetail(orgid int64, patient_id int64, recordtime int64, g
2694 2696
 
2695 2697
 	var autoreduece models.BloodAutomaticReduceDetail
2696 2698
 	var err error
2697
-	err = XTReadDB().Model(&autoreduece).Where("org_id = ? and patient_id = ?  and status = 1 and record_time = ? and good_id = ? and good_type_id = ?", orgid, patient_id, recordtime, goodid, goodtypeid).Find(&autoreduece).Error
2699
+	err = XTReadDB().Model(&autoreduece).Where("org_id = ? and patient_id = ?  and status = 1 and record_time = ? and good_id = ? and good_type_id = ? and count<> 0", orgid, patient_id, recordtime, goodid, goodtypeid).Find(&autoreduece).Error
2698 2700
 	if err == gorm.ErrRecordNotFound {
2699 2701
 		return nil, err
2700 2702
 	}
@@ -2759,7 +2761,7 @@ func GetAllStockList(page int64, limit int64, startime int64, endtime int64, goo
2759 2761
 	if good_type > 0 {
2760 2762
 		db = db.Where("t.good_type_id = ?", good_type)
2761 2763
 	}
2762
-	err = db.Select("x.id,x.warehousing_id,x.good_id,x.good_type_id,x.number,x.product_date,x.expiry_date,x.warehousing_count,x.warehousing_unit,x.stock_count,x.price,x.total_price,x.dealer,x.remark,x.ctime,x.is_return,x.warehousing_order,x.type,t.good_name,t.good_type_id,t.specification_name,t.min_number,t.min_unit,t.manufacturer").Joins("left join xt_good_information as t on t.id = x.good_id").Group("x.good_id").Count(&total).Offset(offset).Limit(limit).Order("x.ctime desc").Scan(&info).Error
2764
+	err = db.Select("x.id,x.warehousing_id,x.good_id,x.good_type_id,x.number,x.product_date,x.expiry_date,x.warehousing_count,x.warehousing_unit,x.stock_count,x.price,x.total_price,x.dealer,x.remark,x.ctime,x.is_return,x.warehousing_order,x.type,t.good_name,t.good_type_id,t.specification_name,t.min_number,t.packing_unit,t.manufacturer").Joins("left join xt_good_information as t on t.id = x.good_id").Group("x.good_id").Count(&total).Offset(offset).Limit(limit).Order("x.ctime desc").Scan(&info).Error
2763 2765
 	return info, total, err
2764 2766
 }
2765 2767
 
@@ -2870,7 +2872,7 @@ func GetOrderDetialByOrderId(id int64, orgid int64) (out []*models.WarehouseOutI
2870 2872
 	if orgid > 0 {
2871 2873
 		db = db.Where("x.org_id = ?", orgid)
2872 2874
 	}
2873
-	err = db.Select("x.id,x.warehouse_out_id,x.good_id,sum(x.count) as count,x.price,x.total_price,x.product_date,x.expiry_date,x.ctime,x.org_id,x.warehouse_out_order_number,x.type,x.dealer,t.manufacturer,x.is_sys,x.sys_record_time,t.good_name,t.good_type_id,t.specification_name,t.min_number,t.packing_unit,t.min_unit").Joins("left join xt_good_information as t on t.id=x.good_id").Group("x.good_id").Order("x.ctime desc").Scan(&out).Error
2875
+	err = db.Select("x.id,x.warehouse_out_id,x.good_id,sum(x.count) as count,x.price,x.total_price,x.product_date,x.expiry_date,x.ctime,x.org_id,x.warehouse_out_order_number,x.type,x.dealer,t.manufacturer,x.is_sys,x.sys_record_time,x.number,t.good_name,t.good_type_id,t.specification_name,t.min_number,t.packing_unit,t.min_unit").Joins("left join xt_good_information as t on t.id=x.good_id").Group("x.good_id").Order("x.ctime desc").Scan(&out).Error
2874 2876
 	return out, err
2875 2877
 }
2876 2878
 
@@ -2884,3 +2886,10 @@ func FindUserDetailByIdOne(good_id int64, record_time int64, org_id int64) (user
2884 2886
 	err = db.Find(&user).Error
2885 2887
 	return
2886 2888
 }
2889
+
2890
+func GetGoodInformationByGoodId(good_id int64) (models.GoodInfo, error) {
2891
+
2892
+	info := models.GoodInfo{}
2893
+	err := XTReadDB().Where("id = ? and status = 1", good_id).Find(&info).Error
2894
+	return info, err
2895
+}

+ 37 - 33
service/warhouse_service.go 查看文件

@@ -633,12 +633,16 @@ func ConsumablesDeliveryTotal(orgID int64, patient_id int64, record_time int64,
633 633
 
634 634
 	//查询该患者当天已经出库的耗材信息
635 635
 	goods_yc, _ := FindConsumablesByDateTwo(orgID, patient_id, record_time)
636
-	for _, item := range goods_yc {
637
-		fmt.Println("item0000000000000", item.Count)
638
-	}
639
-	for _, item := range goods {
640
-		fmt.Println("item1111111111111", item.Count)
641
-	}
636
+	//for _, item := range goods_yc {
637
+	//	fmt.Println("已经出库的耗材新消息  -----------------------------------------", item.Count)
638
+	//}
639
+	//for _, item := range goods {
640
+	//	fmt.Println("新传进来来的耗材新消息0000000000000000000000000000000000000000000000000", item.Count)
641
+	//}
642
+	//
643
+	//for _,item :=range goodOne{
644
+	//    fmt.Println("hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh",item.Count)
645
+	//}
642 646
 	// 和新请求的出库数据进行对比,分出那些是继续出库的,那些是需要删除出库的
643 647
 	for i := len(goods_yc) - 1; i >= 0; i-- {
644 648
 		goods_yc_temp := goods_yc[i]
@@ -652,25 +656,25 @@ func ConsumablesDeliveryTotal(orgID int64, patient_id int64, record_time int64,
652 656
 					goods = append(goods[:j], goods[j+1:]...)
653 657
 					break
654 658
 				}
655
-				fmt.Println("998888888888888", goods_yc_temp.Count)
656
-				fmt.Println("7777777777777777", goods_temp.Count)
659
+				//fmt.Println("998888888888888", goods_yc_temp.Count)
660
+				//fmt.Println("7777777777777777", goods_temp.Count)
657 661
 				// 如果已经出库的数量 大于 新请求出库的数量,则代表需要删除出库
658 662
 				if goods_yc_temp.Count > goods_temp.Count {
659
-					fmt.Println("进来了是吗")
663
+
660 664
 					temp_count := goods_yc_temp.Count - goods_temp.Count
661 665
 					goods_yc[i].Count = temp_count
662 666
 					goods = append(goods[:j], goods[j+1:]...)
663 667
 					break
664 668
 				}
665
-				fmt.Println("555555555555", goods_yc_temp.Count)
666
-				fmt.Println("444444444444", goods_temp.Count)
669
+				//fmt.Println("555555555555", goods_yc_temp.Count)
670
+				//fmt.Println("444444444444", goods_temp.Count)
667 671
 				// 如果已经出库的数量 小于 新请求出库的梳理,则代表需要增加出库
668 672
 				if goods_yc_temp.Count < goods_temp.Count {
669 673
 					temp_count := goods_temp.Count - goods_yc_temp.Count
670
-					fmt.Println("988888888888888", temp_count)
674
+					//fmt.Println("988888888888888", temp_count)
671 675
 					goods[j].Count = temp_count
672 676
 					goods_yc = append(goods_yc[:i], goods_yc[i+1:]...)
673
-					fmt.Println("888888888", goods_yc)
677
+					//fmt.Println("888888888", goods_yc)
674 678
 					break
675 679
 				}
676 680
 			}
@@ -678,7 +682,7 @@ func ConsumablesDeliveryTotal(orgID int64, patient_id int64, record_time int64,
678 682
 	}
679 683
 
680 684
 	// goods_yc 这个数据就是需要已经出库了,但是现在需要删除出库的耗材数据
681
-	// goods 这个数据就是需要出库的耗材的数据
685
+	// goods 这个数据就是需要出库的耗材的数据(新增的数据)
682 686
 	fmt.Println("goods222222222222", goods)
683 687
 	fmt.Println("goodsy999999999999", goods_yc)
684 688
 	if len(goods) > 0 {
@@ -718,7 +722,7 @@ func ConsumablesDeliveryTotal(orgID int64, patient_id int64, record_time int64,
718 722
 		for _, item := range goods {
719 723
 			var newCount int64 = 0
720 724
 			for _, it := range goodOne {
721
-				if item.GoodTypeId == it.GoodTypeId && it.GoodId == it.GoodId {
725
+				if item.GoodTypeId == it.GoodTypeId && item.GoodId == it.GoodId {
722 726
 					newCount = it.Count
723 727
 				}
724 728
 			}
@@ -727,20 +731,10 @@ func ConsumablesDeliveryTotal(orgID int64, patient_id int64, record_time int64,
727 731
 				GoodId:     item.GoodId,
728 732
 				Count:      item.Count,
729 733
 			}
730
-
734
+			fmt.Println("count0000000000000000000000000000000", newCount)
731 735
 			ConsumablesDelivery(orgID, patient_id, record_time, &prepare, &out, newCount)
732 736
 		}
733 737
 
734
-		// for _, item := range goodOne {
735
-		// 	prepare := models.DialysisBeforePrepare{
736
-		// 		GoodTypeId: item.GoodTypeId,
737
-		// 		GoodId:     item.GoodId,
738
-		// 		Count:      item.Count,
739
-		// 		NewCount:   item.NewCount,
740
-		// 	}
741
-		// 	fmt.Println("数量99999999999999999", item.Count)
742
-		// 	ConsumablesDelivery(orgID, patient_id, record_time, &prepare, &out, item.Count)
743
-		// }
744 738
 	}
745 739
 
746 740
 	if len(goods_yc) > 0 {
@@ -821,12 +815,16 @@ func ConsumablesDelivery(orgID int64, patient_id int64, record_time int64, goods
821 815
 				}
822 816
 				//查询当天耗材是否已经存在数据
823 817
 				_, errcode := GetAutoMaticReduceDetail(orgID, patient_id, record_time, goods.GoodId, goods.GoodTypeId)
818
+
819
+				fmt.Println("errcode00000000000000000000000000000000000000", errcode)
824 820
 				if errcode == gorm.ErrRecordNotFound {
825 821
 					errTwo := CreateAutoReduceRecord(&details)
826 822
 					if errTwo != nil {
827 823
 						return errTwo
828 824
 					}
829 825
 				} else if errcode == nil {
826
+					fmt.Println("sql999999999999999999999999999999999999999")
827
+
830 828
 					DeleteAutoRedeceDetailTwo(orgID, patient_id, record_time, goods.GoodId, goods.GoodTypeId)
831 829
 					CreateAutoReduceRecord(&details)
832 830
 				}
@@ -849,6 +847,7 @@ func ConsumablesDelivery(orgID int64, patient_id int64, record_time int64, goods
849 847
 				GoodId:                  goods.GoodId,
850 848
 				PatientId:               patient_id,
851 849
 			}
850
+			fmt.Println("count9999999999999999999999999999999999999", count)
852 851
 			warehouseOutInfo.Count = count
853 852
 			//更新入库详情表
854 853
 			UpdateAutoMaticReduceDetail(goods.GoodId, goods.GoodTypeId, record_time, patient_id, orgID, warehouseOutInfo)
@@ -874,7 +873,6 @@ func ConsumablesDelivery(orgID int64, patient_id int64, record_time int64, goods
874 873
 				}
875 874
 			} else if errcode == nil {
876 875
 				DeleteAutoRedeceDetailTwo(orgID, patient_id, record_time, goods.GoodId, goods.GoodTypeId)
877
-
878 876
 				CreateAutoReduceRecord(&details)
879 877
 			}
880 878
 		}
@@ -1116,7 +1114,7 @@ func ConsumablesDeliveryDelete(orgID int64, patient_id int64, record_time int64,
1116 1114
 
1117 1115
 func GetAutoReduceRecordInfoByPatientId(orgid int64, patient_id int64, recordTime int64) (autoReduce []*models.AutomaticReduceDetail, err error) {
1118 1116
 
1119
-	err = XTReadDB().Model(&autoReduce).Where("org_id = ? and patient_id = ? and record_time = ? and status = 1 and count<>0", orgid, patient_id, recordTime).Find(&autoReduce).Error
1117
+	err = XTReadDB().Model(&autoReduce).Where("org_id = ? and patient_id = ? and record_time = ? and status = 1", orgid, patient_id, recordTime).Find(&autoReduce).Error
1120 1118
 	return autoReduce, err
1121 1119
 }
1122 1120
 
@@ -1126,6 +1124,12 @@ func DeleteDialysisBefor(orgid int64, patient_id int64, record_date int64, goodi
1126 1124
 	return err
1127 1125
 }
1128 1126
 
1127
+func DeleteDialysisBeforThree(orgid int64, patient_id int64, record_date int64) error {
1128
+	prepare := models.DialysisBeforePrepare{}
1129
+	err := XTWriteDB().Model(&prepare).Where("user_org_id = ? and patient_id = ? and record_date = ? and status = 1", orgid, patient_id, record_date).Updates(map[string]interface{}{"status": 0, "count": 0, "mtime": time.Now().Unix()}).Error
1130
+	return err
1131
+}
1132
+
1129 1133
 func ConsumablesDeliveryTotalOne(orgID int64, patient_id int64, record_time int64, goods []*models.DialysisBeforePrepareGoods, goodOne []*models.NewDialysisBeforePrepareGoods) (err error) {
1130 1134
 
1131 1135
 	//查询该患者当天已经出库的耗材信息
@@ -1279,7 +1283,7 @@ func ConsumablesDeliveryOne(orgID int64, record_time int64, goods *models.Wareho
1279 1283
 			Type:                    1,
1280 1284
 			Manufacturer:            0,
1281 1285
 			Dealer:                  0,
1282
-			IsSys:                   1,
1286
+			IsSys:                   0,
1283 1287
 			SysRecordTime:           record_time,
1284 1288
 			GoodTypeId:              goods.GoodTypeId,
1285 1289
 			GoodId:                  goods.GoodId,
@@ -1307,7 +1311,7 @@ func ConsumablesDeliveryOne(orgID int64, record_time int64, goods *models.Wareho
1307 1311
 				Type:                    1,
1308 1312
 				Manufacturer:            0,
1309 1313
 				Dealer:                  0,
1310
-				IsSys:                   1,
1314
+				IsSys:                   0,
1311 1315
 				SysRecordTime:           record_time,
1312 1316
 				GoodTypeId:              goods.GoodTypeId,
1313 1317
 				GoodId:                  goods.GoodId,
@@ -1347,7 +1351,7 @@ func ConsumablesDeliveryOne(orgID int64, record_time int64, goods *models.Wareho
1347 1351
 			Type:                    1,
1348 1352
 			Manufacturer:            0,
1349 1353
 			Dealer:                  0,
1350
-			IsSys:                   1,
1354
+			IsSys:                   0,
1351 1355
 			SysRecordTime:           record_time,
1352 1356
 			GoodTypeId:              goods.GoodTypeId,
1353 1357
 			GoodId:                  goods.GoodId,
@@ -1387,7 +1391,7 @@ func ConsumablesDeliveryOne(orgID int64, record_time int64, goods *models.Wareho
1387 1391
 				Type:                    1,
1388 1392
 				Manufacturer:            0,
1389 1393
 				Dealer:                  0,
1390
-				IsSys:                   1,
1394
+				IsSys:                   0,
1391 1395
 				SysRecordTime:           record_time,
1392 1396
 				GoodTypeId:              goods.GoodTypeId,
1393 1397
 				GoodId:                  goods.GoodId,
@@ -1430,7 +1434,7 @@ func ConsumablesDeliveryDeleteOne(orgID int64, record_time int64, good_yc *model
1430 1434
 			Type:          1,
1431 1435
 			Manufacturer:  0,
1432 1436
 			Dealer:        0,
1433
-			IsSys:         1,
1437
+			IsSys:         0,
1434 1438
 			SysRecordTime: record_time,
1435 1439
 			GoodTypeId:    good_yc.GoodTypeId,
1436 1440
 			GoodId:        good_yc.GoodId,