<template>
  <div class="workmsgupload">
    <ElForm
      :rules="rules"
      :model="modelValue"
      label-position="top"
      ref="formRef"
    >
      <CustomizeFormItem prop="wayToGetRights">
        <template #label>
          权利取得方式
          <HoverMe
            :margin-top="20"
            class="!absolute"
            style="margin-top: 3px; margin-left: 13px"
          >
            <Icon
              icon-name="iconshenpiweitongguo-chakanyuanyin"
              style="font-size: 17px"
            ></Icon>
            <template #message>
              原始：是指根据法律规定，最初取得著作权或不依赖于原所有人的意志而取得著作权;
              继承：包括继承遗产，是指继承人按照法律的直接规定或者合法有效遗嘱的指定，取得被继承人死亡时遗留的个人合法著作权的财产权；
              承受：指享有原著作权的企业被合并或分立，由合并或分立后其他企业享有著作权情况;
              转让：指著作权人将著作权中的全部或部分财产权有偿或无偿地移交给他人所有的法律行为;
              其他：因其他合法原因取得著作权的。
            </template>
          </HoverMe>
        </template>
        <sySelect
          class="w-full"
          v-model="modelValue.wayToGetRights"
          placeholder="请选择作品类型"
        >
          <syOption
            :key="option.name"
            :label="option.name"
            :value="option.value"
            v-for="option in optionListOfWayToGetRights"
          ></syOption>
        </sySelect>
      </CustomizeFormItem>
      <CustomizeFormItem prop="certificate">
        <template #label>
          权利取得证明
          <HoverMe
            :margin-top="20"
            class="!absolute"
            style="margin-top: 3px; margin-left: 13px"
          >
            <Icon
              icon-name="iconshenpiweitongguo-chakanyuanyin"
              style="font-size: 17px"
            ></Icon>
            <template #message>
              1、《权利获取方式证明》需要加盖公章，法定代表人签字。文件请上传jpg、png、jpeg、pdf格式；
              2、证明提供参考：继承：《著作权人与被继承人的关系证明：户口本》、《被继承人死亡证明》、《有限遗嘱或公证书或其他继承人发起继承权文件》承受：《企业变更证明》、《合同》、《债权人会议决议》、《清算组织公告》转让：《转让合同》
            </template>
          </HoverMe>
        </template>
      </CustomizeFormItem>
      <CustomizeFormItem prop="ownershipOfRights">
        <template #label>
          权利归属方式
          <HoverMe
            :margin-top="20"
            class="!absolute"
            style="margin-top: 3px; margin-left: 13px"
          >
            <Icon
              icon-name="iconshenpiweitongguo-chakanyuanyin"
              style="font-size: 17px"
            ></Icon>
            <template #message>
              个人作品：指自然人在没有他人参与的情况下，独立创作完成的作品；合作作品：指两人以上合作创作作品；法人作品：指由法人或者其他组织主持，代表法人或者其他组织意志创作，并由法人或者其他组织承担责任的作品；职务作品：指公民为完成法人或者其他组织工作任务所创作的作品；委托作品：指委托人委托其他人创作的作品。权利归属方式不同*权利归属方式需要上传的文件个人作品：【无】
              合作作品：《合作作品权属协议书》法人作品：《著作权权属声明》职务作品：《职务作品权属约定》委托作品：《委托创作协议书附件（甲方享有全部权利）》《委托创作协议书附件（作者保留署名权）》。
            </template>
          </HoverMe>
        </template>
        <sySelect
          class="w-full"
          v-model="modelValue.ownershipOfRights"
          placeholder="请选择权利归属方式"
        >
          <syOption
            :key="option.name"
            :label="option.name"
            :value="option.value"
            v-for="option in optionListOfOwnershipOfRights"
          ></syOption>
        </sySelect>
      </CustomizeFormItem>
      <CustomizeFormItem prop="proofOfOwnership">
        <template #label>
          权利归属证明
          <HoverMe
            :margin-top="20"
            class="!absolute"
            style="margin-top: 3px; margin-left: 13px"
          >
            <Icon
              icon-name="iconshenpiweitongguo-chakanyuanyin"
              style="font-size: 17px"
            ></Icon>
            <template #message>
              1、不同权利归属方式，需要提供相应的权利归属证明；
              2、《权利归属证明》需亲笔签字或盖章确认。文件请上传jpg、png、jpeg、pdf格式。
            </template>
          </HoverMe>
        </template>
      </CustomizeFormItem>
    </ElForm>
  </div>
</template>

<script setup lang="ts">
import { ref } from "vue";

import { ElForm, FormInstance } from "element-plus";
import { syDialogInput, sySelect, syOption } from "cqk-sy-ui";

import HoverMe from "@/components/HoverMe/index.vue";
import Icon from "@/components/Icon/index.vue";
import CustomizeFormItem from "@/components/Form/CustomizeFormItem.vue";

import { iPropsOwnerShipForm } from "./types";
import {
  optionListOfOwnershipOfRights,
  optionListOfWayToGetRights,
} from "./constants";

const props = defineProps<{
  modelValue: iPropsOwnerShipForm;
}>();
const formRef = ref<FormInstance>();
const emit = defineEmits(["update:modelValue"]);

const rules = ref<Partial<Record<keyof iPropsOwnerShipForm, any>>>({
  wayToGetRights: [{ required: true, message: "请" }],
  certificate: [{ required: true, message: "请" }],
  ownershipOfRights: [{ required: true, message: "请" }],
  proofOfOwnership: [{ required: true, message: "请" }],
});

defineExpose({
  formRef: formRef,
});
</script>

<style scoped lang="scss"></style>
