|  |  | 
 |  |  | # 页面标题
 | 
 |  |  | VITE_APP_TITLE = 中小企业数字化转型套餐包
 | 
 |  |  | VITE_APP_TITLE = 芯导云(管理信息系统)
 | 
 |  |  | 
 | 
 |  |  | # 开发环境配置
 | 
 |  |  | VITE_APP_ENV = 'development'
 | 
 |  |  | 
 | 
 |  |  | # 中小企业数字化转型套餐包/开发环境
 | 
 |  |  | # 芯导云(管理信息系统)/开发环境
 | 
 |  |  | VITE_APP_BASE_API = '/dev-api'
 | 
 
 |  |  | 
 |  |  | # 页面标题
 | 
 |  |  | VITE_APP_TITLE = 中小企业数字化转型套餐包
 | 
 |  |  | VITE_APP_TITLE = 芯导云(管理信息系统)
 | 
 |  |  | 
 | 
 |  |  | # 生产环境配置
 | 
 |  |  | VITE_APP_ENV = 'production'
 | 
 |  |  | 
 | 
 |  |  | # 中小企业数字化转型套餐包/生产环境
 | 
 |  |  | # 芯导云(管理信息系统)/生产环境
 | 
 |  |  | VITE_APP_BASE_API = '/prod-api'
 | 
 |  |  | 
 | 
 |  |  | # 是否在打包时开启压缩,支持 gzip 和 brotli
 | 
 
 |  |  | 
 |  |  | # 页面标题
 | 
 |  |  | VITE_APP_TITLE = 中小企业数字化转型套餐包
 | 
 |  |  | VITE_APP_TITLE = 芯导云(管理信息系统)
 | 
 |  |  | 
 | 
 |  |  | # 生产环境配置
 | 
 |  |  | VITE_APP_ENV = 'staging'
 | 
 |  |  | 
 | 
 |  |  | # 中小企业数字化转型套餐包/生产环境
 | 
 |  |  | # 芯导云(管理信息系统)/生产环境
 | 
 |  |  | VITE_APP_BASE_API = '/stage-api'
 | 
 |  |  | 
 | 
 |  |  | # 是否在打包时开启压缩,支持 gzip 和 brotli
 | 
 
 |  |  | 
 |  |  |   <meta name="renderer" content="webkit">
 | 
 |  |  |   <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
 | 
 |  |  |   <link rel="icon" href="/favicon.ico">
 | 
 |  |  |   <title>中小企业数字化转型套餐包</title>
 | 
 |  |  |   <title>芯导云(管理信息系统)</title>
 | 
 |  |  |   <!--[if lt IE 11]><script>window.location.href='/html/ie.html';</script><![endif]-->
 | 
 |  |  |   <style>
 | 
 |  |  |     html,
 | 
 
 |  |  | 
 |  |  | { | 
 |  |  |   "name": "ruoyi", | 
 |  |  |   "version": "3.8.9", | 
 |  |  |   "description": "中小企业数字化转型套餐包", | 
 |  |  |   "description": "芯导云(管理信息系统)", | 
 |  |  |   "author": "若依", | 
 |  |  |   "license": "MIT", | 
 |  |  |   "type": "module", | 
 
 |  |  | 
 |  |  | app.config.globalProperties.addDateRange = addDateRange;
 | 
 |  |  | app.config.globalProperties.selectDictLabel = selectDictLabel;
 | 
 |  |  | app.config.globalProperties.selectDictLabels = selectDictLabels;
 | 
 |  |  | app.config.globalProperties.javaApi = "http://114.132.189.42:8099";
 | 
 |  |  | app.config.globalProperties.javaApi = "http://114.132.189.42:7004";
 | 
 |  |  | app.config.globalProperties.HaveJson = (val) => {
 | 
 |  |  |   return JSON.parse(JSON.stringify(val));
 | 
 |  |  | };
 | 
 
 |  |  | 
 |  |  | <template> | 
 |  |  |   <el-drawer v-model="visible" :title="modalOptions.title" direction="ltr"> | 
 |  |  |   <el-dialog v-model="visible" :title="modalOptions.title" direction="ltr"> | 
 |  |  |     <MaintainForm ref="maintainFormRef" /> | 
 |  |  |     <template #footer> | 
 |  |  |             <el-button type="primary" @click="sendForm" :loading="loading"> | 
 |  |  | 
 |  |  |             </el-button> | 
 |  |  |       <el-button @click="closeModal">{{ modalOptions.cancelText }}</el-button> | 
 |  |  |     </template> | 
 |  |  |   </el-drawer> | 
 |  |  |   </el-dialog> | 
 |  |  | </template> | 
 |  |  |  | 
 |  |  | <script setup> | 
 
 |  |  | 
 |  |  | <template> | 
 |  |  |   <el-drawer v-model="visible" :title="modalOptions.title" direction="ltr"> | 
 |  |  |   <el-dialog v-model="visible" :title="modalOptions.title" direction="ltr"> | 
 |  |  |     <MaintenanceForm ref="maintenanceFormRef" /> | 
 |  |  |     <template #footer> | 
 |  |  |             <el-button type="primary" @click="sendForm" :loading="loading"> | 
 |  |  | 
 |  |  |             </el-button> | 
 |  |  |       <el-button @click="closeModal">{{ modalOptions.cancelText }}</el-button> | 
 |  |  |     </template> | 
 |  |  |   </el-drawer> | 
 |  |  |   </el-dialog> | 
 |  |  | </template> | 
 |  |  |  | 
 |  |  | <script setup> | 
 
 |  |  | 
 |  |  | <style lang='scss' scoped>
 | 
 |  |  | .login {
 | 
 |  |  |   height: 100%;
 | 
 |  |  |   background-image: url("../assets/indexViews/ZQHXView.png");
 | 
 |  |  |   background-image: url("../assets/images/login-background.png");
 | 
 |  |  |   background-size: cover;
 | 
 |  |  |   position: relative;
 | 
 |  |  | }
 | 
 
 |  |  | 
 |  |  |         <el-table-column label="录入人" prop="invoicePerson" show-overflow-tooltip /> | 
 |  |  |         <el-table-column label="录入日期" prop="createTime" show-overflow-tooltip :formatter="formatDate" width="180" /> | 
 |  |  |         <el-table-column label="开票日期" prop="invoiceDate" show-overflow-tooltip width="120" /> | 
 |  |  |         <el-table-column label="发票" prop="invoiceFileName" width="120" align="center" show-overflow-tooltip> | 
 |  |  |         <el-table-column label="发票" prop="invoiceFileName" width="120" align="center" show-overflow-tooltip fixed="right"> | 
 |  |  |           <template #default="scope"> | 
 |  |  |             <el-button v-if="scope.row.invoiceFileName" text bg type="primary" | 
 |  |  |               @click="handleFile(scope.row.commonFiles)"> | 
 
 |  |  | 
 |  |  |   getSalesLedgerWithProducts({ id: selectedRows.value[0].id }).then((res) => { | 
 |  |  |     form.value = { ...res }; | 
 |  |  |     form.value.createTime = dayjs().format("YYYY-MM-DD"); | 
 |  |  |     form.value.issueDate = dayjs().format("YYYY-MM-DD"); | 
 |  |  |     form.value.createUer = userStore.nickName; | 
 |  |  |     productData.value = form.value.productData.map((item) => { | 
 |  |  |       return item; | 
 
 |  |  | 
 |  |  |   const baseUrl =
 | 
 |  |  |     VITE_APP_ENV == "development"
 | 
 |  |  |       ? "http://114.132.189.42:8089" // 开发环境后端接口
 | 
 |  |  |       : "http://114.132.189.42:8089"; // 生产环境后端接口
 | 
 |  |  |       : "http://114.132.189.42:7003"; // 生产环境后端接口
 | 
 |  |  | 
 | 
 |  |  |   return {
 | 
 |  |  |     // 部署生产环境和开发环境下的URL。
 |