Files
Odoo-Build/scripts/odoo14_vat_closing_entry_translation_patch
T
2022-06-16 13:49:04 +02:00

40 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
# Get script name
SCRIPT=$(basename "$0")
# First param is docker container
CONTAINER=$1
# Default configuration
PACKAGE_PATH="/mnt/enterprise/"
# Custom configuration
FILE_PATH="${PACKAGE_PATH}account_reports/models/account_generic_tax_report.py"
FIND="move_vals_lines.append((0, 0, {'name': tax_name"
IFS='' read -r -d '' REPLACE << EOM
domain = [('src', '=', tax_name), ('lang', '=', self._context.get('lang') )]
translation = self.env['ir.translation'].search(domain, limit=1)
move_vals_lines.append((0, 0, {'name': translation.value if translation else tax_name, 'debit': abs(amt) if amt < 0 else 0, 'credit': amt if amt > 0 else 0, 'account_id': account_id}))
EOM
# Get filename
FILE=`basename "$FILE_PATH"`
# Copy from docker
docker cp "$CONTAINER":"$FILE_PATH" .
# Find and replace
LINE=$(grep -n "$FIND" $FILE | cut -f1 -d:)
awk -v n="$LINE" -v r="$REPLACE" '{if(NR==n){print r}else{print}}' $FILE > $FILE.tmp && mv $FILE.tmp $FILE
# Copy back to docker
docker cp $FILE "$CONTAINER":"$FILE_PATH"
# Remove file
rm -f $FILE
# Register patch installation
echo "Patch $SCRIPT applied."
touch "/etc/odoo/${SCRIPT}_${CONTAINER}_installed"