$params['bid_info_id'], 'business_opportunity_id' => $params['business_opportunity_id'], 'part_a' => $params['part_a'], 'collection_company' => $params['collection_company'], 'collection_account' => $params['collection_account'], 'province' => $params['province'] ?? '', 'city' => $params['city'] ?? '', 'collection_bank' => $params['collection_bank'], 'collection_open_bank' => $params['collection_open_bank'], 'agent' => $params['agent'], 'head_dept' => $params['head_dept'], 'bid_margin' => $params['bid_margin'], 'pay_type' => $params['pay_type'], 'end_date' => !empty($params['end_date']) ? strtotime($params['end_date']) : 0, 'expected_return_date' => !empty($params['expected_return_date']) ? strtotime($params['expected_return_date']) : 0, 'remark' => $params['remark'] ?? '', 'annex' => $params['annex'] ? json_encode($params['annex']) : null, 'create_user' => $params['create_user'], 'create_time' => !empty($params['create_time']) ? strtotime($params['create_time']) : time(), ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 编辑财务管理--投标保证金申请 * @param array $params * @return bool * @author likeadmin * @date 2024/04/13 15:24 */ public static function edit(array $params): bool { Db::startTrans(); try { FinancialBidMargin::where('id', $params['id'])->update([ 'bid_info_id' => $params['bid_info_id'], 'business_opportunity_id' => $params['business_opportunity_id'], 'part_a' => $params['part_a'], 'collection_company' => $params['collection_company'], 'collection_account' => $params['collection_account'], 'province' => $params['province'] ?? '', 'city' => $params['city'] ?? '', 'collection_bank' => $params['collection_bank'], 'collection_open_bank' => $params['collection_open_bank'], 'agent' => $params['agent'], 'head_dept' => $params['head_dept'], 'bid_margin' => $params['bid_margin'], 'pay_type' => $params['pay_type'], 'end_date' => !empty($params['end_date']) ? strtotime($params['end_date']) : 0, 'expected_return_date' => !empty($params['expected_return_date']) ? strtotime($params['expected_return_date']) : 0, 'remark' => $params['remark'] ?? '', 'annex' => $params['annex'] ? json_encode($params['annex']) : null, 'create_user' => $params['create_user'], 'create_time' => !empty($params['create_time']) ? strtotime($params['create_time']) : time(), ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 删除财务管理--投标保证金申请 * @param array $params * @return bool * @author likeadmin * @date 2024/04/13 15:24 */ public static function delete(array $params): bool { return FinancialBidMargin::destroy($params['id']); } /** * @notes 获取财务管理--投标保证金申请详情 * @param $params * @return array * @author likeadmin * @date 2024/04/13 15:24 */ public static function detail($params): array { $data = FinancialBidMargin::withoutField('update_time,delete_time')->findOrEmpty($params['id']); $project = MarketingBusinessOpportunity::field('project_name')->where('id', $data['business_opportunity_id'])->findOrEmpty(); $company = MarketingCustom::field('name')->where('id', $data['part_a'])->findOrEmpty(); $province = GeoProvince::field('province_name')->where('province_code', $data['province'])->findOrEmpty(); $city = GeoCity::field('city_name')->where('city_code', $data['city'])->findOrEmpty(); $agent = Admin::field('name')->where('id', $data['agent'])->findOrEmpty(); $head_dept = Dept::field('name')->where('id', $data['head_dept'])->findOrEmpty(); $data['project_name'] = $project?->project_name; $data['part_a_name'] = $company?->name; $data['province_name'] = $province?->province_name; $data['city_name'] = $city?->city_name; $data['agent_name'] = $agent?->name; $data['head_dept_name'] = $head_dept?->name; $data['pay_type_text'] = $data->pay_type_text; return $data->toArray(); } }