Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 860
0.00% covered (danger)
0.00%
0 / 58
CRAP
0.00% covered (danger)
0.00%
0 / 1
Promotion_test
0.00% covered (danger)
0.00%
0 / 860
0.00% covered (danger)
0.00%
0 / 58
3540
0.00% covered (danger)
0.00%
0 / 1
 __construct
n/a
0 / 0
n/a
0 / 0
1
 test_PMT1_เข้าหน้าindex
0.00% covered (danger)
0.00%
0 / 7
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMT2_เข้าหน้าList
0.00% covered (danger)
0.00%
0 / 7
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMT5_ตารางแสดงข้อมูลแบบค้นหาด้วยสถานะใช้งานและชื่อสาขาจากช่องค้นหา
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMT6_ตารางแสดงข้อมูลแบบค้นหาด้วยสถานะใช้งานและเลขที่เอกสารจากช่องค้นหา
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMT7_ตารางแสดงข้อมูลแบบค้นหาด้วยชื่อโปรโมชันจากช่องค้นหา
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMT11_ตารางแสดงข้อมูลแบบกรองข้อมูลทุกฟิลด์
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMT13_ตารางแสดงข้อมูลแบบค้นหาด้วยสถานะใช้งานและชื่อสาขาจากช่องค้นหาPage2
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMT14_เข้าหน้าจอเพิ่มข้อมูลโปรโมชัน
0.00% covered (danger)
0.00%
0 / 7
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMT15_เพิ่มข้อมูลโปรโมชันแบบสร้างเลขที่เอกสารอัตโนมัติ
0.00% covered (danger)
0.00%
0 / 73
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMT16_เพิ่มข้อมูลโปรโมชันแบบสร้างเลขที่เอกสารเอง
0.00% covered (danger)
0.00%
0 / 74
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMT18_ตรวจสอบว่าเลขที่เอกสารไม่ซ้ำ
0.00% covered (danger)
0.00%
0 / 11
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMT19_เข้าหน้าจอแก้ไขข้อมูลโปรโมชัน
0.00% covered (danger)
0.00%
0 / 11
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMT24_ลบเอกสารโปรโมชันแบบSingle
0.00% covered (danger)
0.00%
0 / 11
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMT25_ลบเอกสารโปรโมชันแบบMultiple
0.00% covered (danger)
0.00%
0 / 11
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt2_1_แสดงชื่อกลุ่มซื้อโปรโมชัน
0.00% covered (danger)
0.00%
0 / 11
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt2_2_แสดงชื่อกลุ่มรับโปรโมชัน
0.00% covered (danger)
0.00%
0 / 11
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt2_3_แสดงชื่อกลุ่มร่วมรายการ
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_1_ตารางแสดงข้อมูลเงื่อนไขกลุ่มซื้อ
0.00% covered (danger)
0.00%
0 / 14
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_2_เพิ่มข้อมูลเงื่อนไขกลุ่มซื้อในtmp
0.00% covered (danger)
0.00%
0 / 14
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_3_แก้ไขข้อมูลเงื่อนไขกลุ่มซื้อในtmp
0.00% covered (danger)
0.00%
0 / 17
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_4_ลบข้อมูลเงื่อนไขพิเศษกลุ่มราคาในtmp
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_5_ตารางแสดงข้อมูลเงื่อนไขรับสิทธิ์กลุ่มรับโปรโมชัน
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_6_เพิ่มข้อมูลเงื่อนไขรับสิทธิ์กลุ่มรับโปรโมชันในtmp
0.00% covered (danger)
0.00%
0 / 16
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_8_แก้ไขข้อมูลเงื่อนไขรับสิทธิ์กลุ่มคำนวณโปรโมชันโปรโมชันในtmp
0.00% covered (danger)
0.00%
0 / 11
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_9_ลบข้อมูลเงื่อนไขรับสิทธิ์กลุ่มรับโปรโมชันในtmp
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_10_เคลียร์ข้อมูลเงื่อนไขรับสิทธิ์กลุ่มรับโปรโมชันในtmp
0.00% covered (danger)
0.00%
0 / 11
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_11_ตารางแสดงข้อมูลเงื่อนไขกลุ่มซื้อ_รับโปรโมชัน
0.00% covered (danger)
0.00%
0 / 14
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_12_เพิ่มข้อมูลเงื่อนไขกลุ่มซื้อ_รับโปรโมชันในtmp
0.00% covered (danger)
0.00%
0 / 16
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_13_ลบข้อมูลเงื่อนไขกลุ่มซื้อ_รับโปรโมชันในtmp
0.00% covered (danger)
0.00%
0 / 12
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_14_ตารางแสดงข้อมูลเงื่อนไขรับสิทธิประโยชน์คูปอง
0.00% covered (danger)
0.00%
0 / 11
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_15_เพิ่มหรือแก้ไขข้อมูลเงื่อนไขกลุ่มรับสิทธิประโยชน์คูปองแบบคูปองในtmp
0.00% covered (danger)
0.00%
0 / 15
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_16_เพิ่มหรือแก้ไขข้อมูลเงื่อนไขกลุ่มรับสิทธิประโยชน์คูปองแบบข้อความในtmp
0.00% covered (danger)
0.00%
0 / 15
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_17_ลบข้อมูลเงื่อนไขรับสิทธิประโยชน์คูปองในtmp
0.00% covered (danger)
0.00%
0 / 11
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_18_ตารางแสดงข้อมูลเงื่อนไขรับสิทธิประโยชน์แต้ม
0.00% covered (danger)
0.00%
0 / 11
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_19_เพิ่มหรือแก้ไขข้อมูลเงื่อนไขกลุ่มรับสิทธิประโยชน์แต้มแบบครบมูลค่าในtmp
0.00% covered (danger)
0.00%
0 / 15
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_20_เพิ่มหรือแก้ไขข้อมูลเงื่อนไขกลุ่มรับสิทธิประโยชน์แต้มแบบครบจำนวนในtmp
0.00% covered (danger)
0.00%
0 / 15
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt3_21_ลบข้อมูลเงื่อนไขรับสิทธิประโยชน์แต้มในtmp
0.00% covered (danger)
0.00%
0 / 11
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_2_เพิ่มข้อมูลเงื่อนไขพิเศษกลุ่มราคาในtmp
0.00% covered (danger)
0.00%
0 / 12
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_3_แก้ไขข้อมูลเงื่อนไขพิเศษกลุ่มราคาในtmp
0.00% covered (danger)
0.00%
0 / 14
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_4_ลบข้อมูลเงื่อนไขพิเศษกลุ่มราคาในtmp
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_6_เพิ่มข้อมูลเงื่อนไขพิเศษสาขาเฉพาะตัวแทนขายในtmp
0.00% covered (danger)
0.00%
0 / 14
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_7_เพิ่มข้อมูลเงื่อนไขพิเศษสาขาเฉพาะสาขาในtmp
0.00% covered (danger)
0.00%
0 / 14
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_8_เพิ่มข้อมูลเงื่อนไขพิเศษสาขาระบุตัวแทนขายและสาขาในtmp
0.00% covered (danger)
0.00%
0 / 14
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_9_แก้ไขข้อมูลเงื่อนไขพิเศษสาขาในtmp
0.00% covered (danger)
0.00%
0 / 16
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_10_ลบข้อมูลเงื่อนไขพิเศษสาขาในtmp
0.00% covered (danger)
0.00%
0 / 15
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_12_เพิ่มข้อมูลเงื่อนไขพิเศษช่องทางการขายในtmp
0.00% covered (danger)
0.00%
0 / 12
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_13_แก้ไขข้อมูลเงื่อนไขพิเศษช่องทางการขายในtmp
0.00% covered (danger)
0.00%
0 / 14
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_14_ลบข้อมูลเงื่อนไขพิเศษช่องทางการขายในtmp
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_16_เพิ่มข้อมูลเงื่อนไขพิเศษประเภทการชำระเงินในtmp
0.00% covered (danger)
0.00%
0 / 12
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_17_แก้ไขข้อมูลเงื่อนไขพิเศษประเภทการชำระเงินในtmp
0.00% covered (danger)
0.00%
0 / 14
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_18_ลบข้อมูลเงื่อนไขพิเศษประเภทการชำระเงินในtmp
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_20_เพิ่มข้อมูลเงื่อนไขพิเศษประเภทลูกค้าในtmp
0.00% covered (danger)
0.00%
0 / 12
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_21_แก้ไขข้อมูลเงื่อนไขพิเศษประเภทลูกค้าในtmp
0.00% covered (danger)
0.00%
0 / 14
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_22_ลบข้อมูลเงื่อนไขพิเศษประเภทลูกค้าในtmp
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_23_ตารางแสดงข้อมูลเงื่อนไขพิเศษโปรโมชันซ้อน
0.00% covered (danger)
0.00%
0 / 12
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_24_เพิ่มข้อมูลเงื่อนไขพิเศษประเภทโปรโมรชันซ้อนในtmp
0.00% covered (danger)
0.00%
0 / 12
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_25_แก้ไขข้อมูลเงื่อนไขพิเศษประเภทโปรโมชันซ้อนในtmp
0.00% covered (danger)
0.00%
0 / 14
0.00% covered (danger)
0.00%
0 / 1
2
 test_PMTSt4_26_ลบข้อมูลเงื่อนไขพิเศษประเภทโปรโมชันซ้อนในtmp
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2/**
3 * Part of ci-phpunit-test
4 *
5 * @author     Kenji Suzuki <https://github.com/kenjis>
6 * @license    MIT License
7 * @copyright  2015 Kenji Suzuki
8 * @link       https://github.com/kenjis/ci-phpunit-test
9 */
10
11 class Promotion_test extends TestCase
12{
13    /**
14     * @codeCoverageIgnore
15     */
16    public function __construct() {
17        parent::__construct();
18        $ci = &get_instance();
19        $ci->load->database();
20        $ci->load->helper('validator_helper');
21        $this->code = substr(md5(uniqid(mt_rand(), true)), 0, 5);
22        $_SESSION =array (
23            '__ci_last_regenerate' => 1674475513,
24            'lang' => 'th',
25            'tLangID' => 1,
26            'tSesUserLogin' => '009',
27            'tSesUsrRoleCodeMulti' => '\'00002\'',
28            'nSesUsrRoleLevel' => 99,
29            'tSesUsrAgnCode' => NULL,
30            'tSesUsrAgnName' => NULL,
31            'tSesUsrMerCode' => NULL,
32            'tSesUsrMeclsrName' => NULL,
33            'tSesUsrBchCodeDefault' => '00001',
34            'tSesUsrBchNameDefault' => 'AdaSoft00001',
35            'tSesUsrBchCodeMulti' => '\'00001\'',
36            'tSesUsrBchNameMulti' => '\'AdaSoft00001\'',
37            'nSesUsrBchCount' => 0,
38            'tSesUsrShpCodeDefault' => '00014',
39            'tSesUsrShpNameDefault' => 'รันไทม์ช็อป',
40            'tSesUsrShpCodeMulti' => '\'00014\'',
41            'tSesUsrShpNameMulti' => '\'รันไทม์ช็อป\'',
42            'nSesUsrShpCount' => 0,
43            'tSesUsrWahCode' => '00001',
44            'tSesUsrWahName' => 'คลังขาย',
45            'tSesUsrLoginLevel' => 'HQ',
46            'tSesUsrLoginAgency' => 0,
47            'bSesLogIn' => 1,
48            'tSesUserCode' => '00002',
49            'tSesUsername' => '00002',
50            'tSesUsrDptName' => NULL,
51            'tSesUsrDptCode' => NULL,
52            'tSesUsrUsername' => 'Adasoft',
53            'tSesUsrImagePerson' => NULL,
54            'tSesUsrInfo' => array (
55              'FTUsrStaActive' => 1,
56              'FTUsrLogType' => 1,
57              'FTStaError' => 0,
58              'FTUsrCode' => '00002',
59              'FTUsrName' => 'Adasoft',
60              'FTDptCode' => NULL,
61              'FTDptName' => NULL,
62              'FTImgObj' => NULL,
63            ),
64            'tSesUsrGroup' => array (
65              0 => array (
66                'FTUsrCode' => '00002',
67                'FTAgnCode' => NULL,
68                'FTAgnName' => NULL,
69                'FTBchCode' => NULL,
70                'FTBchName' => NULL,
71                'FTShpCode' => NULL,
72                'FTShpName' => NULL,
73                'FTMerCode' => NULL,
74                'FTMerName' => NULL,
75                'FTWahCode' => NULL,
76                'FTWahName' => NULL,
77                'FTLoginLevel' => 'HQ',
78                'FTStaLoginAgn' => 0,
79              ),
80            ),
81            //'tSesSessionID' => '0000220230123185822',
82            'tSesSessionID' => '0000220230301232726',
83            'tSesSessionDate' => '2023-01-23 18:58:22',
84            'tLangEdit' => 1,
85            'bIsHaveAgn' => NULL,
86            'tSesUsrLevel' => 'HQ',
87            'tSesUsrRoleSpcCodeMulti' => '\'00002\',\'00003\',\'00004\',\'00005\',\'00006\',\'00007\',\'00008\',\'00009\',\'00010\',\'00011\',\'00012\',\'00013\',\'00014\',\'00016\',\'00017\',\'00018\',\'00019\',\'00020\',\'00021\',\'00022\',\'00023\',\'00024\',\'00025\',\'00026\',\'00027\',\'00028\',\'00029\',\'00030\',\'00031\',\'00032\',\'00033\',\'00034\',\'00035\',\'00036\',\'00037\',\'00038\'',
88            'bShpEnabled' => 1,
89            'bAgnEnabled' => 1,
90            'bLockerEnabled' => NULL,
91            'bPdtFasionEnabled' => NULL,
92            'tSesHQBchCode' => '00001',
93            'bSesRegStaLicense' => 1,
94            'tSesCstKey' => '52a8a4705e6c',
95            'bSesRegStaBuyPackage' => 1,
96        );
97    }
98
99    // public function test_สามารถระบุมูลค่าจำนวนเป็นแบบมีค่าจุดทศนิยมได้ในเงื่อนไขกลุ่มรับ(){
100    //     print 'test_สามารถระบุมูลค่าจำนวนเป็นแบบมีค่าจุดทศนิยมได้ในเงื่อนไขกลุ่มรับ';
101    //     $aParam = array(
102    //         'tBchCode' => '00001',
103    //         'tConditionBuyIsRange' => 'false',
104    //         'tStaGrpPriorityIsPriceGroup' => 'false',
105    //         'tGroupNameInGet' => 'ทดสอบ',
106    //         'tPbyStaBuyCond' => '1',
107    //         'bIsAlwPmtDisAvg' => 'true',
108    //       );
109    //     $oOutput = $this->request(
110    //         'POST',
111    //         'document/promotion/cPromotionStep3PmtCG/FSaCPromotionInsertPmtCGToTmp',
112    //         $aParam
113    //     );
114    //     $aParam = array(
115    //         'tPgtStaGetType' => '1',
116    //         'tPgtGetvalue' => '15.25',
117    //         'tPgtPerAvgDisCG' => '0.00',
118    //         'tPgtGetQty' => '1.00',
119    //         'nSeqNo' => '1',
120    //         'tFieldName' => 'FCPgtGetvalue',
121    //         'tFormatType' => 'C',
122    //       );
123    //     $oOutput = $this->request(
124    //         'POST',
125    //         'document/promotion/cPromotionStep3PmtCG/FSxCPromotionUpdatePmtCGInTmp',
126    //         $aParam
127    //     );
128    //     $this->assertStringContainsString('Success UpdatePmtCGInTmp', $oOutput);
129    //     $this->assertResponseCode(200);
130    // }
131
132
133
134
135    // PMT1.ทดสอบเข้าหน้า index 
136    // Create by : IcePun [04/04/2023]
137    public function test_PMT1_เข้าหน้าindex(){
138        print "PMT1.เข้าหน้า index สำเร็จ\n";
139        $oOutput = $this->request(
140            'POST',
141            'document/promotion/cPromotion/index/0/0'
142        );
143        $this->assertStringContainsString('oetPromotionStaBrowse', $oOutput);
144        $this->assertResponseCode(200);
145    }
146
147    // PMT2.ทดสอบเข้าหน้า List
148    // Create by : IcePun [04/04/2023]
149    public function test_PMT2_เข้าหน้าList(){
150        print "PMT2.เข้าหน้า list สำเร็จ\n";
151        $oOutput = $this->request(
152            'POST',
153            'document/promotion/cPromotion/FSxCPromotionList'
154        );
155        $this->assertStringContainsString('ostSearchPromotion', $oOutput);
156        $this->assertResponseCode(200);
157    }
158
159 
160
161
162    // PMT5.โหลดข้อมูล DataTable แบบค้นหาด้วยสถานะใช้งานและชื่อสาขาจากช่องค้นหา
163    // Create by : IcePun [04/04/2023]
164    public function test_PMT5_ตารางแสดงข้อมูลแบบค้นหาด้วยสถานะใช้งานและชื่อสาขาจากช่องค้นหา(){
165        print "PMT5.โหลดข้อมูล DataTable แบบค้นหาด้วยสถานะใช้งานและชื่อสาขาจากช่องค้นหา สำเร็จ \n";
166        $paData = array (
167                'oAdvanceSearch'    => '{"tSearchAll"           : "สำนักงานใหญ่",
168                                        "tSearchBchCodeFrom"    : "",
169                                        "tSearchBchCodeTo"      : "",
170                                        "tSearchDocDateFrom"    : "",
171                                        "tSearchDocDateTo"      : "",
172                                        "tSearchStaDoc"         : "0",
173                                        "tSearchStaDocAct"      : "1",
174                                        "tSearchUsedStatus"     : "2"
175                                    }',
176                'nPageCurrent'      => '1',
177            );
178        $oOutput = $this->request(
179            'POST',
180            'document/promotion/cPromotion/FSxCPromotionDataTable',
181            $paData
182        );
183        $this->assertStringContainsString('odvRGPList', $oOutput);
184        $this->assertResponseCode(200);
185    }
186
187    // PMT6.โหลดข้อมูล DataTable แบบค้นหาด้วยสถานะใช้งานและเลขที่เอกสารจากช่องค้นหา
188    // Create by : IcePun [04/04/2023]
189    public function test_PMT6_ตารางแสดงข้อมูลแบบค้นหาด้วยสถานะใช้งานและเลขที่เอกสารจากช่องค้นหา(){
190        print "PMT6.โหลดข้อมูล DataTable แบบค้นหาด้วยสถานะใช้งานและเลขที่เอกสารจากช่องค้นหา สำเร็จ \n";
191        $paData = array (
192                'oAdvanceSearch'    => '{"tSearchAll"           : "MO000012300015",
193                                        "tSearchBchCodeFrom"    : "",
194                                        "tSearchBchCodeTo"      : "",
195                                        "tSearchDocDateFrom"    : "",
196                                        "tSearchDocDateTo"      : "",
197                                        "tSearchStaDoc"         : "0",
198                                        "tSearchStaDocAct"      : "1",
199                                        "tSearchUsedStatus"     : "4"
200                                    }',
201                'nPageCurrent'      => '1',
202            );
203        $oOutput = $this->request(
204            'POST',
205            'document/promotion/cPromotion/FSxCPromotionDataTable',
206            $paData
207        );
208        $this->assertStringContainsString('odvRGPList', $oOutput);
209        $this->assertResponseCode(200);
210    }
211
212    // PMT7.โหลดข้อมูล DataTable แบบค้นหาด้วยชื่อโปรโมชันจากช่องค้นหา
213    // Create by : IcePun [04/04/2023]
214    public function test_PMT7_ตารางแสดงข้อมูลแบบค้นหาด้วยชื่อโปรโมชันจากช่องค้นหา(){
215        print "PMT7.โหลดข้อมูล DataTable แบบค้นหาด้วยชื่อโปรโมชันจากช่องค้นหา สำเร็จ \n";
216        $paData = array (
217                'oAdvanceSearch'    => '{"tSearchAll"           : "โปรยกเว้น",
218                                        "tSearchBchCodeFrom"    : "",
219                                        "tSearchBchCodeTo"      : "",
220                                        "tSearchDocDateFrom"    : "",
221                                        "tSearchDocDateTo"      : "",
222                                        "tSearchStaDoc"         : "0",
223                                        "tSearchStaDocAct"      : "1",
224                                        "tSearchUsedStatus"     : "0"
225                                    }',
226                'nPageCurrent'      => '1',
227            );
228        $oOutput = $this->request(
229            'POST',
230            'document/promotion/cPromotion/FSxCPromotionDataTable',
231            $paData
232        );
233        $this->assertStringContainsString('odvRGPList', $oOutput);
234        $this->assertResponseCode(200);
235    }
236
237  
238
239 
240    // PMT11.โหลดข้อมูล DataTable แบบกรองข้อมูลทุกฟิลด์
241    // Create by : IcePun [04/04/2023]
242    public function test_PMT11_ตารางแสดงข้อมูลแบบกรองข้อมูลทุกฟิลด์(){
243        print "PMT11.โหลดข้อมูล DataTable แบบกรองข้อมูลทุกฟิลด์ สำเร็จ \n";
244        $paData = array (
245                'oAdvanceSearch'    => '{"tSearchAll"           : "MO000012300015",
246                                        "tSearchBchCodeFrom"    : "00001",
247                                        "tSearchBchCodeTo"      : "00013",
248                                        "tSearchDocDateFrom"    : "2023-02-01",
249                                        "tSearchDocDateTo"      : "2023-04-04",
250                                        "tSearchStaDoc"         : "1",
251                                        "tSearchStaDocAct"      : "1",
252                                        "tSearchUsedStatus"     : "4"
253                                    }',
254                'nPageCurrent'      => '1',
255            );
256        $oOutput = $this->request(
257            'POST',
258            'document/promotion/cPromotion/FSxCPromotionDataTable',
259            $paData
260        );
261        $this->assertStringContainsString('odvRGPList', $oOutput);
262        $this->assertResponseCode(200);
263    }
264
265
266    // PMT13.โหลดข้อมูล DataTable แบบค้นหาด้วยสถานะใช้งานและชื่อสาขาจากช่องค้นหาPage2
267    // Create by : IcePun [04/04/2023]
268    public function test_PMT13_ตารางแสดงข้อมูลแบบค้นหาด้วยสถานะใช้งานและชื่อสาขาจากช่องค้นหาPage2(){
269        print "PMT13.โหลดข้อมูล DataTable แบบค้นหาด้วยสถานะใช้งานและชื่อสาขาจากช่องค้นหาPage2 สำเร็จ \n";
270        $paData = array (
271                'oAdvanceSearch'    => '{"tSearchAll"           : "สำนักงานใหญ่",
272                                        "tSearchBchCodeFrom"    : "",
273                                        "tSearchBchCodeTo"      : "",
274                                        "tSearchDocDateFrom"    : "",
275                                        "tSearchDocDateTo"      : "",
276                                        "tSearchStaDoc"         : "0",
277                                        "tSearchStaDocAct"      : "1",
278                                        "tSearchUsedStatus"     : "4"
279                                    }',
280                'nPageCurrent'      => '2',
281            );
282        $oOutput = $this->request(
283            'POST',
284            'document/promotion/cPromotion/FSxCPromotionDataTable',
285            $paData
286        );
287        $this->assertStringContainsString('odvRGPList', $oOutput);
288        $this->assertResponseCode(200);
289    }
290
291    // PMT14.เข้าหน้าจอเพิ่มข้อมูลโปรโมชัน
292    // Create by : IcePun [04/04/2023]
293    public function test_PMT14_เข้าหน้าจอเพิ่มข้อมูลโปรโมชัน(){
294        print "PMT14.เข้าหน้าจอเพิ่มข้อมูลโปรโมชัน สำเร็จ \n";
295        $oOutput = $this->request(
296            'POST',
297            'document/promotion/cPromotion/FSxCPromotionAddPage'
298        );
299        $this->assertStringContainsString('odvHeadStatus', $oOutput);
300        $this->assertResponseCode(200);
301    }
302
303    // PMT15.เพิ่มข้อมูลโปรโมชันแบบสร้างเลขที่เอกสารอัตโนมัติ
304    // Create by : IcePun [04/04/2023]
305    public function test_PMT15_เพิ่มข้อมูลโปรโมชันแบบสร้างเลขที่เอกสารอัตโนมัติ(){
306        print "PMT15.เพิ่มข้อมูลโปรโมชันแบบสร้างเลขที่เอกสารอัตโนมัติ สำเร็จ \n";
307        $paData = array (
308                'ohdPromotionAgnCode'                       => '',
309                'ohdPromotionBchCode'                       => '00001',
310                'ohdPromotionStaApv'                        => '',
311                'ohdPromotionStaDelMQ'                      => '',
312                'oetPromotionApvCodeUsrLogin'               => '00002',
313                'ohdLangEdit'                               => '1',
314                'oetPromotionchCodeMulti'                   => '',
315                'ohdCheckTFWSubmitByButton'                 => '0',
316                'ohdCheckTFWClearValidate'                  => '0',
317                'ocbPromotionAutoGenCode'                   => '1',
318                'ohdCheckDuplicateTFW'                      => '2',
319                'oetPromotionDocDate'                       => '2023-04-04',
320                'oetPromotionDocTime'                       => '16:00',
321                'oetCreateBy'                               => '00002',
322                'oetPromotionBchCode'                       => '00001',
323                'oetPromotionBchName'                       => 'สำนักงานใหญ่',
324                'oetPromotionPmhName'                       => 'ทดสอบPHPUnitรหัสอัตโนมัติ',
325                'oetPromotionPmhNameSlip'                   => 'ทดสอบPHPUnitรหัสอัตโนมัติ',
326                'ocmPromotionPbyStaBuyCond'                 => '1',
327                'ocmPromotionPmhStaGrpPriority'             => '1',
328                'ocmPromotionPmhStaGetPdt'                  => '1',
329                'ocmPromotionPmhStaLimitCst'                => '1',
330                'ocmPromotionPmhStaGetPri'                  => '1',
331                'ocbPromotionPmhStaOnTopDis'                => '1',
332                'ocbPromotionPmhStaOnTopPmt'                => '1',
333                'oetPromotionPmhDStart'                     => '2023-04-04',
334                'oetPromotionPmhDStop'                      => '2023-04-04',
335                'oetPromotionPmhTStart'                     => '00:00',
336                'oetPromotionPmhTStop'                      => '23:59',
337                'ocbPromotionPmhStaAlwCalPntStd'            => '1',
338                'ocmPromotionPmhStaRcvFree'                 => '1',
339                'oetPromotionPmhRefAccCode'                 => '',
340                'otaPromotionPmhRmk'                        => '',
341                'ocbPromotionPmhStaDocAct'                  => '1',
342                'oetPromotionGroupNameTmp'                  => '',
343                'ohdPromotionGroupNameTmpOld'               => '',
344                'ocmPromotionGroupTypeTmp'                  => '1',
345                'ocmPromotionListTypeTmp'                   => '1',
346                'ohdPromotionBrandCodeTmp'                  => '',
347                'ohdPromotionBrandNameTmp'                  => '',
348                'oetPromotionStep1PmtFileName'              => '',
349                'ocbPromotionStep3GroupGetControl'          => '1',
350                'oetPgtGetQtyInput'                         => '0.00',
351                'oetPromotionStep3CouponName'               => '',
352                'oetPromotionStep3CouponCode'               => '',
353                'oetPromotionStep3PgtCpnTextName'           => '',
354                'oetPromotionStep3PgtCpnText'               => '',
355                'ohdPromotionStep4PriceGroupCodeTmp'        => '',
356                'ohdPromotionStep4PriceGroupNameTmp'        => '',
357                'oetPromotionStep4ChnCode'                  => '',
358                'oetPromotionStep4ChnName'                  => '',
359                'oetPromotionStep4RcvCode'                  => '',
360                'oetPromotionStep4RcvName'                  => '',
361                'oetPromotionStep4CstCode'                  => '',
362                'oetPromotionStep4CstName'                  => '',
363                'oetPromotionStep4PnpCode'                  => '',
364                'oetPromotionStep4PnpName'                  => '',
365                'oetPromotionStep4AgencyCode'               => '00038',
366                'oetPromotionStep4AgencyName'               => 'JK FC',
367                'oetPromotionStep4BchCode'                  => '10116',
368                'oetPromotionStep4BchName'                  => 'JK FC',
369                'ocmPromotionStep5BuyPbyStaCalSum'          => '1',
370                'ocmPromotionStep5GetPgtStaGetEffect'       => '1',
371        );
372        $oOutput = $this->request(
373            'POST',
374            'document/promotion/cPromotion/FSaCPromotionAddEvent',
375            $paData
376        );
377        $this->assertStringContainsString('Success Add', $oOutput);
378        $this->assertResponseCode(200);
379    }
380
381    // PMT16.เพิ่มข้อมูลโปรโมชันแบบสร้างเลขที่เอกสารเอง
382    // Create by : IcePun [04/04/2023]
383    public function test_PMT16_เพิ่มข้อมูลโปรโมชันแบบสร้างเลขที่เอกสารเอง(){
384        print "PMT16.เพิ่มข้อมูลโปรโมชันแบบสร้างเลขที่เอกสารเอง สำเร็จ \n";
385        $paData = array (
386                'ohdPromotionAgnCode'                       => '',
387                'ohdPromotionBchCode'                       => '00001',
388                'ohdPromotionStaApv'                        => '',
389                'ohdPromotionStaDelMQ'                      => '',
390                'oetPromotionApvCodeUsrLogin'               => '00002',
391                'ohdLangEdit'                               => '1',
392                'oetPromotionchCodeMulti'                   => '',
393                'ohdCheckTFWSubmitByButton'                 => '0',
394                'ohdCheckTFWClearValidate'                  => '0',
395                'oetPromotionDocNo'                         => 'ITEST99999992',
396                'ohdCheckDuplicateTFW'                      => '2',
397                'oetPromotionDocDate'                       => '2023-04-04',
398                'oetPromotionDocTime'                       => '16:30',
399                'oetCreateBy'                               => '00002',
400                'oetPromotionBchCode'                       => '00001',
401                'oetPromotionBchName'                       => 'สำนักงานใหญ่',
402                'oetPromotionPmhName'                       => 'ทดสอบPHPUnitสร้างรหัสเอง',
403                'oetPromotionPmhNameSlip'                   => 'ทดสอบPHPUnitสร้างรหัสเอง',
404                'ocmPromotionPbyStaBuyCond'                 => '1',
405                'ocmPromotionPmhStaGrpPriority'             => '1',
406                'ocmPromotionPmhStaGetPdt'                  => '1',
407                'ocmPromotionPmhStaLimitCst'                => '1',
408                'ocmPromotionPmhStaGetPri'                  => '1',
409                'ocbPromotionPmhStaOnTopDis'                => '1',
410                'ocbPromotionPmhStaOnTopPmt'                => '1',
411                'oetPromotionPmhDStart'                     => '2023-04-04',
412                'oetPromotionPmhDStop'                      => '2023-04-04',
413                'oetPromotionPmhTStart'                     => '00:00',
414                'oetPromotionPmhTStop'                      => '23:59',
415                'ocbPromotionPmhStaAlwCalPntStd'            => '1',
416                'ocmPromotionPmhStaRcvFree'                 => '1',
417                'oetPromotionPmhRefAccCode'                 => '',
418                'otaPromotionPmhRmk'                        => '',
419                'ocbPromotionPmhStaDocAct'                  => '1',
420                'oetPromotionGroupNameTmp'                  => '',
421                'ohdPromotionGroupNameTmpOld'               => '',
422                'ocmPromotionGroupTypeTmp'                  => '1',
423                'ocmPromotionListTypeTmp'                   => '1',
424                'ohdPromotionBrandCodeTmp'                  => '',
425                'ohdPromotionBrandNameTmp'                  => '',
426                'oetPromotionStep1PmtFileName'              => '',
427                'ocbPromotionStep3GroupGetControl'          => '1',
428                'oetPgtGetQtyInput'                         => '0.00',
429                'oetPromotionStep3CouponName'               => '',
430                'oetPromotionStep3CouponCode'               => '',
431                'oetPromotionStep3PgtCpnTextName'           => '',
432                'oetPromotionStep3PgtCpnText'               => '',
433                'ohdPromotionStep4PriceGroupCodeTmp'        => '',
434                'ohdPromotionStep4PriceGroupNameTmp'        => '',
435                'oetPromotionStep4ChnCode'                  => '',
436                'oetPromotionStep4ChnName'                  => '',
437                'oetPromotionStep4RcvCode'                  => '',
438                'oetPromotionStep4RcvName'                  => '',
439                'oetPromotionStep4CstCode'                  => '',
440                'oetPromotionStep4CstName'                  => '',
441                'oetPromotionStep4PnpCode'                  => '',
442                'oetPromotionStep4PnpName'                  => '',
443                'oetPromotionStep4AgencyCode'               => '00038',
444                'oetPromotionStep4AgencyName'               => 'JK FC',
445                'oetPromotionStep4BchCode'                  => '10115',
446                'oetPromotionStep4BchName'                  => 'JK FC (HQ)',
447                'ocmPromotionStep5BuyPbyStaCalSum'          => '1',
448                'ocmPromotionStep5GetPgtStaGetEffect'       => '1',
449                'ocbPromotionPmhStaOnTopPmt'                => '1',
450        );
451        $oOutput = $this->request(
452            'POST',
453            'document/promotion/cPromotion/FSaCPromotionAddEvent',
454            $paData
455        );
456        $this->assertStringContainsString('Success Add', $oOutput);
457        $this->assertResponseCode(200);
458    }
459
460    // PMT18.ตรวจสอบว่าเลขที่เอกสารไม่ซ้ำ
461    // Create by : IcePun [04/04/2023]
462    public function test_PMT18_ตรวจสอบว่าเลขที่เอกสารไม่ซ้ำ(){
463        print "PMT18.ตรวจสอบว่าเลขที่เอกสารไม่ซ้ำ สำเร็จ \n";
464        $paData = array (
465            'tPromotionCode' => 'ITEST99999993',
466            );
467        $oOutput = $this->request(
468            'POST',
469            'document/promotion/cPromotion/FStCPromotionUniqueValidate/0',
470            $paData
471        );
472        $this->assertStringContainsString('false', $oOutput);
473        $this->assertResponseCode(200);
474    }
475    
476    // PMT19.เข้าหน้าจอแก้ไขข้อมูลโปรโมชัน
477    // Create by : IcePun [04/04/2023]
478    public function test_PMT19_เข้าหน้าจอแก้ไขข้อมูลโปรโมชัน(){
479        print "PMT19.เข้าหน้าจอแก้ไขข้อมูลโปรโมชัน สำเร็จ \n";
480        $paData = array (
481            'tDocNo' => 'MO0000123000159',
482            );
483        $oOutput = $this->request(
484            'POST',
485            'document/promotion/cPromotion/FSvCPromotionEditPage',
486            $paData
487        );
488        $this->assertStringContainsString('false', $oOutput);
489        $this->assertResponseCode(200);
490    }
491
492   
493    
494    // PMT24.ลบเอกสารโปรโมชันแบบSingle
495    // Create by : IcePun [04/04/2023]
496    public function test_PMT24_ลบเอกสารโปรโมชันแบบSingle(){
497        print "PMT24.ลบเอกสารโปรโมชันแบบSingle สำเร็จ \n";
498        $paData = array (
499            'tDocNo'    => 'MO0000123000160',
500            );
501        $oOutput = $this->request(
502            'POST',
503            'document/promotion/cPromotion/FStPromotionDeleteDoc',
504            $paData
505        );
506        $this->assertStringContainsString('Delete Complete.', $oOutput);
507        $this->assertResponseCode(200);
508    }
509    
510    // PMT25.ลบเอกสารโปรโมชันแบบMultiple
511    // Create by : IcePun [04/04/2023]
512    public function test_PMT25_ลบเอกสารโปรโมชันแบบMultiple(){
513        print "PMT25.ลบเอกสารโปรโมชันแบบMultiple สำเร็จ \n";
514        $paData = array (
515            'aDocNo' => array('MO0000123000161','ITEST99999992')
516            );
517        $oOutput = $this->request(
518            'POST',
519            'document/promotion/cPromotion/FStPromotionDeleteMultiDoc',
520            $paData
521        );
522        $this->assertStringContainsString('Delete Complete.', $oOutput);
523        $this->assertResponseCode(200);
524    }
525    /* ================ End Master ================ */
526
527    /* ================== Step 2 ================== */
528    /* ---- Group Name ---- */
529    // PMTSt2_1.แสดงชื่อกลุ่มซื้อโปรโมชัน
530    // Create by : IcePun [05/04/2023]
531    public function test_PMTSt2_1_แสดงชื่อกลุ่มซื้อโปรโมชัน(){
532        print "PMTSt2_1.แสดงชื่อกลุ่มซื้อโปรโมชัน สำเร็จ \n";
533        $paData = array (
534            'tBchCode'              => '00001',
535            );
536        $oOutput = $this->request(
537            'POST',
538            'document/promotion/cPromotionStep2PmtDt/FStCPromotionGetPmtCBInTmp',
539            $paData
540        );
541        $this->assertStringContainsString('xCNPromotionStep2GroupNameType1Item', $oOutput);
542        $this->assertResponseCode(200);
543    }
544
545    // PMTSt2_2.แสดงชื่อกลุ่มรับโปรโมชัน
546    // Create by : IcePun [05/04/2023]
547    public function test_PMTSt2_2_แสดงชื่อกลุ่มรับโปรโมชัน(){
548        print "PMTSt2_2.แสดงชื่อกลุ่มรับโปรโมชัน สำเร็จ \n";
549        $paData = array (
550            'tBchCode'              => '00001',
551            );
552        $oOutput = $this->request(
553            'POST',
554            'document/promotion/cPromotionStep2PmtDt/FStCPromotionGetPmtCGInTmp',
555            $paData
556        );
557        $this->assertStringContainsString('xCNPromotionStep2GroupNameType1Item', $oOutput);
558        $this->assertResponseCode(200);
559    }
560
561    // PMTSt2_3.แสดงชื่อกลุ่มร่วมรายการ
562    // Create by : IcePun [05/04/2023]
563    public function test_PMTSt2_3_แสดงชื่อกลุ่มร่วมรายการ(){
564        print "PMTSt2_3.แสดงชื่อกลุ่มร่วมรายการ สำเร็จ \n";
565        $paData = array (
566            'tBchCode'              => '00001',
567            'nPageCurrent'          => '1',
568            'tGroupType'            => '2',
569            );
570        $oOutput = $this->request(
571            'POST',
572            'document/promotion/cPromotionStep2PmtDt/FSxCPromotionGetPmtDtGroupNameInTmp',
573            $paData
574        );
575        $this->assertStringContainsString('xCNPromotionStep2GroupNameType1Item', $oOutput);
576        $this->assertResponseCode(200);
577    }
578    /* -- End Group Name -- */
579    /* ================ End Step 2 ================ */
580
581    /* ================== Step 3 ================== */
582    /* ---- PmtCB ---- */
583    // PMTSt3_1.ตารางแสดงข้อมูลเงื่อนไขกลุ่มซื้อ
584    // Create by : IcePun [05/04/2023]
585    public function test_PMTSt3_1_ตารางแสดงข้อมูลเงื่อนไขกลุ่มซื้อ(){
586        print "PMTSt3_1.ตารางแสดงข้อมูลเงื่อนไขกลุ่มซื้อ สำเร็จ \n";
587        $paData = array (
588            'tBchCode'              => '00001',
589            'tPbyStaBuyCond'        => '1',
590            'nPageCurrent'          => '1',
591            'bIsAlwPmtDisAvg'       => 'true',
592            );
593        $oOutput = $this->request(
594            'POST',
595            'document/promotion/cPromotionStep3PmtCB/FSxCPromotionGetPmtCBInTmp',
596            $paData
597        );
598        $this->assertStringContainsString('otbPromotionStep3PmtCBTable', $oOutput);
599        $this->assertResponseCode(200);
600    }
601
602    // PMTSt3_2.เพิ่มข้อมูลเงื่อนไขกลุ่มซื้อในtmp
603    // Create by : IcePun [05/04/2023]
604    public function test_PMTSt3_2_เพิ่มข้อมูลเงื่อนไขกลุ่มซื้อในtmp(){
605        print "PMTSt3_2.เพิ่มข้อมูลเงื่อนไขกลุ่มซื้อในtmp สำเร็จ \n";
606        $paData = array (
607            'tBchCode'              => '00001',
608            'tGroupNameInBuy'       => 'ทดสอบPHPUnit',
609            'tPbyStaBuyCond'        => '1',
610            'bIsAlwPmtDisAvg'       => 'true',
611            );
612        $oOutput = $this->request(
613            'POST',
614            'document/promotion/cPromotionStep3PmtCB/FSaCPromotionInsertPmtCBToTmp',
615            $paData
616        );
617        $this->assertStringContainsString('Success InsertPmtCBToTmp', $oOutput);
618        $this->assertResponseCode(200);
619    }
620    
621    // PMTSt3_3.แก้ไขข้อมูลเงื่อนไขกลุ่มซื้อในtmp
622    // Create by : IcePun [05/04/2023]
623    public function test_PMTSt3_3_แก้ไขข้อมูลเงื่อนไขกลุ่มซื้อในtmp(){
624        print "PMTSt3_3.แก้ไขข้อมูลเงื่อนไขกลุ่มซื้อในtmp สำเร็จ \n";
625        $paData = array (
626            'tPbyMinValue'          => '5.00',
627            'tPbyMaxValue'          => '10.00',
628            'tPbyMinSetPri'         => '20',
629            'tPgtPerAvgDisCB'       => '0.00',
630            'nSeqNo'                => '1',
631            'tFieldName'            => 'FCPbyMinSetPri',
632            'tFormatType'           => 'C',
633            );
634        $oOutput = $this->request(
635            'POST',
636            'document/promotion/cPromotionStep4PriceGroupCondition/FSxCPromotionUpdatePriceGroupInTmp',
637            $paData
638        );
639        $this->assertStringContainsString('Success UpdatePriceGroupInTmp', $oOutput);
640        $this->assertResponseCode(200);
641    }
642
643    // PMTSt3_4.ลบข้อมูลเงื่อนไขพิเศษกลุ่มราคาในtmp
644    // Create by : IcePun [05/04/2023]
645    public function test_PMTSt3_4_ลบข้อมูลเงื่อนไขพิเศษกลุ่มราคาในtmp(){
646        print "PMTSt3_4.ลบข้อมูลเงื่อนไขพิเศษกลุ่มราคาในtmp สำเร็จ \n";
647        $paData = array (
648            'tBchCode'          => '00001',
649            'tGroupNameInBuy'   => 'ทดสอบPHPUnit',
650            'tPbyStaBuyCond'    => '1',
651            );
652        $oOutput = $this->request(
653            'POST',
654            'document/promotion/cPromotionStep3PmtCB/FSaCPromotionDeletePmtCBInTmp',
655            $paData
656        );
657        $this->assertStringContainsString('Success DeletePmtCBInTmp', $oOutput);
658        $this->assertResponseCode(200);
659    }
660    /* -- End PmtCB -- */
661
662    /* ---- PmtCG ---- */
663    // PMTSt3_5.ตารางแสดงข้อมูลเงื่อนไขรับสิทธิ์กลุ่มรับโปรโมชัน
664    // Create by : IcePun [05/04/2023]
665    public function test_PMTSt3_5_ตารางแสดงข้อมูลเงื่อนไขรับสิทธิ์กลุ่มรับโปรโมชัน(){
666        print "PMTSt3_5.ตารางแสดงข้อมูลเงื่อนไขรับสิทธิ์กลุ่มรับโปรโมชัน สำเร็จ \n";
667        $paData = array (
668            'tBchCode'          => '00001',
669            'nPageCurrent'      => '1',
670            'bIsAlwPmtDisAvg'   => 'true',
671            );
672        $oOutput = $this->request(
673            'POST',
674            'document/promotion/cPromotionStep3PmtCG/FSxCPromotionGetPmtCGInTmp',
675            $paData
676        );
677        $this->assertStringContainsString('otbPromotionStep3PmtCGTable', $oOutput);
678        $this->assertResponseCode(200);
679    }
680
681    // PMTSt3_6.เพิ่มข้อมูลเงื่อนไขรับสิทธิ์กลุ่มรับโปรโมชันในtmp
682    // Create by : IcePun [05/04/2023]
683    public function test_PMTSt3_6_เพิ่มข้อมูลเงื่อนไขรับสิทธิ์กลุ่มรับโปรโมชันในtmp(){
684        print "PMTSt3_6.เพิ่มข้อมูลเงื่อนไขรับสิทธิ์กลุ่มรับโปรโมชันในtmp สำเร็จ \n";
685        $paData = array (
686            'tBchCode'                          => '00001',
687            'tConditionBuyIsRange'              => 'false',
688            'tStaGrpPriorityIsPriceGroup'       => 'false',
689            'tGroupNameInGet'                   => 'ทดสอบPHPUnit',
690            'tPbyStaBuyCond'                    => '1',
691            'bIsAlwPmtDisAvg'                   => 'true',
692            );
693        $oOutput = $this->request(
694            'POST',
695            'document/promotion/cPromotionStep3PmtCG/FSaCPromotionInsertPmtCGToTmp',
696            $paData
697        );
698        $this->assertStringContainsString('Success InsertPmtCGToTmp', $oOutput);
699        $this->assertResponseCode(200);
700    }
701    
702  
703    
704    // PMTSt3_8.แก้ไขข้อมูลเงื่อนไขรับสิทธิ์กลุ่มคำนวณโปรโมชันโปรโมชันในtmp
705    // Create by : IcePun [05/04/2023]
706    public function test_PMTSt3_8_แก้ไขข้อมูลเงื่อนไขรับสิทธิ์กลุ่มคำนวณโปรโมชันโปรโมชันในtmp(){
707        print "PMTSt3_8.แก้ไขข้อมูลเงื่อนไขรับสิทธิ์กลุ่มคำนวณโปรโมชันโปรโมชันในtmp สำเร็จ \n";
708        $paData = array (
709            'tPgtStaGetType' => '1',
710            );
711        $oOutput = $this->request(
712            'POST',
713            'document/promotion/cPromotionStep3PmtCG/FSxCPromotionUpdatePmtCGPgtStaGetTypeInTmp',
714            $paData
715        );
716        $this->assertStringContainsString('', $oOutput);
717        $this->assertResponseCode(200);
718    }
719
720    // PMTSt3_9.ลบข้อมูลเงื่อนไขรับสิทธิ์กลุ่มรับโปรโมชันในtmp
721    // Create by : IcePun [05/04/2023]
722    public function test_PMTSt3_9_ลบข้อมูลเงื่อนไขรับสิทธิ์กลุ่มรับโปรโมชันในtmp(){
723        print "PMTSt3_9.ลบข้อมูลเงื่อนไขรับสิทธิ์กลุ่มรับโปรโมชันในtmp สำเร็จ \n";
724        $paData = array (
725            'tBchCode'              => '00001',
726            'tGroupNameInGet'       => 'ทดสอบPHPUnit',
727            'tPbyStaBuyCond'        => '1',
728            );
729        $oOutput = $this->request(
730            'POST',
731            'document/promotion/cPromotionStep3PmtCG/FSaCPromotionDeletePmtCGInTmp',
732            $paData
733        );
734        $this->assertStringContainsString('Success DeletePmtCGInTmp', $oOutput);
735        $this->assertResponseCode(200);
736    }
737
738    // PMTSt3_10.เคลียร์ข้อมูลเงื่อนไขรับสิทธิ์กลุ่มรับโปรโมชันในtmp
739    // Create by : IcePun [05/04/2023]
740    public function test_PMTSt3_10_เคลียร์ข้อมูลเงื่อนไขรับสิทธิ์กลุ่มรับโปรโมชันในtmp(){
741        print "PMTSt3_10.เคลียร์ข้อมูลเงื่อนไขรับสิทธิ์กลุ่มรับโปรโมชันในtmp สำเร็จ \n";
742        $paData = array (
743            'tBchCode'              => '00001',
744            );
745        $oOutput = $this->request(
746            'POST',
747            'document/promotion/cPromotionStep3PmtCG/FSxCPromotionClearPmtCGInTmp',
748            $paData
749        );
750        $this->assertStringContainsString('Success ClearPmtCGInTmp', $oOutput);
751        $this->assertResponseCode(200);
752    }
753    /* -- End PmtCG -- */
754
755    /* ---- PmtCB With PmtCG ---- */
756    // PMTSt3_11.ตารางแสดงข้อมูลเงื่อนไขกลุ่มซื้อ-รับโปรโมชัน
757    // Create by : IcePun [05/04/2023]
758    public function test_PMTSt3_11_ตารางแสดงข้อมูลเงื่อนไขกลุ่มซื้อ_รับโปรโมชัน(){
759        print "PMTSt3_11.ตารางแสดงข้อมูลเงื่อนไขกลุ่มซื้อ-รับโปรโมชัน สำเร็จ \n";
760        $paData = array (
761            'tBchCode'              => '00001',
762            'tPbyStaBuyCond'        => '3',
763            'nPageCurrent'          => '1',
764            'bIsAlwPmtDisAvg'       => 'true',
765            );
766        $oOutput = $this->request(
767            'POST',
768            'document/promotion/cPromotionStep3PmtCB/FSxCPromotionGetPmtCBWithPmtCGInTmp',
769            $paData
770        );
771        $this->assertStringContainsString('otbPromotionStep3PmtCBWithPmtCGTable', $oOutput);
772        $this->assertResponseCode(200);
773    }
774
775    // PMTSt3_12.เพิ่มข้อมูลเงื่อนไขกลุ่มซื้อ-รับโปรโมชันในtmp
776    // Create by : IcePun [05/04/2023]
777    public function test_PMTSt3_12_เพิ่มข้อมูลเงื่อนไขกลุ่มซื้อ_รับโปรโมชันในtmp(){
778        print "PMTSt3_12.เพิ่มข้อมูลเงื่อนไขกลุ่มซื้อ-รับโปรโมชันในtmp สำเร็จ \n";
779        $paData = array (
780            'tBchCode'                      => '00001',
781            'tGroupName'                    => 'ทดสอบสร้างโปร0504',
782            'tPbyStaBuyCond'                => '3',
783            'tStaGrpPriorityIsPriceGroup'   => 'false',
784            'tPbyMaxValueLastRow'           => '0.00',
785            'bIsAlwPmtDisAvg'               => 'true',
786            );
787        $oOutput = $this->request(
788            'POST',
789            'document/promotion/cPromotionStep3PmtCB/FSaCPromotionInsertPmtCBAndPmtCGToTmp',
790            $paData
791        );
792        $this->assertStringContainsString('Success InsertPmtCBAndPmtCGToTmp', $oOutput);
793        $this->assertResponseCode(200);
794    }
795
796    // PMTSt3_13.ลบข้อมูลเงื่อนไขกลุ่มซื้อ-รับโปรโมชันในtmp
797    // Create by : IcePun [05/04/2023]
798    public function test_PMTSt3_13_ลบข้อมูลเงื่อนไขกลุ่มซื้อ_รับโปรโมชันในtmp(){
799        print "PMTSt3_13.ลบข้อมูลเงื่อนไขกลุ่มซื้อ-รับโปรโมชันในtmp สำเร็จ \n";
800        $paData = array (
801            'tCbSeqNo'      => '2',
802            'tCgSeqNo'      => '2',
803            );
804        $oOutput = $this->request(
805            'POST',
806            'document/promotion/cPromotionStep3PmtCB/FSaCPromotionDeletePmtCBAndPmtCGInTmpBySeq',
807            $paData
808        );
809        $this->assertStringContainsString('Success DeletePmtCBAndCGInTmp By Seq', $oOutput);
810        $this->assertResponseCode(200);
811    }
812    /* -- End PmtCB With PmtCG -- */
813
814    /* ---- Coupon ---- */
815    // PMTSt3_14.ตารางแสดงข้อมูลเงื่อนไขรับสิทธิประโยชน์คูปอง
816    // Create by : IcePun [05/04/2023]
817    public function test_PMTSt3_14_ตารางแสดงข้อมูลเงื่อนไขรับสิทธิประโยชน์คูปอง(){
818        print "PMTSt3_14.ตารางแสดงข้อมูลเงื่อนไขรับสิทธิประโยชน์คูปอง สำเร็จ \n";
819        $paData = array (
820            'tBchCode'              => '00001',
821            );
822        $oOutput = $this->request(
823            'POST',
824            'document/promotion/cPromotionStep3Coupon/FStCPromotionGetCouponInTmp',
825            $paData
826        );
827        $this->assertStringContainsString('', $oOutput);
828        $this->assertResponseCode(200);
829    }
830
831    // PMTSt3_15.เพิ่มหรือแก้ไขข้อมูลเงื่อนไขรับสิทธิประโยชน์คูปองแบบคูปองในtmp
832    // Create by : IcePun [05/04/2023]
833    public function test_PMTSt3_15_เพิ่มหรือแก้ไขข้อมูลเงื่อนไขกลุ่มรับสิทธิประโยชน์คูปองแบบคูปองในtmp(){
834        print "PMTSt3_15.เพิ่มหรือแก้ไขข้อมูลเงื่อนไขรับสิทธิประโยชน์คูปองแบบคูปองในtmp สำเร็จ \n";
835        $paData = array (
836            'tBchCode'              => '00001',
837            'tCphDocNo'             => 'CP0000123000015',
838            'tCphDocName'           => 'คูปองเงินสด',
839            'tPgtCpnText'           => '',
840            'tPgtStaCoupon'         => '2',
841            );
842        $oOutput = $this->request(
843            'POST',
844            'document/promotion/cPromotionStep3Coupon/FSaCPromotionInsertOrUpdateCouponToTmp',
845            $paData
846        );
847        $this->assertStringContainsString('Success InsertOrUpdateCouponToTmp', $oOutput);
848        $this->assertResponseCode(200);
849    }
850
851    // PMTSt3_16.เพิ่มหรือแก้ไขข้อมูลเงื่อนไขรับสิทธิประโยชน์คูปองแบบข้อความในtmp
852    // Create by : IcePun [05/04/2023]
853    public function test_PMTSt3_16_เพิ่มหรือแก้ไขข้อมูลเงื่อนไขกลุ่มรับสิทธิประโยชน์คูปองแบบข้อความในtmp(){
854        print "PMTSt3_16.เพิ่มหรือแก้ไขข้อมูลเงื่อนไขรับสิทธิประโยชน์คูปองแบบข้อความในtmp สำเร็จ \n";
855        $paData = array (
856            'tBchCode'              => '00001',
857            'tCphDocNo'             => '',
858            'tCphDocName'           => '',
859            'tPgtCpnText'           => '00001',
860            'tPgtStaCoupon'         => '3',
861            );
862        $oOutput = $this->request(
863            'POST',
864            'document/promotion/cPromotionStep3Coupon/FSaCPromotionInsertOrUpdateCouponToTmp',
865            $paData
866        );
867        $this->assertStringContainsString('Success InsertOrUpdateCouponToTmp', $oOutput);
868        $this->assertResponseCode(200);
869    }
870
871    // PMTSt3_17.ลบข้อมูลเงื่อนไขรับสิทธิประโยชน์คูปองในtmp
872    // Create by : IcePun [05/04/2023]
873    public function test_PMTSt3_17_ลบข้อมูลเงื่อนไขรับสิทธิประโยชน์คูปองในtmp(){
874        print "PMTSt3_17.ลบข้อมูลเงื่อนไขรับสิทธิประโยชน์คูปองในtmp สำเร็จ \n";
875        $paData = array (
876            'tBchCode'              => '00001',
877            );
878        $oOutput = $this->request(
879            'POST',
880            'document/promotion/cPromotionStep3Coupon/FSxCPromotionDeleteCouponInTmp',
881            $paData
882        );
883        $this->assertStringContainsString('Success DeleteCouponInTmp', $oOutput);
884        $this->assertResponseCode(200);
885    }
886    /* -- End Coupon -- */
887
888    /* ---- Point ---- */
889    // PMTSt3_18.ตารางแสดงข้อมูลเงื่อนไขรับสิทธิประโยชน์แต้ม
890    // Create by : IcePun [05/04/2023]
891    public function test_PMTSt3_18_ตารางแสดงข้อมูลเงื่อนไขรับสิทธิประโยชน์แต้ม(){
892        print "PMTSt3_18.ตารางแสดงข้อมูลเงื่อนไขรับสิทธิประโยชน์แต้ม สำเร็จ \n";
893        $paData = array (
894            'tBchCode'              => '00001',
895            );
896        $oOutput = $this->request(
897            'POST',
898            'document/promotion/cPromotionStep3Point/FStCPromotionGetPointInTmp',
899            $paData
900        );
901        $this->assertStringContainsString('', $oOutput);
902        $this->assertResponseCode(200);
903    }
904
905    // PMTSt3_19.เพิ่มหรือแก้ไขข้อมูลเงื่อนไขรับสิทธิประโยชน์แต้มแบบครบมูลค่าในtmp
906    // Create by : IcePun [05/04/2023]
907    public function test_PMTSt3_19_เพิ่มหรือแก้ไขข้อมูลเงื่อนไขกลุ่มรับสิทธิประโยชน์แต้มแบบครบมูลค่าในtmp(){
908        print "PMTSt3_19.เพิ่มหรือแก้ไขข้อมูลเงื่อนไขรับสิทธิประโยชน์แต้มแบบครบมูลค่าในtmp สำเร็จ \n";
909        $paData = array (
910            'tBchCode'              => '00001',
911            'tPgtPntBuy'            => '2',
912            'tPgtPntGet'            => '4',
913            'tPgtStaPoint'          => '2',
914            'tPgtStaPntCalType'     => '1',
915            );
916        $oOutput = $this->request(
917            'POST',
918            'document/promotion/cPromotionStep3Point/FSaCPromotionInsertOrUpdatePointToTmp',
919            $paData
920        );
921        $this->assertStringContainsString('Success InsertOrUpdatePointToTmp', $oOutput);
922        $this->assertResponseCode(200);
923    }
924
925    // PMTSt3_20.เพิ่มหรือแก้ไขข้อมูลเงื่อนไขรับสิทธิประโยชน์แต้มแบบครบจำนวนในtmp
926    // Create by : IcePun [05/04/2023]
927    public function test_PMTSt3_20_เพิ่มหรือแก้ไขข้อมูลเงื่อนไขกลุ่มรับสิทธิประโยชน์แต้มแบบครบจำนวนในtmp(){
928        print "PMTSt3_20.เพิ่มหรือแก้ไขข้อมูลเงื่อนไขรับสิทธิประโยชน์แต้มแบบครบจำนวนในtmp สำเร็จ \n";
929        $paData = array (
930            'tBchCode'              => '00001',
931            'tPgtPntBuy'            => '2',
932            'tPgtPntGet'            => '4',
933            'tPgtStaPoint'          => '2',
934            'tPgtStaPntCalType'     => '2',
935            );
936        $oOutput = $this->request(
937            'POST',
938            'document/promotion/cPromotionStep3Point/FSaCPromotionInsertOrUpdatePointToTmp',
939            $paData
940        );
941        $this->assertStringContainsString('Success InsertOrUpdatePointToTmp', $oOutput);
942        $this->assertResponseCode(200);
943    }
944
945    // PMTSt3_21.ลบข้อมูลเงื่อนไขรับสิทธิประโยชน์แต้มในtmp
946    // Create by : IcePun [05/04/2023]
947    public function test_PMTSt3_21_ลบข้อมูลเงื่อนไขรับสิทธิประโยชน์แต้มในtmp(){
948        print "PMTSt3_21.ลบข้อมูลเงื่อนไขรับสิทธิประโยชน์แต้มในtmp สำเร็จ \n";
949        $paData = array (
950            'tBchCode'              => '00001',
951            );
952        $oOutput = $this->request(
953            'POST',
954            'document/promotion/cPromotionStep3Point/FSxCPromotionDeletePointInTmp',
955            $paData
956        );
957        $this->assertStringContainsString('Success DeletePointInTmp', $oOutput);
958        $this->assertResponseCode(200);
959    }    
960    /* -- End Point -- */
961    /* ================ End Step 3 ================ */
962
963    /* ================== Step 4 ================== */
964    /* ---- PriceGroup Condition ---- */
965    // PMTSt4_1.ตารางแสดงข้อมูลเงื่อนไขพิเศษกลุ่มราคา
966    // Create by : IcePun [05/04/2023]
967    // public function test_PMTSt4_1_ตารางแสดงข้อมูลเงื่อนไขพิเศษกลุ่มราคา(){
968    //     print "PMTSt4_1.ตารางแสดงข้อมูลเงื่อนไขพิเศษกลุ่มราคา สำเร็จ \n";
969    //     $paData = array (
970    //         'tBchCode'      => '00001',
971    //         'nPageCurrent'  => '1',
972    //         );
973    //     $oOutput = $this->request(
974    //         'POST',
975    //         'document/promotion/cPromotionStep4PriceGroupCondition/FSxCPromotionGetPdtPmtHDCstPriInTmp',
976    //         $paData
977    //     );
978    //     $this->assertStringContainsString('xCNPanelHeadColorWhite', $oOutput);
979    //     $this->assertResponseCode(200);
980    // }
981    
982    // PMTSt4_2.เพิ่มข้อมูลเงื่อนไขพิเศษกลุ่มราคาในtmp
983    // Create by : IcePun [05/04/2023]
984    public function test_PMTSt4_2_เพิ่มข้อมูลเงื่อนไขพิเศษกลุ่มราคาในtmp(){
985        print "PMTSt4_2.เพิ่มข้อมูลเงื่อนไขพิเศษกลุ่มราคาในtmp สำเร็จ \n";
986        $paData = array (
987            'tBchCode'      => '00001',
988            'tPplList: '    => array('"00001","กลุ่มราคาลูกค้าทั่วไป"'),
989            );
990        $oOutput = $this->request(
991            'POST',
992            'document/promotion/cPromotionStep4PriceGroupCondition/FSaCPromotionInsertPriceGroupToTmp',
993            $paData
994        );
995        $this->assertStringContainsString('', $oOutput);
996        $this->assertResponseCode(200);
997    }
998    
999    // PMTSt4_3.แก้ไขข้อมูลเงื่อนไขพิเศษกลุ่มราคาในtmp
1000    // Create by : IcePun [05/04/2023]
1001    public function test_PMTSt4_3_แก้ไขข้อมูลเงื่อนไขพิเศษกลุ่มราคาในtmp(){
1002        print "PMTSt4_3.แก้ไขข้อมูลเงื่อนไขพิเศษกลุ่มราคาในtmp สำเร็จ \n";
1003        $paData = array (
1004            'tDocNo'            => 'PMTDOCTEMP',
1005            'tPplCode'          => '00001',
1006            'tBchCode'          => '00001',
1007            'tPmhStaType'       => '2',
1008            );
1009        $oOutput = $this->request(
1010            'POST',
1011            'document/promotion/cPromotionStep4PriceGroupCondition/FSxCPromotionUpdatePriceGroupInTmp',
1012            $paData
1013        );
1014        $this->assertStringContainsString('Success UpdatePriceGroupInTmp', $oOutput);
1015        $this->assertResponseCode(200);
1016    }
1017    
1018    // PMTSt4_4.ลบข้อมูลเงื่อนไขพิเศษกลุ่มราคาในtmp
1019    // Create by : IcePun [05/04/2023]
1020    public function test_PMTSt4_4_ลบข้อมูลเงื่อนไขพิเศษกลุ่มราคาในtmp(){
1021        print "PMTSt4_4.ลบข้อมูลเงื่อนไขพิเศษกลุ่มราคาในtmp สำเร็จ \n";
1022        $paData = array (
1023            'tBchCode'      => '00001',
1024            'tDocNo'        => 'PMTDOCTEMP',
1025            'tPplCode'      => '00001',
1026            );
1027        $oOutput = $this->request(
1028            'POST',
1029            'document/promotion/cPromotionStep4PriceGroupCondition/FSxCPromotionDeletePriceGroupInTmp',
1030            $paData
1031        );
1032        $this->assertStringContainsString('Success DeletePriceGroupInTmp', $oOutput);
1033        $this->assertResponseCode(200);
1034    }
1035    /* -- End PriceGroup Condition -- */
1036
1037    /* ---- Branch Condition ---- */
1038    // PMTSt4_5.ตารางแสดงข้อมูลเงื่อนไขพิเศษสาขา
1039    // Create by : IcePun [05/04/2023]
1040    // public function test_PMTSt4_5_ตารางแสดงข้อมูลเงื่อนไขพิเศษสาขา(){
1041    //     print "PMTSt4_5.ตารางแสดงข้อมูลเงื่อนไขพิเศษสาขา สำเร็จ \n";
1042    //     $paData = array (
1043    //         'tBchCode'      => '00001',
1044    //         'nPageCurrent'  => '1',
1045    //         );
1046    //     $oOutput = $this->request(
1047    //         'POST',
1048    //         'document/promotion/cPromotionStep4BchCondition/FSxCPromotionGetBchConditionInTmp',
1049    //         $paData
1050    //     );
1051    //     $this->assertStringContainsString('xCNPanelHeadColorWhite', $oOutput);
1052    //     $this->assertResponseCode(200);
1053    // }
1054
1055    // PMTSt4_6.เพิ่มข้อมูลเงื่อนไขพิเศษสาขาเฉพาะตัวแทนขายในtmp
1056    // Create by : IcePun [05/04/2023]
1057    public function test_PMTSt4_6_เพิ่มข้อมูลเงื่อนไขพิเศษสาขาเฉพาะตัวแทนขายในtmp(){
1058        print "PMTSt4_6.เพิ่มข้อมูลเงื่อนไขพิเศษสาขาเฉพาะตัวแทนขายในtmp สำเร็จ \n";
1059        $paData = array (
1060            'tAgnCode'      => '00036',
1061            'tAgnName'      => 'บริษัท ที.เค.เอ็ม. ออโต้ ไทร์ จำกัด',
1062            'tBchCode'      => '',
1063            'tBchName'      => '',
1064            );
1065        $oOutput = $this->request(
1066            'POST',
1067            'document/promotion/cPromotionStep4BchCondition/FSaCPromotionInsertBchConditionToTmp',
1068            $paData
1069        );
1070        $this->assertStringContainsString('Success InsertBchConditionToTmp', $oOutput);
1071        $this->assertResponseCode(200);
1072    }
1073
1074    // PMTSt4_7.เพิ่มข้อมูลเงื่อนไขพิเศษสาขาเฉพาะสาขาในtmp
1075    // Create by : IcePun [05/04/2023]
1076    public function test_PMTSt4_7_เพิ่มข้อมูลเงื่อนไขพิเศษสาขาเฉพาะสาขาในtmp(){
1077        print "PMTSt4_7.เพิ่มข้อมูลเงื่อนไขพิเศษสาขาเฉพาะสาขาในtmp สำเร็จ \n";
1078        $paData = array (
1079            'tAgnCode'      => '',
1080            'tAgnName'      => '',
1081            'tBchCode'      => '00001',
1082            'tBchName'      => 'สำนักงานใหญ่',
1083            );
1084        $oOutput = $this->request(
1085            'POST',
1086            'document/promotion/cPromotionStep4BchCondition/FSaCPromotionInsertBchConditionToTmp',
1087            $paData
1088        );
1089        $this->assertStringContainsString('Success InsertBchConditionToTmp', $oOutput);
1090        $this->assertResponseCode(200);
1091    }
1092
1093    // PMTSt4_8.เพิ่มข้อมูลเงื่อนไขพิเศษสาขาระบุตัวแทนขายและสาขาในtmp
1094    // Create by : IcePun [05/04/2023]
1095    public function test_PMTSt4_8_เพิ่มข้อมูลเงื่อนไขพิเศษสาขาระบุตัวแทนขายและสาขาในtmp(){
1096        print "PMTSt4_8.เพิ่มข้อมูลเงื่อนไขพิเศษสาขาระบุตัวแทนขายและสาขาในtmp สำเร็จ \n";
1097        $paData = array (
1098            'tAgnCode'      => '00036',
1099            'tAgnName'      => 'บริษัท ที.เค.เอ็ม. ออโต้ ไทร์ จำกัด',
1100            'tBchCode'      => '10100',
1101            'tBchName'      => 'บริษัท ที.เค.เอ็ม. ออโต้ ไทร์ จำกัด (HQ)',
1102            );
1103        $oOutput = $this->request(
1104            'POST',
1105            'document/promotion/cPromotionStep4BchCondition/FSaCPromotionInsertBchConditionToTmp',
1106            $paData
1107        );
1108        $this->assertStringContainsString('Success InsertBchConditionToTmp', $oOutput);
1109        $this->assertResponseCode(200);
1110    }
1111
1112    // PMTSt4_9.แก้ไขข้อมูลเงื่อนไขพิเศษสาขาในtmp
1113    // Create by : IcePun [05/04/2023]
1114    public function test_PMTSt4_9_แก้ไขข้อมูลเงื่อนไขพิเศษสาขาในtmp(){
1115        print "PMTSt4_9.แก้ไขข้อมูลเงื่อนไขพิเศษสาขาในtmp สำเร็จ \n";
1116        $paData = array (
1117            'tDocNo'        => 'PMTDOCTEMP',
1118            'tBchCode'      => '00001',
1119            'tBchCodeTo'    => '10100',
1120            'tMerCodeTo'    => 'N/A',
1121            'tShpCodeTo'    => 'N/A',
1122            'tPmhStaType'   => '2',
1123            );
1124        $oOutput = $this->request(
1125            'POST',
1126            'document/promotion/cPromotionStep4BchCondition/FSxCPromotionUpdateBchConditionInTmp',
1127            $paData
1128        );
1129        $this->assertStringContainsString('Success UpdateBchConditionInTmp', $oOutput);
1130        $this->assertResponseCode(200);
1131    }
1132    
1133    // PMTSt4_10.ลบข้อมูลเงื่อนไขพิเศษสาขาในtmp
1134    // Create by : IcePun [05/04/2023]
1135    public function test_PMTSt4_10_ลบข้อมูลเงื่อนไขพิเศษสาขาในtmp(){
1136        print "PMTSt4_10.ลบข้อมูลเงื่อนไขพิเศษสาขาในtmp สำเร็จ \n";
1137        $paData = array (
1138            'tBchCode'      => '00001',
1139            'tDocNo'        => 'PMTDOCTEMP',
1140            'tBchCodeTo'    => '10100',
1141            'tMerCodeTo'    => 'N/A',
1142            'tShpCodeTo'    => 'N/A',
1143            );
1144        $oOutput = $this->request(
1145            'POST',
1146            'document/promotion/cPromotionStep4BchCondition/FSxCPromotionDeleteBchConditionInTmp',
1147            $paData
1148        );
1149        $this->assertStringContainsString('Success DeleteBchConditionInTmp', $oOutput);
1150        $this->assertResponseCode(200);
1151    }
1152    /* -- End Branch Condition -- */
1153
1154
1155    /* ---- Channel Condition ---- */
1156    // PMTSt4_11.ตารางแสดงข้อมูลเงื่อนไขพิเศษช่องทางการขาย
1157    // Create by : IcePun [05/04/2023]
1158    // public function test_PMTSt4_11_ตารางแสดงข้อมูลเงื่อนไขพิเศษช่องทางการขาย(){
1159    //     print "PMTSt4_11.ตารางแสดงข้อมูลเงื่อนไขพิเศษช่องทางการขาย สำเร็จ \n";
1160    //     $paData = array (
1161    //         'tBchCode'      => '00001',
1162    //         'nPageCurrent'  => '1',
1163    //         );
1164    //     $oOutput = $this->request(
1165    //         'POST',
1166    //         'document/promotion/cPromotionStep4ChnCondition/FSxCPromotionGetHDChnInTmp',
1167    //         $paData
1168    //     );
1169    //     $this->assertStringContainsString('xCNPanelHeadColorWhite', $oOutput);
1170    //     $this->assertResponseCode(200);
1171    // }
1172
1173    // PMTSt4_12.เพิ่มข้อมูลเงื่อนไขพิเศษช่องทางการขายในtmp
1174    // Create by : IcePun [05/04/2023]
1175    public function test_PMTSt4_12_เพิ่มข้อมูลเงื่อนไขพิเศษช่องทางการขายในtmp(){
1176        print "PMTSt4_12.เพิ่มข้อมูลเงื่อนไขพิเศษช่องทางการขายในtmp สำเร็จ \n";
1177        $paData = array (
1178            'tBchCode'      => '00001',
1179            'tChnList: '    => array('"00001","ขายออนไลน์"'),
1180            );
1181        $oOutput = $this->request(
1182            'POST',
1183            'document/promotion/cPromotionStep4ChnCondition/FSaCPromotionInsertChnToTmp',
1184            $paData
1185        );
1186        $this->assertStringContainsString('', $oOutput);
1187        $this->assertResponseCode(200);
1188    }
1189    
1190    // PMTSt4_13.แก้ไขข้อมูลเงื่อนไขพิเศษช่องทางการขายในtmp
1191    // Create by : IcePun [05/04/2023]
1192    public function test_PMTSt4_13_แก้ไขข้อมูลเงื่อนไขพิเศษช่องทางการขายในtmp(){
1193        print "PMTSt4_13.แก้ไขข้อมูลเงื่อนไขพิเศษช่องทางการขายในtmp สำเร็จ \n";
1194        $paData = array (
1195            'tDocNo'        => 'PMTDOCTEMP',
1196            'tChnCode'      => '00001',
1197            'tBchCode'      => '00001',
1198            'tPmhStaType'   => '2',
1199            );
1200        $oOutput = $this->request(
1201            'POST',
1202            'document/promotion/cPromotionStep4ChnCondition/FSxCPromotionUpdateChnInTmp',
1203            $paData
1204        );
1205        $this->assertStringContainsString('Success UpdateChannelInTmp', $oOutput);
1206        $this->assertResponseCode(200);
1207    }
1208
1209        
1210    // PMTSt4_14.ลบข้อมูลเงื่อนไขพิเศษช่องทางการขายในtmp
1211    // Create by : IcePun [05/04/2023]
1212    public function test_PMTSt4_14_ลบข้อมูลเงื่อนไขพิเศษช่องทางการขายในtmp(){
1213        print "PMTSt4_14.ลบข้อมูลเงื่อนไขพิเศษช่องทางการขายในtmp สำเร็จ \n";
1214        $paData = array (
1215            'tBchCode'      => '00001',
1216            'tDocNo'        => 'PMTDOCTEMP',
1217            'tChnCode'      => '00001',
1218            );
1219        $oOutput = $this->request(
1220            'POST',
1221            'document/promotion/cPromotionStep4ChnCondition/FSxCPromotionDeleteChnInTmp',
1222            $paData
1223        );
1224        $this->assertStringContainsString('Success DeleteChannelInTmp', $oOutput);
1225        $this->assertResponseCode(200);
1226    }
1227    /* -- End Channel Condition -- */
1228
1229    /* ---- Payment Type Condition ---- */
1230    // PMTSt4_15.ตารางแสดงข้อมูลเงื่อนไขพิเศษประเภทการชำระเงิน
1231    // Create by : IcePun [05/04/2023]
1232    // public function test_PMTSt4_15_ตารางแสดงข้อมูลเงื่อนไขพิเศษประเภทการชำระเงิน(){
1233    //     print "PMTSt4_15.ตารางแสดงข้อมูลเงื่อนไขพิเศษประเภทการชำระเงิน สำเร็จ \n";
1234    //     $paData = array (
1235    //         'tBchCode'      => '00001',
1236    //         'nPageCurrent'  => '1',
1237    //         );
1238    //     $oOutput = $this->request(
1239    //         'POST',
1240    //         'document/promotion/cPromotionStep4RcvCondition/FSxCPromotionGetHDRcvInTmp',
1241    //         $paData
1242    //     );
1243    //     $this->assertStringContainsString('xCNPanelHeadColorWhite', $oOutput);
1244    //     $this->assertResponseCode(200);
1245    // }
1246
1247    // PMTSt4_16.เพิ่มข้อมูลเงื่อนไขพิเศษประเภทการชำระเงินในtmp
1248    // Create by : IcePun [05/04/2023]
1249    public function test_PMTSt4_16_เพิ่มข้อมูลเงื่อนไขพิเศษประเภทการชำระเงินในtmp(){
1250        print "PMTSt4_16.เพิ่มข้อมูลเงื่อนไขพิเศษประเภทการชำระเงินในtmp สำเร็จ \n";
1251        $paData = array (
1252            'tBchCode'      => '00001',
1253            'tRcvList: '    => array('"032","คูปองส่วนลด"'),
1254            );
1255        $oOutput = $this->request(
1256            'POST',
1257            'document/promotion/cPromotionStep4RcvCondition/FSaCPromotionInsertRcvToTmp',
1258            $paData
1259        );
1260        $this->assertStringContainsString('', $oOutput);
1261        $this->assertResponseCode(200);
1262    }
1263    
1264    // PMTSt4_17.แก้ไขข้อมูลเงื่อนไขพิเศษประเภทการชำระเงินในtmp
1265    // Create by : IcePun [05/04/2023]
1266    public function test_PMTSt4_17_แก้ไขข้อมูลเงื่อนไขพิเศษประเภทการชำระเงินในtmp(){
1267        print "PMTSt4_17.แก้ไขข้อมูลเงื่อนไขพิเศษประเภทการชำระเงินในtmp สำเร็จ \n";
1268        $paData = array (
1269            'tDocNo'        => 'PMTDOCTEMP',
1270            'tRcvCode'      => '032',
1271            'tBchCode'      => '00001',
1272            'tPmhStaType'   => '2',
1273            );
1274        $oOutput = $this->request(
1275            'POST',
1276            'document/promotion/cPromotionStep4RcvCondition/FSxCPromotionUpdateRcvInTmp',
1277            $paData
1278        );
1279        $this->assertStringContainsString('Success UpdatePaymentTypeInTmp', $oOutput);
1280        $this->assertResponseCode(200);
1281    }
1282
1283        
1284    // PMTSt4_18.ลบข้อมูลเงื่อนไขพิเศษประเภทการชำระเงินในtmp
1285    // Create by : IcePun [05/04/2023]
1286    public function test_PMTSt4_18_ลบข้อมูลเงื่อนไขพิเศษประเภทการชำระเงินในtmp(){
1287        print "PMTSt4_18.ลบข้อมูลเงื่อนไขพิเศษประเภทการชำระเงินในtmp สำเร็จ \n";
1288        $paData = array (
1289            'tBchCode'      => '00001',
1290            'tDocNo'        => 'PMTDOCTEMP',
1291            'tRcvCode'      => '032',
1292            );
1293        $oOutput = $this->request(
1294            'POST',
1295            'document/promotion/cPromotionStep4RcvCondition/FSxCPromotionDeleteRcvInTmp',
1296            $paData
1297        );
1298        $this->assertStringContainsString('Success DeletePaymentTypeInTmp', $oOutput);
1299        $this->assertResponseCode(200);
1300    }
1301    /* -- End Payment Type Condition -- */
1302
1303
1304    /* ---- Customer Level Condition ---- */
1305    // PMTSt4_19.ตารางแสดงข้อมูลเงื่อนไขพิเศษประเภทลูกค้า
1306    // Create by : IcePun [05/04/2023]
1307    // public function test_PMTSt4_19_ตารางแสดงข้อมูลเงื่อนไขพิเศษประเภทลูกค้า(){
1308    //     print "PMTSt4_19.ตารางแสดงข้อมูลเงื่อนไขพิเศษประเภทลูกค้า สำเร็จ \n";
1309    //     $paData = array (
1310    //         'tBchCode'      => '00001',
1311    //         'nPageCurrent'  => '1',
1312    //         );
1313    //     $oOutput = $this->request(
1314    //         'POST',
1315    //         'document/promotion/cPromotionStep4CstCondition/FSxCPromotionGetHDCstInTmp',
1316    //         $paData
1317    //     );
1318    //     $this->assertStringContainsString('xCNPanelHeadColorWhite', $oOutput);
1319    //     $this->assertResponseCode(200);
1320    // }
1321
1322    // PMTSt4_20.เพิ่มข้อมูลเงื่อนไขพิเศษประเภทลูกค้าในtmp
1323    // Create by : IcePun [05/04/2023]
1324    public function test_PMTSt4_20_เพิ่มข้อมูลเงื่อนไขพิเศษประเภทลูกค้าในtmp(){
1325        print "PMTSt4_20.เพิ่มข้อมูลเงื่อนไขพิเศษประเภทลูกค้าในtmp สำเร็จ \n";
1326        $paData = array (
1327            'tBchCode'      => '00001',
1328            'tCstList: '    => array('"00001","ลูกค้าทั่วไป"'),
1329            );
1330        $oOutput = $this->request(
1331            'POST',
1332            'document/promotion/cPromotionStep4CstCondition/FSaCPromotionInsertCstToTmp',
1333            $paData
1334        );
1335        $this->assertStringContainsString('', $oOutput);
1336        $this->assertResponseCode(200);
1337    }
1338    
1339    // PMTSt4_21.แก้ไขข้อมูลเงื่อนไขพิเศษประเภทลูกค้าในtmp
1340    // Create by : IcePun [05/04/2023]
1341    public function test_PMTSt4_21_แก้ไขข้อมูลเงื่อนไขพิเศษประเภทลูกค้าในtmp(){
1342        print "PMTSt4_21.แก้ไขข้อมูลเงื่อนไขพิเศษประเภทลูกค้าในtmp สำเร็จ \n";
1343        $paData = array (
1344            'tDocNo'        => 'PMTDOCTEMP',
1345            'tCstCode'      => '00001',
1346            'tBchCode'      => '00001',
1347            'tPmhStaType'   => '2',
1348            );
1349        $oOutput = $this->request(
1350            'POST',
1351            'document/promotion/cPromotionStep4CstCondition/FSxCPromotionUpdateCstInTmp',
1352            $paData
1353        );
1354        $this->assertStringContainsString('Success UpdatePaymentTypeInTmp', $oOutput);
1355        $this->assertResponseCode(200);
1356    }
1357
1358        
1359    // PMTSt4_22.ลบข้อมูลเงื่อนไขพิเศษประเภทลูกค้าในtmp
1360    // Create by : IcePun [05/04/2023]
1361    public function test_PMTSt4_22_ลบข้อมูลเงื่อนไขพิเศษประเภทลูกค้าในtmp(){
1362        print "PMTSt4_22.ลบข้อมูลเงื่อนไขพิเศษประเภทลูกค้าในtmp สำเร็จ \n";
1363        $paData = array (
1364            'tBchCode'      => '00001',
1365            'tDocNo'        => 'PMTDOCTEMP',
1366            'tCstCode'      => '00001',
1367            );
1368        $oOutput = $this->request(
1369            'POST',
1370            'document/promotion/cPromotionStep4CstCondition/FSxCPromotionDeleteCstInTmp',
1371            $paData
1372        );
1373        $this->assertStringContainsString('Success DeletePaymentTypeInTmp', $oOutput);
1374        $this->assertResponseCode(200);
1375    }
1376    /* -- End Customer Level Condition -- */
1377    
1378    /* ---- Promotion On Promotion Condition ---- */
1379    // PMTSt4_23.ตารางแสดงข้อมูลเงื่อนไขพิเศษโปรโมชันซ้อน
1380    // Create by : IcePun [05/04/2023]
1381    public function test_PMTSt4_23_ตารางแสดงข้อมูลเงื่อนไขพิเศษโปรโมชันซ้อน(){
1382        print "PMTSt4_23.ตารางแสดงข้อมูลเงื่อนไขพิเศษโปรโมชันซ้อน สำเร็จ \n";
1383        $paData = array (
1384            'tBchCode'      => '00001',
1385            'nPageCurrent'  => '1',
1386            );
1387        $oOutput = $this->request(
1388            'POST',
1389            'document/promotion/cPromotionStep4PnpCondition/FSxCPromotionGetHDPnpInTmp',
1390            $paData
1391        );
1392        $this->assertStringContainsString('xCNPanelHeadColorWhite', $oOutput);
1393        $this->assertResponseCode(200);
1394    }
1395
1396    // PMTSt4_24.เพิ่มข้อมูลเงื่อนไขพิเศษประเภทโปรโมรชันซ้อนในtmp
1397    // Create by : IcePun [05/04/2023]
1398    public function test_PMTSt4_24_เพิ่มข้อมูลเงื่อนไขพิเศษประเภทโปรโมรชันซ้อนในtmp(){
1399        print "PMTSt4_24.เพิ่มข้อมูลเงื่อนไขพิเศษประเภทโปรโมรชันซ้อนในtmp สำเร็จ \n";
1400        $paData = array (
1401            'tBchCode'      => '00001',
1402            'tPnpList'      => '"MO0000122000114","400579 ลด 90"',
1403            );
1404        $oOutput = $this->request(
1405            'POST',
1406            'document/promotion/cPromotionStep4PnpCondition/FSaCPromotionInsertPnpToTmp',
1407            $paData
1408        );
1409        $this->assertStringContainsString('', $oOutput);
1410        $this->assertResponseCode(200);
1411    }
1412    
1413    // PMTSt4_25.แก้ไขข้อมูลเงื่อนไขพิเศษประเภทโปรโมชันซ้อนในtmp
1414    // Create by : IcePun [05/04/2023]
1415    public function test_PMTSt4_25_แก้ไขข้อมูลเงื่อนไขพิเศษประเภทโปรโมชันซ้อนในtmp(){
1416        print "PMTSt4_25.แก้ไขข้อมูลเงื่อนไขพิเศษประเภทโปรโมชันซ้อนในtmp สำเร็จ \n";
1417        $paData = array (
1418            'tDocNo'        => 'PMTDOCTEMP',
1419            'tPnpCode'      => 'MO0000122000116',
1420            'tBchCode'      => '00001',
1421            'tPmhStaType'   => '2',
1422            );
1423        $oOutput = $this->request(
1424            'POST',
1425            'document/promotion/cPromotionStep4PnpCondition/FSxCPromotionUpdatePnpInTmp',
1426            $paData
1427        );
1428        $this->assertStringContainsString('Success UpdatePaymentTypeInTmp', $oOutput);
1429        $this->assertResponseCode(200);
1430    }
1431
1432        
1433    // PMTSt4_26.ลบข้อมูลเงื่อนไขพิเศษประเภทโปรโมชันซ้อนในtmp
1434    // Create by : IcePun [05/04/2023]
1435    public function test_PMTSt4_26_ลบข้อมูลเงื่อนไขพิเศษประเภทโปรโมชันซ้อนในtmp(){
1436        print "PMTSt4_26.ลบข้อมูลเงื่อนไขพิเศษประเภทโปรโมชันซ้อนในtmp สำเร็จ \n";
1437        $paData = array (
1438            'tBchCode'      => '00001',
1439            'tDocNo'        => 'PMTDOCTEMP',
1440            'tPnpCode'      => 'MO0000122000116',
1441            );
1442        $oOutput = $this->request(
1443            'POST',
1444            'document/promotion/cPromotionStep4PnpCondition/FSxCPromotionDeletePnpInTmp',
1445            $paData
1446        );
1447        $this->assertStringContainsString('Success DeletePaymentTypeInTmp', $oOutput);
1448        $this->assertResponseCode(200);
1449    }
1450    /* -- End Promotion On Promotion Condition -- */
1451    /* ================ End Step 4 ================ */
1452
1453
1454
1455
1456}