$params['contract_no'], 'type' => $params['type'], 'contract_url' => $params['contract_url'], 'evidence_url' => $params['evidence_url'], 'url' => $params['url'], 'signing_timer' => $params['signing_timer'], ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 编辑 * @param array $params * @return bool * @author likeadmin * @date 2023/09/13 17:01 */ public static function edit(array $params): bool { Db::startTrans(); try { ShopContract::where('id', $params['id'])->update([ 'file' => $params['file'], ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 删除 * @param array $params * @return bool * @author likeadmin * @date 2023/09/13 17:01 */ public static function delete(array $params): bool { return ShopContract::destroy($params['id']); } /** * @notes 获取详情 * @param $params * @return array * @author likeadmin * @date 2023/09/13 17:01 */ public static function detail($params): array { $data = Db::name('shop_contract')->where('id', $params['id']) ->withAttr('party_b_info', function ($value, $data) { $field = ['id,company_name,company_type,company_type company_type_name,organization_code, province,city,area,street,village,brigade,address,province province_name,city city_name,area area_name,street street_name,village village_name,brigade brigade_name,master_phone,master_name, qualification']; $shopMerchant = ShopMerchant::where(['id' => $data['party_b']])->field($field)->find()->toArray(); return $shopMerchant; }) ->withAttr('party_a_info', function ($value, $data) { $field = ['id,company_name,company_type,company_type company_type_name,organization_code, province,city,area,street,village,brigade,address,province province_name,city city_name,area area_name,street street_name,village village_name,brigade brigade_name,master_phone,master_name, qualification']; $shopMerchant = ShopMerchant::where(['id' => $data['party_a']])->field($field)->find()->toArray(); return $shopMerchant; }) ->withAttr('status_name', function ($value, $data) { return $data['status'] == 1 ? '已签约' : '未签约'; }) ->find(); dd($data); $data['signed_contract_url'] = self::getSignedContract($data); return $data; } public static function getSignedContract($contract) { $signedContractUrl = ''; if($contract['status'] == 1){ if ($contract['contract_url'] == '') { $res = app(JunziqianController::class)->download_shop_file($contract['contract_no'])->getData(); if ($res['code'] == 1) { $signedContractUrl = $res['data']['url']; } }else { $signedContractUrl = env('url.url_prefix').$contract['contract_url']; } } return $signedContractUrl; } }