Welcome Guest, Not a member yet? Register   Sign In
Validation Batch Data
#1

I have data JSON Batch from Upload File

Code:
[{"params_invoicenumber":"INVCPLCM02353642","params_member":1,"params_sdate":"2022-01-02 19: 01: 00","params_edate":"2022-12-31 15: 06: 00","params_diagnose_early":[1,2,3],"params_diagnose_final":[3,2,1],"params_detail":[{"params_benefit":1,"params_invoice":2400000,"params_quantity":2,"params_excess":200000,"params_nonbenefit":200000,"params_desc":"Testing"},{"params_benefit":3,"params_invoice":2200000,"params_quantity":2,"params_excess":0,"params_nonbenefit":200000,"params_desc":"Testing"}],"params_created":1},{"params_invoicenumber":"INVCPLCM02353642","params_member":1,"params_sdate":"2022-01-02 19: 01: 00","params_edate":"2022-12-31 15: 06: 00","params_diagnose_early":[1,2,3],"params_diagnose_final":[3,2,1],"params_detail":[{"params_benefit":1,"params_invoice":2400000,"params_quantity":2,"params_excess":200000,"params_nonbenefit":200000,"params_desc":"Testing"},{"params_benefit":3,"params_invoice":2200000,"params_quantity":2,"params_excess":0,"params_nonbenefit":200000,"params_desc":"Testing"}],"params_created":1}]

My controller

PHP Code:
$dataValidate json_decode($this->request->getPost('params_json'), true);

            $validationRulesClaim = [
                '*.params_invoicenumber'  => 'required|alpha_numeric|max_length[16]|is_unique[sm_claim.claim_invoicenumber]',
                '*.params_member'        => 'required|integer',
                '*.params_sdate'          => 'required|valid_date[Y-m-d H:i:s]',
                '*.params_edate'          => 'required|valid_date[Y-m-d H:i:s]',
                '*.params_diagnose_early' => 'required|valid_json',
                '*.params_diagnose_final' => 'required|valid_json',
                '*.params_detail'        => 'required|valid_json',
                '*.params_created'        => 'required|integer',
            ];

            $this->validation->setRules($validationRulesClaim);

            if ($this->validation->run($dataValidate)) { 

In result not my expectation
Code:
"validation": {
        "*.params_diagnose_early": "Diagnose Early must be required",
        "*.params_diagnose_final": "Diagnose Final must be required",
        "*.params_detail": "Detail Claim must be required"
}

What are my doing to this set validation, or this bug?
Reply
#2

After you json_decode the data, there is no json in the array as you will see with print_r($dataValidate)
your 'valid_json' rule will fail.
Reply
#3

(12-21-2022, 12:01 AM)JustJohnQ Wrote: After you json_decode the data, there is no json in the array as you will see with print_r($dataValidate)
your 'valid_json' rule will fail.

When you set :
Code:
$validationRulesClaim = [
                '*.params_invoicenumber'  => 'required|alpha_numeric|max_length[16]|is_unique[sm_claim.claim_invoicenumber]',
                '*.params_member'        => 'required|integer',
                '*.params_sdate'          => 'required|valid_date[Y-m-d H:i:s]',
                '*.params_edate'          => 'required|valid_date[Y-m-d H:i:s]',
                '*.params_diagnose_early' => 'required',
                '*.params_diagnose_final' => 'required',
                '*.params_detail'        => 'required',
                '*.params_created'        => 'required|integer',
];

Still appear same result
Reply
#4

Just to test, does this work:
Code:
'*.params_diagnose_early.*' => 'required',
'*.params_diagnose_final.*' => 'required',
'*.params_detail.*'        => 'required',
Reply
#5

(12-21-2022, 12:17 AM)JustJohnQ Wrote: Just to test, does this work:
Code:
'*.params_diagnose_early.*' => 'required',
'*.params_diagnose_final.*' => 'required',
'*.params_detail.*'        => 'required',

Okay, thankyou  Big Grin
Reply




Theme © iAndrew 2016 - Forum software by © MyBB