| | |
| | | @RequestParam(required = false) String regionCode, |
| | | @RequestParam(required = false) String name, |
| | | @RequestParam(required = false) String phone, |
| | | @RequestParam(required = false) String agentName, |
| | | @RequestParam(required = false) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") LocalDateTime createdFrom, |
| | | @RequestParam(required = false) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") LocalDateTime createdTo, |
| | | @RequestParam(required = false) Integer status) { |
| | | return ApiResponse.ok(clinicAppService.page(page, pageSize, regionCode, name, phone, createdFrom, createdTo, status)); |
| | | return ApiResponse.ok(clinicAppService.page(page, pageSize, regionCode, name, phone, agentName, createdFrom, createdTo, status)); |
| | | } |
| | | |
| | | @GetMapping("/clinics/clinic-import-template") |
| | |
| | | @RequestParam(required = false) String regionCode, |
| | | @RequestParam(required = false) String name, |
| | | @RequestParam(required = false) String phone, |
| | | @RequestParam(required = false) String agentName, |
| | | @RequestParam(required = false) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") LocalDateTime createdFrom, |
| | | @RequestParam(required = false) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") LocalDateTime createdTo, |
| | | @RequestParam(required = false) Integer status) throws IOException { |
| | | clinicAppService.export(regionCode, name, phone, createdFrom, createdTo, status, response); |
| | | clinicAppService.export(regionCode, name, phone, agentName, createdFrom, createdTo, status, response); |
| | | } |
| | | |
| | | @GetMapping("/clinics/regions") |
| | |
| | | @Param("regionCode") String regionCode, |
| | | @Param("name") String name, |
| | | @Param("phone") String phone, |
| | | @Param("agentName") String agentName, |
| | | @Param("createdFrom") LocalDateTime createdFrom, |
| | | @Param("createdTo") LocalDateTime createdTo, |
| | | @Param("status") Integer status); |
| | |
| | | List<ClinicListRow> selectClinicList(@Param("regionCode") String regionCode, |
| | | @Param("name") String name, |
| | | @Param("phone") String phone, |
| | | @Param("agentName") String agentName, |
| | | @Param("createdFrom") LocalDateTime createdFrom, |
| | | @Param("createdTo") LocalDateTime createdTo, |
| | | @Param("status") Integer status); |
| | |
| | | private String phone; |
| | | private String regionName; |
| | | private Integer status; |
| | | private String agentName; |
| | | private Integer userCount; |
| | | private LocalDateTime createdAt; |
| | | private String businessLicenseUrl; |
| | |
| | | String regionCode, |
| | | String name, |
| | | String phone, |
| | | String agentName, |
| | | LocalDateTime createdFrom, |
| | | LocalDateTime createdTo, |
| | | Integer status) { |
| | |
| | | trimToNull(regionCode), |
| | | trimToNull(name), |
| | | trimToNull(phone), |
| | | trimToNull(agentName), |
| | | createdFrom, |
| | | createdTo, |
| | | status |
| | |
| | | public void export(String regionCode, |
| | | String name, |
| | | String phone, |
| | | String agentName, |
| | | LocalDateTime createdFrom, |
| | | LocalDateTime createdTo, |
| | | Integer status, |
| | |
| | | trimToNull(regionCode), |
| | | trimToNull(name), |
| | | trimToNull(phone), |
| | | trimToNull(agentName), |
| | | createdFrom, |
| | | createdTo, |
| | | status |
| | |
| | | item.setPhone(row.getPhone() == null ? "-" : PhoneMasker.mask(row.getPhone())); |
| | | item.setRegionName(defaultText(row.getRegionName())); |
| | | item.setStatus(row.getStatus()); |
| | | item.setAgentName(defaultText(row.getAgentName())); |
| | | item.setUserCount(row.getUserCount() == null ? 0 : row.getUserCount()); |
| | | item.setCreatedAt(row.getCreatedAt()); |
| | | item.setBusinessLicenseUrl(trimToNull(row.getBusinessLicenseUrl())); |
| | |
| | | private String phone; |
| | | private String regionName; |
| | | private Integer status; |
| | | private String agentName; |
| | | private Integer userCount; |
| | | private LocalDateTime createdAt; |
| | | private String businessLicenseUrl; |
| | |
| | | <if test="phone != null and phone.trim() != ''"> |
| | | AND c.contact_phone LIKE CONCAT('%', #{phone}, '%') |
| | | </if> |
| | | <if test="agentName != null and agentName.trim() != ''"> |
| | | AND pa.agent_name LIKE CONCAT('%', #{agentName}, '%') |
| | | </if> |
| | | <if test="createdFrom != null"> |
| | | AND c.created_at >= #{createdFrom} |
| | | </if> |
| | |
| | | ELSE NULL |
| | | END AS regionName, |
| | | c.status, |
| | | pa.agent_name AS agentName, |
| | | COUNT(u.id) AS userCount, |
| | | c.created_at AS createdAt, |
| | | c.business_license_url AS businessLicenseUrl |
| | | FROM tcm_clinic c |
| | | LEFT JOIN tcm_provincial_agent pa ON pa.id = c.agent_id AND pa.deleted = 0 |
| | | LEFT JOIN tcm_app_user u ON u.clinic_id = c.id AND u.deleted = 0 |
| | | <include refid="ClinicWhere"/> |
| | | GROUP BY |
| | |
| | | c.city_name, |
| | | c.district_name, |
| | | c.status, |
| | | pa.agent_name, |
| | | c.created_at, |
| | | c.business_license_url |
| | | ORDER BY c.id DESC |
| | |
| | | ELSE NULL |
| | | END AS regionName, |
| | | c.status, |
| | | pa.agent_name AS agentName, |
| | | COUNT(u.id) AS userCount, |
| | | c.created_at AS createdAt, |
| | | c.business_license_url AS businessLicenseUrl |
| | | FROM tcm_clinic c |
| | | LEFT JOIN tcm_provincial_agent pa ON pa.id = c.agent_id AND pa.deleted = 0 |
| | | LEFT JOIN tcm_app_user u ON u.clinic_id = c.id AND u.deleted = 0 |
| | | <include refid="ClinicWhere"/> |
| | | GROUP BY |
| | |
| | | c.city_name, |
| | | c.district_name, |
| | | c.status, |
| | | pa.agent_name, |
| | | c.created_at, |
| | | c.business_license_url |
| | | ORDER BY c.id DESC |
| | |
| | | regionCode?: string[]; |
| | | name?: string; |
| | | phone?: string; |
| | | agentName?: string; |
| | | status?: number; |
| | | createdRange?: Dayjs[]; |
| | | }; |
| | |
| | | phone?: string; |
| | | regionName?: string; |
| | | status: number; |
| | | agentName?: string; |
| | | userCount: number; |
| | | createdAt: string; |
| | | businessLicenseUrl?: string; |
| | |
| | | regionCode: getSelectedRegionCode(values.regionCode), |
| | | name: values.name?.trim() || undefined, |
| | | phone: values.phone?.trim() || undefined, |
| | | agentName: values.agentName?.trim() || undefined, |
| | | status: values.status, |
| | | createdFrom: values.createdRange?.[0] |
| | | ? dayjs(values.createdRange[0]).startOf('day').format('YYYY-MM-DD HH:mm:ss') |
| | |
| | | render: (value) => (value === 1 ? '启用' : value === 2 ? '注销' : '禁用'), |
| | | }, |
| | | { |
| | | title: '省代', |
| | | dataIndex: 'agentName', |
| | | width: 140, |
| | | render: (value) => value || '-', |
| | | }, |
| | | { |
| | | title: '注册时间', |
| | | dataIndex: 'createdAt', |
| | | width: 180, |
| | |
| | | ]} |
| | | /> |
| | | </Form.Item> |
| | | <Form.Item label="省代" name="agentName"> |
| | | <Input placeholder="请输入" allowClear /> |
| | | </Form.Item> |
| | | <Form.Item label="注册时间" name="createdRange"> |
| | | <DatePicker.RangePicker className="member-clinic-search-form__range" /> |
| | | </Form.Item> |