Commit e5f03594 authored by xiao-hesheng's avatar xiao-hesheng
Browse files

流程十二脚本编写

parent 6e263ef5
......@@ -47,7 +47,7 @@ def SERACH_goods_id(GoodsId):
return branchGoodsId
def second_dept_consume_Out_Stock(hosGoodsId, type):
def second_dept_consume_Out_Stock(hosGoodsId, type):#二级库消耗出库
module = "b5_spd3_core_business_flow"
# # 登录获取用户id等信息,使用创建的用户登录===========开始
info = FileUtils().r_info8('b2_herp3_bs', "用户名信息", 'message3')
......@@ -62,24 +62,31 @@ def second_dept_consume_Out_Stock(hosGoodsId, type):
commonFuc().get_business_data(module, "json_contentType"), token,
commonFuc().get_business_data(module, "X-APP-CODE"))
if type == 1:
udi_code = get_udi2(1) # 获取条码 低值1 高值2 试剂3
elif type == 2:
if type == 2:
udi_code = get_udi2(2) # 获取条码 低值1 高值2 试剂3
elif type == 3:
udi_code = get_udi2(3) # 获取条码 低值1 高值2 试剂3
udi_code = get_udi3() # 获取条码 低值1 高值2 试剂3
else:
udi_code = 'udi_code'
if type==2:
#高值消耗
url = commonFuc().get_api_add_port_url() + commonFuc().get_business_data(module,
"herpService_stock_pick_scan_url")
# 从message18文件中获取信息
info = FileUtils().r_info8(module, "条码信息", 'message18')
# print('info', info)
list_a = info['list_a']
stockId = commonFuc().analysis_json('stockId', list_a)
stockName= commonFuc().analysis_json('stockName', list_a)
areaCode= commonFuc().analysis_json('areaCode', list_a)
areaName= commonFuc().analysis_json('areaName', list_a)
# 从message18文件中获取信息
request_body = commonFuc().get_business_data(module, "payload61", udi_code, stockId, stockName,areaCode,areaName)
result = commonFuc().http_post(url, request_body, headers)
# url = commonFuc().get_api_add_port_url() + commonFuc().get_business_data(module,
# "herpService_mcmsBranchGoodsInfo_page_url")
# dept1 = FileUtils().r_info8("b2_herp3_bs", "所有科室id", 'message6')['deptid1']
# GoodsId = hosGoodsId.replace(get_hosid(), '')
# request_body = commonFuc().get_business_data(module, "payload53_2", GoodsId, get_hosid(), get_branch_id(), dept1)
# result = commonFuc().http_post(url, request_body, headers)
# branchGoodsId = commonFuc().analysis_json('id', result)
def sCan_grant(type=1):
def sCan_grant(type=1): # 获取条码and扫码发放高值不能发放
module = "b5_spd3_core_business_flow"
# # 登录获取用户id等信息,使用创建的用户登录===========开始
info = FileUtils().r_info8('b2_herp3_bs', "用户名信息", 'message3')
......@@ -91,24 +98,20 @@ def sCan_grant(type=1):
# 登录获取用户id等信息,使用创建的用户登录============结束
if type == 1:
udi_code = get_udi2(1) # 获取条码 低值1 高值2 试剂3
elif type == 2:
udi_code = get_udi2(2) # 获取条码 低值1 高值2 试剂3
elif type == 3:
udi_code = get_udi2(3) # 获取条码 低值1 高值2 试剂3
else:
udi_code = 'udi_code'
if type == 1:
targetAreaCode, sourceId = pickScan3(udi_code, 1) # 低值
elif type == 2:
targetAreaCode, sourceId = pickScan3(udi_code, 2) # 高值
pickScan3(udi_code, 1) # 低值扫码发放
elif type == 3:
targetAreaCode, sourceId = pickScan3(udi_code, 3) # 试剂
else:
targetAreaCode = 'targetAreaCode'
sourceId = 'sourceId'
pickScan3(udi_code, 3) # 试剂扫码发放
try:
updateUserLoginDefaultRange(get_listUserMgrRangePage1(2)) # 设置登录账号默认权限是二级库
sCan_grant()
sCan_grant(1)#低值扫码发放
sCan_grant(3)#试剂扫码发放
# # # # 低值
# second_dept_consume_Out_Stock(FileUtils().r_info8("b5_spd3_core_business_flow", "产品审核信息", 'message2')['hosGoodsId'], 1)
# # # # 高值
......
......@@ -661,7 +661,48 @@ def get_udi2(type=1): # 二级科室库存明细查询获取条码
break
return pkgCodeSee
def get_udi3(): # 二级科室库存明细查询获取试剂单瓶条码
# type=1低值 2高值 3试剂
module = "b5_spd3_core_business_flow"
token, projectCode1, uxid1, corpId1, info1 = call_login()
url = commonFuc().get_api_add_port_url() + commonFuc().get_business_data(module,
"herpService_stock_barcode_page_url")
print('get_udi', url)
# 获取请求头信息
headers = commonFuc().get_business_data(module, "json_headers2",
commonFuc().get_business_data(module, "json_contentType"), token,
commonFuc().get_business_data(module, "X-APP-CODE"))
# # 请求体
request_body = 'request_body'
deptid2 = FileUtils().r_info8("b2_herp3_bs", "所有科室id", 'message6')['deptid2']
if type == 1:
hosGoodsId = FileUtils().r_info8("b5_spd3_core_business_flow", "产品审核信息", 'message2')['hosGoodsId']
GoodsId = hosGoodsId.replace(get_hosid(), '')
request_body = commonFuc().get_business_data(module, "payload17_2", GoodsId, get_branch_id(), deptid2)
elif type == 2:
hosGoodsId = FileUtils().r_info8("b5_spd3_core_business_flow", "产品审核信息", 'message1')['hosGoodsId']
GoodsId = hosGoodsId.replace(get_hosid(), '')
request_body = commonFuc().get_business_data(module, "payload17_2_1", GoodsId, get_branch_id(), deptid2)
elif type == 3:
hosGoodsId = FileUtils().r_info8("b5_spd3_core_business_flow", "产品审核信息", 'message3')['hosGoodsId']
GoodsId = hosGoodsId.replace(get_hosid(), '')
request_body = commonFuc().get_business_data(module, "payload17_2", GoodsId, get_branch_id(), deptid2)
print('getudi_request_body', request_body)
# # # # 发送请求
result = commonFuc().http_post(url, request_body, headers)
data1 = commonFuc().analysis_json('data', commonFuc().analysis_json('data', result))
print('条码库存result', result)
bottleId = 'bottleId'
for i in data1:
lockStatus = commonFuc().analysis_json('lockStatus', i)
if lockStatus == 0:
print('lockStatus', lockStatus)
bottleId= commonFuc().analysis_json('bottleId', i)
break
return bottleId
def get_udi(type=1): # 退货出库扫条码
# type=1低值 2高值 3试剂
module = "b5_spd3_core_business_flow"
......@@ -2505,7 +2546,7 @@ def pickScan2(PICK_ID, udi_code, type=1): # 二级库出库拣货扫码
return areaCode, pickerId
def pickScan3(udi_code, type=1): # 二级库扫码发放
def pickScan3(udi_code, type=1): # 二级库扫码发放(高值产品不能扫码发放)
module = "b5_spd3_core_business_flow"
# # 登录获取用户id等信息,使用创建的用户登录===========开始
info = FileUtils().r_info8('b2_herp3_bs', "用户名信息", 'message3')
......@@ -2575,13 +2616,22 @@ def pickScan3(udi_code, type=1): # 二级库扫码发放
hosGoodsCode = commonFuc().analysis_json('hosGoodsCode', data1)
sourceId = commonFuc().analysis_json('sourceId', data1)
price = commonFuc().analysis_json('price', data1)
inStockTime = commonFuc().analysis_json('inStockTime', data1)
purModeText = commonFuc().analysis_json('purModeText', data1)
version = commonFuc().analysis_json('version', data1)
unitName = commonFuc().analysis_json('unitName', data1)
# ==============================获取条码信息
#从message18文件中获取信息
info = FileUtils().r_info8(module, "条码信息", 'message18')
# print('info', info)
list_a = info['list_a']
extInfo=commonFuc().analysis_json('extInfo',list_a)
print('extInfo',extInfo)
# inStockTime = commonFuc().analysis_json('inStockTime', extInfo)
inStockTime=reGetString(extInfo,'inStockTime\"\: \"','\"\, \"distrDetailId')
print('inStockTime',inStockTime)
#从message18文件中获取信息
url = commonFuc().get_api_add_port_url() + commonFuc().get_business_data(module,
"herpService_stock_out_use_submit_url")
"dept_stock_out_submit_url")
deptid1 = FileUtils().r_info8('b2_herp3_bs', '所有科室id', 'message6')["deptid1"]
deptName2 = FileUtils().r_info8('b2_herp3_bs', '所有科室name', 'message6')["deptid2"]
......@@ -2616,26 +2666,23 @@ def pickScan3(udi_code, type=1): # 二级库扫码发放
goodsSpec, unit, goodsName, pkgDefId, pkgDefQty, unitName,
hosGoodsCode,purModeText)
elif type == 2:
request_body = commonFuc().get_business_data(module, "payload50_2_2", areaCode, areaName, UTid, createTime,
UTid, get_hosid(), stockId, areaCode, areaName, shelfCode,
codeType, hosGoodsId, mdmGoodsCode, goodsCode, goodsDi, barName,
batchCode, expdtDate, productDate, pkgCode, pkgCodeSee, ssccCode,
tbStatus, purBillId, distrBillId,
inStockTime, distrDetailId, purMode, price, goodsMfrsName,
goodsSpec, unit, goodsName, made,
unitName, hosGoodsCode, purModeText)
elif type == 3:
request_body = commonFuc().get_business_data(module, "payload50_1_1", areaCode, areaName, UTid, createTime,
UTid, get_hosid(), stockId, areaCode, areaName, shelfCode,
request_body = commonFuc().get_business_data(module, "payload50_1_2", stockId, stockName2, areaCode, areaName,
uxid, userLoginCode, cname, get_hosid(), get_branch_id(), deptid1,
orgCode1, orgName1, get_hosid(), get_hosid(), mgrCorpName,
get_branch_id(),
get_branch_name(), mgrRangeId, mgrRangeName, extStr1, extStr3,
get_hosid(), stockId,
stockName2, areaCode, areaName, UTid, createTime, snCode,
get_hosid(), stockId, areaCode, areaName, shelfCode,
codeType, hosGoodsId, mdmGoodsCode, goodsCode, goodsDi, barName,
batchCode, expdtDate, productDate, pkgCode, pkgCodeSee, ssccCode,
tbStatus, pkgDefId, purBillId, pkgDefName, distrBillId,
tbStatus, pkgDefId, pkgDefQty, purBillId, pkgDefName, distrBillId,
inStockTime, distrDetailId, purMode, price, goodsMfrsName,
goodsSpec, unit, goodsName, pkgDefId, pkgDefQty, pkgDefName, made,
unitName, hosGoodsCode, purModeText)
goodsSpec, unit, goodsName, pkgDefId, pkgDefQty, unitName,
hosGoodsCode, purModeText)
print('request_body', '拣货扫码', request_body)
print('request_body', '发放扫码', request_body)
# # # # 发送请求
result = commonFuc().http_post(url, request_body, headers)
......
......@@ -167,6 +167,6 @@ json_headers2: {
"payload56": {"pageNum":1,"pageSize":50,"queryObject":{"orderNo":"","hosId":"%s","status":"0","createUser":"","startTime":null,"endTime":null}}
"payload57": {"pid":"%s","hosGoodsName":"","hosGoodsSpec":"","provName":"","purModes":[],"subProvName":""}
"payload58": {"id":"%s","planDetailList":[{"closeStatus":"%s","id":"%s","inSettlement":1,"planPkgQty":1,"pkgDefQty":100,"provId":"%s","provName":"%s","subProvId":"%s","subProvName":"%s","hosGoodsId":"%s","purMode":"%s","version":0,"pkgDefId":"%s","purTaskId":null,"sourceId":"%s","codingType":0}],"tempFlag":0,"version":0,"checkLcTaskQty":true}
"payload58_1": {"id":"%s","planDetailList":[{"closeStatus":0,"id":"%s","inSettlement":1,"planPkgQty":1,"pkgDefQty":1,"provId":"%s","provName":"%s","subProvId":"%s","subProvName":"%s","hosGoodsId":"%s","purMode":20,"version":0,"pkgDefId":null,"purTaskId":null,"sourceId":"%s","codingType":0}],"tempFlag":0,"version":0,"checkLcTaskQty":true}
"payload59": {"tbStatus":20,"code":"%s","areaCode":"","ignoreValidExpDate":true,"pickType":"KS_SL"}
"payload60": {"pickType":"KS_CB","tbStatus":20,"code":"%s","stockId":"%s","stockName":"%s","areaCode":"%s","areaName":"默认库区","ignoreValidExpDate":false}
\ No newline at end of file
"payload58_1": {"id":"%s","planDetailList":[{"closeStatus":0,"id":"%s","inSettlement":1,"planPkgQty":1,"pkgDefQty":1,"provId":"%s","provName":"%s","subProvId":"%s","subProvName":"%s","hosGoodsId":"%s","purMode":20,"version":0,"pkgDefId":null,"purTaskId":null,"sourceId":"%s","codingType":0}],"tempFlag":0,"version":0,"checkLcTaskQty":true}"payload59": {"tbStatus":20,"code":"%s","areaCode":"","ignoreValidExpDate":true,"pickType":"KS_SL"}
"payload60": {"pickType":"KS_CB","tbStatus":20,"code":"%s","stockId":"%s","stockName":"%s","areaCode":"%s","areaName":"默认库区","ignoreValidExpDate":false}
"payload61": {"pickType":"KS_XH","tbStatus":20,"code":"%s","stockId":"%s","stockName":"%s","areaCode":"%s","areaName":"%s","patientId":"","patientName":"","consumeType":2,"chargeDeptId":"","ignoreValidExpDate":false}
条码信息:
list_a:
- &id001
id: UT240605000801
snCode: UT240605000801
ssccCode: '010839000183091829'
pkgCodeSee: 013653000003990010333112406051724121221UT240605000801
hosGoodsId: h034700003990
hosGoodsCode: '00003990'
goodsCode: '00003990'
goodsName: 一次性注射器_低值n2Yed
id: UT240605000701
snCode: UT240605000701
ssccCode: '010839000183081721'
pkgCodeSee: 0136530000039910104444112406051724121221UT240605000701
hosGoodsId: h034700003991
hosGoodsCode: '00003991'
goodsCode: '00003991'
goodsName: 新型冠状病毒检测试剂YryIH
goodsSpec: G-31891
goodsMfrsName: 德国歌德公司 Geuder AG
unit:
purMode: 10
batchCode: '333'
purMode: 60
batchCode: '4444'
productDate: '2024-06-05'
expdtDate: '2024-12-12'
pkgDefName: '100'
......@@ -26,13 +26,13 @@
unitName: 100支/100
shelfCode: areah03472207-A-01-01
shelfNo: A01-A-01-01
pkgDefId: f22dcfbbc0ce4354a51aa7e7fbb287ce
extInfo: '{"pkgDefId": "f22dcfbbc0ce4354a51aa7e7fbb287ce", "pkgDefQty": 100, "purBillId":
"CG2024060517851", "pkgDefName": "100", "distrBillId": "PSh0347202406050015",
"inStockTime": "2024-06-05 07:34:39", "distrDetailId": "03838093", "certificateCode":
pkgDefId: 9b5f3fab5de04bfebda012d9cb5d98a3
extInfo: '{"pkgDefId": "9b5f3fab5de04bfebda012d9cb5d98a3", "pkgDefQty": 100, "purBillId":
"CG2024060517848", "pkgDefName": "100", "distrBillId": "PSh0347202406050013",
"inStockTime": "2024-06-05 07:28:16", "distrDetailId": "03838091", "certificateCode":
""}'
bottleId:
pkgType: '16'
pkgType: '66'
miDjmc: ''
miCode: ''
transferRatio: 1.0
......@@ -41,13 +41,13 @@
shelfKindName: 普通货位
provName: 国药集团公司brO2Y
provId: p1e272
inStockDate: '2024-06-05 07:34:39'
inStockDate: '2024-06-05 07:28:15'
mfrCode:
made: 德国
price:
barName: 100支/100
purModeText: 低值耗材
codeType: 16
purModeText: 检验试剂
codeType: 66
list_b:
- *id001
list_c:
......
......@@ -77,7 +77,7 @@ setInterval(updateTime, 1000); // 每秒更新一次时间
<tr width="600">
<td class='details-col-elapsed'>1</td>
<td class='details-col-elapsed'>0</td>
<td class='details-col-elapsed'>2分15</td>
<td class='details-col-elapsed'>0分36</td>
<td class="details-col-elapsed">0.0%</td>
</tr>
</table>
......@@ -95,7 +95,7 @@ setInterval(updateTime, 1000); // 每秒更新一次时间
<tr width="600">
<td class="details-col-elapsed"><a href='../log/a_b7流程十四退库业务_消耗退库/log.html' target='_blank'>a_b7流程十四退库业务_消耗退库</a></td>
<td class="fail">失败</td>
<td class="details-col-elapsed">135.112</td>
<td class="details-col-elapsed">36.121</td>
<td class="details-col-elapsed">xiaohesheng</td>
</tr>
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment