QT 商品入库与出库(库存管理系统)

商品入库 

void GoodsWarehousing::InitComboBoxFunc() // 初始化Combo box控件
{
    int i=0;
    QSqlQuery sqlQuery;
    sqlQuery.exec("SELECT * FROM commoditydatatable");

    QString StrId;

    while(sqlQuery.next())
    {
        StrId=sqlQuery.value(0).toString();
        ui->comboBox_Id->insertItem(i,StrId);
        i++;
    }

}
void GoodsWarehousing::on_pushButton_InputGoods_clicked()
{
    // 获取Combo Box控件里面的值
    QString StrCBId=ui->comboBox_Id->currentText();


    // 判断商品入库的数量是否为空
    if(ui->lineEdit_Amount->text().isEmpty())
    {
        QMessageBox::critical(this,"提示","商品入库的数量不能为空,请重新检查?");
        ui->lineEdit_Amount->setFocus();
        return;
    }

    // 设计SQL查询语句条件
    // SQL查询 SELECT * FROM commoditydatatable where StockId=1001

    QSqlQuery sqlquery;
    QString strid="StockId=";
    strid+=StrCBId;

    QString str=QString("SELECT * FROM commoditydatatable where %1").arg(strid);
    sqlquery.exec(str);
    // QMessageBox::critical(this,"提示",str);

    // 获取数据表中的商品编号对应的数量
    int i=0;
    QString strAmount;
    while(sqlquery.next())
    {
        strAmount=sqlquery.value(2).toString();
        // QMessageBox::information(this,"提示",strAmount);
    }


    // 将输入数量+数量表当中的数量
    int inputamount=ui->lineEdit_Amount->text().toInt(); // 用户输入数量
    int tableamount=strAmount.toUInt(); // 数据表里面的数量转换为整型
    int isum=inputamount+tableamount; // 实现相加

    // int 转换QString
    QString strresult=QString::number(isum);

    // 更新数据表中数量字段的值
    QString strdb=QString("update commoditydatatable set stockamount=%1 where %2").arg(strresult).arg(strid);

    if(sqlquery.exec(strdb))
    {
        QMessageBox::information(this,"提示","恭喜你,商品入库成功!");
    }
    else
    {
        QMessageBox::critical(this,"提示","对不起,商品入库失败,请重新检查?");
    }


}

商品出库 

