|
@@ -756,8 +756,18 @@ func (c *StockDrugApiController) EditDrugWarehouse() {
|
756
|
756
|
|
757
|
757
|
if item.WarehousingCount == warehouseInfo.WarehousingCount {
|
758
|
758
|
item.OrgId = item.OrgId
|
759
|
|
-
|
760
|
|
- errs = service.UpDateDrugWarehousingInfoTwo(item.ID, item)
|
|
759
|
+ warehouseinfo := &models.DrugWarehouseInfo{
|
|
760
|
+ Number: item.Number,
|
|
761
|
+ ProductDate: item.ProductDate,
|
|
762
|
+ ExpiryDate: item.ExpiryDate,
|
|
763
|
+ Price: item.Price,
|
|
764
|
+ TotalPrice: item.TotalPrice,
|
|
765
|
+ Dealer: item.Dealer,
|
|
766
|
+ Manufacturer: item.Manufacturer,
|
|
767
|
+ Remark: item.Remark,
|
|
768
|
+ BatchNumber: item.BatchNumber,
|
|
769
|
+ }
|
|
770
|
+ errs = service.UpDateDrugWarehousingInfoTwo(item.ID, warehouseinfo)
|
761
|
771
|
}
|
762
|
772
|
}
|
763
|
773
|
}
|
|
@@ -1575,9 +1585,10 @@ func (c *StockDrugApiController) EditDrugWarehouseOut() {
|
1575
|
1585
|
warehouseOut, _ := service.FindDrugWareHouseOutById(id, adminUserInfo.CurrentOrgId)
|
1576
|
1586
|
|
1577
|
1587
|
tempWarehouseOut := models.DrugWarehouseOut{
|
1578
|
|
- ID: warehouseOut.ID,
|
1579
|
|
- Mtime: mtime,
|
1580
|
|
- WarehouseOutTime: warehouseOutDate.Unix(),
|
|
1588
|
+ ID: warehouseOut.ID,
|
|
1589
|
+ Mtime: mtime,
|
|
1590
|
+ WarehouseOutTime: warehouseOutDate.Unix(),
|
|
1591
|
+ WarehouseOutOrderNumber: warehouseOut.WarehouseOutOrderNumber,
|
1581
|
1592
|
}
|
1582
|
1593
|
|
1583
|
1594
|
service.EditDrugWarehouseOut(tempWarehouseOut)
|
|
@@ -1859,8 +1870,8 @@ func (c *StockDrugApiController) EditDrugWarehouseOut() {
|
1859
|
1870
|
})
|
1860
|
1871
|
return
|
1861
|
1872
|
} else {
|
1862
|
|
- errs = service.CreateDrugWarehousingOutInfo(warehousingOutInfo)
|
1863
|
|
- service.CreateDrugFlow(drugFlow)
|
|
1873
|
+ //errs = service.CreateDrugWarehousingOutInfo(warehousingOutInfo)
|
|
1874
|
+ //service.CreateDrugFlow(drugFlow)
|
1864
|
1875
|
// 出库流程
|
1865
|
1876
|
// 1.查询改药品在药品库的规格信息,并将处方里的规格进行换算(尽量将拆零单位转换成包装单位)
|
1866
|
1877
|
drup, _ := service.FindBaseDrugLibRecord(item.OrgId, item.DrugId)
|
|
@@ -1975,7 +1986,7 @@ func (c *StockDrugApiController) EditDrugWarehouseOut() {
|
1975
|
1986
|
|
1976
|
1987
|
cha_number = min_number - max_number
|
1977
|
1988
|
//如果总库存大于差,正常出库
|
1978
|
|
- if all_number >= cha_number {
|
|
1989
|
+ if all_number > cha_number {
|
1979
|
1990
|
|
1980
|
1991
|
errs = service.UpDateDrugWarehouseOutInfo(item)
|
1981
|
1992
|
|
|
@@ -2036,7 +2047,36 @@ func (c *StockDrugApiController) EditDrugWarehouseOut() {
|
2036
|
2047
|
})
|
2037
|
2048
|
}
|
2038
|
2049
|
}
|
|
2050
|
+ if all_number == cha_number {
|
|
2051
|
+ warehouseInfo := models.XtDrugWarehouseInfo{
|
|
2052
|
+ Number: item.Number,
|
|
2053
|
+ ProductDate: item.ProductDate,
|
|
2054
|
+ ExpiryDate: item.ExpiryDate,
|
|
2055
|
+ Price: item.Price,
|
|
2056
|
+ TotalPrice: item.TotalPrice,
|
|
2057
|
+ Dealer: item.Dealer,
|
|
2058
|
+ Manufacturer: item.Manufacturer,
|
|
2059
|
+ Remark: item.Remark,
|
|
2060
|
+ BatchNumber: item.BatchNumber,
|
|
2061
|
+ MaxUnit: item.CountUnit,
|
|
2062
|
+ }
|
|
2063
|
+ parseDateErr := service.UpdateDrugWarehouseingInfoSix(item.ID, warehouseInfo)
|
|
2064
|
+ if parseDateErr != nil {
|
|
2065
|
+ utils.ErrorLog(errs.Error())
|
|
2066
|
+ c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeCreateStockOutFail)
|
|
2067
|
+ return
|
|
2068
|
+ }
|
2039
|
2069
|
|
|
2070
|
+ c.ServeSuccessJSON(map[string]interface{}{
|
|
2071
|
+ "msg": "2",
|
|
2072
|
+ "drug_name": "",
|
|
2073
|
+ "dose": "",
|
|
2074
|
+ "dose_unit": "",
|
|
2075
|
+ "min_number": "",
|
|
2076
|
+ "min_unit": "",
|
|
2077
|
+ "max_unit": "",
|
|
2078
|
+ })
|
|
2079
|
+ }
|
2040
|
2080
|
if all_number < cha_number {
|
2041
|
2081
|
goodObj, _ := service.GetDrugByGoodId(item.DrugId)
|
2042
|
2082
|
c.ServeSuccessJSON(map[string]interface{}{
|
|
@@ -2305,29 +2345,29 @@ func (c *StockDrugApiController) CreateDrugCancelStock() {
|
2305
|
2345
|
//查询该批次总的退库数量
|
2306
|
2346
|
canInfo, _ := service.GetCancelDrugStockOutInfo(item.BatchNumberId, item.DrugId)
|
2307
|
2347
|
|
2308
|
|
- for _, item := range canInfo {
|
2309
|
|
- if item.MaxUnit == medical.MaxUnit {
|
2310
|
|
- item.Count = item.Count * medical.MinNumber
|
|
2348
|
+ for _, it := range canInfo {
|
|
2349
|
+ if it.MaxUnit == medical.MaxUnit {
|
|
2350
|
+ it.Count = it.Count * medical.MinNumber
|
2311
|
2351
|
}
|
2312
|
|
- if item.MaxUnit == medical.MinUnit {
|
2313
|
|
- item.Count = item.Count
|
|
2352
|
+ if it.MaxUnit == medical.MinUnit {
|
|
2353
|
+ it.Count = it.Count
|
2314
|
2354
|
}
|
2315
|
2355
|
}
|
2316
|
2356
|
|
2317
|
|
- for _, item := range canInfo {
|
2318
|
|
- can_number += item.Count
|
|
2357
|
+ for _, it := range canInfo {
|
|
2358
|
+ can_number += it.Count
|
2319
|
2359
|
}
|
2320
|
2360
|
|
2321
|
|
- for _, item := range outInfo {
|
2322
|
|
- if item.CountUnit == medical.MaxUnit {
|
2323
|
|
- item.Count = item.Count * medical.MinNumber
|
|
2361
|
+ for _, it := range outInfo {
|
|
2362
|
+ if it.CountUnit == medical.MaxUnit {
|
|
2363
|
+ it.Count = it.Count * medical.MinNumber
|
2324
|
2364
|
}
|
2325
|
|
- if item.CountUnit == medical.MinUnit {
|
2326
|
|
- item.Count = item.Count
|
|
2365
|
+ if it.CountUnit == medical.MinUnit {
|
|
2366
|
+ it.Count = it.Count
|
2327
|
2367
|
}
|
2328
|
2368
|
}
|
2329
|
|
- for _, item := range outInfo {
|
2330
|
|
- out_number += item.Count
|
|
2369
|
+ for _, it := range outInfo {
|
|
2370
|
+ out_number += it.Count
|
2331
|
2371
|
}
|
2332
|
2372
|
|
2333
|
2373
|
if out_number == 0 {
|
|
@@ -2338,7 +2378,7 @@ func (c *StockDrugApiController) CreateDrugCancelStock() {
|
2338
|
2378
|
return
|
2339
|
2379
|
}
|
2340
|
2380
|
|
2341
|
|
- fmt.Println("hhhh233323232322323", total_number, total_count)
|
|
2381
|
+ fmt.Println("时间任命323332233232", total_number, total_count)
|
2342
|
2382
|
|
2343
|
2383
|
//判断退库数量是否大于总入库数量
|
2344
|
2384
|
if total_number > total_count {
|
|
@@ -2366,9 +2406,42 @@ func (c *StockDrugApiController) CreateDrugCancelStock() {
|
2366
|
2406
|
//正常退库
|
2367
|
2407
|
if total_number <= out_number {
|
2368
|
2408
|
//创建退库详情
|
2369
|
|
- errs := service.CreateDrugCancelStockInfo(cancelStockInfos)
|
|
2409
|
+ errs := service.CreateCancelStockInfoTwo(item)
|
2370
|
2410
|
//创建库存明细
|
2371
|
|
- errs = service.CreateDrugFlow(drugFlow)
|
|
2411
|
+ flows := models.DrugFlow{
|
|
2412
|
+ WarehousingId: 0,
|
|
2413
|
+ DrugId: item.DrugId,
|
|
2414
|
+ Number: "",
|
|
2415
|
+ BatchNumber: item.BatchNumber,
|
|
2416
|
+ Count: item.Count,
|
|
2417
|
+ UserOrgId: adminUserInfo.CurrentOrgId,
|
|
2418
|
+ PatientId: 0,
|
|
2419
|
+ SystemTime: ctime,
|
|
2420
|
+ ConsumableType: 4,
|
|
2421
|
+ IsSys: 0,
|
|
2422
|
+ WarehousingOrder: infoWareInfo.WarehousingOrder,
|
|
2423
|
+ WarehouseOutId: 0,
|
|
2424
|
+ WarehouseOutOrderNumber: "",
|
|
2425
|
+ IsEdit: 0,
|
|
2426
|
+ CancelStockId: cancelStock.ID,
|
|
2427
|
+ CancelOrderNumber: cancelStock.OrderNumber,
|
|
2428
|
+ Manufacturer: manufacturer_id,
|
|
2429
|
+ Dealer: dealer_id,
|
|
2430
|
+ Creator: adminUserInfo.AdminUser.Id,
|
|
2431
|
+ UpdateCreator: 0,
|
|
2432
|
+ Status: 1,
|
|
2433
|
+ Ctime: time.Now().Unix(),
|
|
2434
|
+ Mtime: 0,
|
|
2435
|
+ Price: item.Price,
|
|
2436
|
+ WarehousingDetailId: 0,
|
|
2437
|
+ WarehouseOutDetailId: 0,
|
|
2438
|
+ CancelOutDetailId: 0,
|
|
2439
|
+ ExpireDate: item.ExpiryDate,
|
|
2440
|
+ ProductDate: item.ProductDate,
|
|
2441
|
+ MaxUnit: item.MaxUnit,
|
|
2442
|
+ MinUnit: "",
|
|
2443
|
+ }
|
|
2444
|
+ errs = service.CreateDrugFlowOne(flows)
|
2372
|
2445
|
|
2373
|
2446
|
var total int64
|
2374
|
2447
|
|
|
@@ -2407,6 +2480,7 @@ func (c *StockDrugApiController) CreateDrugCancelStock() {
|
2407
|
2480
|
})
|
2408
|
2481
|
}
|
2409
|
2482
|
}
|
|
2483
|
+
|
2410
|
2484
|
}
|
2411
|
2485
|
}
|
2412
|
2486
|
func (c *StockDrugApiController) GetDrugCancelStockInfoList() {
|