主要是将python生成的二维码作为零件号,将零件号作为零件的唯一索引,实现零件的履历表。
1、用python生成不重复的二维码
利用当天日期+随机生成的四位数字保证二维码代表的零件号的唯一性
import qrcode
from docx import Document
from docx.shared import Inches
from os import listdir
import datetime as datetime
import random
def listproduce():
list = []
finlist = []
for i in range(0, 150):
randnum = random.randint(1000, 9999)
list.append(randnum)
list1 = set(list)
print(list1)
for j in list1:
if j not in finlist:
finlist.append(j)
return finlist
images = []
inventoryDate = datetime.datetime.now().strftime("%Y%m%d")
rannum = listproduce()
for i in range(0,10):
input_data = inventoryDate + str(rannum[i])
qr = qrcode.QRCode(
version=1,
box_size=10,
border=5)
qr.add_data(input_data)
qr.make(fit=True)
img = qr.make_image(fill='black', back_color='white')
img.save(r'D:\\二维码生成\\%s.png'%input_data)
doc = Document()
for fn in listdir(r'D:\\二维码生成'):
print(fn)
if fn.endswith('.png'):
b = fn.replace('.png', '', 1)
doc.add_paragraph(str(b))
doc.add_picture(fn, width=Inches(1.5))
doc.save(r'D:\\二维码生成\\word文档.docx')
效果图 到这里,零件编号的二维码就制作好了,将word打印出来后粘贴在零件上就可以了,生成多少个二维码可以自行在程序里设置,word里的格式也可以在程序里自行设置。
2、保证数据库中零件编号的唯一性
在mysql中将零件编号字段索引设置为唯一性索引unique,防止零件编号重复插入,保证零件编号在数据库中的唯一性。 这样做就可以防止零件编号重复输入。 接下来就可以利用零件编号这个唯一索引建立零件的履历表了。
3、前端效果
这是应用于胶水零件上的零件履历表形式,记录整个零件从入库到更换到回收的整个使用周期的信息。
|