dealer_tender_list.php.20200707 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401
  1. <?php
  2. include $_SERVER['DOCUMENT_ROOT'].'/common/lib/comm.php';
  3. include $_SERVER['DOCUMENT_ROOT'].'/common/dealer_chk.php';
  4. $s_cd_dealer = $_SESSION['s_cd_dealer'];
  5. $s_cd_dealer_p = $_SESSION['s_cd_dealer_p'];
  6. $s_ds_type = $_SESSION['s_ds_type'];
  7. $s_ds_usertype = $_SESSION['s_ds_usertype'];
  8. $s_ds_company_bp1 = $_SESSION['s_ds_company_bp1'];
  9. $s_ds_branch1 = $_SESSION['s_ds_branch1'];
  10. $s_ds_company_bp2 = $_SESSION['s_ds_company_bp2'];
  11. $s_ds_branch2 = $_SESSION['s_ds_branch2'];
  12. $s_ds_company_bp3 = $_SESSION['s_ds_company_bp3'];
  13. $s_ds_branch3 = $_SESSION['s_ds_branch3'];
  14. $PageNo = $_REQUEST['pageno'];
  15. $PageSize = $_REQUEST['PageSize'];
  16. if (empty($PageNo)) {$PageNo=1;}else{$PageNo=$PageNo;}
  17. if (empty($PageSize)) {
  18. $PageSize=8; //목록개수설정
  19. }else{$PageSize=$PageSize;}
  20. $pagestartpoint=($PageNo-1)*$PageSize;
  21. $sql_from = "";
  22. $sql = "where s.ds_delind='N'";
  23. $orderby = "order by s.dt_insert desc";
  24. $searchtype = $_REQUEST['searchtype'];
  25. $searchword = $_REQUEST['searchword'];
  26. $ds_usertype = $_REQUEST['ds_usertype'];
  27. $ds_status = $_REQUEST['ds_status'];
  28. $ds_type = "A0"; //A0 : 매입
  29. $sql = $sql. " and s.ds_type = '$ds_type' ";
  30. if($ds_status == "E0"){ //입찰하지 않은 판매건
  31. $sql = $sql. " and s.dt_approve >= DATE_ADD(now(), INTERVAL '-".LIMIT_TIME_TENDER."' HOUR) ";
  32. if($s_ds_usertype == "B0"){ //kcar 딜러
  33. $sql = $sql. " and (
  34. (
  35. s.ds_company_bp = '$s_ds_company_bp1' and ds_branch = '$s_ds_branch1'
  36. )
  37. or (
  38. s.ds_company_bp = '$s_ds_company_bp2' and ds_branch = '$s_ds_branch2'
  39. )
  40. or (
  41. s.ds_company_bp = '$s_ds_company_bp3' and ds_branch = '$s_ds_branch3'
  42. )
  43. ) ";
  44. }else{
  45. $sql = $sql. " and s.ds_area in (
  46. select
  47. SUBSTRING_INDEX (SUBSTRING_INDEX(nm_area,',',numbers.n),',',-1)
  48. from
  49. (select 1 n union all select 2
  50. union all select 3 union all select 4
  51. union all select 5 union all select 6
  52. union all select 7 union all select 8
  53. union all select 9 union all select 10
  54. union all select 11 union all select 12
  55. union all select 13 union all select 14
  56. union all select 15 union all select 16
  57. union all select 17 union all select 18
  58. union all select 19 union all select 20
  59. ) numbers INNER JOIN dealer_master
  60. on CHAR_LENGTH ( nm_area ) - CHAR_LENGTH ( REPLACE ( nm_area , ',' , '' ))>= numbers . n-1
  61. where cd_dealer = $s_cd_dealer_p
  62. ) ";
  63. }
  64. }
  65. if($s_ds_type == "D0"){ //딜러
  66. $sql_ds_type = " and cd_dealer_p = '$s_cd_dealer' ";
  67. }else{ //딜러-관리자
  68. $sql_ds_type = " and cd_dealer = '$s_cd_dealer' ";
  69. }
  70. if($searchword != ""){
  71. if($searchtype=="" || $searchtype==null){
  72. $sql = $sql. " and (s.nm_name like '$searchword%' or a.nm_number like '$searchword%') ";
  73. }else{
  74. $sql = $sql. " and $searchtype like '$searchword%'";
  75. }
  76. }
  77. if($ds_usertype != ""){
  78. $sql = $sql. " and s.ds_usertype = '$ds_usertype'";
  79. }
  80. if($ds_status == "E0"){ //딜러 업체 소속 입찰 건이 2건 보다 작을 시만 입찰 요청 건에 보이게 한다. //입찰하지 않은 판매건
  81. $sql = $sql. " and s.ds_status in ('E0','F0')";
  82. //딜러 업체 소속 입찰 건이 2건 보다 작을 시만 입찰 요청 건에 보이게 한다.
  83. $sql_from = $sql_from. " left outer join ( ";
  84. $sql_from = $sql_from. " select cd_sale from tender_master where ds_delind = 'N' and cd_dealer_p = '$s_cd_dealer_p' group by cd_sale having count(*) > 1) f ";
  85. $sql_from = $sql_from. " on (s.cd_sale = f.cd_sale) ";
  86. $sql = $sql. " and f.cd_sale is null "; //딜러 업체 소속 입찰 건이 2건 보다 작을 시만 입찰 요청 건에 보이게 한다.
  87. if($s_ds_type == "D1"){ //딜러-관리자
  88. //본인 입찰 건 제외한 입찰 건
  89. $sql_from = $sql_from. " left outer join ( ";
  90. $sql_from = $sql_from. " select cd_sale from tender_master where ds_delind = 'N' and cd_dealer = '$s_cd_dealer' group by cd_sale) g ";
  91. $sql_from = $sql_from. " on (s.cd_sale = g.cd_sale) ";
  92. $sql = $sql. " and g.cd_sale is null "; //본인 입찰 건 제외한 입찰 건
  93. }
  94. }else{
  95. if($ds_status == "F0"){ //입찰 중인 판매건
  96. $sql = $sql. " and s.ds_status in ('E0','F0')";
  97. // $sql = $sql. " and s.cd_sale in (select cd_sale from tender_master where ds_delind = 'N' ".$sql_ds_type." group by cd_sale)"; //20191001이전 지연 쿼리
  98. $sql = $sql. " and exists(select cd_sale from tender_master where cd_sale = s.cd_sale and ds_delind = 'N' ".$sql_ds_type." )"; //20191001 cd_sale_cd_user_cd_dealer index 설정 후 쿼리 변경
  99. }else if($ds_status == "Z0"){ //낙찰된 판매건
  100. $sql = $sql. " and s.ds_status in ('Z0')";
  101. $sql_from = $sql_from. " inner join ( ";
  102. $sql_from = $sql_from. " select cd_sale from tender_master where ds_delind = 'N' and ds_status in ('Z0') ".$sql_ds_type." group by cd_sale) h ";
  103. $sql_from = $sql_from. " on (s.cd_sale = h.cd_sale) ";
  104. // $sql = $sql. " and h.cd_sale is not null ";
  105. }else if($ds_status == "ZS"){ //구매 확정된 판매건
  106. // $sql = $sql. " and s.ds_status in ('Z0')";
  107. // $sql = $sql. " and s.ds_status_contract in ('Z0')";
  108. $sql = $sql. " and s.ds_status in ('ZS')";
  109. $sql_from = $sql_from. " inner join ( ";
  110. $sql_from = $sql_from. " select cd_sale from tender_master where ds_delind = 'N' and ds_status in ('Z0') ".$sql_ds_type." group by cd_sale) i ";
  111. $sql_from = $sql_from. " on (s.cd_sale = i.cd_sale) ";
  112. // $sql = $sql. " and i.cd_sale is not null ";
  113. }else if($ds_status == "ZE"){ //유찰
  114. /*
  115. 관리자의 해약 리스트는 낙찰 상태의 거래 실패의 경우 리스트를 가져 오며,
  116. 사이트에서 유찰상태에 대한 정의가 딱히 정해 진게 없어서 아래의 조건에 해당되는 데이터를 가져온다
  117. 2020-02-02
  118. 관리자 해약 리스트 : and s.ds_status in ('Z0') and s.ds_status_contract in ('C0')
  119. 1. 낙찰상태로 변경됐으나 본인이 안된 경우
  120. - sale_master.ds_status = 'Z0' and tender_master.ds_status = 'A0'
  121. 2. 낙찰상태로 변경 됐고 본인이 된 경우
  122. 1) 거래 실패 처리 할 경우
  123. - sale_master.ds_status = 'Z0' and ds_status_contract = 'C0'
  124. 2) 견적 실수로 처리 할 경우
  125. - sale_master.ds_status = 'ZE'
  126. 3. 입찰 시간 초과로 경매 종료 됐을 경우
  127. - sale_master.ds_status = 'E0' and dt_approve + 낙찰시간 < 현재시간
  128. */
  129. $sql_from.= " inner join (
  130. -- 낙찰상태로 변경됐으나 본인이 안된 경우
  131. select s.cd_sale from sale_master s
  132. inner join (
  133. select cd_sale
  134. from tender_master
  135. where ds_status = 'A0'
  136. $sql_ds_type
  137. group by cd_sale) i on (s.cd_sale = i.cd_sale)
  138. where s.ds_status = 'Z0'
  139. union
  140. -- 2. 낙찰상태로 변경 됐고 본인이 된 경우
  141. -- 1) 거래 실패 처리 할 경우
  142. -- 2) 견적 실수로 처리 할 경우
  143. -- 3. 입찰 시간 초과로 경매 종료 됐을 경우
  144. select s.cd_sale from sale_master s
  145. inner join (
  146. select cd_sale
  147. from tender_master
  148. where ds_status = 'Z0'
  149. $sql_ds_type
  150. group by cd_sale) i on (s.cd_sale = i.cd_sale)
  151. where ((s.ds_status = 'Z0' and s.ds_status_contract = 'C0')
  152. or s.ds_status = 'ZE'
  153. or (s.ds_status = 'E0' and getRemainTimeByPhase('".LIMIT_TIME_TENDER."', '".LIMIT_TIME_SELL."', s.dt_approve, now()) = '0분'))
  154. ) sum_a on sum_a.cd_sale = s.cd_sale";
  155. }else{
  156. $sql = $sql. " and 1!=1 ";
  157. }
  158. }
  159. if($ds_status == "E0"){
  160. $nm_title = "입찰대기 리스트";
  161. }else if($ds_status == "F0"){
  162. $nm_title = "입찰중 리스트";
  163. }else if($ds_status == "Z0"){
  164. $nm_title = "낙찰 리스트";
  165. }else if($ds_status == "ZE"){
  166. $nm_title = "유찰 리스트";
  167. }else if($ds_status == "ZS"){
  168. $nm_title = "구매확정 리스트";
  169. }
  170. $totalrows = @mysql_result(mysql_query("select count(*) from sale_master s inner join car_master a on ( s.cd_car = a.cd_car ) $sql_from $sql"),0,0);
  171. ?>
  172. <!DOCTYPE html>
  173. <HTML lang="ko">
  174. <head>
  175. <meta charset="utf-8">
  176. <title>UPRO</title>
  177. <meta name="viewport" content="user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, width=device-width">
  178. <meta name="format-detection" content="telephone=no">
  179. <link rel="stylesheet" type="text/css" href="/m/css/common.css">
  180. <link rel="stylesheet" type="text/css" href="/m/css/sub.css">
  181. <script type="text/javascript" charset="utf-8" src="/m/js/jquery-1.11.2.min.js"></script>
  182. <script type="text/javascript" charset="utf-8" src="/m/js/ui.js"></script>
  183. </head>
  184. <body>
  185. <!-- s : header -->
  186. <? include("../inc/inc_header.php"); ?>
  187. <!-- // e : header -->
  188. <!-- s : container -->
  189. <section id="container">
  190. <section id="visual" class="visual_mypage">
  191. <h2>마이페이지</h2>
  192. <p>쉽고 간편한 내차팔기, 견적산출,<br>최종 매각까지 어떤 수수료도 요구하지 않습니다.</p>
  193. </section>
  194. <section id="content">
  195. <? include("./inc_menu_dealer.php") ?>
  196. <!-- <p class="sort">
  197. <select style="width:100%;">
  198. <option value="">최근</option>
  199. <option value="">종료임박순</option>
  200. <option value="">응찰적은순</option>
  201. </select>
  202. </p>-->
  203. <ul class="car_list">
  204. <?
  205. if($totalrows>0) {
  206. $r = mysql_query("SELECT
  207. a.*
  208. , b.nm_model
  209. , c.nm_grade
  210. , d.nm_brand
  211. , e.nm_model_sub
  212. , getCode('car_master','ds_type',a.ds_type) as nm_type
  213. , getCode('car_master','ds_open',a.ds_open) as nm_open
  214. , getCode('car_master','ds_sales',a.ds_sales) as nm_sales
  215. , getCode('car_master','ds_transmission',a.ds_transmission) as nm_transmission
  216. , getCode('member_master','ds_area',s.ds_area) as nm_area
  217. , getCode('sale_master','ds_status',s.ds_status) as nm_status
  218. , s.cd_sale
  219. , s.nm_name nm_name_sale
  220. , s.ds_status ds_status_sale
  221. , case when s.ds_status in ('B0','C0') then '미승인' when s.ds_status in ('D0') then '반려' when s.ds_status in ('E0','F0') then case when 'E0' = '$ds_status' then '입찰대기' else '입찰중' end when s.ds_status in ('G0') then '입찰마감' when s.ds_status in ('Z0') then '낙찰' when s.ds_status in ('ZS') then '구매확정' else '' end as nm_status_sale
  222. , case when a.ds_accident in ('A0') then '유' when a.ds_accident in ('B0') then '무' end as nm_act_yn_name
  223. , getRemainTime(".LIMIT_TIME_TENDER.", s.dt_approve, now()) as time_limit_tender
  224. , getRemainTime(".LIMIT_TIME_SELL.", s.dt_approve, now()) as time_limit_sell
  225. , ifnull((select min(nm_price) from tender_master where ds_delind = 'N' and cd_sale = s.cd_sale ".$sql_ds_type."), '') nm_price_tender
  226. FROM sale_master s
  227. inner join car_master a
  228. on (s.cd_car = a.cd_car)
  229. left outer join car_model b
  230. on (a.cd_model = b.cd_model)
  231. left outer join car_grade c
  232. on (a.cd_grade = c.cd_grade)
  233. left outer join car_brand d
  234. on (a.cd_brand = d.cd_brand)
  235. left outer join car_model_sub e
  236. on (a.cd_model_sub = e.cd_model_sub)
  237. $sql_from
  238. $sql $orderby LIMIT $pagestartpoint,$PageSize");
  239. $i=1;
  240. while($col = mysql_fetch_array($r)) {
  241. $tmpNum =$totalrows-($PageSize*($PageNo-1));
  242. $no = ($tmpNum - $i)+1;
  243. ?>
  244. <?
  245. if($col[ds_status_sale] == "ZS"){
  246. ?>
  247. <li onclick="location.href='./dealer_tender_view3.php?list_url=<?=$list_url?>&cd_sale=<?=$col[cd_sale]?>&ds_status_sale=<?=$col[ds_status_sale]?>&ds_status=<?=$ds_status?>&ListPageNo=<?=$PageNo?>';" style="cursor:pointer;">
  248. <?
  249. }else if($col[ds_status_sale] == "Z0" && $ds_status != "ZE"){
  250. ?>
  251. <li onclick="location.href='./dealer_tender_view2.php?list_url=<?=$list_url?>&cd_sale=<?=$col[cd_sale]?>&ds_status_sale=<?=$col[ds_status_sale]?>&ds_status=<?=$ds_status?>&ListPageNo=<?=$PageNo?>';" style="cursor:pointer;">
  252. <?
  253. }else{
  254. ?>
  255. <li onclick="location.href='./dealer_tender_view.php?list_url=<?=$list_url?>&cd_sale=<?=$col[cd_sale]?>&ds_status_sale=<?=$col[ds_status_sale]?>&ds_status=<?=$ds_status?>&ListPageNo=<?=$PageNo?>';" style="cursor:pointer;">
  256. <?
  257. }
  258. ?>
  259. <div>
  260. <span class="thumb"><img src="<?=UPLOAD_PATH_CAR?>nm_file_main/ratio/<?=$col[nm_file_front]?>" alt=""></span>
  261. <dl>
  262. <dt><?=$col[nm_model]." ".$col[nm_model_sub]." ".$col[nm_grade]?></dt>
  263. <dd>주행거리 : <?=$col[nm_mileage]?>km</dd>
  264. <dd>최초등록일 : <?=$col[nm_regdate_mm]?> / <?=$col[nm_regdate_yyyy]?></dd>
  265. <dd>사고유무 : <?=$col[nm_act_yn_name]?></dd>
  266. <dd>판매지역 : <?=$col[nm_area]?></dd>
  267. <?
  268. if($ds_status != "E0"){ //입찰하지 않은 판매건
  269. ?>
  270. <dd>입찰금액 : <?=$col[nm_price_tender]?>만원 </dd>
  271. <?
  272. }
  273. ?>
  274. <? if($ds_status == "E0" || $ds_status == "F0"){ ?>
  275. <dd>마감시간 : <?=$col[time_limit_tender]?></dd>
  276. <? } ?>
  277. </dl>
  278. <div class="flag">
  279. <p>
  280. <? if($col[time_limit_sell]=="0분" && ($col[ds_status_sale] == "E0" || $col[ds_status_sale] == "F0")){ ?>
  281. 거래마감
  282. <? }else{ ?>
  283. <? if($ds_status == "ZE") {?>
  284. 유찰
  285. <? } else {?>
  286. <?=$col[nm_status_sale]?>
  287. <? } ?>
  288. <? } ?>
  289. </p>
  290. </div>
  291. </li>
  292. <?
  293. $i++;
  294. }
  295. }else{
  296. ?>
  297. <li class="info_no">
  298. 등록된 정보가 없습니다.
  299. </li>
  300. <?
  301. }
  302. ?>
  303. <!-- <li>
  304. <div>
  305. <span class="thumb"></span>
  306. <dl>
  307. <dt>GLA-Class 200d 4M</dt>
  308. <dd>주행거리 : 28,980km</dd>
  309. <dd>최초등록일 : 11 / 2017</dd>
  310. <dd>사고유무 : 무</dd>
  311. <dd>판매지역 : 서울</dd>
  312. <dd>마감시한 : 9시간 30분</dd>
  313. </dl>
  314. </div>
  315. </li>-->
  316. </ul>
  317. <div class="paging">
  318. <?
  319. $url = "./dealer_tender_list.php?searchtype=$searchtype&searchword=$searchword&ds_status=$ds_status&ds_usertype=$ds_usertype";
  320. ListPg1($url ,$PageNo,$PageSize,10,$totalrows,$leftboard[1],$rootpath);
  321. ?>
  322. <!-- <span>
  323. <a href="#" class="first">맨처음</a>
  324. <a href="#" class="prev">이전</a>
  325. </span>
  326. <strong>1</strong>
  327. <a href="#">2</a>
  328. <a href="#">3</a>
  329. <a href="#">4</a>
  330. <a href="#">5</a>
  331. <span>
  332. <a href="#" class="next">다음</a>
  333. <a href="#" class="last">맨마지막</a>
  334. </span>-->
  335. </div>
  336. </section>
  337. </section>
  338. <!-- e : container -->
  339. <!-- s : footer -->
  340. <? include("../inc/inc_footer.php"); ?>
  341. <!-- // e : footer -->
  342. </body>
  343. </html>
  344. <?
  345. mysql_close($connect);
  346. ?>