showmadanlabelform.cpp 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265
  1. #include "showmadanlabelform.h"
  2. #include "ui_showmadanlabelform.h"
  3. #include "QPainter"
  4. ShowMaDanLabelForm::ShowMaDanLabelForm(QWidget *parent) :
  5. QWidget(parent),
  6. ui(new Ui::ShowMaDanLabelForm)
  7. {
  8. ui->setupUi(this);
  9. ui->showWidget->setAutoFillBackground(true);
  10. _dataDir = PQ::AppPath::this_()->dataDir();
  11. if(!_dataDir.exists("PackModel")){
  12. _dataDir.mkdir("PackModel");
  13. }
  14. _dataDir.cd("PackModel");
  15. // QImage image;
  16. // image.load(":/images/Pmoren.bmp");
  17. // QPalette palette;
  18. // _packPrinter.reset(new PackTemlateOne());
  19. // palette.setBrush(ui->showWidget->backgroundRole(), QBrush(_packPrinter->Packmodel().scaled(
  20. // ui->showWidget->size(),
  21. // Qt::IgnoreAspectRatio,
  22. // Qt::SmoothTransformation)));
  23. // ui->showWidget->setPalette(palette);
  24. addComboBox();
  25. }
  26. void ShowMaDanLabelForm::init(QString baseModelName, int status,QString modelName)
  27. {
  28. ui->saveButton->hide();
  29. ui->upModel->hide();
  30. BaseModel = baseModelName;
  31. // qDebug()<<BaseModel;
  32. Status = status;
  33. QPalette palette;
  34. _packPrinter.reset(new PackTemlateOne());
  35. palette.setBrush(ui->showWidget->backgroundRole(), QBrush(_packPrinter->Packmodel().scaled(// 缩放背景图.
  36. ui->showWidget->size(),
  37. Qt::IgnoreAspectRatio,
  38. Qt::SmoothTransformation)));
  39. ui->showWidget->setPalette(palette);
  40. if(status == 1){
  41. ui->modelName->clear();
  42. ui->saveButton->show();
  43. controlShow();
  44. }else if(status == 2){
  45. controlHide();
  46. showBaseModel();
  47. }else if(status == 3){
  48. controlShow();
  49. ui->upModel->show();
  50. ModelName = modelName;
  51. for(int i = 0;i<glo->PackModelList().size();i++){
  52. if(ModelName == glo->PackModelList().at(i)->Model_Name){
  53. upData(glo->PackModelList().at(i));
  54. ui->modelName->setText(ModelName);
  55. break;
  56. }
  57. }
  58. }
  59. }
  60. ShowMaDanLabelForm::~ShowMaDanLabelForm()
  61. {
  62. delete ui;
  63. }
  64. void ShowMaDanLabelForm::on_backButton_clicked()
  65. {
  66. emit back();
  67. }
  68. void ShowMaDanLabelForm::upData(QSharedPointer<PackModel> puckModelData)
  69. {
  70. ui->text1->setText(puckModelData->Type_Name.at(0).toString());
  71. ui->text1_2->setText(puckModelData->Type_Name.at(1).toString());
  72. ui->text2->setText(puckModelData->Type_Name.at(2).toString());
  73. ui->text2_2->setText(puckModelData->Type_Name.at(3).toString());
  74. ui->text4->setText(puckModelData->Type_Name.at(4).toString());
  75. ui->text4_2->setText(puckModelData->Type_Name.at(5).toString());
  76. ui->text4_3->setText(puckModelData->Type_Name.at(6).toString());
  77. ui->data1->setCurrentText(puckModelData->Type_Data.at(0).toString());
  78. ui->data1_2->setCurrentText(puckModelData->Type_Data.at(1).toString());
  79. ui->data2->setCurrentText(puckModelData->Type_Data.at(2).toString());
  80. ui->data2_2->setCurrentText(puckModelData->Type_Data.at(3).toString());
  81. ui->data3->setCurrentText(puckModelData->Type_Data.at(4).toString());
  82. ui->data4->setCurrentText(puckModelData->Type_Data.at(5).toString());
  83. ui->data4_2->setCurrentText(puckModelData->Type_Data.at(6).toString());
  84. ui->data4_3->setCurrentText(puckModelData->Type_Data.at(7).toString());
  85. }
  86. void ShowMaDanLabelForm::showBaseModel()
  87. {
  88. QImage image;
  89. image.load(":/images/Pmoren.bmp");
  90. QPalette palette;
  91. palette.setBrush(ui->showWidget->backgroundRole(), QBrush(image.scaled(
  92. ui->showWidget->size(),
  93. Qt::IgnoreAspectRatio,
  94. Qt::SmoothTransformation)));
  95. ui->showWidget->setPalette(palette);
  96. }
  97. void ShowMaDanLabelForm::on_saveButton_clicked()
  98. {
  99. if(ui->modelName->text().isEmpty()){
  100. QMessageBox::information(this,tr("注意"),tr("请输入模板名称"));
  101. return;
  102. }
  103. packModel.reset(new PackModel);
  104. packModel->BaseModel_Name = BaseModel;
  105. packModel->Model_Name = ui->modelName->text();
  106. addPackData();
  107. QString name = packModel->Model_Name;
  108. name += "_Model.json";
  109. QString ret = _dataDir.absoluteFilePath(name);
  110. if(PQ::writeAbsoluteFile(ret,QJsonDocument(packModel->toObject()).toJson())){
  111. QMessageBox::information(this,tr("提示"),tr("保存成功"));
  112. glo->selectPackModel();
  113. return;
  114. }
  115. QMessageBox::information(this,tr("提示"),tr("保存失败"));
  116. }
  117. void ShowMaDanLabelForm::addPackData()
  118. {
  119. packModel->Type_Name.append(ui->text1->text());
  120. packModel->Type_Name.append(ui->text1_2->text());
  121. packModel->Type_Name.append(ui->text2->text());
  122. packModel->Type_Name.append(ui->text2_2->text());
  123. packModel->Type_Name.append(ui->text4->text());
  124. packModel->Type_Name.append(ui->text4_2->text());
  125. packModel->Type_Name.append(ui->text4_3->text());
  126. packModel->Type_Data.append(ui->data1->currentText());
  127. packModel->Type_Data.append(ui->data1_2->currentText());
  128. packModel->Type_Data.append(ui->data2->currentText());
  129. packModel->Type_Data.append(ui->data2_2->currentText());
  130. packModel->Type_Data.append(ui->data3->currentText());
  131. packModel->Type_Data.append(ui->data4->currentText());
  132. packModel->Type_Data.append(ui->data4_2->currentText());
  133. packModel->Type_Data.append(ui->data4_3->currentText());
  134. }
  135. void ShowMaDanLabelForm::addComboBox()
  136. {
  137. QStringList list;
  138. list.append("空");
  139. list.append("批号");
  140. list.append("类型");
  141. list.append("品种");
  142. list.append("旦数");
  143. list.append("分特");
  144. list.append("等级");
  145. list.append("孔数");
  146. list.append("规格");
  147. list.append("颜色");
  148. list.append("捻向");
  149. list.append("管色");
  150. list.append("皮重");
  151. list.append("机台");
  152. list.append("纸箱");
  153. list.append("总筒数");
  154. list.append("总毛重");
  155. list.append("总净重");
  156. QStringList list20;
  157. list20.append("空");
  158. list20.append("毛重");
  159. list20.append("净重");
  160. list20.append("筒数");
  161. list20.append("捻向");
  162. list20.append("管色");
  163. list20.append("总筒重");
  164. ui->data1->addItems(list);
  165. ui->data1_2->addItems(list);
  166. ui->data2->addItems(list);
  167. ui->data2_2->addItems(list);
  168. ui->data3->addItems(list20);
  169. ui->data4->addItems(list);
  170. ui->data4_2->addItems(list);
  171. ui->data4_3->addItems(list);
  172. }
  173. void ShowMaDanLabelForm::controlHide()
  174. {
  175. ui->text1->hide();
  176. ui->text1_2->hide();
  177. ui->text2->hide();
  178. ui->text2_2->hide();
  179. ui->label_4->hide();
  180. ui->text4->hide();
  181. ui->text4_2->hide();
  182. ui->text4_3->hide();
  183. ui->data1->hide();
  184. ui->data1_2->hide();
  185. ui->data2->hide();
  186. ui->data2_2->hide();
  187. ui->data3->hide();
  188. ui->data4->hide();
  189. ui->data4_2->hide();
  190. ui->data4_3->hide();
  191. }
  192. void ShowMaDanLabelForm::controlShow()
  193. {
  194. ui->text1->show();
  195. ui->text1_2->show();
  196. ui->text2->show();
  197. ui->text2_2->show();
  198. ui->label_4->show();
  199. ui->text4->show();
  200. ui->text4_2->show();
  201. ui->text4_3->show();
  202. ui->data1->show();
  203. ui->data1_2->show();
  204. ui->data2->show();
  205. ui->data2_2->show();
  206. ui->data3->show();
  207. ui->data4->show();
  208. ui->data4_2->show();
  209. ui->data4_3->show();
  210. }
  211. void ShowMaDanLabelForm::on_upModel_clicked()
  212. {
  213. packModel.reset(new PackModel);
  214. packModel->BaseModel_Name = BaseModel;
  215. packModel->Model_Name =ModelName;
  216. addPackData();
  217. QString name = packModel->Model_Name;
  218. name += "_Model.json";
  219. QString ret = _dataDir.absoluteFilePath(name);
  220. if(PQ::writeAbsoluteFile(ret,QJsonDocument(packModel->toObject()).toJson())){
  221. QMessageBox::information(this,tr("提示"),tr("更新成功"));
  222. glo->selectPackModel();
  223. return;
  224. }
  225. QMessageBox::information(this,tr("提示"),tr("更新失败"));
  226. }