OrderQuantity.m 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. //
  2. // OrderQuantity.m
  3. // IBOSSIPAD
  4. //
  5. // Created by guan hong hou on 16/10/18.
  6. // Copyright © 2016年 elongtian. All rights reserved.
  7. //
  8. #import "OrderQuantity.h"
  9. @implementation OrderQuantity
  10. - (NSString*) calculateNewOrderDetailQuantity:(NSInteger)circularType decimalPlaces:(NSString*) decimal quantity:(NSString*)orderQuantity acreage:(double)acreageCount{
  11. long double pieces=0;
  12. NSString* quantity=@"0";
  13. long double orderQuan= [orderQuantity doubleValue];
  14. if (circularType==2){
  15. if(acreageCount>0){
  16. pieces= ceil(orderQuan/acreageCount);
  17. long double tempquantity= pieces*acreageCount;
  18. if(![decimal isEqualToString:@"0"]){
  19. NSString* decimalFormat = [NSString stringWithFormat:@"%@%@%@",@"%.",decimal,@"Lf"];
  20. quantity=[NSString stringWithFormat:decimalFormat,tempquantity];
  21. }
  22. // else{
  23. //
  24. // NSString *stringQuantity= [NSString stringWithFormat:@"%.6Lf",tempquantity];
  25. //
  26. // }
  27. }
  28. else{
  29. if(![decimal isEqualToString:@"0"]){
  30. NSString* decimalFormat = [NSString stringWithFormat:@"%@%@%@",@"%.",decimal,@"Lf" ];
  31. quantity=[NSString stringWithFormat:decimalFormat,orderQuan];
  32. }
  33. else{
  34. quantity= [NSString stringWithFormat:@"%.6Lf",orderQuan];
  35. }
  36. }
  37. }
  38. else if(circularType==1){
  39. long quan=(long)round(orderQuan);
  40. quantity=[NSString stringWithFormat:@"%ld",quan];
  41. }
  42. else{
  43. if(![decimal isEqualToString:@"0"]){
  44. NSString* decimalFormat = [NSString stringWithFormat:@"%@%@%@",@"%.",decimal,@"Lf" ];
  45. quantity= [NSString stringWithFormat:decimalFormat,orderQuan];
  46. }
  47. else{
  48. quantity= [NSString stringWithFormat:@"%.6Lf",orderQuan];
  49. }
  50. }
  51. return quantity;
  52. }
  53. - (NSString*) calculateOrderQuantity:(NSInteger)circularType decimalPlaces:(NSString*) decimal quantity:(NSString*)orderQuantity acreage:(double)acreageCount{
  54. long double pieces=0;
  55. NSString* quantity=@"0";
  56. if (circularType==2){
  57. long double orderQuan= [orderQuantity doubleValue];
  58. if(acreageCount>0){
  59. pieces= ceil(orderQuan/acreageCount);
  60. long double tempquantity= pieces*acreageCount;
  61. if(![decimal isEqualToString:@"0"]){
  62. NSString* decimalFormat = [NSString stringWithFormat:@"%@%@%@",@"%.",decimal,@"Lf" ];
  63. quantity=[NSString stringWithFormat:decimalFormat,tempquantity];
  64. }
  65. else{
  66. long double quan=(long double)roundl(tempquantity);
  67. NSNumberFormatter * formatter = [[NSNumberFormatter alloc]init];
  68. formatter.numberStyle = kCFNumberFormatterNoStyle;
  69. NSString *stringQuantity = [formatter stringFromNumber:[NSNumber numberWithDouble:quan]];
  70. quantity=stringQuantity;
  71. }
  72. }
  73. else{
  74. if(![decimal isEqualToString:@"0"]){
  75. NSString* decimalFormat = [NSString stringWithFormat:@"%@%@%@",@"%.",decimal,@"Lf" ];
  76. quantity=[NSString stringWithFormat:decimalFormat,orderQuan];
  77. }
  78. else{
  79. long double quan=(long double)roundl(orderQuan);
  80. NSNumberFormatter * formatter = [[NSNumberFormatter alloc]init];
  81. formatter.numberStyle = kCFNumberFormatterNoStyle;
  82. NSString *stringQuantity = [formatter stringFromNumber:[NSNumber numberWithDouble:quan]];
  83. quantity=stringQuantity;
  84. }
  85. }
  86. }
  87. else{
  88. long double orderQuan= [orderQuantity doubleValue];
  89. if(![decimal isEqualToString:@"0"]){
  90. NSString* decimalFormat = [NSString stringWithFormat:@"%@%@%@",@"%.",decimal,@"Lf"];
  91. quantity= [NSString stringWithFormat:decimalFormat,orderQuan];
  92. }
  93. else{
  94. long double quan=(long double)roundl(orderQuan);
  95. NSNumberFormatter * formatter = [[NSNumberFormatter alloc]init];
  96. formatter.numberStyle = kCFNumberFormatterNoStyle;
  97. NSString *stringQuantity = [formatter stringFromNumber:[NSNumber numberWithDouble:quan]];
  98. quantity=stringQuantity;
  99. }
  100. }
  101. return quantity;
  102. }
  103. @end