- added two new settings related to CSV report;

This commit is contained in:
Vitalii Kiiko
2025-04-14 10:00:18 +02:00
parent aaad6e0fd7
commit f9b54d6350
5 changed files with 183 additions and 10 deletions

View File

@@ -40,6 +40,8 @@ const ElementSetting = ({ setting, changeFn, updateDataFn, bandoStatus }) => {
variable: __('Variabile (lettere, cifre e "_"; il primo carattere deve essere una lettera!)', 'gepafin'),
formula: __('Formula di calcolo automatico', 'gepafin'),
isChecklistItem: __('Fa parte di "checklist"?', 'gepafin'),
reportEnable: __('Aggiungere nel report CSV?', 'gepafin'),
reportHeader: __('Nome della colonna nel CSV', 'gepafin')
}
const settingDescription = {
@@ -114,7 +116,7 @@ const ElementSetting = ({ setting, changeFn, updateDataFn, bandoStatus }) => {
name={setting.name}
bandoStatus={bandoStatus}
setDataFn={updateDataFn}/>
} else if (['isRequestedAmount', 'isDelegation', 'isChecklistItem'].includes(setting.name)) {
} else if (['isRequestedAmount', 'isDelegation', 'isChecklistItem', 'reportEnable'].includes(setting.name)) {
return <InputSwitch
checked={setting.value}
onChange={(e) => changeFn(e.value, setting.name)}/>

View File

@@ -27,6 +27,7 @@ const BuilderElementSettings = ({ closeSettingsFn, callStatus, context }) => {
const [settings, setSettings] = useState([]);
const [validators, setValidators] = useState({});
const [dynamicData, setDynamicData] = useState([]);
const [reportData, setReportData] = useState({});
const [criteria, setCriteria] = useState([]);
const numberBasedValidatorFields = ['min', 'max', 'minLength', 'maxLength'];
const customValidationOptions = [
@@ -150,7 +151,7 @@ const BuilderElementSettings = ({ closeSettingsFn, callStatus, context }) => {
<TabPanel header={__('Presentation', 'gepafin')}>
{settings
? settings
.filter(o => !['variable', 'formula'].includes(o.name))
.filter(o => !['variable', 'formula', 'reportEnable', 'reportHeader'].includes(o.name))
.map((o) => <ElementSetting
key={o.name}
setting={o}
@@ -242,8 +243,7 @@ const BuilderElementSettings = ({ closeSettingsFn, callStatus, context }) => {
placeholder={__('Scegli', 'gepafin')}/>
</div>
</TabPanel> : null}
{settings
&& settings
{settings && settings
.filter(o => ['variable', 'formula'].includes(o.name)).length > 0
? <TabPanel header={__('Calcolo', 'gepafin')}>
{settings
@@ -257,9 +257,21 @@ const BuilderElementSettings = ({ closeSettingsFn, callStatus, context }) => {
updateDataFn={onUpdateOptions}/>)
: null}
</TabPanel> : null}
<TabPanel header={__('Rapporto CSV', 'gepafin')}>
{settings
? settings
.filter(o => ['reportEnable', 'reportHeader'].includes(o.name))
.map((o) => <ElementSetting
key={o.name}
setting={o}
callStatus={callStatus}
changeFn={onChange}
updateDataFn={onUpdateOptions}/>)
: null}
</TabPanel>
</TabView>
<div style={{display: 'flex', gap: '0.5rem'}}>
<div style={{ display: 'flex', gap: '0.5rem' }}>
<Button label={__('Annulla', 'gepafin')} onClick={closeSettingsFn} severity="danger"/>
<Button label={__('Salva', 'gepafin')} onClick={saveSettings}/>
</div>

View File

@@ -24,9 +24,6 @@ import set404FromErrorResponse from '../../helpers/set404FromErrorResponse';
// api
import FormsService from '../../service/forms-service';
import BandoService from '../../service/bando-service';
// TODO temp data
import { elementItems } from '../../tempData';
import DocumentCategoryService from '../../service/document-category-service';
// TODO temp data
@@ -222,7 +219,9 @@ const BandoFormsEdit = () => {
const getElementItemsCallback = (data) => {
if (data.status === 'SUCCESS') {
//storeSet('elementItems', elementItems.sort((a, b) => a.sortOrder - b.sortOrder));
/*storeSet('elementItems', elementItems
.filter(o => o.id !== 22)
.sort((a, b) => a.sortOrder - b.sortOrder));*/
storeSet('elementItems', data.data
.filter(o => o.id !== 22)
.sort((a, b) => a.sortOrder - b.sortOrder));