I have the following codes: function add ($ table, $ data, $ returnId = false) {
$this->db->insert($table, $data);
if ($this->db->affected_rows() == '1')
{
if($returnId == true){
return $this->db->insert_id($table);
}
return TRUE;
}
return FALSE;
}
function edit($table,$data,$fieldID,$ID){
$this->db->where($fieldID,$ID);
$this->db->update($table, $data);
if ($this->db->affected_rows() >= 0)
{
return TRUE;
}
return FALSE;
}
One add (add) and the other edit (edit) the registry.
The other function that manipulates the fields:
function adicionar(){
if(!$this->permission->checkPermission($this->session->userdata('permissao'),'aOs')){
$this->session->set_flashdata('error','Você não tem permissão para adicionar O.S.');
redirect(base_url());
}
$this->load->library('form_validation');
$this->data['custom_error'] = '';
if ($this->form_validation->run('os') == false) {
$this->data['custom_error'] = (validation_errors() ? true : false);
} else {
$dataInicial = $this->input->post('dataInicial');
try {
$dataInicial = explode('/', $dataInicial);
$dataInicial = $dataInicial[2].'-'.$dataInicial[1].'-'.$dataInicial[0];
} catch (Exception $e) {
$dataInicial = date('Y/m/d');
}
$data = array(
'clientes_id' => $this->input->post('clientes_id'),//set_value('idCliente'),
'usuarios_id' => $this->input->post('usuarios_id'),//set_value('idUsuario'),
'contatos' => set_value('contatos'),
'email_contato1' => set_value('email_contato1'),
'email_contato2' => set_value('email_contato2'),
'status' => set_value('status'),
'dataInicial' => $dataInicial,
'tipo_produto' => set_value('tipo_produto'),
'cod_bar' => set_value('cod_bar'),
'codigo' => set_value('codigo'),
'versao' => set_value('versao'),
'descricao_produto' => set_value('descricao_produto'),
'tipo_trabalho' => set_value('tipo_trabalho'),
'tipo_corte' => set_value('tipo_corte'),
'referencia' => $this->input->post('referencia'),//set_value('idReferencia'),
'amostra' => set_value('amostra'),
'substrato_imprime' => set_value('substrato_imprime'),
'substrato_lamina' => set_value('substrato_lamina'),
'print' => set_value('print'),
'faca_id' => $this->input->post('faca_id'),//set_value('idFacas'),
'observacoes' => set_value('observacoes'),
'laudoTecnico' => set_value('laudoTecnico'),
'impressora' => $this->input->post('impressora'),
'passo' => set_value('passo'),
'altura' => set_value('altura'),
'largura' => set_value('largura'),
'quanti_imagens' => set_value('quanti_imagens'),
'qua_carreira_imprime' => set_value('qua_carreira_imprime'),
'qua_carreira_rebobina' => set_value('qua_carreira_rebobina'),
'quan_rolo_bloco_peso' => set_value('quan_rolo_bloco_peso'),
'transporte' => set_value('transporte'),
'embobinamento' => set_value('embobinamento'),
'tubete' => set_value('tubete'),
'unidade_medida' => set_value('unidade_medida'),
'camada' => set_value('camada'),
'rotulagem' => set_value('rotulagem'),
'produto_acabado' => set_value('produto_acabado'),
'verniz' => set_value('verniz'),
'sentido' => set_value('sentido'),
'layflat' => set_value('layflat'),
'largura_material' => set_value('largura_material'),
'cor_frasco' => set_value('cor_frasco'),
'cor_liquido' => set_value('cor_liquido'),
'tunel' => set_value('tunel'),
'serrilha' => set_value('serrilha'),
'microfuro' => set_value('microfuro'),
'hot_heat' => set_value('hot_heat'),
);
if ( is_numeric($id = $this->os_model->add('os', $data, true)) ) {
$this->session->set_flashdata('success','OS adicionada com sucesso.');
redirect('os/adicionar/'.$id);
} else {
$this->data['custom_error'] = '<div class="form_error"><p>An Error Occured.</p></div>';
}
}
$this->data['view'] = 'os/adicionarOs';
$this->load->view('tema/topo', $this->data);
}
function editar() {
if(!$this->uri->segment(3) || !is_numeric($this->uri->segment(3))){
$this->session->set_flashdata('error','Item não pode ser encontrado, parâmetro não foi passado corretamente.');
redirect('mapos');
}
if(!$this->permission->checkPermission($this->session->userdata('permissao'),'eOs')){
$this->session->set_flashdata('error','Você não tem permissão para editar O.S.');
redirect(base_url());
}
$this->load->library('form_validation');
$this->data['custom_error'] = '';
if ($this->form_validation->run('os') == false) {
$this->data['custom_error'] = (validation_errors() ? '<div class="form_error">' . validation_errors() . '</div>' : false);
} else {
$dataInicial = $this->input->post('dataInicial');
$data_enviojpg = $this->input->post('data_enviojpg');
$data_aprovacao = $this->input->post('data_aprovacao');
$dataInicial = $this->input->post('dataInicial');
$data_solicitacliche = $this->input->post('data_solicitacliche');
$data_chegoucliche = $this->input->post('data_chegoucliche');
try {
$dataInicial = explode('/', $dataInicial);
$dataInicial = $dataInicial[2].'-'.$dataInicial[1].'-'.$dataInicial[0];
$data_enviojpg = explode('/', $data_enviojpg);
$data_enviojpg = $data_enviojpg[2].'-'.$data_enviojpg[1].'-'.$data_enviojpg[0];
} catch (Exception $e) {
$dataInicial = date('Y/m/d');
}
$data = array(
'dataInicial' => $dataInicial,
'clientes_id' => $this->input->post('clientes_id'),//set_value('idCliente'),
'usuarios_id' => $this->input->post('usuarios_id'),//set_value('idUsuario'),
'contatos' => $this->input->post('contatos'),
'email_contato1' => $this->input->post('email_contato1'),
'email_contato2' => $this->input->post('email_contato2'),
'status' => $this->input->post('status'),
'dataInicial' => $dataInicial,
'tipo_produto' => $this->input->post('tipo_produto'),
'cod_bar' => $this->input->post('cod_bar'),
'codigo' => $this->input->post('codigo'),
'versao' => $this->input->post('versao'),
'descricao_produto' => $this->input->post('descricao_produto'),
'tipo_trabalho' => $this->input->post('tipo_trabalho'),
'tipo_corte' => $this->input->post('tipo_corte'),
'referencia' => $this->input->post('referencia'),//set_value('idReferencia'),
'amostra' => $this->input->post('amostra'),
'substrato_imprime' => $this->input->post('substrato_imprime'),
'substrato_lamina' => $this->input->post('substrato_lamina'),
'print' => $this->input->post('print'),
'faca_id' => $this->input->post('faca_id'),//set_value('idFacas'),
'observacoes' => $this->input->post('observacoes'),
'laudoTecnico' => $this->input->post('laudoTecnico'),
'impressora' => $this->input->post('impressora'),
'passo' => $this->input->post('passo'),
'altura' => $this->input->post('altura'),
'largura' => $this->input->post('largura'),
'quanti_imagens' => $this->input->post('quanti_imagens'),
'qua_carreira_imprime' => $this->input->post('qua_carreira_imprime'),
'qua_carreira_rebobina' => $this->input->post('qua_carreira_rebobina'),
'quan_rolo_bloco_peso' => $this->input->post('quan_rolo_bloco_peso'),
'transporte' => set_value('transporte'),
'embobinamento' => $this->input->post('embobinamento'),
'tubete' => $this->input->post('tubete'),
'unidade_medida' => $this->input->post('unidade_medida'),
'camada' => $this->input->post('camada'),
'rotulagem' => $this->input->post('rotulagem'),
'produto_acabado' => set_value('produto_acabado'),
'verniz' => $this->input->post('verniz'),
'sentido' => set_value('sentido'),
'layflat' => $this->input->post('layflat'),
'largura_material' => $this->input->post('largura_material'),
'cor_frasco' => $this->input->post('cor_frasco'),
'cor_liquido' => $this->input->post('cor_liquido'),
'tunel' => $this->input->post('tunel'),
'serrilha' => $this->input->post('serrilha'),
'microfuro' => $this->input->post('microfuro'),
'hot_heat' => $this->input->post('hot_heat'),
'data_chegoucliche' => $data_chegoucliche,
'distorcao' => $this->input->post('distorcao'),
'referencia_cor' => $this->input->post('referencia_cor'),
'conjugado' => $this->input->post('conjugado'),
'clicheria' => $this->input->post('clicheria'),
'cores_comum' => $this->input->post('cores_comum'),
'data_enviojpg' => $data_enviojpg,
'data_aprovacao' => $data_aprovacao,
'data_solicitacliche' => $data_solicitacliche,
'referencia_pantone' => $this->input->post('referencia_pantone'),
'cor1' => $this->input->post('cor1'),
'cor2' => $this->input->post('cor2'),
'cor3' => $this->input->post('cor3'),
'cor4' => $this->input->post('cor4'),
'cor5' => $this->input->post('cor5'),
'cor6' => $this->input->post('cor6'),
'cor7' => $this->input->post('cor7'),
'cor8' => $this->input->post('cor8'),
'cor9' => $this->input->post('cor9'),
'cor10' => $this->input->post('cor10'),
'cor11' => $this->input->post('cor11'),
'cor12' => $this->input->post('cor12'),
'rolinho' => $this->input->post('rolinho'),
'corredor_fc' => $this->input->post('corredor_fc'),
'anilox1' => $this->input->post('anilox1'),
'anilox2' => $this->input->post('anilox2'),
'anilox3' => $this->input->post('anilox3'),
'anilox4' => $this->input->post('anilox4'),
'anilox5' => $this->input->post('anilox5'),
'anilox6' => $this->input->post('anilox6'),
'anilox7' => $this->input->post('anilox7'),
'anilox8' => $this->input->post('anilox8'),
'bcm1' => $this->input->post('bcm1'),
'bcm2' => $this->input->post('bcm2'),
'bcm3' => $this->input->post('bcm3'),
'bcm4' => $this->input->post('bcm4'),
'bcm5' => $this->input->post('bcm5'),
'bcm6' => $this->input->post('bcm6'),
'bcm7' => $this->input->post('bcm7'),
'bcm8' => $this->input->post('bcm8'),
);
if ($this->os_model->edit('os', $data, 'idOs', $this->input->post('idOs')) == TRUE) {
$this->session->set_flashdata('success','Os editada com sucesso!');
redirect(base_url() . 'index.php/os/editar/'.$this->input->post('idOs'));
} else {
$this->data['custom_error'] = '<div class="form_error"><p>Ocorreu um erro</p></div>';
}
}
$this->data['result'] = $this->os_model->getById($this->uri->segment(3));
$this->data['view'] = 'os/editarOs';
$this->load->view('tema/topo', $this->data);
}
I need to create the Duplicate Function. I edit the already existing data where I will change some information from the product description field, for example, the fields product code and version would be blank to be informed with other numbers and instead save the same record, be saved as another new id.