Beispiel #1
0
void DrugCheck::on_deleteRowButton_clicked()
{
	int rows = ui.tableWidget->currentRow(); //行总数
	if(ui.tableWidget->item(rows,7)==NULL||(ui.tableWidget->item(rows,7)&& ui.tableWidget->item(rows,7)->text()==tr("")))
	{	
		ui.tableWidget->removeRow(rows);
		iRow--;
		return;
	}

	ui.tableWidget->removeRow(rows);
	iRow--;

	double CurProfit = TotalPrice();
//		CurProfit = CurProfit + profit;
	QString strprofit = QString::number(CurProfit);
	ui.lineEdit_CurProfit->setText(strprofit);
		
	double PreProfit = ui.lineEdit_PreProfit->text().toDouble();
	double AftProfit = PreProfit + CurProfit;
	strprofit = QString::number(AftProfit);
	ui.lineEdit_AftProfit->setText(strprofit);


}
Beispiel #2
0
void PharmacyReceipt::getItem(int row,int column)//计算费用
{
	QString str2;
	QString str = str.fromLocal8Bit("警告");
	if (column==6)
	{
		if (ui.tableWidget->item(row,column)->text()==NULL) return;
		if (ui.tableWidget->item(row,column+2)->text()==NULL) return;

		int icount = ui.tableWidget->item(row,column)->text().toInt();
		int kucun =  ui.tableWidget->item(row,column+1)->text().toInt();
		if(ui.radioButton_Minus->isChecked()&&icount>kucun)
		{
			str2 = str.fromLocal8Bit("调拨数量大于库存,请核对!");
			QMessageBox::warning(this,str,str2,QMessageBox::Ok);
			str = QString::number(0);
			ui.tableWidget->setItem(row,column,new  QTableWidgetItem(str));
			return;
		}
		if(icount<0)
		{
			str2 = str.fromLocal8Bit("调拨数量不能为负,请核对!");
			QMessageBox::warning(this,str,str2,QMessageBox::Ok);
			str = QString::number(0);
			ui.tableWidget->setItem(row,column,new  QTableWidgetItem(str));
			return;
		}
		//if(ui.radioButton_broken->isChecked()&&icount>kucun)
		//{
		//	str2 = str.fromLocal8Bit("报损数量大于库存,请核对!");
		//	QMessageBox::warning(this,str,str2,QMessageBox::Ok);
		//	str = QString::number(0);
		//	ui.tableWidget->setItem(row,column,new  QTableWidgetItem(str));
		//	return;
		//}

		icount = ui.tableWidget->item(row,column)->text().toInt();
		double unitprice = ui.tableWidget->item(row,column+2)->text().toDouble();
		double amount = icount*unitprice;
		QString stramount = QString::number(amount);
		ui.tableWidget->setItem(row,column+3,new QTableWidgetItem(stramount));

		//double icurrentamount = ui.lineEdit_Payable->text().toInt();
		////icurrentamount+=amount;
		//if(ui.radioButton_Add->isChecked() || ui.radioButton_sendback->isChecked())
		//	icurrentamount+=amount;
		//if(ui.radioButton_Minus->isChecked())
		//	icurrentamount-=amount;
		//if(ui.radioButton_broken->isChecked())
		//	icurrentamount = 0;
		double icurrentamount = TotalPrice();
		QString strcurrentamount = QString::number(icurrentamount);
		 
		//累加
		ui.lineEdit_Payable->setText(strcurrentamount);
		
		double iamount = ui.lineEdit_Paid->text().toInt();
		iamount = iamount - icurrentamount;
		/*if(ui.radioButton_Add->isChecked() || ui.radioButton_sendback->isChecked())
			iamount = iamount - icurrentamount;
		if(ui.radioButton_Minus->isChecked())
			iamount = iamount + icurrentamount;
		if(ui.radioButton_broken->isChecked())
			iamount = 0;*/
		strcurrentamount = QString::number(iamount);
		ui.lineEdit_Debt->setText(strcurrentamount);
	}
	if(column==0)
	{
		list_widget->close();
		QString strText;
		if(ui.tableWidget->item(row,0)==NULL)  return;

		strText =  ui.tableWidget->item(row,0)->text();
		if(strText.at(0)== QChar('1')) return;

		list_widget->setGeometry(103, 160+row*30, 150, 280);
		list_widget->show();
		QSqlQuery query(*sql.db);	
		strText =  ui.tableWidget->item(row,0)->text();
		QString strsql= QString("select * from sys_drugdictionary where abbr like '%%1%'or name like'%%2%'  ").arg(strText).arg(strText);

		query.exec(strsql);
		QStringList list;
		list_widget->clear();
		while(query.next())
		{
			QString str = query.value(1).toString();
			list.append(str);
		}
		list_widget->addItems(list);
	}
}
void MenuView::EmitTotalPrice() {
  emit TotalPrice(model->GetTotalPrice());
}
Beispiel #4
0
void DrugCheck::getItem(int row,int column)//计算费用
{
	QString str2;
	QString str = str.fromLocal8Bit("警告");
	if (column==7)
	{
		if (ui.tableWidget->item(row,column)->text()==NULL) return;
	//	if (ui.tableWidget->item(row,column+1)->text()==NULL) return;

		int ibookcount = ui.tableWidget->item(row,column)->text().toInt();
		int iinventorycount = ui.tableWidget->item(row,column-1)->text().toInt();
		if(ibookcount<0)
		{
			str2 = str.fromLocal8Bit("盘点数量不能为负,请核对!");
			QMessageBox::warning(this,str,str2,QMessageBox::Ok);
			QString stramount = QString::number(0);
			ui.tableWidget->setItem(row,column,new QTableWidgetItem(stramount));
			return;
		}
		double unitprice = ui.tableWidget->item(row,column+2)->text().toDouble();
		int ierror = ibookcount - iinventorycount;
		QString strerror = QString::number(ierror);
		ui.tableWidget->setItem(row,column+1,new QTableWidgetItem(strerror));
		double profit = unitprice*ierror;
		QString strprofit = QString::number(profit);
		ui.tableWidget->setItem(row,column+3,new QTableWidgetItem(strprofit));

		double CurProfit = TotalPrice();
//		CurProfit = CurProfit + profit;
		strprofit = QString::number(CurProfit);
		ui.lineEdit_CurProfit->setText(strprofit);
		
		double PreProfit = ui.lineEdit_PreProfit->text().toDouble();
		double AftProfit = PreProfit + CurProfit;
		strprofit = QString::number(AftProfit);
		ui.lineEdit_AftProfit->setText(strprofit);
	}
	if(column==0)
	{

		list_widget->close();
		QString strText;
		if(ui.tableWidget->item(row,0)==NULL)  return;

		strText =  ui.tableWidget->item(row,0)->text();
		if(strText.at(0)== QChar('1')) return;

		list_widget->setGeometry(103, 160+row*30, 150, 280);
		list_widget->show();
		QSqlQuery query(*sql.db);	
		strText =  ui.tableWidget->item(row,0)->text();
		QString strsql=QString("select * from sys_drugdictionary where abbr like '%%1%'or name like'%%2%'  ").arg(strText).arg(strText);

		query.exec(strsql);
		QStringList list;
		list_widget->clear();
		while(query.next())
		{
			QString str = query.value(1).toString();
			list.append(str);
		}
		list_widget->addItems(list);
	}
}