Advertisement
dewthossapol

kawasumi_create_user_company

Oct 22nd, 2019
177
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 15.25 KB | None | 0 0
  1. from django.utils import timezone
  2. from duriancourse.models import Course, CourseBundle, Student, BundleStudent
  3. from durianuser.models import DurianUser
  4. from hr.models import Company, CompanyDepartment, CompanyUser, CourseEnroll, CourseBundleEnroll, TestTicketEnroll
  5. from simulations.models import PretestExamPackage, TestTicket
  6. company = Company.objects.get(slug="kawasumi")
  7. course_dict = {
  8.     "33": Course.objects.get(id=33),
  9.     "4": CourseBundle.objects.get(id=4)
  10. }
  11. package = PretestExamPackage.objects.get(id=3)
  12. dept_dict = {}
  13. for dept in ["A6A", "A6M", "A7", "A9", "W-K", "QC-K", "QC-N", "TS-K", "TS-N", "A3B", "W-N", "PUR-K", "PUR-N", "GA-K", "IT", "QA", "PE-K", "FIN", "GA-N", "LG"]:
  14.     company_dept = CompanyDepartment.objects.create(company=company, name=dept)
  15.     dept_dict[dept] = company_dept
  16. data_list = [{'code': 'k0860',
  17.   'employee_name': 'Ms. Kassarin Sriklang',
  18.   'dept': 'A6A',
  19.   'position': 'AF',
  20.   'course': 'c_33',
  21.   'pretest': None},
  22.  {'code': 'k0653',
  23.   'employee_name': 'Mrs. Bang-On Sonnam',
  24.   'dept': 'A6A',
  25.   'position': 'AGL',
  26.   'course': 'c_33',
  27.   'pretest': None},
  28.  {'code': 'k0046',
  29.   'employee_name': 'Ms. Chuanpit Duangchakam',
  30.   'dept': 'A6A',
  31.   'position': 'GL',
  32.   'course': 'c_33',
  33.   'pretest': None},
  34.  {'code': 'k0047',
  35.   'employee_name': 'Ms. Kannika Hongkamkaew',
  36.   'dept': 'A6A',
  37.   'position': 'GL',
  38.   'course': 'c_33',
  39.   'pretest': None},
  40.  {'code': 'k0626',
  41.   'employee_name': 'Mrs. Rungarun Dankratok',
  42.   'dept': 'A6A',
  43.   'position': 'GL',
  44.   'course': 'c_33',
  45.   'pretest': None},
  46.  {'code': 'k0465',
  47.   'employee_name': 'Mrs. Chiraporn Wansirisuk',
  48.   'dept': 'A6M',
  49.   'position': 'A2',
  50.   'course': 'c_33',
  51.   'pretest': None},
  52.  {'code': 'k0167',
  53.   'employee_name': 'Mrs. Preeyanut Hongthong',
  54.   'dept': 'A7',
  55.   'position': 'A1',
  56.   'course': 'c_33',
  57.   'pretest': None},
  58.  {'code': 'k0360',
  59.   'employee_name': 'Mrs. Pinchanat Ritphumraphee',
  60.   'dept': 'A7',
  61.   'position': 'F',
  62.   'course': 'c_33',
  63.   'pretest': None},
  64.  {'code': 'k0134',
  65.   'employee_name': 'Mr. Montree Garhan',
  66.   'dept': 'A9',
  67.   'position': 'A1',
  68.   'course': 'c_33',
  69.   'pretest': None},
  70.  {'code': 'k0169',
  71.   'employee_name': 'Mrs. Nantana Chainarong',
  72.   'dept': 'A9',
  73.   'position': 'A2',
  74.   'course': 'c_33',
  75.   'pretest': None},
  76.  {'code': 'k0466',
  77.   'employee_name': 'Ms. Phatcha Thongpoe',
  78.   'dept': 'W-K',
  79.   'position': 'A2',
  80.   'course': 'c_33',
  81.   'pretest': None},
  82.  {'code': 'a0441',
  83.   'employee_name': 'Mrs. Supawadee Tubyai',
  84.   'dept': 'QC-K',
  85.   'position': 'A2',
  86.   'course': 'c_33',
  87.   'pretest': None},
  88.  {'code': 'a1066',
  89.   'employee_name': 'Mrs. Noknoi Yiamchanthuek',
  90.   'dept': 'QC-K',
  91.   'position': 'F',
  92.   'course': 'c_33',
  93.   'pretest': None},
  94.  {'code': 'k0064',
  95.   'employee_name': 'Mrs. Puntip Munglayklang',
  96.   'dept': 'QC-K',
  97.   'position': 'F',
  98.   'course': 'c_33',
  99.   'pretest': None},
  100.  {'code': 'a0519',
  101.   'employee_name': 'Mrs. Arporn Boonmaung',
  102.   'dept': 'QC-N',
  103.   'position': 'A1',
  104.   'course': 'c_33',
  105.   'pretest': None},
  106.  {'code': 'a0602',
  107.   'employee_name': 'Mrs. Somporn Wongsiri',
  108.   'dept': 'QC-N',
  109.   'position': 'A2',
  110.   'course': 'c_33',
  111.   'pretest': None},
  112.  {'code': 'a0873',
  113.   'employee_name': 'Mrs. Onuma Kongnuy',
  114.   'dept': 'QC-N',
  115.   'position': 'A2',
  116.   'course': 'c_33',
  117.   'pretest': None},
  118.  {'code': 'a1002',
  119.   'employee_name': 'Ms. Pattha Kaewnaphan',
  120.   'dept': 'QC-N',
  121.   'position': 'A2',
  122.   'course': 'c_33',
  123.   'pretest': None},
  124.  {'code': 'a1919',
  125.   'employee_name': 'Mr. Phanroeng Anchaisree',
  126.   'dept': 'QC-N',
  127.   'position': 'A2',
  128.   'course': 'c_33',
  129.   'pretest': None},
  130.  {'code': 'a2163',
  131.   'employee_name': 'Ms. Waraporn Sai-deang',
  132.   'dept': 'QC-N',
  133.   'position': 'A2',
  134.   'course': 'c_33',
  135.   'pretest': None},
  136.  {'code': 'a2166',
  137.   'employee_name': 'Ms.  Nuanhong  Rangubpai',
  138.   'dept': 'QC-N',
  139.   'position': 'A2',
  140.   'course': 'c_33',
  141.   'pretest': None},
  142.  {'code': 'a0975',
  143.   'employee_name': 'Ms. Chayanis Kongkachaeun',
  144.   'dept': 'QC-N',
  145.   'position': 'F',
  146.   'course': 'c_33',
  147.   'pretest': None},
  148.  {'code': 'a1019',
  149.   'employee_name': 'Mrs. Weerawan Kulabud',
  150.   'dept': 'QC-N',
  151.   'position': 'F',
  152.   'course': 'c_33',
  153.   'pretest': None},
  154.  {'code': 'a1293',
  155.   'employee_name': 'Ms. Pranee Anchaisee',
  156.   'dept': 'QC-N',
  157.   'position': 'F',
  158.   'course': 'c_33',
  159.   'pretest': None},
  160.  {'code': 'k0755',
  161.   'employee_name': 'Ms. Jenjira Kamolvisit',
  162.   'dept': 'TS-K',
  163.   'position': 'A2',
  164.   'course': 'c_33',
  165.   'pretest': None},
  166.  {'code': 'k0779',
  167.   'employee_name': 'Ms. Jidapha Thongsit',
  168.   'dept': 'TS-K',
  169.   'position': 'A2',
  170.   'course': 'c_33',
  171.   'pretest': None},
  172.  {'code': 'a1654',
  173.   'employee_name': 'Mrs. Wimol Hongsibsong',
  174.   'dept': 'TS-N',
  175.   'position': 'A2',
  176.   'course': 'c_33',
  177.   'pretest': None},
  178.  {'code': 'a0347',
  179.   'employee_name': 'Ms. Patcharin Chantavee',
  180.   'dept': 'A3B',
  181.   'position': 'A1',
  182.   'course': 'c_33',
  183.   'pretest': None},
  184.  {'code': 'a1478',
  185.   'employee_name': 'Ms. Nittaya Gladpom',
  186.   'dept': 'A3B',
  187.   'position': 'A1',
  188.   'course': 'c_33',
  189.   'pretest': None},
  190.  {'code': 'a0695',
  191.   'employee_name': 'Mrs. Kuttaleeya Wongjantaramanee',
  192.   'dept': 'A3B',
  193.   'position': 'A1',
  194.   'course': 'c_33',
  195.   'pretest': None},
  196.  {'code': 'a1868',
  197.   'employee_name': 'Mr. Suranai Ongsopha',
  198.   'dept': 'A3B',
  199.   'position': 'A2',
  200.   'course': 'c_33',
  201.   'pretest': None},
  202.  {'code': 'a1322',
  203.   'employee_name': 'Mr. Manop Pakwitee',
  204.   'dept': 'A3B',
  205.   'position': 'A2',
  206.   'course': 'c_33',
  207.   'pretest': None},
  208.  {'code': 'a0488',
  209.   'employee_name': 'Mrs. Benjawan Prawjangjit',
  210.   'dept': 'A3B',
  211.   'position': 'A2',
  212.   'course': 'c_33',
  213.   'pretest': None},
  214.  {'code': 'a1757',
  215.   'employee_name': 'Mrs. Suda Suntronsanit',
  216.   'dept': 'A3B',
  217.   'position': 'A2',
  218.   'course': 'c_33',
  219.   'pretest': None},
  220.  {'code': 'a0641',
  221.   'employee_name': 'Mrs. Rampaiporn Kongsomkaew',
  222.   'dept': 'A3B',
  223.   'position': 'A2',
  224.   'course': 'c_33',
  225.   'pretest': None},
  226.  {'code': 'a0826',
  227.   'employee_name': 'Mrs. Wasana Tapaengpan',
  228.   'dept': 'A3B',
  229.   'position': 'GL',
  230.   'course': 'c_33',
  231.   'pretest': None},
  232.  {'code': 'a0681',
  233.   'employee_name': 'Mrs. Wanlapa Prasret',
  234.   'dept': 'A3B',
  235.   'position': 'GL',
  236.   'course': 'c_33',
  237.   'pretest': None},
  238.  {'code': 'a1164',
  239.   'employee_name': 'Mrs. Prapaipan Sornsa',
  240.   'dept': 'A3B',
  241.   'position': 'GL',
  242.   'course': 'c_33',
  243.   'pretest': None},
  244.  {'code': 'a1880',
  245.   'employee_name': 'Mrs. Nampueng Thongkam',
  246.   'dept': 'A3B',
  247.   'position': 'GL',
  248.   'course': 'c_33',
  249.   'pretest': None},
  250.  {'code': 'a1609',
  251.   'employee_name': 'Mrs. Choosri Tamsamak',
  252.   'dept': 'A3B',
  253.   'position': 'GL',
  254.   'course': 'c_33',
  255.   'pretest': None},
  256.  {'code': 'a1264',
  257.   'employee_name': 'Ms. Sirirat Rakthong',
  258.   'dept': 'A3B',
  259.   'position': 'GL',
  260.   'course': 'c_33',
  261.   'pretest': None},
  262.  {'code': 'a1679',
  263.   'employee_name': 'Mr. Weerayut Hunphoo',
  264.   'dept': 'A3B',
  265.   'position': 'M3',
  266.   'course': 'c_33',
  267.   'pretest': None},
  268.  {'code': 'a1004',
  269.   'employee_name': 'Mrs. Oumjit Chaidech',
  270.   'dept': 'W-N',
  271.   'position': 'GL',
  272.   'course': 'c_33',
  273.   'pretest': None},
  274.  {'code': 'k0573',
  275.   'employee_name': 'Ms. Supaporn Tiabtaw',
  276.   'dept': 'PUR-K',
  277.   'position': 'A1',
  278.   'course': 'c_33',
  279.   'pretest': None},
  280.  {'code': 'k0838',
  281.   'employee_name': 'Ms. Natthawan Thinkoksoong',
  282.   'dept': 'PUR-K',
  283.   'position': 'A2',
  284.   'course': 'c_33',
  285.   'pretest': None},
  286.  {'code': 'k0558',
  287.   'employee_name': 'Ms. Nalinee Outaisiriyard',
  288.   'dept': 'PUR-K',
  289.   'position': 'F',
  290.   'course': 'c_33',
  291.   'pretest': None},
  292.  {'code': 'a2182',
  293.   'employee_name': 'Ms. Aonuma Aunthapanya',
  294.   'dept': 'PUR-N',
  295.   'position': 'A2',
  296.   'course': 'c_33',
  297.   'pretest': None},
  298.  {'code': 'a2185',
  299.   'employee_name': 'Ms. Ramrada Kunthianpradit',
  300.   'dept': 'PUR-N',
  301.   'position': 'A2',
  302.   'course': 'c_33',
  303.   'pretest': None},
  304.  {'code': 'a2177',
  305.   'employee_name': 'Ms. Orawan Panyosri',
  306.   'dept': 'PUR-N',
  307.   'position': 'F',
  308.   'course': 'c_33',
  309.   'pretest': None},
  310.  {'code': 'k0672',
  311.   'employee_name': 'Ms. Narumon Uttamung',
  312.   'dept': 'GA-K',
  313.   'position': 'A2',
  314.   'course': 'c_33',
  315.   'pretest': None},
  316.  {'code': 'k0837',
  317.   'employee_name': 'Ms. Vorrarak Jitnuphong',
  318.   'dept': 'GA-K',
  319.   'position': 'A2',
  320.   'course': 'c_33',
  321.   'pretest': None},
  322.  {'code': 'k0777',
  323.   'employee_name': 'Mr. Patarapon Tantiwong',
  324.   'dept': 'IT',
  325.   'position': 'A2',
  326.   'course': 'c_33',
  327.   'pretest': None},
  328.  {'code': 'a1053',
  329.   'employee_name': 'Ms. Yupin Narongmee',
  330.   'dept': 'QA',
  331.   'position': 'F',
  332.   'course': 'c_33',
  333.   'pretest': None},
  334.  {'code': 'k0236',
  335.   'employee_name': 'Ms. Sukanya Chaiyaruk',
  336.   'dept': 'A6A',
  337.   'position': 'M3',
  338.   'course': 'b_4',
  339.   'pretest': 3},
  340.  {'code': 'k0274',
  341.   'employee_name': 'Ms. Ratchasrima Chathipa',
  342.   'dept': 'A7',
  343.   'position': 'A1',
  344.   'course': 'b_4',
  345.   'pretest': 3},
  346.  {'code': 'k0778',
  347.   'employee_name': 'Ms. Wanida Sakharet',
  348.   'dept': 'A7',
  349.   'position': 'A2',
  350.   'course': 'b_4',
  351.   'pretest': 3},
  352.  {'code': 'k0799',
  353.   'employee_name': 'Mr. Thanaphot Ruenpakrab',
  354.   'dept': 'A7',
  355.   'position': 'A2',
  356.   'course': 'b_4',
  357.   'pretest': 3},
  358.  {'code': 'k0272',
  359.   'employee_name': 'Ms. Kedchayawan Singhputtaraksa',
  360.   'dept': 'A7',
  361.   'position': 'M3',
  362.   'course': 'b_4',
  363.   'pretest': 3},
  364.  {'code': 'k0231',
  365.   'employee_name': 'Mr. Chaiphad Chalomklang',
  366.   'dept': 'A9',
  367.   'position': 'M1',
  368.   'course': 'b_4',
  369.   'pretest': 3},
  370.  {'code': 'k0257',
  371.   'employee_name': 'Mrs. Naphasawan Aramsri',
  372.   'dept': 'PE-K',
  373.   'position': 'A1',
  374.   'course': 'b_4',
  375.   'pretest': 3},
  376.  {'code': 'k0389',
  377.   'employee_name': 'Mr. Nattapon Luepongpattana',
  378.   'dept': 'PE-K',
  379.   'position': 'A1',
  380.   'course': 'b_4',
  381.   'pretest': 3},
  382.  {'code': 'k0486',
  383.   'employee_name': 'Mr. Phatchanasith Supanklang',
  384.   'dept': 'PE-K',
  385.   'position': 'A1',
  386.   'course': 'b_4',
  387.   'pretest': 3},
  388.  {'code': 'a1184',
  389.   'employee_name': 'Mrs. Nutnicha Onma',
  390.   'dept': 'W-K',
  391.   'position': 'A1',
  392.   'course': 'b_4',
  393.   'pretest': 3},
  394.  {'code': 'k0756',
  395.   'employee_name': 'Ms. Prakaikaew Yodbunok',
  396.   'dept': 'W-K',
  397.   'position': 'A2',
  398.   'course': 'b_4',
  399.   'pretest': 3},
  400.  {'code': 'k0798',
  401.   'employee_name': 'Mr. Khomkrit Sankhumkaew',
  402.   'dept': 'W-K',
  403.   'position': 'A2',
  404.   'course': 'b_4',
  405.   'pretest': 3},
  406.  {'code': 'a0871',
  407.   'employee_name': 'Mrs. Pranee Kowphattanakit',
  408.   'dept': 'QC-K',
  409.   'position': 'A1',
  410.   'course': 'b_4',
  411.   'pretest': 3},
  412.  {'code': 'k0822',
  413.   'employee_name': 'Ms. Suwarak Chinjoho',
  414.   'dept': 'QC-K',
  415.   'position': 'A2',
  416.   'course': 'b_4',
  417.   'pretest': 3},
  418.  {'code': 'k0823',
  419.   'employee_name': 'Ms. Rungruedee Saejoho',
  420.   'dept': 'QC-K',
  421.   'position': 'A2',
  422.   'course': 'b_4',
  423.   'pretest': 3},
  424.  {'code': 'a0320',
  425.   'employee_name': 'Mrs. Renu Palasak',
  426.   'dept': 'QC-K',
  427.   'position': 'M3',
  428.   'course': 'b_4',
  429.   'pretest': 3},
  430.  {'code': 'a0708',
  431.   'employee_name': 'Mrs. Wilavun Panachan',
  432.   'dept': 'QC-K',
  433.   'position': 'M3',
  434.   'course': 'b_4',
  435.   'pretest': 3},
  436.  {'code': 'k0733',
  437.   'employee_name': 'Ms. Pornchanida Chinjantuek',
  438.   'dept': 'TS-K',
  439.   'position': 'A1',
  440.   'course': 'b_4',
  441.   'pretest': 3},
  442.  {'code': 'a1133',
  443.   'employee_name': 'Ms. Tippanom Tinno',
  444.   'dept': 'TS-N',
  445.   'position': 'A2',
  446.   'course': 'b_4',
  447.   'pretest': 3},
  448.  {'code': 'k0684',
  449.   'employee_name': 'Mrs. Sirisuda Kraisorn',
  450.   'dept': 'PUR-K',
  451.   'position': 'M2',
  452.   'course': 'b_4',
  453.   'pretest': 3},
  454.  {'code': 'k0797',
  455.   'employee_name': 'Ms. Arisa Ludckonburi',
  456.   'dept': 'FIN',
  457.   'position': 'A2',
  458.   'course': 'b_4',
  459.   'pretest': 3},
  460.  {'code': 'a1704',
  461.   'employee_name': 'Ms. Ratchanee Chanyingyong',
  462.   'dept': 'FIN',
  463.   'position': 'M1',
  464.   'course': 'b_4',
  465.   'pretest': 3},
  466.  {'code': 'a2131',
  467.   'employee_name': 'Ms. Kannika Kobthong',
  468.   'dept': 'FIN',
  469.   'position': 'M3',
  470.   'course': 'b_4',
  471.   'pretest': 3},
  472.  {'code': 'a1298',
  473.   'employee_name': 'Mr. Pattanapong Hukhan',
  474.   'dept': 'FIN',
  475.   'position': 'E2',
  476.   'course': 'b_4',
  477.   'pretest': 3},
  478.  {'code': 'a1682',
  479.   'employee_name': 'Ms. Rossarin Sukem',
  480.   'dept': 'FIN',
  481.   'position': 'M3',
  482.   'course': 'b_4',
  483.   'pretest': 3},
  484.  {'code': 'a0444',
  485.   'employee_name': 'Mrs. Chanya Nongnuch',
  486.   'dept': 'GA-K',
  487.   'position': 'M2',
  488.   'course': 'b_4',
  489.   'pretest': 3},
  490.  {'code': 'k0683',
  491.   'employee_name': 'Ms. Chudapa Srikaew',
  492.   'dept': 'GA-K',
  493.   'position': 'M3',
  494.   'course': 'b_4',
  495.   'pretest': 3},
  496.  {'code': 'a0281',
  497.   'employee_name': 'Mrs. Phimwalan Khuanpan',
  498.   'dept': 'GA-N',
  499.   'position': 'A1',
  500.   'course': 'b_4',
  501.   'pretest': 3},
  502.  {'code': 'a2119',
  503.   'employee_name': 'Ms. Chabaprai Dowvadung',
  504.   'dept': 'GA-N',
  505.   'position': 'M3',
  506.   'course': 'b_4',
  507.   'pretest': 3},
  508.  {'code': 'a2151',
  509.   'employee_name': 'Ms. Soawalak Subkha',
  510.   'dept': 'IT',
  511.   'position': 'A2',
  512.   'course': 'b_4',
  513.   'pretest': 3},
  514.  {'code': 'a2015',
  515.   'employee_name': 'Mr. Nuttakit Jaiboon',
  516.   'dept': 'IT',
  517.   'position': 'M2',
  518.   'course': 'b_4',
  519.   'pretest': 3},
  520.  {'code': 'a2181',
  521.   'employee_name': 'Ms. Tanaporn Arunsri',
  522.   'dept': 'LG',
  523.   'position': 'A2',
  524.   'course': 'b_4',
  525.   'pretest': 3},
  526.  {'code': 'a2146',
  527.   'employee_name': 'Ms. Ms.Siriporn Noiwong',
  528.   'dept': 'LG',
  529.   'position': 'M3',
  530.   'course': 'b_4',
  531.   'pretest': 3},
  532.  {'code': 'a2106',
  533.   'employee_name': 'Ms. Anussara Timkhiew',
  534.   'dept': 'QA',
  535.   'position': 'A1',
  536.   'course': 'b_4',
  537.   'pretest': 3},
  538.  {'code': 'a1217',
  539.   'employee_name': 'Mrs. Suwanna Jamwong',
  540.   'dept': 'QA',
  541.   'position': 'M1',
  542.   'course': 'b_4',
  543.   'pretest': 3},
  544.  {'code': 'a1213',
  545.   'employee_name': 'Mrs. Umaporn Jaisamak',
  546.   'dept': 'QA',
  547.   'position': 'M3',
  548.   'course': 'b_4',
  549.   'pretest': 3}]
  550. user_list = []
  551. now = timezone.now()
  552. for data in data_list:
  553.     code = data["code"]
  554.     username = "kawasumi" + code
  555.     password = DurianUser.generate_test_password()
  556.     user_list.append({"username": username, "password": password})
  557.     user = DurianUser.objects.create_user(username=username, password=password, full_name=data["employee_name"], is_from_gen_bulk=True)
  558.     company_user = CompanyUser.objects.create(user=user, company=company, department=dept_dict[data["dept"]], position=data["position"], activate_date=now, employee_code=code.upper())
  559.     course, course_id = data["course"].split("_")
  560.     if course == "c":
  561.         course = course_dict[course_id]
  562.         student = Student.objects.create(user=user, course=course, semester=course.current_semester, reset_left=course.reset_quota, bandwidth_limit=course.bandwidth_limit, full_name=data["employee_name"])
  563.         student.activate(is_generate=True, is_from_gen_bulk=True)
  564.         course_enroll = CourseEnroll.objects.create(company_user=company_user, student=student, course=course, enroll_datetime=now)
  565.     else:
  566.         course = course_dict[course_id]
  567.         student = BundleStudent.objects.create(user=user, course_bundle=course, full_name=data["employee_name"])
  568.         student.activate(is_generate=True, is_from_gen_bulk=True)
  569.         course_enroll = CourseBundleEnroll.objects.create(company_user=company_user, student=student, course_bundle=course, enroll_datetime=now)
  570.     package_id = data["pretest"]
  571.     if package_id:
  572.         testticket = TestTicket.objects.create(user=user, package=package, full_name=data["employee_name"])
  573.         testticket.activate()
  574.         test_ticket_enroll = TestTicketEnroll.objects.create(company_user=company_user, test_ticket=testticket, enroll_datetime=now)
  575. print user_list
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement