TransferEdit.xaml 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216
  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <mobile:MobilePage xmlns:local="clr-namespace:PRS.Mobile" xmlns="http://xamarin.com/schemas/2014/forms"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
  4. x:Class="PRS.Mobile.TransferEdit"
  5. xmlns:mobile="clr-namespace:InABox.Mobile;assembly=InABox.Mobile.Shared"
  6. xmlns:views="http://xamarin.com/schemas/2020/toolkit"
  7. Title="Transfer Stock">
  8. <mobile:MobilePage.Resources>
  9. <mobile:ByteArrayToImageSourceConverter x:Key="ImageConverter" />
  10. <mobile:StringWithDefaultValueConverter x:Key="JobDisplayConverter" Default="(Select Job)" />
  11. <mobile:StringWithDefaultValueConverter x:Key="StyleDisplayConverter" Default="(Select Style)" />
  12. <mobile:StringWithDefaultValueConverter x:Key="LocationDisplayConverter" Default="(Select Location)" />
  13. <mobile:DoubleToBooleanConverter x:Key="TransactionNonZeroConverter" MinValue="-0.000001" MaxValue="0.000001" Result="False"/>
  14. </mobile:MobilePage.Resources>
  15. <mobile:MobilePage.BindingContext>
  16. <local:TransferEditViewModel x:Name="ViewModel" />
  17. </mobile:MobilePage.BindingContext>
  18. <mobile:MobilePage.PrimaryMenu>
  19. <mobile:MobileMenuButton
  20. x:Name="_tick"
  21. Image="tick"
  22. Clicked="_tick_OnClicked"
  23. IsVisible="{Binding Transaction.Quantity, Converter={StaticResource TransactionNonZeroConverter}}"/>
  24. </mobile:MobilePage.PrimaryMenu>
  25. <mobile:MobilePage.PageContent>
  26. <Grid
  27. Margin="5"
  28. RowSpacing="5"
  29. ColumnSpacing="5"
  30. HorizontalOptions="Fill">
  31. <Grid.RowDefinitions>
  32. <RowDefinition Height="*" />
  33. <RowDefinition Height="Auto" />
  34. <RowDefinition Height="Auto" />
  35. <RowDefinition Height="Auto" />
  36. <RowDefinition Height="Auto" />
  37. </Grid.RowDefinitions>
  38. <Grid.ColumnDefinitions>
  39. <ColumnDefinition Width="*"/>
  40. <ColumnDefinition Width="Auto"/>
  41. </Grid.ColumnDefinitions>
  42. <mobile:MobileCard
  43. Grid.Row="0"
  44. Grid.Column="0"
  45. Grid.ColumnSpan="2"
  46. Padding="5">
  47. <views:DockLayout>
  48. <Label
  49. views:DockLayout.Dock="Bottom"
  50. Text="{Binding Transaction.DimensionsUnitSize}"
  51. FontSize="Small"
  52. TextColor="{StaticResource Theme.OnBackground}"
  53. VerticalTextAlignment="Center"
  54. HorizontalTextAlignment="Center"
  55. Margin="5,0,5,0"/>
  56. <Label
  57. views:DockLayout.Dock="Bottom"
  58. Text="{Binding Transaction.ProductDisplay}"
  59. LineBreakMode="WordWrap"
  60. FontSize="Small"
  61. FontAttributes="Bold"
  62. TextColor="{StaticResource Theme.OnBackground}"
  63. VerticalTextAlignment="Center"
  64. HorizontalTextAlignment="Center"
  65. Margin="5,0,5,0"/>
  66. <Image
  67. views:DockLayout.Dock="Top"
  68. Source="{Binding Transaction.Image, Converter={StaticResource ImageConverter}}" />
  69. </views:DockLayout>
  70. </mobile:MobileCard>
  71. <mobile:MobileCard
  72. Grid.Row="1"
  73. Grid.Column="0"
  74. Padding="5,0"
  75. BackgroundColor="{StaticResource Theme.Background}">
  76. <Label
  77. HorizontalOptions="Fill"
  78. Text="{Binding Transaction.Target.LocationDisplay, Converter={StaticResource LocationDisplayConverter}}"
  79. FontSize="Small"
  80. TextColor="{StaticResource Theme.OnBackground}"
  81. LineBreakMode="TailTruncation"
  82. VerticalTextAlignment="Center"
  83. />
  84. </mobile:MobileCard>
  85. <mobile:MobileButton
  86. Grid.Row="1"
  87. Grid.Column="1"
  88. Image="lines"
  89. Clicked="SelectLocation_Clicked"
  90. />
  91. <mobile:MobileCard
  92. Grid.Row="2"
  93. Grid.Column="0"
  94. Padding="5,0"
  95. BackgroundColor="{StaticResource Theme.Background}">
  96. <Label
  97. HorizontalOptions="Fill"
  98. Text="{Binding Transaction.Target.StyleDisplay, Converter={StaticResource StyleDisplayConverter}}"
  99. FontSize="Small"
  100. TextColor="{StaticResource Theme.OnBackground}"
  101. LineBreakMode="TailTruncation"
  102. VerticalTextAlignment="Center"
  103. />
  104. </mobile:MobileCard>
  105. <mobile:MobileButton
  106. Grid.Row="2"
  107. Grid.Column="1"
  108. Image="lines"
  109. Clicked="SelectStyle_Clicked"
  110. />
  111. <mobile:MobileCard
  112. Grid.Row="3"
  113. Grid.Column="0"
  114. Padding="5,0"
  115. BackgroundColor="{StaticResource Theme.Background}">
  116. <Label
  117. HorizontalOptions="Fill"
  118. Text="{Binding Transaction.Target.JobDisplay, Converter={StaticResource JobDisplayConverter}}"
  119. FontSize="Small"
  120. TextColor="{StaticResource Theme.OnBackground}"
  121. LineBreakMode="TailTruncation"
  122. VerticalTextAlignment="Center"
  123. />
  124. </mobile:MobileCard>
  125. <mobile:MobileButton
  126. Grid.Row="3"
  127. Grid.Column="1"
  128. Image="lines"
  129. Clicked="SelectJob_Clicked"
  130. />
  131. <StackLayout
  132. Grid.Row="4"
  133. Grid.Column="0"
  134. Grid.ColumnSpan="2"
  135. BindableLayout.ItemsSource="{Binding Transaction.Allocations}">
  136. <BindableLayout.ItemTemplate>
  137. <DataTemplate x:DataType="{x:Type local:StockTransactionAllocation}">
  138. <Grid
  139. RowSpacing="5"
  140. ColumnSpacing="5">
  141. <Grid.ColumnDefinitions>
  142. <ColumnDefinition Width="*"/>
  143. <ColumnDefinition Width="30"/>
  144. <ColumnDefinition Width="60"/>
  145. <ColumnDefinition Width="30"/>
  146. </Grid.ColumnDefinitions>
  147. <mobile:MobileCard
  148. Grid.Column="0"
  149. BackgroundColor="{StaticResource Theme.Background}">
  150. <Label
  151. Text="{Binding Description}"
  152. FontSize="Small"
  153. TextColor="{StaticResource Theme.OnBackground}"
  154. VerticalTextAlignment="Center"
  155. HorizontalTextAlignment="Start"
  156. Margin="5,0,5,0"
  157. LineBreakMode="TailTruncation"/>
  158. </mobile:MobileCard>
  159. <mobile:MobileButton
  160. Grid.Column="1"
  161. WidthRequest="30"
  162. Image="arrow_white_left"
  163. Clicked="DecreaseQty_Clicked"
  164. />
  165. <mobile:MobileCard
  166. Grid.Column="2"
  167. WidthRequest="60">
  168. <Entry
  169. HorizontalOptions="Fill"
  170. Text="{Binding Quantity, Mode=TwoWay}"
  171. FontSize="Small"
  172. Keyboard="Numeric"
  173. BackgroundColor="{StaticResource Theme.Surface}"
  174. TextColor="{StaticResource Theme.OnSurface}"
  175. />
  176. </mobile:MobileCard>
  177. <mobile:MobileButton
  178. Grid.Column="3"
  179. WidthRequest="30"
  180. Image="arrow_white_right"
  181. Clicked="IncreaseQty_Clicked"
  182. />
  183. </Grid>
  184. </DataTemplate>
  185. </BindableLayout.ItemTemplate>
  186. </StackLayout>
  187. </Grid>
  188. </mobile:MobilePage.PageContent>
  189. </mobile:MobilePage>