zhengyiming
2025-02-19 df7c6af1c1cfd2e9bda249e381aecb5482120d14
packages/components/src/Card/TaskCard.vue
@@ -2,22 +2,26 @@
  <div class="task-card-wrapper">
    <div class="task-card-title-wrapper">
      <div class="task-card-title">客房服务员</div>
      <TaskPrice />
      <slot name="title-right">
        <TaskPrice :value="212" />
      </slot>
    </div>
    <div class="task-card-welfare-list">
      <div class="task-card-welfare-list-item">日结</div>
      <div class="task-card-welfare-list-item">男女不限</div>
      <div class="task-card-welfare-list-item">包三餐</div>
    </div>
    <div class="task-card-time">上班时间:07:00-15:30</div>
    <slot>
      <div class="task-card-welfare-list">
        <div class="task-card-welfare-list-item">日结</div>
        <div class="task-card-welfare-list-item">男女不限</div>
        <div class="task-card-welfare-list-item">包三餐</div>
      </div>
      <div class="task-card-time">上班时间:07:00-15:30</div>
    </slot>
    <div class="task-card-footer">
      <div class="task-card-left">
        <div class="task-card-footer-tag">H</div>
        <div class="task-card-footer-address">宁波雷迪森酒店</div>
      </div>
      <div class="task-card-actions">
      <div class="task-card-actions" v-if="showActions">
        <slot name="actions">
          <nut-button type="primary">报名</nut-button>
          <nut-button type="primary" @click.stop="handleSign">报名</nut-button>
        </slot>
      </div>
    </div>
@@ -26,16 +30,21 @@
<script setup lang="ts">
import TaskPrice from './TaskPrice.vue';
import { CommonTaskCardProps } from './card';
defineOptions({
  name: 'TaskCard',
});
type Props = {
  title?: string;
type Props = CommonTaskCardProps & {
  showActions?: boolean;
};
const props = withDefaults(defineProps<Props>(), {});
const props = withDefaults(defineProps<Props>(), {
  showActions: true,
});
function handleSign() {}
</script>
<style lang="scss">
@@ -82,7 +91,7 @@
  .task-card-time {
    font-size: 24px;
    color: boleGetCssVar('text-color', 'secondary');
    color: boleGetCssVar('text-color', 'regular');
    line-height: 36px;
    margin-bottom: 6px;
  }
@@ -111,7 +120,7 @@
      .task-card-footer-address {
        font-size: 22px;
        color: boleGetCssVar('text-color', 'secondary');
        color: boleGetCssVar('text-color', 'regular');
        line-height: 36px;
        flex: 1;
        min-width: 0;