void GoodsDelivery::on_pushButton_OutputGoods_clicked()
{
    // 获取Combo Box控件里面的值
    QString StrCBId=ui->comboBox_Id->currentText();


    // 判断商品入库的数量是否为空
    if(ui->lineEdit_Amount->text().isEmpty())
    {
        QMessageBox::critical(this,"提示","商品出库的数量不能为空,请重新检查?");
        ui->lineEdit_Amount->setFocus();
        return;
    }

    // 设计SQL查询语句条件
    // SQL查询 SELECT * FROM commoditydatatable where StockId=1001

    QSqlQuery sqlquery;
    QString strid="StockId=";
    strid+=StrCBId;

    QString str=QString("SELECT * FROM commoditydatatable where %1").arg(strid);
    sqlquery.exec(str);
    // QMessageBox::critical(this,"提示",str);

    // 获取数据表中的商品编号对应的数量
    int i=0;
    QString strAmount;
    while(sqlquery.next())
    {
        strAmount=sqlquery.value(2).toString();
        // QMessageBox::information(this,"提示",strAmount);
    }


    // 将输入数量+数量表当中的数量
    int inputamount=ui->lineEdit_Amount->text().toInt(); // 用户输入数量
    int tableamount=strAmount.toUInt(); // 数据表里面的数量转换为整型
    int isum=tableamount-inputamount; // 实现相加

    // int 转换QString
    QString strresult=QString::number(isum);

    // 更新数据表中数量字段的值
    QString strdb=QString("update commoditydatatable set stockamount=%1 where %2").arg(strresult).arg(strid);

    if(sqlquery.exec(strdb))
    {
        QMessageBox::information(this,"提示","恭喜你,商品出库成功!");
    }
    else
    {
        QMessageBox::critical(this,"提示","对不起,商品出库失败,请重新检查?");
    }

}

  • 8
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: QT是一款跨平台的C++应用程序开发框架,在搭建一套库存管理系统方面具有很大的优势。下面是关于如何使用QT搭建库存管理系统的简要步骤: 1. 数据库设计:首先,需要设计一个数据库来存储库存管理系统所需的数据,包括产品信息、库存数量、进货与销售记录等。可以使用SQLite数据库作为本地数据库或者MySQL等作为远程数据库。 2. 界面设计:使用QT提供的界面开发工具,设计一个用户友好的界面。可以使用QT的UI设计师来快速创建和管理界面。 3. 功能模块划分:根据库存管理系统的需求,将其拆分为不同的功能模块,例如产品管理、进货管理、销售管理、库存查询等。每个功能模块对应一个或多个界面和相关的业务逻辑。 4. 业务逻辑开发:根据需求,使用C++语言编写相应的业务逻辑代码。例如,在产品管理模块中,需要实现产品的新增、编辑和删除功能;在进货管理模块中,需要实现进货记录的添加和更新功能等。 5. 数据库连接:使用QT提供的数据库模块,与所选用的数据库建立连接,并编写相关的数据库操作代码,实现数据的增删改查等功能。 6. 用户交互:在界面上添加必要的用户交互功能,例如按钮、菜单、表格等,使用户可以方便地进行数据录入、查询和操作。 7. 数据校验与处理:在数据录入的过程中,进行数据校验和处理,确保数据的有效性和准确性。例如,对于产品的数量字段,需要进行数据范围的校验。 8. 报表生成:根据需求,编写报表生成的代码,将库存、进货、销售等数据按照需求生成相应的报表,方便管理者进行数据分析和决策。 以上是使用QT搭建一套库存管理系统的大致步骤,具体的实现过程需要根据实际需求进行设计和开发QT提供了丰富的开发工具和库函数,使得开发库存管理系统变得更加简单和高效。 ### 回答2: 首先,要搭建一套基于Qt库存管理系统,我们需要考虑以下几个方面: 1. 界面设计:使用Qt的界面设计功能来创建一个用户友好的界面,可以包括菜单、工具栏、表格、图表等元素,以方便用户进行库存管理操作。 2. 数据库设计:使用Qt的数据库模块连接和操作数据库,设计库存管理系统所需的数据库表结构,其中包括商品信息、库存数量、进货信息、出货信息等。 3. 功能实现:根据实际需求,使用Qt编程能力实现库存管理系统的各项功能,如添加新商品、编辑商品信息、查询库存数量、记录进货和出货等操作。 4. 数据统计与分析:利用Qt的图表和数据处理功能,对库存管理系统中的数据进行统计和分析,生成销售报表、库存报表等,以帮助用户更好地了解库存情况和经营状况。 5. 部署与交付:将搭建好的库存管理系统打包成可执行文件或生成安装程序,以便用户可以方便地部署和使用。 总结起来,搭建一套基于Qt库存管理系统需要涉及界面设计、数据库设计、功能实现、数据统计与分析等方面,通过充分利用Qt的强大功能和丰富的工具,可以快速高效地构建一个功能完备、界面友好、易于使用的库存管理系统。 ### 回答3: Qt是一款跨平台的C++开发框架,具有图形界面设计能力和丰富的功能库,可以用于搭建库存管理系统。以下是关于如何使用Qt搭建一套库存管理系统的简要介绍。 首先,我们需要定义库存管理系统的功能和需求。比如,我们需要记录和管理产品的信息,包括产品的名称、编号、价格、库存数量等。同时,我们还需要能够进行产品出库入库操作,计算库存余量,并生成相应的报表。 使用Qt框架,我们可以利用Qt的图形界面设计功能来创建使用者友好的界面。我们可以使用Qt的窗口类(如QMainWindow)来创建主界面,并在界面上添加所需的各种控件(如文本框、按钮、表格等)来显示和输入产品信息。我们还可以使用Qt的信号和槽机制来实现用户与界面之间的交互,比如点击按钮触发相应的操作。 在储存产品信息方面,我们可以使用Qt的数据库模块(如QSqlDatabase)来连接数据库,并使用SQL语句来创建和管理产品信息表。我们可以利用Qt的表格控件(如QTableView)来显示产品信息,并提供相应的操作(比如新增、编辑和删除)来对产品信息进行管理。 对于出库入库操作,我们可以在界面上添加相应的按钮,并在点击按钮时触发相应的操作。比如,点击“出库”按钮时,系统可以弹出一个对话框供用户输入出库商品的数量,然后更新库存数量并生成相应的出库记录。同样地,对于入库操作,系统也可以通过类似的方式实现。 最后,我们可以使用Qt的绘图功能来生成报表。根据需要,我们可以使用Qt提供的绘图类(如QChart)来创建柱状图或折线图,并根据产品的库存数量或其他指标来可视化数据。 总之,通过使用Qt框架,我们可以在图形界面操作的基础上,利用丰富的功能库和数据库模块来搭建一套库存管理系统,满足产品信息的记录出库入库操作及报表生成等功能需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值