diff --git a/src/components/product-dialog/index.less b/src/components/product-dialog/index.less index 7ea6aa8..d89cb84 100644 --- a/src/components/product-dialog/index.less +++ b/src/components/product-dialog/index.less @@ -654,6 +654,11 @@ &.highlight { color: @blHighlightColor; } + + .highlight-span { + color: @blHighlightColor; + display: inline; + } } &__button { diff --git a/src/components/product-dialog/steps-ui/company-publish-job-buy.tsx b/src/components/product-dialog/steps-ui/company-publish-job-buy.tsx index 60cbac8..e4fd2e2 100644 --- a/src/components/product-dialog/steps-ui/company-publish-job-buy.tsx +++ b/src/components/product-dialog/steps-ui/company-publish-job-buy.tsx @@ -26,7 +26,7 @@ interface Item { title: string; price: string; amt: number; - contents: { content: string; highlight?: boolean }[]; + contents: { content: string; highlight?: boolean; inlineHighlight?: string }[]; badge?: string; } @@ -52,9 +52,8 @@ const LIST: Item[] = [ amt: 48, badge: '限时体验', contents: [ - { content: '-通告每日优先展示' }, - { content: '-每天可查看20个主播详情' }, - { content: '-每天可主动联系10个主播', highlight: true }, + { content: '-通告每日优先展示', highlight: true }, + { content: '-每天可查看20个主播详情,', inlineHighlight: '可主动联系10个' }, // { content: '-播络可代为联系20个主播(高成功率)', highlight: true }, { content: '-有效期一个月' }, ], @@ -66,9 +65,8 @@ const LIST: Item[] = [ amt: 96, badge: '6.7折', contents: [ - { content: '-通告每日优先展示' }, - { content: '-每天可查看20个主播详情' }, - { content: '-每天可主动联系10个主播' }, + { content: '-通告每日优先展示', highlight: true }, + { content: '-每天可查看20个主播详情', inlineHighlight: '可主动联系10个' }, // { content: '-播络可代为联系60个主播(高成功率)', highlight: true }, { content: '-有效期一个季度' }, ], @@ -161,6 +159,7 @@ export default function CompanyPublishJobBuy(props: IProps) { key={i.content} > {i.content} + {i.inlineHighlight &&
{i.inlineHighlight}
} ))} diff --git a/src/constants/city.ts b/src/constants/city.ts index d046687..d036108 100644 --- a/src/constants/city.ts +++ b/src/constants/city.ts @@ -5934,6 +5934,11 @@ export const GROUP_CITY_INDEXES_LIST = [ cityName: '杭州', keyword: 'HANGZHOU杭州', }, + { + cityCode: '230100', + cityName: '哈尔滨', + keyword: 'HAERBIN哈尔滨', + }, { cityCode: '340100', cityName: '合肥', @@ -5941,6 +5946,16 @@ export const GROUP_CITY_INDEXES_LIST = [ }, ], }, + { + letter: 'J', + data: [ + { + cityCode: '370100', + cityName: '济南', + keyword: 'JINAN济南', + }, + ], + }, { letter: 'K', data: [ @@ -5984,11 +5999,21 @@ export const GROUP_CITY_INDEXES_LIST = [ cityName: '上海', keyword: 'SHANGHAI上海', }, + { + cityCode: '210100', + cityName: '沈阳', + keyword: 'SHENYANG沈阳', + }, { cityCode: '440300', cityName: '深圳', keyword: 'SHENZHEN深圳', }, + { + cityCode: '130100', + cityName: '石家庄', + keyword: 'SHIJIAZHUANG石家庄', + }, { cityCode: '320500', cityName: '苏州', @@ -6004,6 +6029,11 @@ export const GROUP_CITY_INDEXES_LIST = [ cityName: '天津', keyword: 'TIANJIN天津', }, + { + cityCode: '140100', + cityName: '太原', + keyword: 'TAIYUAN太原', + }, ], }, { @@ -6044,6 +6074,11 @@ export const GROUP_CITY_INDEXES_LIST = [ cityName: '郑州', keyword: 'ZHENGZHOU郑州', }, + { + cityCode: '430200', + cityName: '株洲', + keyword: 'ZHUZHOU株洲', + }, ], }, ]; diff --git a/src/constants/group.ts b/src/constants/group.ts index 5d649bd..be5fd1d 100644 --- a/src/constants/group.ts +++ b/src/constants/group.ts @@ -56,5 +56,11 @@ export const GROUPS: GroupItem[] = [ { title: '【温州】', cityCode: 330300, serviceUrl: 'https://work.weixin.qq.com/kfid/kfcb0ea5f197a18b335' }, { title: '【天津】', cityCode: 120100, serviceUrl: 'https://work.weixin.qq.com/kfid/kfcda46c23dade6f6a3' }, { title: '【昆明】', cityCode: 530100, serviceUrl: 'https://work.weixin.qq.com/kfid/kfcf2aebcbf3d46d9cd' }, + { title: '【石家庄】', cityCode: 130100, serviceUrl: 'https://work.weixin.qq.com/kfid/kfc7dedcc69aaa9cdae' }, + { title: '【太原】', cityCode: 140100, serviceUrl: 'https://work.weixin.qq.com/kfid/kfccc8b59411baa7c24' }, + { title: '【株洲】', cityCode: 430200, serviceUrl: 'https://work.weixin.qq.com/kfid/kfc8584f903f9263f85' }, + { title: '【哈尔滨】', cityCode: 230100, serviceUrl: 'https://work.weixin.qq.com/kfid/kfcaf757d0590d2bad0' }, + { title: '【沈阳】', cityCode: 210100, serviceUrl: 'https://work.weixin.qq.com/kfid/kfcbe96e71d87061f88' }, + { title: '【济南】', cityCode: 370100, serviceUrl: 'https://work.weixin.qq.com/kfid/kfc57d4d9bd032fe89c' }, { title: '【全国】', cityCode: 440300, serviceUrl: 'https://work.weixin.qq.com/kfid/kfcc60ac7b6420787a8' }, ]; diff --git a/src/pages/job-detail/index.tsx b/src/pages/job-detail/index.tsx index 23f25db..8a49ef1 100644 --- a/src/pages/job-detail/index.tsx +++ b/src/pages/job-detail/index.tsx @@ -40,7 +40,7 @@ import { isNeedCreateMaterial } from '@/utils/user'; import './index.less'; import { Dialog } from '@taroify/core'; import CompanyPublishJobBuy from '@/components/product-dialog/steps-ui/company-publish-job-buy'; -import { requestProductBalance } from '@/utils/product'; +import { requestProductBalance, requestProductUseRecord } from '@/utils/product'; import { ProductType } from '@/constants/product'; import store from '@/store'; import { cacheJobId } from '@/store/actions'; @@ -85,10 +85,13 @@ const AnchorFooter = (props: { data: JobDetails }) => { if (data.sourcePlat !== 'bl') { if (needCreateMaterial) { - const [time] = await requestProductBalance(ProductType.VIP); - if (time <= 0) { - setShowMaterialGuide(true); - return; + const result = await requestProductUseRecord(ProductType.VIP, { jobId: data.id }); + if (!result) { + const [time, isPaidVip] = await requestProductBalance(ProductType.VIP); + if (time <= 0 || !isPaidVip) { + setShowMaterialGuide(true); + return; + } } } } diff --git a/src/pages/job/index.tsx b/src/pages/job/index.tsx index be28e26..2cca7e4 100644 --- a/src/pages/job/index.tsx +++ b/src/pages/job/index.tsx @@ -33,7 +33,7 @@ export default function Job() { const inviteCode = useInviteCode(); const [tabType, setTabType] = useState(JobSourceType.All); const [employType, setEmployType] = useState(EmployType.All); - const [sortType, setSortType] = useState(SortType.RECOMMEND); + const [sortType, setSortType] = useState(SortType.CREATE_TIME); const [cityCode, setCityCode] = useState(location.cityCode); const [coordinate, setCoordinate] = useState({ latitude: location.latitude,