PageRenderTime 202ms CodeModel.GetById 29ms RepoModel.GetById 0ms app.codeStats 0ms

/application/controllers/import.php

https://bitbucket.org/remobius/crm
PHP | 421 lines | 286 code | 43 blank | 92 comment | 36 complexity | 1d7a171da68c473fc4e15b417ecca63b MD5 | raw file
Possible License(s): GPL-2.0, MIT, LGPL-3.0, LGPL-2.1, GPL-3.0
  1. <?php if (!defined('BASEPATH')) exit('No direct script access allowed');
  2. class import extends CI_Controller {
  3. function __construct(){
  4. parent::__construct();
  5. #$this->load->library('image_lib');
  6. }
  7. function test(){
  8. $fields = $this->db->list_fields('produk_sn');
  9. foreach( $fields as $field ){
  10. echo $field . "<br/>";
  11. }
  12. exit;
  13. $agama= "KATHOLIK";
  14. if( $agama == "katholik" ){
  15. echo "yes";
  16. }
  17. exit;
  18. echo $this->Gmodel->getLastId("02001");
  19. exit;
  20. $this->db->select('IdKota');
  21. $query=$this->db->get_where('m_kota', array('NamaKota'=>"Jakarta"))->row_array();
  22. print_r($query);
  23. exit;
  24. $keys= array('foo', 5, 10, 'bar');
  25. $a= array_fill_keys($keys, 'banana');
  26. print_r($a);
  27. }
  28. function snset(){
  29. $link= fopen("D:/SN.csv", "r");
  30. $buffer= fgets($link);
  31. $buffer= explode(";", trim($buffer));
  32. # Get Keys
  33. $keys= array();
  34. foreach( $buffer as $value ){
  35. $keys[]= trim($value);
  36. }
  37. # Combine key dengan data
  38. $getdata= array();
  39. if( $link ){
  40. while( !feof($link) ){
  41. $buffer= fgets($link);
  42. if( !empty($buffer) ){
  43. $buffer= trim($buffer);
  44. $buffer= explode(";", $buffer);
  45. if( count($keys) === count($buffer) ){
  46. $getdata[]= array_combine($keys, $buffer);
  47. }
  48. }
  49. }
  50. fclose($link);
  51. }
  52. unset($getdata[0]);
  53. $unsetkey= array("Description","In","Out","Bal");
  54. foreach( $unsetkey as $key=>$value ){
  55. unset($getdata[$value]);
  56. }
  57. foreach( $getdata as $key=>$value ){
  58. print_r($getdata);
  59. echo "<br/>";
  60. }
  61. exit;
  62. 'IdProduk','NoSerial','IdKlinik','Status','AddUser','AddDate';
  63. $setfields= array("Category"=>"IdCategory", "Description"=>"Model", "Item_Number"=>"IdProduk",
  64. "Price"=>"Harga");
  65. $ct= 0;
  66. foreach( $getdata as $key=>$value ){
  67. foreach( $value as $subkey=>$subvalue ){
  68. $partdata= array();
  69. if( array_key_exists($subkey, $setfields) ){
  70. $idkey= $setfields[$subkey];
  71. if( ! empty($subvalue) ){
  72. $fixdata[$key][$idkey]= $subvalue;
  73. }
  74. }
  75. }
  76. }
  77. /*
  78. print_r($fixdata);
  79. echo "<br/>";
  80. echo count($fixdata);
  81. exit;
  82. */
  83. $AddUser= "admin";
  84. $AddDate= date("Y-m-d");
  85. foreach( $fixdata as $key=>$value ){
  86. foreach( $value as $subkey=>$subvalue ){
  87. if( $subkey == "Harga" ){
  88. $subvalue= str_replace(array(".", ",","(",")"), array("", ".", "", ""), $subvalue);
  89. }
  90. $produk_ins[$key][$subkey]= $subvalue;
  91. $produk_harga_ins[$key][$subkey]= $subvalue;
  92. }
  93. $toproduk= array("Garansi"=>0, "Type"=>"P", "AddUser"=>$AddUser, "AddDate"=>$AddDate);
  94. foreach( $toproduk as $field=>$field_value ){
  95. $produk_ins[$key][$field]= $field_value;
  96. }
  97. $toproduk_harga= array("IdMataUang"=>"IDR", "AddUser"=>$AddUser, "AddDate"=>$AddDate);
  98. foreach( $toproduk_harga as $field=>$field_value ){
  99. $produk_harga_ins[$key][$field]= $field_value;
  100. }
  101. unset($produk_ins[$key]['Harga']);
  102. $unsetharga= array("IdCategory", "Model", "Garansi", "Type");
  103. foreach( $unsetharga as $value ){
  104. unset($produk_harga_ins[$key][$value]);
  105. }
  106. }
  107. foreach( $produk_ins as $value ){
  108. $this->db->insert('produk', $value);
  109. }
  110. foreach( $produk_harga_ins as $value ){
  111. $this->db->insert('produk_harga', $value);
  112. }
  113. #print_r($produk_harga_ins);
  114. #print_r($produk_ins);
  115. exit;
  116. }
  117. function produkset(){
  118. $link= fopen("D:/format_produk.csv", "r");
  119. $buffer= fgets($link);
  120. $buffer= explode(";", trim($buffer));
  121. # Get Keys
  122. $keys= array();
  123. foreach( $buffer as $value ){
  124. $keys[]= trim($value);
  125. }
  126. # Combine key dengan data
  127. $getdata= array();
  128. if( $link ){
  129. while( !feof($link) ){
  130. $buffer= fgets($link);
  131. if( !empty($buffer) ){
  132. $buffer= trim($buffer);
  133. $buffer= explode(";", $buffer);
  134. if( count($keys) === count($buffer) ){
  135. $getdata[]= array_combine($keys, $buffer);
  136. }
  137. }
  138. }
  139. fclose($link);
  140. }
  141. unset($getdata[0]);
  142. $setfields= array("Category"=>"IdCategory", "Description"=>"Model", "Item_Number"=>"IdProduk",
  143. "Price"=>"Harga");
  144. $ct= 0;
  145. foreach( $getdata as $key=>$value ){
  146. foreach( $value as $subkey=>$subvalue ){
  147. $partdata= array();
  148. if( array_key_exists($subkey, $setfields) ){
  149. $idkey= $setfields[$subkey];
  150. if( ! empty($subvalue) ){
  151. $fixdata[$key][$idkey]= $subvalue;
  152. }
  153. }
  154. }
  155. }
  156. /*
  157. print_r($fixdata);
  158. echo "<br/>";
  159. echo count($fixdata);
  160. exit;
  161. */
  162. $AddUser= "admin";
  163. $AddDate= date("Y-m-d");
  164. foreach( $fixdata as $key=>$value ){
  165. foreach( $value as $subkey=>$subvalue ){
  166. if( $subkey == "Harga" ){
  167. $subvalue= str_replace(array(".", ",","(",")"), array("", ".", "", ""), $subvalue);
  168. }
  169. $produk_ins[$key][$subkey]= $subvalue;
  170. $produk_harga_ins[$key][$subkey]= $subvalue;
  171. }
  172. $toproduk= array("Garansi"=>0, "Type"=>"P", "AddUser"=>$AddUser, "AddDate"=>$AddDate);
  173. foreach( $toproduk as $field=>$field_value ){
  174. $produk_ins[$key][$field]= $field_value;
  175. }
  176. $toproduk_harga= array("IdMataUang"=>"IDR", "AddUser"=>$AddUser, "AddDate"=>$AddDate);
  177. foreach( $toproduk_harga as $field=>$field_value ){
  178. $produk_harga_ins[$key][$field]= $field_value;
  179. }
  180. unset($produk_ins[$key]['Harga']);
  181. $unsetharga= array("IdCategory", "Model", "Garansi", "Type");
  182. foreach( $unsetharga as $value ){
  183. unset($produk_harga_ins[$key][$value]);
  184. }
  185. }
  186. foreach( $produk_ins as $value ){
  187. $this->db->insert('produk', $value);
  188. }
  189. foreach( $produk_harga_ins as $value ){
  190. $this->db->insert('produk_harga', $value);
  191. }
  192. #print_r($produk_harga_ins);
  193. #print_r($produk_ins);
  194. exit;
  195. }
  196. function index(){
  197. $link= fopen("D:/format_produk.csv", "r");
  198. $buffer= fgets($link);
  199. $buffer= explode(";", trim($buffer));
  200. # Get Keys
  201. $keys= array();
  202. foreach( $buffer as $value ){
  203. $keys[]= trim($value);
  204. #echo $value . "<br/>";
  205. #echo $buffer . "<br/><br/>";
  206. }
  207. #echo count($keys) . "<br/>";
  208. # Combine key dengan data
  209. $getdata= array();
  210. if( $link ){
  211. while( !feof($link) ){
  212. $buffer= fgets($link);
  213. if( !empty($buffer) ){
  214. $buffer= trim($buffer);
  215. $buffer= explode(";", $buffer);
  216. #echo count($buffer) . "<br/>";
  217. if( count($keys) === count($buffer) ){
  218. $getdata[]= array_combine($keys, $buffer);
  219. }
  220. }
  221. /*
  222. foreach( $buffer as $value ){
  223. echo $value . "<br/>";
  224. array_combine($a, $b);
  225. }
  226. $keys= array('foo', 5, 10, 'bar');
  227. $a= array_fill_keys($keys, 'banana');
  228. */
  229. #echo $buffer . "<br/><br/>";
  230. }
  231. fclose($link);
  232. }
  233. unset($getdata[0]);
  234. /*
  235. $fields= $this->db->list_fields('konsumen');
  236. foreach( $fields as $field ){
  237. echo $field . "<br/>";
  238. }
  239. */
  240. #"propinsi"=>"IdRegion",
  241. // Change key
  242. $setfields= array("Category"=>"IdCategory", "Description"=>"Model", "Item_Number"=>"IdProduk",
  243. "Price"=>"Harga");
  244. #$fixdata= array();
  245. $ct= 0;
  246. foreach( $getdata as $key=>$value ){
  247. foreach( $value as $subkey=>$subvalue ){
  248. $partdata= array();
  249. if( array_key_exists($subkey, $setfields) ){
  250. #echo $subkey . ",";
  251. $idkey= $setfields[$subkey];
  252. if( ! empty($subvalue) ){
  253. $fixdata[$key][$idkey]= $subvalue;
  254. }
  255. #$fixdata[$ct][$idkey]= $subvalue;
  256. #echo $idkey . ", ";
  257. }
  258. }
  259. #echo "<br/>";
  260. /*
  261. $ct++;
  262. $fixdata[$key]['KonsumenStatus']= 0;
  263. $fixdata[$key]['IdNegara']= "ID";
  264. */
  265. #$comm_data= array_combine($keydata, $valdata);
  266. #$fixdata[]= $comm_data;
  267. #print_r($comm_data);
  268. #$fixdata[]= $comm_data;
  269. #array_co
  270. #echo "<br/>";
  271. }
  272. #print_r($getdata);
  273. /*
  274. print_r($fixdata);
  275. echo "<br/>";
  276. echo count($fixdata);
  277. exit;
  278. */
  279. /*
  280. print_r($fixdata);
  281. exit;
  282. */
  283. foreach( $fixdata as $key=>$value ){
  284. foreach( $value as $subkey=>$subvalue ){
  285. $beginval= array("P","L");
  286. $endval= array("0","1");
  287. $subvalue= ($subkey == "JenisKelamin") ? str_replace($beginval, $endval, $subvalue) : $subvalue;
  288. $insertdt[$key][$subkey]= $subvalue;
  289. #echo $subvalue . ",";
  290. }
  291. $insertdt[$key]['IdSapaan']= ( $insertdt[$key]['JenisKelamin'] == "1" ) ? "Mr" : "Mrs";
  292. $bulan= ( !empty($value['TanggalLahir2']) ) ? sprintf("%02s", $value['TanggalLahir2']) : $value['TanggalLahir2'];
  293. $insertdt[$key]['TanggalLahir']= $value['TanggalLahir3'] . "-" . $bulan . "-" . $value['TanggalLahir'];
  294. if( preg_match("#^0.+$#", $value['TelponRumah']) ){
  295. $value['TelponRumah']= substr($value['TelponRumah'], 1);
  296. $insertdt[$key]['TelponRumah']= "+62" . $value['TelponRumah'];
  297. }else{
  298. $insertdt[$key]['TelponRumah']= "+62" . $value['TelponRumah'];
  299. }
  300. if( preg_match("#^0.+$#", $value['NoHP']) ){
  301. $value['NoHP']= substr($value['NoHP'], 1);
  302. $insertdt[$key]['NoHP']= "+62" . $value['NoHP'];
  303. }else{
  304. $insertdt[$key]['NoHP']= "+62" . $value['NoHP'];
  305. }
  306. if( !empty($value['Agama']) ){
  307. $value['Agama']= strtolower($value['Agama']);
  308. if( preg_match("#^(islam|muslim)$#", $value['Agama']) ){
  309. $value['Agama']= "moslem";
  310. }
  311. if( $value['Agama'] == "kristen" ){
  312. $value['Agama']= "christian";
  313. }
  314. if( $value['Agama'] == "katholik" ){
  315. $value['Agama']= "catholic";
  316. }
  317. $this->db->select('IdAgama');
  318. $row=$this->db->get_where('m_agama', array('Agama'=>$value['Agama']))->row_array();
  319. $insertdt[$key]['IdAgama']= ( isset($row['IdAgama']) ) ? $row['IdAgama'] : "";
  320. }
  321. if( !empty($value['IdKota']) ){
  322. $this->db->select('IdKota');
  323. $row=$this->db->get_where('m_kota', array('NamaKota'=>$value['IdKota']))->row_array();
  324. $insertdt[$key]['IdKota']= ( isset($row['IdKota']) ) ? $row['IdKota'] : "";
  325. }
  326. if( !empty($value['Cabang']) ){
  327. $sql= "SELECT IdKlinik FROM klinik a
  328. INNER JOIN m_kota b ON a.IdKota= b.IdKota
  329. WHERE b.NamaKota='" . $value['Cabang'] . "'";
  330. $row= $this->db->query($sql)->row_array();
  331. #print_r($row);
  332. $insertdt[$key]['IdKlinik']= ( isset($row['IdKlinik']) ) ? $row['IdKlinik'] : "02001";
  333. }
  334. /*
  335. print_r($insertdt[$key]);
  336. echo "<br/><br/>";
  337. */
  338. #$query=$this->db->get_where('m_kota', array('IdKota'=>$value['IdKota']));
  339. }
  340. /*
  341. print_r($insertdt);
  342. exit;
  343. */
  344. foreach( $insertdt as $key=>$value ){
  345. if( ! empty($value['IdKlinik']) ){
  346. $value['IdKonsumen']= $this->Gmodel->getLastId($value['IdKlinik']);
  347. $insertdt[$key]['IdKonsumen']= $value['IdKonsumen'];
  348. }
  349. unset($value['Cabang'], $value['TanggalLahir2'], $value['TanggalLahir3'], $value['Agama'], $value['IdKlinik']);
  350. #if( ! empty($value['NamaAwal']) ){
  351. if( ! empty($value['IdKonsumen']) ){
  352. /*
  353. print_r($value);
  354. echo "<br/><br/>";*/
  355. $this->db->insert('konsumen2', $value);
  356. }
  357. print_r($value);
  358. echo "<br/><br/>";
  359. foreach( $value as $subkey=>$data ){
  360. }
  361. /*
  362. foreach( $value as $subkey=>$data ){
  363. #$subvalue
  364. $this->db->insert('konsumen2', $value);
  365. }
  366. */
  367. }
  368. exit;
  369. }
  370. function listfield(){
  371. $fields = $this->db->list_fields('konsumen');
  372. foreach ($fields as $field)
  373. {
  374. echo $field . "<br/>";;
  375. }
  376. }
  377. }
  378. ?>