#include "autopackform.h" #include "ui_autopackform.h" #include "globalinfo.h" AutoPackForm::AutoPackForm(QWidget *parent) : QWidget(parent), ui(new Ui::AutoPackForm) { ui->setupUi(this); } AutoPackForm::~AutoPackForm() { delete ui; } void AutoPackForm::on_pushBack_clicked() { aputils.doSend(packinfo); emit back(); } void AutoPackForm::init() { // TODO: 页面进入初始化 ui->pushStart->setChecked(false); ui->widget->setEnabled(true); packConfig.refConfig(); connect(&packConfig,&RemotePackConfig::configUpdate,this,&AutoPackForm::upconfig); connect(&packConfig,&RemotePackConfig::dengJIConfigUp,this,&AutoPackForm::upDengjiInfo); ui->comboBox->clear(); for(int i = 1;i<20;i++){ ui->comboBox->addItem(QString::number(i)); } on_addPackList_clicked(); } void AutoPackForm::on_addPackList_clicked() { //TODO: 缓存箱单数据,页面显示情空 aputils.doSend(packinfo); //TODO: 初始化码单信息 packinfo.reset(new PackInfo(_info)); packinfo->operator_id = GlobalInfo::this_()->user().userId; packinfo->packing_time = QDate::currentDate().toString("yy-MM-dd"); packinfo->packing_type = _info.category; } void AutoPackForm::upconfig(const DaBaoConfig &config) { // TODO:打包配置更新 //机台 ui->jitai->clear(); ui->jitai->addItems(config.jitai); //打包工班次 ui->comboBox_2->clear(); ui->comboBox_2->addItems(config.daBaoGongBanCi); //皮重 ui->pizhong->clear(); for(int i = 0;ipizhong->addItem(QString::number(config.xiangzhong.at(i))); } //管色 ui->guanse->clear(); ui->guanse->addItems(config.guanse); //捻向 ui->nianxiang->clear(); ui->nianxiang->addItems(config.nianxiang); //纸箱 ui->zhixiang->clear(); ui->zhixiang->addItems(config.zhixiang); //筒重 ui->tongzhong->clear(); for(int i = 0;itongzhong->addItem(QString::number(config.tongZhong.at(i))); } } void AutoPackForm::upDengjiInfo(const QList & dengJis) { // TODO: 等级信息更新 ui->dengji->clear(); for(int i = 0;idengji->addItem(dengJis.at(i).value,dengJis.at(i).id); } } } void AutoPackForm::on_pushStart_clicked() { if(ui->pushStart->isChecked()){ ui->pushStart->setChecked(true); ui->widget->setEnabled(false); ui->handleRead->setEnabled(true); } else { init(); } } void AutoPackForm::on_addBoxList_clicked() { if(packinfo.isNull()) return; auto box = packinfo->addBoxInfo(); //TODO: 添加箱单 数据 box->box_weight = ui->pizhong->currentText().toInt(); box->tube_number = ui->tongshu->text().toInt(); box->bucket_weight = ui->pizhong->currentText().toInt()*ui->tongshu->text().toInt(); box->gross_weight = ui->grossWeight_2->text().toInt(); box->box_weight = ui->netWeight_2->text().toInt(); box->sort = "1"; box->remark = ui->beizhu->toPlainText(); packinfo->level = ui->dengji->currentText(); packinfo->level_id = ui->dengji->currentData().toInt(); //TODO: 缓存数据,显示数据 ui->tableWidget->setRowCount(ui->tableWidget->rowCount()+1); ui->tableWidget->setItem(ui->tableWidget->rowCount(),0,new QTableWidgetItem(QString::number(ui->tableWidget->rowCount()+1))); ui->tableWidget->setItem(ui->tableWidget->rowCount(),1,new QTableWidgetItem(box->caseNumber())); ui->tableWidget->setItem(ui->tableWidget->rowCount(),2,new QTableWidgetItem(box->tube_number)); ui->tableWidget->setItem(ui->tableWidget->rowCount(),3,new QTableWidgetItem(box->gross_weight)); ui->tableWidget->setItem(ui->tableWidget->rowCount(),4,new QTableWidgetItem(box->bucket_weight)); ui->tableWidget->setItem(ui->tableWidget->rowCount(),5,new QTableWidgetItem(box->net_weight)); emit djmbbox(djmb.printBoxInfo(box->caseNumber(),box)); // qDebug()<boxes().size(); // doSend(packinfo); //把box数据添加到packinfo的boxes数据表里; packinfo->addBoxInfoList(box); //添加数据库 aputils.insertDetailsSQL(box,packinfo->codeSingle()); //packinfo其他数据在new时已经定义好的,需要时直接调就可以了,所以这里只要箱数,等级,机台和类型 if(packinfo->boxes().size()>=ui->comboBox->currentText().toInt()){ packinfo->quantity = packinfo->boxes().size(); packinfo->level_id = ui->dengji->currentData().toInt(); packinfo->machine_no = ui->jitai->currentText(); packinfo->carton_type = ui->zhixiang->currentText(); on_addPackList_clicked(); } }