提交 29323da4 authored 作者: 蒋代伟's avatar 蒋代伟

垛标校验

上级 aef9ceb9
......@@ -1138,7 +1138,7 @@ urlpatterns = [
url(r'^inventory/period/config/$', inventory_views.inventory_period),
url(r'^inventory/period/config/set/$', inventory_views.inventory_period_set),
#AI数据汇总
# AI数据汇总
url(r'^tjfw/swm/$', wx_views.tjfw_swm),
......@@ -1176,7 +1176,7 @@ urlpatterns = [
url(r'^mes/edit/(?P<what>\w+)/(?P<id>\d+)/$', mes_views.edit_obj),
#2022-07-25
#易臻编码重复检验
# 易臻编码重复检验
url(r'^obj/yzgj/check/externalcode/(?P<obj_name>\w+)/(?P<cid>\d+)/(?P<id>\d+)/(?P<code>\w+)/$', list_views.externalcode_check),
url(r'^mes/order/evalute/(?P<id>\d+)/$', mes_views.evaluate_order),
......@@ -1261,7 +1261,7 @@ urlpatterns = [
# 垛标物流
url(r'^inventory/stack/list/$',inventory_views.stack_list),
url(r'^inventory/stack/details/(?P<batch_id>\d+)/(?P<stack_id>\d+)/$',inventory_views.stack_details),
#垛标绑定
# 垛标绑定
url(r'^inventory/stack/binding/$',inventory_views.binding_of_stacks),
url(r'^inventory/stack/returning/(?P<cid>\d+)/$',inventory_views.returning_of_stacks),
......@@ -1270,7 +1270,7 @@ urlpatterns = [
#用户积分信息
url(r'^company/bonuspoints/infor/(?P<comapny_id>\d+)/$',company_views.bonuspoints_infor),
url(r'^company/bonuspoints/infor/details/(?P<activity_name>\w+)/(?P<log_id>\d+)/$',company_views.bonuspoints_infor_details),
url(r'^company/bonuspoints/infor/details/(?P<activity_name>\w+)/(?P<log_id>\d+)/$',company_views.bonuspoints_infor_details),
# 诗仙太白积分提现
url(r'^company/sxtb/rebate/wx_withdraw/$', wx_views.wx_withdraw_cash),
......@@ -1309,7 +1309,7 @@ urlpatterns = [
url(r'^company/get-sub-companies/$', company_views.get_sub_companies),
#诗仙太白大罐酒
# 诗仙太白大罐酒
url(r'^collection/list/(?P<obj>\w+)/$',collection_views.list_obj),
url(r'^collection/ajax/manage/$',collection_views.obj_manage),
......@@ -1352,7 +1352,7 @@ urlpatterns = [
# 进销存库存
url(r'^inventory/product/summary/$',inventory_views.batch_summary),
url(r'^inventory/product/summary/(?P<product_id>\d+)/$',inventory_views.batch_summary_details),
#2023-09-01终端布蒋
#2023-09-01 终端布蒋
url(r'^sales/promotionseeds/$',sal_views.promotionseeds),
url(r'^sales/terminal/$',sal_views.terminal),
url(r'^sales/batch/batch_terminal/$',sal_views.batch_terminal),
......@@ -1363,6 +1363,9 @@ urlpatterns = [
url(r'^smartdevice/hikvision/(?P<what>\w+)/(?P<company_id>\d+)/$',sd_views.getCameraInfo),
url(r'^smartdevice/hikvision/(?P<what>\w+)/(?P<company_id>\d+)/(?P<deviceSerial>\w+)/$',sd_views.getCameraInfo),
# 2023 -12-26 江口醇 垛标在线校验
url(r'^inventory/stack/online_check/(?P<company_id>\d+)/$',inventory_views.stack_online_check),
]
......
......@@ -15918,18 +15918,19 @@ def stkdetails_not_in_stock(request,company_id=None):
cur = connection.cursor()
s = f'''
SELECT * from (SELECT a.company_to_id,d.name,a.product_id,COALESCE(c.name,''),sum(a.cnt)as out_cnt,sum(COALESCE(b.cnt,0)) as in_cnt from
( SELECT count(*)cnt,company_to_id,product_id from stkdetails.c19257 WHERE vtype_id = 2 GROUP BY company_to_id,product_id)A
( SELECT count(*)cnt,company_to_id,product_id from stkdetails.c{company_id} WHERE vtype_id = 2 GROUP BY company_to_id,product_id)A
left outer JOIN (SELECT count(*)cnt,company_id,product_id from stkdetails.c19257 WHERE vtype_id = 1 and company_id != {company_id} GROUP BY company_id,product_id)b on b.company_id = a.company_to_id and a.product_id = b.product_id
LEFT outer join (SELECT id,name from logistics.product_product)c on c.id = a.product_id
LEFT outer join (SELECT id,name from logistics.company_company WHERE ancestor_id = {company_id} or id in(11013,11014) )d on d.id = a.company_to_id
GROUP BY a.company_to_id,d.name,a.product_id,c.name )a
;
'''
print(s)
cur.execute(s)
rs = cur.fetchall()
for r in rs :
qty = int(r[4] -r[5])
print(r)
data.append([r[1],r[3],qty])
return render(request, 'inventory/stock/not_in_stock.html', {
'data': SafeString(data),
......@@ -16372,3 +16373,37 @@ def batch_summary_details(request,product_id):
data['dataset'].append([r[1], qty_1, qty_2, qty_4, balance])
return render(request, 'inventory/summary_details.html', data)
def stack_online_check(request,company_id):
data = {'e':'',}
cur = connection.cursor()
code = request.GET.get("code","")
if code:
if len(code) == 12 and code.isnumeric():
cur.execute("SELECT id FROM logistics.inventory_stack WHERE code = '"+ code +"' and company_id = " +str(company_id) )
stack = cur.fetchone()
if stack:
s = f'''
select a.id,a.code,b.id,b.name,c.id,c.name,d.stacks from (SELECT id,code,product_id,store_id FROM logistics.inventory_stack WHERE company_id = {str(company_id)} and code = '{code}' )a
left outer join (select id,name from logistics.inventory_storehouse)b on b.id = a.store_id
left outer join (select id,name from logistics.product_product)c on c.id = a.product_id
LEFT OUTER JOIN ( SELECT COUNT ( * )stacks,stack_id FROM logistics.inventory_stackdetails GROUP BY stack_id ) d ON d.stack_id = A.ID
WHERE d.stacks >0
'''
cur.execute(s)
r = cur.fetchone()
if r:
data['e'] = '该垛已存在箱绑定'
data['product']= {'id':r[4],'name':r[5]}
data['store']= {'id':r[2],'name':r[3]}
else:
data['e'] = '暂未查询到该垛标'
else:
data['e'] = '垛标号码异常'
else:
data['e'] = '请输入垛标号码'
return JsonResponse(data)
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论