Commit e6beff8242d8c237c645216b94f5d096b7a04b88
1 parent
e55b8f0d
feat<central_clearing_system>:打印功能完成,解析接口未完成
Showing
2 changed files
with
162 additions
and
90 deletions
central_clearing_system/ETradeClient/hardware/hardware_cmd.cpp
... | ... | @@ -1292,143 +1292,215 @@ StylusPrinterCmd::Reply StylusPrinterCmd::Execute(const std::string& input) |
1292 | 1292 | |
1293 | 1293 | int StylusPrinterCmd::Print(std::vector<OrderInfo> &order_vector) |
1294 | 1294 | { |
1295 | - CPrintDialog dlg(false); | |
1296 | - dlg.GetDefaults(); | |
1297 | - CDC dc; | |
1298 | - dc.Attach(dlg.GetPrinterDC()); | |
1299 | - LPDEVMODE pDevMode; | |
1300 | - pDevMode = (LPDEVMODE)GlobalLock(dlg.m_pd.hDevMode); | |
1301 | - pDevMode->dmOrientation = DMORIENT_PORTRAIT;//设置打印方向为横向 | |
1302 | - pDevMode->dmPaperSize = DMPAPER_9X11;//设置纸张大小为A4 | |
1303 | - dc.ResetDC(pDevMode); | |
1304 | - dc.StartDoc(L"print"); | |
1305 | - | |
1295 | + HDC print_dc; | |
1296 | + DOCINFO docin; | |
1297 | + | |
1298 | + //设置打印机相关参数 | |
1299 | + docin.cbSize = sizeof(DOCINFO); | |
1300 | + docin.lpszDocName = L"ETrade"; | |
1301 | + docin.lpszOutput = NULL; | |
1302 | + CPrintDialog print_dialog(TRUE, PD_ALLPAGES | PD_NOPAGENUMS, NULL); | |
1303 | + PRINTDLG *print_dlg_info = &print_dialog.m_pd; | |
1304 | + AfxGetApp()->GetPrinterDeviceDefaults(print_dlg_info); | |
1305 | + DEVMODE* lpDevMode = (DEVMODE*)::GlobalLock(print_dlg_info->hDevMode); | |
1306 | + ::GlobalUnlock(print_dlg_info->hDevMode); | |
1307 | + lpDevMode->dmFields |= -1; | |
1308 | + lpDevMode->dmPaperLength = 1397; //设定纸长为 139.7mm | |
1309 | + lpDevMode->dmPaperWidth = 2410; //设定纸宽为 241mm | |
1310 | + print_dc = print_dialog.CreatePrinterDC(); // 返回一个打印DC句柄 | |
1311 | + CDC *dc = new CDC; | |
1312 | + dc->Attach(print_dc); | |
1306 | 1313 | CFont title_font; |
1307 | 1314 | title_font.CreatePointFont(350, L"宋体"); |
1308 | - | |
1309 | 1315 | CFont normal_font; |
1310 | 1316 | normal_font.CreatePointFont(200, L"宋体"); |
1311 | - | |
1317 | + // | |
1318 | + | |
1319 | + const int FirstPageCommCount = 5; //如果有多页第一页商品数为6 | |
1320 | + const int NormalPageCommCount = 10; //非第一页和最后一页,其他页的商品数目 | |
1321 | + const int LastPageCommCount = 9; //最后一页最多商品数量 | |
1322 | + | |
1323 | + const int TitleCtrlHIBig = 900; //表头不同组别控件横向间隔 | |
1324 | + const int TitleCtrlHISmall = 150; //表头同组别控件横向间隔 | |
1325 | + const int TitleCtrlVI = 50; //表头控件纵向间隔 | |
1326 | + const int LineStartX = 100; //横线起点x坐标 | |
1327 | + const int LineLength = 1600; //横线长度 | |
1328 | + const int CommStartX = 200; //商品信息起始x坐标 | |
1329 | + const int CommToLineVI = 30; //商品距横线纵向间隔 | |
1330 | + const int NormalCommStartY = 40; //非第一页商品信息起始y坐标 | |
1331 | + const int CommHI = 300; //商品信息横向间隔 | |
1332 | + const int CommVI = 80; //商品信息纵向间隔 | |
1333 | + const CPoint PagePoint(1200, 870); //页码坐标 | |
1334 | + const CPoint TitleStartPoint(600, 50);//表名起始坐标 | |
1335 | + const CPoint TitleCtrlStartPoint(100, 150);//表头控件起始坐标 | |
1336 | + | |
1337 | + //开始打印 | |
1338 | + StartDoc(print_dc, &docin); // 启动打印工作 | |
1312 | 1339 | for (auto iter : order_vector) |
1313 | 1340 | { |
1314 | - dc.StartPage(); | |
1315 | - dc.SelectObject(&title_font); | |
1316 | - dc.TextOut(600, 50, iter.doc_name); | |
1317 | - | |
1318 | - dc.SelectObject(&normal_font); | |
1319 | - dc.TextOut(100, 150, StatementNoText); | |
1320 | - dc.TextOut(250, 150, iter.statements_no); | |
1321 | - | |
1322 | - dc.TextOut(1000, 150, TradeTimeText); | |
1323 | - dc.TextOut(1150, 150, iter.trade_time); | |
1324 | - | |
1325 | - dc.TextOut(100, 200, BuyerNameText); | |
1326 | - dc.TextOut(250, 200, iter.buyer_name); | |
1327 | - | |
1328 | - dc.TextOut(1000, 200, SalerNameText); | |
1329 | - dc.TextOut(1150, 200, iter.seller_name); | |
1330 | - | |
1331 | - dc.MoveTo(100, 250); | |
1332 | - dc.LineTo(1700, 250); | |
1333 | - | |
1334 | - dc.TextOut(200, 280, CommNameText); | |
1335 | - dc.TextOut(500, 280, PriceText); | |
1336 | - dc.TextOut(800, 280, CountText); | |
1337 | - dc.TextOut(1100, 280, SubtotalText); | |
1338 | - int y_point = 280; | |
1339 | - | |
1341 | + //打印阶段单头部信息 | |
1342 | + StartPage(print_dc); | |
1343 | + | |
1344 | + int y_point = TitleCtrlStartPoint.y; | |
1345 | + int x_point = TitleCtrlStartPoint.x; | |
1346 | + | |
1347 | + dc->SelectObject(&title_font); | |
1348 | + dc->TextOut(TitleStartPoint.x, TitleStartPoint.y, iter.doc_name); | |
1349 | + | |
1350 | + dc->SelectObject(&normal_font); | |
1351 | + dc->TextOut(TitleCtrlStartPoint.x, TitleCtrlStartPoint.y, StatementNoText); | |
1352 | + x_point += TitleCtrlHISmall; | |
1353 | + dc->TextOut(x_point, y_point, iter.statements_no); | |
1354 | + | |
1355 | + x_point += TitleCtrlHIBig; | |
1356 | + dc->TextOut(x_point, y_point, TradeTimeText); | |
1357 | + x_point += TitleCtrlHISmall; | |
1358 | + dc->TextOut(x_point, y_point, iter.trade_time); | |
1359 | + | |
1360 | + x_point = TitleCtrlStartPoint.x; | |
1361 | + y_point += TitleCtrlVI; | |
1362 | + dc->TextOut(x_point, y_point, BuyerNameText); | |
1363 | + x_point += TitleCtrlHISmall; | |
1364 | + dc->TextOut(x_point, y_point, iter.buyer_name); | |
1365 | + | |
1366 | + x_point += TitleCtrlHIBig; | |
1367 | + dc->TextOut(x_point, y_point, SalerNameText); | |
1368 | + x_point += TitleCtrlHISmall; | |
1369 | + dc->TextOut(x_point, y_point, iter.seller_name); | |
1370 | + | |
1371 | + y_point += TitleCtrlVI; | |
1372 | + dc->MoveTo(LineStartX, y_point); | |
1373 | + x_point += LineLength; | |
1374 | + dc->LineTo(x_point, y_point); | |
1375 | + // | |
1376 | + | |
1377 | + //打印商品信息头 | |
1378 | + x_point = CommStartX; | |
1379 | + y_point += CommToLineVI; | |
1380 | + dc->TextOut(x_point, y_point, CommNameText); | |
1381 | + x_point += CommHI; | |
1382 | + dc->TextOut(x_point, y_point, PriceText); | |
1383 | + x_point += CommHI; | |
1384 | + dc->TextOut(x_point, y_point, CountText); | |
1385 | + x_point += CommHI; | |
1386 | + dc->TextOut(x_point, y_point, SubtotalText); | |
1387 | + // | |
1388 | + | |
1389 | + //计算页数 | |
1340 | 1390 | int comm_count = iter.comm_vector.size(); |
1341 | - CString pagination; | |
1342 | - | |
1343 | 1391 | int page_count = 0; |
1344 | - if (comm_count <= 5) | |
1392 | + if (comm_count <= FirstPageCommCount) | |
1345 | 1393 | { |
1346 | 1394 | page_count = 1; |
1347 | 1395 | } |
1348 | - else | |
1396 | + else | |
1349 | 1397 | { |
1350 | - //comm_count -= 6; | |
1351 | - page_count = (comm_count - 6) / 9 + ((comm_count - 6) % 9 > 0 ? 2 : 1); | |
1398 | + page_count = (comm_count - FirstPageCommCount - 1) / NormalPageCommCount + 2; | |
1352 | 1399 | } |
1400 | + // | |
1353 | 1401 | |
1354 | - int first_page_comm = page_count > 1 ? 6 : comm_count; //第一页不分页最多有5条商品,分页最多有6条商品 | |
1402 | + CString pagination;//页码文本 | |
1355 | 1403 | |
1404 | + // 打印第一页 | |
1405 | + int first_page_comm = page_count > 1 ? FirstPageCommCount + 1 : comm_count; //第一页不分页最多有5条商品,分页最多有6条商品 | |
1356 | 1406 | int comm_index = 0; |
1357 | 1407 | for (; comm_index < first_page_comm; ++comm_index) |
1358 | 1408 | { |
1359 | - y_point += 80; | |
1360 | - dc.TextOut(200, y_point, iter.comm_vector[comm_index].comm_name); | |
1361 | - dc.TextOut(500, y_point, iter.comm_vector[comm_index].price); | |
1362 | - dc.TextOut(800, y_point, iter.comm_vector[comm_index].count); | |
1363 | - dc.TextOut(1100, y_point, iter.comm_vector[comm_index].total_money); | |
1409 | + y_point += CommVI; | |
1410 | + x_point = CommStartX; | |
1411 | + dc->TextOut(x_point, y_point, iter.comm_vector[comm_index].comm_name); | |
1412 | + x_point += CommHI; | |
1413 | + dc->TextOut(x_point, y_point, iter.comm_vector[comm_index].price); | |
1414 | + x_point += CommHI; | |
1415 | + dc->TextOut(x_point, y_point, iter.comm_vector[comm_index].count); | |
1416 | + x_point += CommHI; | |
1417 | + dc->TextOut(x_point, y_point, iter.comm_vector[comm_index].total_money); | |
1364 | 1418 | } |
1365 | 1419 | |
1366 | 1420 | if (page_count > 1) |
1367 | 1421 | { |
1368 | 1422 | pagination.Format(L"%d/%d", 1, page_count); |
1369 | - dc.TextOut(1200, 870, pagination); | |
1370 | - dc.EndPage(); | |
1423 | + dc->TextOut(PagePoint.x, PagePoint.y, pagination); | |
1424 | + dc->EndPage(); | |
1371 | 1425 | } |
1426 | + // | |
1372 | 1427 | |
1428 | + //打印除第一页和最后一页的其余页数 | |
1373 | 1429 | for (int index = 1; index < page_count - 1; ++index) |
1374 | 1430 | { |
1375 | - dc.StartPage(); | |
1376 | - y_point = 40; | |
1377 | - for (int comm = 0; comm < 9; ++comm, ++comm_index) | |
1431 | + StartPage(print_dc); | |
1432 | + y_point = NormalCommStartY; | |
1433 | + for (int comm = 0; comm < NormalPageCommCount; ++comm, ++comm_index) | |
1378 | 1434 | { |
1379 | - y_point += 80; | |
1380 | - dc.TextOut(200, y_point, iter.comm_vector[comm_index].comm_name); | |
1381 | - dc.TextOut(500, y_point, iter.comm_vector[comm_index].price); | |
1382 | - dc.TextOut(800, y_point, iter.comm_vector[comm_index].count); | |
1383 | - dc.TextOut(1100, y_point, iter.comm_vector[comm_index].total_money); | |
1435 | + x_point = CommStartX; | |
1436 | + dc->TextOut(x_point, y_point, iter.comm_vector[comm_index].comm_name); | |
1437 | + x_point += CommHI; | |
1438 | + dc->TextOut(x_point, y_point, iter.comm_vector[comm_index].price); | |
1439 | + x_point += CommHI; | |
1440 | + dc->TextOut(x_point, y_point, iter.comm_vector[comm_index].count); | |
1441 | + x_point += CommHI; | |
1442 | + dc->TextOut(x_point, y_point, iter.comm_vector[comm_index].total_money); | |
1443 | + y_point += CommVI; | |
1384 | 1444 | } |
1385 | 1445 | pagination.Format(L"%d/%d", index + 1, page_count); |
1386 | - dc.TextOut(1200, 870, pagination); | |
1387 | - dc.EndPage(); | |
1446 | + dc->TextOut(PagePoint.x, PagePoint.y, pagination); | |
1447 | + dc->EndPage(); | |
1388 | 1448 | } |
1449 | + // | |
1389 | 1450 | |
1390 | - if (comm_count % 9 > 0 && page_count > 1) | |
1451 | + //打印最后一页 | |
1452 | + if (page_count > 1) | |
1391 | 1453 | { |
1392 | - dc.StartPage(); | |
1393 | - y_point = 40; | |
1454 | + StartPage(print_dc); | |
1455 | + y_point = NormalCommStartY; | |
1394 | 1456 | for (; comm_index < comm_count; ++comm_index) |
1395 | 1457 | { |
1396 | - y_point += 80; | |
1397 | - dc.TextOut(200, y_point, iter.comm_vector[comm_index].comm_name); | |
1398 | - dc.TextOut(500, y_point, iter.comm_vector[comm_index].price); | |
1399 | - dc.TextOut(800, y_point, iter.comm_vector[comm_index].count); | |
1400 | - dc.TextOut(1100, y_point, iter.comm_vector[comm_index].total_money); | |
1458 | + x_point = CommStartX; | |
1459 | + dc->TextOut(x_point, y_point, iter.comm_vector[comm_index].comm_name); | |
1460 | + x_point += CommHI; | |
1461 | + dc->TextOut(x_point, y_point, iter.comm_vector[comm_index].price); | |
1462 | + x_point += CommHI; | |
1463 | + dc->TextOut(x_point, y_point, iter.comm_vector[comm_index].count); | |
1464 | + x_point += CommHI; | |
1465 | + dc->TextOut(x_point, y_point, iter.comm_vector[comm_index].total_money); | |
1466 | + y_point += CommVI; | |
1401 | 1467 | } |
1402 | - dc.EndPage(); | |
1403 | 1468 | } |
1404 | - | |
1405 | - dc.MoveTo(100, y_point += 80); | |
1406 | - dc.LineTo(1700, y_point); | |
1407 | - | |
1408 | - dc.TextOut(100, y_point += 30, ClerkText); | |
1409 | - dc.TextOut(250, y_point, iter.settlement_clerk); | |
1410 | - | |
1411 | - dc.TextOut(1100, y_point, TotalMoneyText); | |
1412 | - dc.TextOut(1250, y_point, iter.total_money); | |
1469 | + | |
1470 | + x_point = LineStartX; | |
1471 | + y_point += CommVI; | |
1472 | + dc->MoveTo(x_point, y_point); | |
1473 | + x_point += LineLength; | |
1474 | + dc->LineTo(x_point, y_point); | |
1475 | + | |
1476 | + x_point = TitleCtrlStartPoint.x; | |
1477 | + y_point += CommToLineVI; | |
1478 | + dc->TextOut(x_point, y_point, ClerkText); | |
1479 | + x_point += TitleCtrlHISmall; | |
1480 | + dc->TextOut(x_point, y_point, iter.settlement_clerk); | |
1481 | + | |
1482 | + x_point += TitleCtrlHIBig; | |
1483 | + dc->TextOut(x_point, y_point, TotalMoneyText); | |
1484 | + x_point += TitleCtrlHISmall; | |
1485 | + dc->TextOut(x_point, y_point, iter.total_money); | |
1413 | 1486 | |
1414 | 1487 | pagination.Format(L"%d/%d", page_count, page_count); |
1415 | - dc.TextOut(1200, 870, pagination); | |
1488 | + dc->TextOut(PagePoint.x, PagePoint.y, pagination); | |
1416 | 1489 | |
1417 | - if (page_count == 1) | |
1418 | - { | |
1419 | - dc.EndPage(); | |
1420 | - } | |
1421 | - | |
1490 | + EndPage(print_dc); | |
1422 | 1491 | } |
1423 | 1492 | |
1424 | - | |
1425 | 1493 | title_font.DeleteObject(); |
1426 | 1494 | normal_font.DeleteObject(); |
1427 | - dc.EndDoc();//结束打印 | |
1495 | + | |
1496 | + EndDoc(print_dc);//结束打印 | |
1497 | + DeleteDC(print_dc); | |
1498 | + delete dc; | |
1428 | 1499 | |
1429 | 1500 | return true; |
1430 | 1501 | } |
1431 | 1502 | |
1503 | + | |
1432 | 1504 | static const std::string JSON_TAG_TITLE = "title"; |
1433 | 1505 | static const std::string JSON_TAG_ORDERS = "orders"; |
1434 | 1506 | static const std::string JSON_TAG_ORDER_ID = "orderId"; | ... | ... |
central_clearing_system/ETradeClient/mfc_ui/pay_dlg.cpp
... | ... | @@ -116,5 +116,5 @@ void PayDlg::OnBnClickedPayButtonPay() |
116 | 116 | { |
117 | 117 | auto printer_device = StylusPrinterCmd(); |
118 | 118 | |
119 | - HardwareCmd::Reply reply = printer_device.Execute("{\"title\":\"长春结地利算单\",\"orders\":[{\"statementId\":\"123456\",\"tradeTime\":\"2018/10/10\",\"buyerName\":\"大熊\",\"sellerName\":\"卖家大熊\",\"userName\":\"结算员大熊\",\"totalMoney\":\"11001.91\",\"products\":[{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"55.5\",\"amount\":\"500\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"}]}]}"); | |
119 | + HardwareCmd::Reply reply = printer_device.Execute("{\"title\":\"长春结地利算单\",\"orders\":[{\"statementId\":\"123456\",\"tradeTime\":\"2018/10/10\",\"buyerName\":\"大熊\",\"sellerName\":\"卖家大熊\",\"userName\":\"结算员大熊\",\"totalMoney\":\"11001.91\",\"products\":[{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"55.5\",\"amount\":\"500\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"}]},{\"statementId\":\"123456\",\"tradeTime\":\"2018/10/10\",\"buyerName\":\"大熊\",\"sellerName\":\"卖家大熊\",\"userName\":\"结算员大熊\",\"totalMoney\":\"11001.91\",\"products\":[{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"55.5\",\"amount\":\"500\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"},{\"orderId\":1000,\"productName\":\"商品名称大熊\",\"price\":\"2753\",\"amount\":\"752\",\"money\":\"1021.01\"}]}]}"); | |
120 | 120 | } | ... | ... |