Merchant.php 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. <?php namespace Pay\Yspay;
  2. use Dever;
  3. class Merchant
  4. {
  5. public function selectRelate_api()
  6. {
  7. $value = Dever::input('value');
  8. $id = Dever::input('id');
  9. $data = array();
  10. if ($id) {
  11. $data = Dever::db('pay/yspay_merchant')->find($id);
  12. if ($value != $data['project_id']) {
  13. $data['relate_id'] = -1;
  14. }
  15. }
  16. $config['relate_id'] = Dever::db('pay/yspay_merchant')->config['struct']['relate_id'];
  17. $config['relate_id']['update'] = 'select';
  18. $config['relate_id']['update_search'] = 'pay/yspay/merchant.search?project_id=' . $value;
  19. $result = Dever::load('manage/database')->update_struct(array('struct' => $config), false, $data, -1, '', true);
  20. return $result;
  21. }
  22. public function search_api()
  23. {
  24. $id = Dever::input('id');
  25. $keyword = Dever::input('keyword');
  26. $where = array();
  27. if ($keyword) {
  28. $where['name'] = $keyword;
  29. }
  30. $id = Dever::input('where_id');
  31. if ($id) {
  32. $where['id_no'] = $id;
  33. }
  34. $project_id = Dever::input('project_id', 1);
  35. $project = Dever::db('pay/yspay_project')->find($project_id);
  36. return Dever::search($project['table'], $where);
  37. }
  38. public function up($account_id, $project_id, $id, $name)
  39. {
  40. $data = array();
  41. $data['account_id'] = $account_id;
  42. $data['project_id'] = $project_id;
  43. $data['relate_id'] = $id;
  44. $info = Dever::db('pay/yspay_merchant')->find($data);
  45. if (!$info) {
  46. $data['name'] = $name;
  47. $data['type'] = 1;
  48. $data['status'] = 2;
  49. return Dever::db('pay/yspay_merchant')->insert($data);
  50. }
  51. return false;
  52. }
  53. public function getOther($account_id, $table, $relate_id, $order_num, $cash)
  54. {
  55. $result = array();
  56. $yspay = Dever::db('pay/yspay')->find(array('account_id' => $account_id));
  57. if ($cash && $cash > 0 && $yspay && $yspay['type'] == 2) {
  58. # 分账拆单
  59. $merchant = array();
  60. if ($table == 2) {
  61. $merchant = Dever::db('pay/yspay_merchant')->find(array('account_id' => $account_id, 'type' => 2));
  62. if (strstr($order_num, '_')) {
  63. $temp = explode('_', $order_num);
  64. $order_num = $temp[0];
  65. }
  66. $order_num .= '_O';
  67. } else {
  68. $project = Dever::db('pay/yspay_project')->find(array('table' => $table));
  69. if ($project) {
  70. $merchant = Dever::db('pay/yspay_merchant')->find(array('account_id' => $account_id, 'project_id' => $project['id'], 'relate_id' => $relate_id));
  71. }
  72. }
  73. if ($merchant && $merchant['mid']) {
  74. $result = array(
  75. 'mid' => $merchant['mid'],
  76. 'order_id' => $order_num,
  77. 'amount' => $cash,
  78. );
  79. }
  80. }
  81. return $result;
  82. }
  83. public function getInfo($account_id, $project_id, $id, $parent)
  84. {
  85. list($project, $table) = explode('/', $parent);
  86. $where = array();
  87. $where['account_id'] = $account_id;
  88. $where['project_id'] = $project_id;
  89. $where['relate_id'] = $id;
  90. $data = Dever::db('pay/yspay_merchant')->find($where);
  91. $html = '';
  92. if ($data) {
  93. if (!$data['mid']) {
  94. $data['mid'] = '编辑信息';
  95. }
  96. $url = Dever::url('project/database/update?project=pay&table=yspay_merchant&set=1&where_id='.$data['id'], 'manage');
  97. $html .= '<a style="cursor:pointer" onclick="fastEdit($(this),\''.$url.'\',\'编辑信息\', \'\')">'.$data['mid'].'</a>';
  98. $step = false;
  99. if ($data['status'] == 2) {
  100. $sign = Dever::db('pay/yspay_sign')->one(array('merchant_id' => $data['id']));
  101. if ($sign && $sign['step']) {
  102. $step = $sign['step'];
  103. }
  104. }
  105. if ($data['status'] == 1) {
  106. $url = Dever::url('project/database/list?project=pay&table=yspay_cash&search_option_merchant_id='.$data['id'].'&search_option_account_id='.$data['account_id'].'&oper_table='.$table.'&oper_project=' . $project, 'manage');
  107. $html .= '&nbsp;&nbsp;<a style="cursor:pointer" href="'.$url.'">[资金流水]</a>';
  108. }
  109. if ($data['status'] == 2) {
  110. $url = Dever::url('project/database/update?project=pay&table=yspay_sign&search_option_merchant_id='.$data['id'].'&search_option_account_id='.$data['account_id'].'&where_id='.$data['id'].'&oper_table='.$table.'&oper_project=' . $project, 'manage');
  111. $html .= '&nbsp;&nbsp;<a style="cursor:pointer" onclick="fastEdit($(this),\''.$url.'\',\'签约资料\', \'\')">[签约资料]</a>';
  112. if ($step == -1) {
  113. $content = '';
  114. $title = '';
  115. $url = Dever::url('pay/yspay/sign.handle?sign_id=' . $data['id']);
  116. $html .= '&nbsp;&nbsp;<a style="cursor:pointer" href="javascript:;" onclick="load(\'' . $url . '\', \'' . $content . '\', \'' . $title . '\')">[签约提审]</a>';
  117. }
  118. if ($step == 2) {
  119. $url = Dever::url('project/database/update?project=pay&table=yspay_sign&col=cashwhere_id='.$data['id'], 'manage');
  120. $html .= '&nbsp;&nbsp;<a style="cursor:pointer" onclick="fastEdit($(this),\''.$url.'\',\'签约打款\', \'\')">[签约打款]</a>';
  121. }
  122. if ($step == 4) {
  123. $url = Dever::load('pay/yspay/sign.getAgreement', $data['id']);
  124. $html .= '&nbsp;&nbsp;<a style="cursor:pointer" data-clipboard-text="'.$url.'" class="clipboard"><button type="button" class="btn btn-info btn-rounded waves-effect waves-light m-b-5 ">[签约合同]</button></a>';
  125. }
  126. }
  127. return $html;
  128. } else {
  129. return '暂无';
  130. }
  131. }
  132. }