wupengfei
3 天以前 4533218fcd5a0bd03a36624de1fb4f21efff9f40
apps/cMiniApp/src/subpackages/mine/mineAgreementSignDetail/InnerPage.vue
@@ -10,7 +10,7 @@
            ></MineAgreementSignDetailItem>
            <MineAgreementSignDetailItem
              label="协议状态"
              :detail="EnumTaskUserSignContractStatusText[detail?.userSignContractStatus]"
              :detail="EnumTaskUserSignContractStatusSignText[detail?.userSignContractStatus]"
            ></MineAgreementSignDetailItem>
          </template>
        </MineAgreementSignDetailCard>
@@ -75,10 +75,11 @@
import {
  EnumElectronSignAccess,
  EnumTaskUserSignContractStatus,
  EnumTaskUserSignContractStatusText,
  EnumTaskUserSignContractStatusSignText,
} from '@12333/constants';
import { format, hiddenPhone, Message, setOSSLink } from '@12333/utils';
import { format, hiddenPhone, Message, setOSSLink, openDocument } from '@12333/utils';
import Taro from '@tarojs/taro';
import _ from 'lodash';
defineOptions({
  name: 'InnerPage',
@@ -86,8 +87,10 @@
const { userDetail } = useUser();
const router = Taro.useRouter();
const options = Taro.getLaunchOptionsSync();
//灵工Id
const id = router.params?.id;
const code = router.params?.code;
const code = router.params?.code || options?.query?.scene;
const {
  isLoading,
@@ -118,35 +121,44 @@
    detail?.value?.userSignContractStatus === EnumTaskUserSignContractStatus.Stop ||
    detail?.value?.userSignContractStatus === EnumTaskUserSignContractStatus.Pass
  ) {
    const encodedUrl = encodeURIComponent(setOSSLink(detail?.value?.contractUrl));
    Taro.navigateTo({
      url: `${RouterPath.mineAgreementSignExtraPage}?url=${encodedUrl}`,
    });
    if (!detail?.value?.contractUrl) {
      Message.warning('协议无法查看,请稍后再试');
      return;
    }
    openDocument(setOSSLink(detail?.value?.contractUrl));
  }
}
const goToSign = useAccessReal(async () => {
  try {
    // if (detail.value?.contractTemplateAccess === EnumElectronSignAccess.BestSign) {
    let params: API.PersonalUserElectronSignCommand = {
      id: id,
    };
    let res = await enterpriseEmployeeServices.personalUserElectronSign(params);
    if (res) {
      const encodedUrl = encodeURIComponent(res.signContractLongUrl);
      Taro.navigateTo({ url: `${RouterPath.mineAgreementSignExtraPage}?url=${encodedUrl}` });
    }
    // }
    // if (detail.value?.contractTemplateAccess === EnumElectronSignAccess.AlipaySign) {
    //   Message.confirm({
    //     message: `签约短信已发送至您${hiddenPhone(
    //       detail.value?.contactPhoneNumber
    //     )}的手机,请及时查看并签约`,
    //     showCancelBtn: false,
    //   });
    // }
  } catch (error) {}
});
const goToSign = _.debounce(
  useAccessReal(async () => {
    try {
      let params: API.PersonalUserElectronSignCommand = {
        id: detail.value?.id,
      };
      let res = await enterpriseEmployeeServices.personalUserElectronSign(params);
      if (res) {
        if (detail.value?.contractTemplateAccess === EnumElectronSignAccess.AlipaySign) {
          try {
            await Message.confirm({
              message: `签约短信已发送至您${hiddenPhone(
                detail.value?.contactPhoneNumber
              )}的手机,请及时查看并签约`,
              cancelText: '未收到短信',
            });
          } catch (error) {
            goToSign();
          }
        } else {
          const encodedUrl = encodeURIComponent(res.signContractLongUrl);
          Taro.navigateTo({ url: `${RouterPath.extraPage}?url=${encodedUrl}` });
        }
      }
    } catch (error) {}
  }),
  1000,
  { leading: true, trailing: true }
);
Taro.useDidShow(() => {
  refetch();
});