ebanutsya
This commit is contained in:
@@ -17,7 +17,7 @@ import printingApi from "../../api/printingApi";
|
||||
import PrintingService from "../../utils/PrintingService";
|
||||
import OrderProductsList from "../../components/OrderCard/OrderProductsList";
|
||||
import {
|
||||
confirmAssembly, endAssembly,
|
||||
confirmAssembly, endAssembly, selectProduct,
|
||||
setAssembled,
|
||||
setAssembly,
|
||||
setOrder,
|
||||
@@ -82,9 +82,9 @@ const OrderScreen: FC<OrderScreenProps> = ({order}) => {
|
||||
const dispatch = useDispatch();
|
||||
const assembly = useSelector((state: RootState) => state.assembly.assembly);
|
||||
const assemblyState = useSelector((state: RootState) => state.assembly.localState);
|
||||
const initialOrder = useSelector((state: RootState) => state.assembly.initialOrder);
|
||||
|
||||
const [selectedProduct, setSelectedProduct] = useState(order.products[0]);
|
||||
|
||||
const selectedProduct = useSelector((state: RootState) => state.assembly.selectedProduct);
|
||||
const [acceptModalVisible, setAcceptModalVisible] = useState(false);
|
||||
const [skipConfirmButtonVisible, setSkipConfirmButtonVisible] = useState(false);
|
||||
const _confirmAssembly = async () => {
|
||||
@@ -113,11 +113,13 @@ const OrderScreen: FC<OrderScreenProps> = ({order}) => {
|
||||
onPress={() => setAcceptModalVisible(true)}
|
||||
label={"Начать сборку"}/>)
|
||||
case ASSEMBLY_STATE.ASSEMBLING_PRODUCTS:
|
||||
|
||||
return (<BasicButton
|
||||
containerStyle={styles.buttonContainer}
|
||||
label={"Отметить как собранный"}
|
||||
disabled={selectedProduct.assembled}
|
||||
disabled={selectedProduct?.assembled}
|
||||
onPress={() => {
|
||||
if (!selectedProduct) return;
|
||||
dispatch(setAssembled({orderProductId: selectedProduct.databaseId}))
|
||||
}}
|
||||
/>)
|
||||
@@ -183,10 +185,10 @@ const OrderScreen: FC<OrderScreenProps> = ({order}) => {
|
||||
dispatch(setLoadingText('Идет печать этикетки...'))
|
||||
dispatch(openLoadingModal())
|
||||
printingApi.getLabel(order.databaseId).then(pdfData => {
|
||||
printingService.getInstance().printPdf('ozon', pdfData).then((response) => {
|
||||
printingService.getInstance().printPdf('wildberries', pdfData).then((response) => {
|
||||
dispatch(closeLoadingModal());
|
||||
if (response) return;
|
||||
dispatch(setPrinterName({printerName: 'ozon'}));
|
||||
dispatch(setPrinterName({printerName: 'wildberries'}));
|
||||
dispatch(openReprintModal());
|
||||
});
|
||||
})
|
||||
@@ -204,23 +206,27 @@ const OrderScreen: FC<OrderScreenProps> = ({order}) => {
|
||||
});
|
||||
|
||||
}, [assemblyState]);
|
||||
|
||||
useEffect(() => {
|
||||
if (!order) return;
|
||||
dispatch(selectProduct(0));
|
||||
}, [initialOrder]);
|
||||
return (
|
||||
<View style={styles.container}>
|
||||
<View style={styles.productsContainer}>
|
||||
<View style={styles.orderProductsListWrapper}>
|
||||
<OrderProductsList products={order.products} onSelected={(product) => {
|
||||
<OrderProductsList products={order.products} onSelected={(productId) => {
|
||||
if (!order) return;
|
||||
setSelectedProduct(product)
|
||||
dispatch(selectProduct(productId))
|
||||
}}/>
|
||||
</View>
|
||||
|
||||
<TouchableOpacity style={styles.imageWrapper} onPress={()=>{
|
||||
<TouchableOpacity style={styles.imageWrapper} onPress={() => {
|
||||
if (!selectedProduct) return;
|
||||
dispatch(setImages([selectedProduct.imageUrl]));
|
||||
dispatch(openImageZoomModal());
|
||||
}}>
|
||||
<View style={{flex: 1}}>
|
||||
<Image style={styles.image} source={{uri: selectedProduct.imageUrl}}/>
|
||||
<Image style={styles.image} source={{uri: selectedProduct?.imageUrl}}/>
|
||||
</View>
|
||||
</TouchableOpacity>
|
||||
|
||||
@@ -233,11 +239,11 @@ const OrderScreen: FC<OrderScreenProps> = ({order}) => {
|
||||
<DText>Селлер: {order.sellerName}</DText>
|
||||
<DText>{}</DText>
|
||||
<DTitle style={styles.contentTitle}>Товар</DTitle>
|
||||
<DText>Артикул DENCO: {selectedProduct.dencoArticle}</DText>
|
||||
<DText>Поставщик: {selectedProduct.supplierName}</DText>
|
||||
<DText>Артикул DENCO: {selectedProduct?.dencoArticle}</DText>
|
||||
<DText>Поставщик: {selectedProduct?.supplierName}</DText>
|
||||
<DText>Номер товара: {0}</DText>
|
||||
<DText>{}</DText>
|
||||
<DTitle style={styles.contentTitle}>Сборка</DTitle>
|
||||
{/*<DText>{}</DText>*/}
|
||||
{/*<DTitle style={styles.contentTitle}>Сборка</DTitle>*/}
|
||||
|
||||
</View>
|
||||
<View style={styles.buttonsContainer}>
|
||||
@@ -249,7 +255,6 @@ const OrderScreen: FC<OrderScreenProps> = ({order}) => {
|
||||
onAccepted={() => {
|
||||
setAcceptModalVisible(false);
|
||||
assemblyApi.create(order.databaseId).then(creationResult => {
|
||||
console.log(creationResult.message)
|
||||
Toast.show({
|
||||
type: creationResult.ok ? 'success' : 'error',
|
||||
text1: 'Создание сборки',
|
||||
@@ -273,7 +278,6 @@ const OrderScreen: FC<OrderScreenProps> = ({order}) => {
|
||||
export const OrderScreenController: FC = () => {
|
||||
const order: Order | undefined = useSelector((state: RootState) => state.assembly.order);
|
||||
if (!order) return <NoOrderScreen/>
|
||||
console.log(order)
|
||||
return <OrderScreen order={order}/>
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user