提交 0b589652 authored 作者: 李思鑫's avatar 李思鑫

包材采购中”包材“选项,改为模糊搜索

上级 ad9fba21
......@@ -1230,6 +1230,7 @@ urlpatterns = [
url(r'^migrate/check_products/$', migrate.check_products),
#lisin 2024-08-23 包材管理相关
url(r'^packaging/name/search/ajax/$', mes_views.packaging_name_search_ajax),#包材名称搜索
url(r'^packaging/supplier/manage/(?P<id>\d+)/$', list_views.packaging_supplier_manage),
url(r'^mes/query/packaging/purchase/$', mes_views.packaging_purchase_query),
url(r'^mes/packaging/purchase/list/$', mes_views.packaging_purchase_list),
......
......@@ -99,6 +99,18 @@ def edit_Storehouse(request,id=None):
return render(request,'mes/edit_storehouse.html',{'form':form,'is_saved':is_saved})
#lisin 2024-08-24 包材管理相关
#包材名称模糊搜索
@login_required
def packaging_name_search_ajax(request):
if request.is_ajax():
query = request.GET.get('query', '')
packagings = Packaging.objects.filter(name__icontains=query) # 根据您的字段名进行过滤
results = [] # 获取包材名称
for p in packagings:
results.append({'id': p.id, 'name': p.name})
return JsonResponse(results, safe=False)
return JsonResponse([], safe=False)
#采购记录查询
@login_required
def packaging_purchase_query(request):
......@@ -165,7 +177,6 @@ def packaging_purchase_list(request):
for r in cur.fetchall():
code_link = f"<a href='/mes/packaging/purchase/edit/{r[0]}'>{r[1]}<a/>"
data['data'].append([ code_link,r[2],r[3],r[4],r[5],r[6],r[7],float(r[8]),int(r[9]),float(r[10]) ])
return render(request,'obj/list_obj.html',data)
#包材采购记录添加/编辑
......
......@@ -48,6 +48,42 @@
// 初始计算
calculateTotalPrice();
// 包材搜索下拉框
$('#packagingName').on('input', function() {
var query = $(this).val();
if (query.length > 0) {
$.ajax({
url: "packaging/name/search/ajax/",
data: {
'query': query
},
success: function(data) {
var select = $('#packaging-select');
select.empty(); // 清空下拉框
if (data.length > 0) {
$.each(data, function(index, item) {
select.append(new Option(item.name, item.id));// 添加选项
});
select.show(); // 显示下拉框
} else {
select.hide(); // 没有结果时隐藏下拉框
}
}
});
} else {
$('#packaging-select').hide(); // 输入为空时隐藏下拉框
}
});
$('#packaging-select').on('change', function() {
var selectedOption = $(this).find('option:selected'); // 获取选中的选项
var name = selectedOption.text(); // 获取选项的文本(label)
var id = selectedOption.val();
$('#packagingName').val(name)
$('#packaging').val(id); // 更新输入框值为label
$(this).hide(); // 选择后隐藏下拉框
});
});
</script>
......@@ -61,7 +97,11 @@
</div>
<div class="form-group ">
<label class="col-sm-2 control-label ">{% trans '包材:' %} </label>
<div class="col-sm-10">{{ form.packaging }}</div>
<div class="col-sm-10">
<input type="text" id="packagingName" value="" class="form-control" placeholder="搜索包材" autocomplete="off">
<input type="text" id='packaging' name="packaging" value="value" style="display: none;">
<select id="packaging-select" class="form-control mt-2" size="5" style="display:none;"></select>
</div>
</div>
<div class="form-group ">
<label class="col-sm-2 control-label ">{% trans '供应商:' %} </label>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论