Commit 740f55b45efeac9c8095989423f10b72eafcc8b5

Authored by
2 parents 434c4de8 10234fd5

Merge branch 'zwl-develop' into 'develop'

fix: 修改了业务研发净利润分析表



See merge request !12
src/views/project/approve/ReceivePanel.vue
... ... @@ -104,7 +104,7 @@
104 104 </tr>
105 105 </tbody>
106 106 </table>
107   - <a v-if="showInvoice" @click="openPic(mockData.deductUrl)" rel="noopener noreferrer">{{
  107 + <a v-if="showInvoice" @click="openPic(mockData.deductUrl?mockData.deductUrl:mockData.bgUrl)" rel="noopener noreferrer">{{
108 108 mockData.invoiceName
109 109 }}</a>
110 110 <template #appendFooter>
... ... @@ -212,7 +212,12 @@
212 212 width: 150,
213 213 customRender: (column) => {
214 214 const { record } = column || {};
215   - return record?.fieldInfos?.checkBillOrderDO?.financePerson;
  215 + if(record?.type === 31){
  216 + return record.createBy;
  217 + }else{
  218 + return record?.fieldInfos?.checkBillOrderDO?.financePerson;
  219 + }
  220 +
216 221 },
217 222 },
218 223 {
... ... @@ -221,7 +226,7 @@
221 226 width: 150,
222 227 customRender: (column) => {
223 228 const { record } = column || {};
224   - if(record?.type === 30){
  229 + if(record?.type === 30 || record?.type === 31){
225 230 return record?.fieldInfos?.invoiceFieldVO?.invoiceNo;
226 231 }else if(record?.type === 60){
227 232 return record?.fieldInfos?.deductionUrlFieldVO?.invoiceNo;
... ... @@ -235,7 +240,7 @@
235 240 width: 150,
236 241 customRender: (column) => {
237 242 const { record } = column || {};
238   - if(record?.type === 30){
  243 + if(record?.type === 30 || record?.type === 31){
239 244 const extractedValues = ref<string[]>(
240 245 record?.fieldInfos?.invoiceFieldVO?.innerNo?.map((item) => item),
241 246 );
... ... @@ -254,7 +259,9 @@
254 259 const { record } = column || {};
255 260 if (record?.type === 30) {
256 261 return '应收账单申请';
257   - } else if (record?.type == 60) {
  262 + } else if (record?.type == 31) {
  263 + return `Invoice创建申请`;
  264 + }else if (record?.type == 60) {
258 265 return `Invoice扣款单申请${record?.fieldInfos?.deductionUrlFieldVO?.deductAmount ? `(¥${record?.fieldInfos?.deductionUrlFieldVO?.deductAmount?.toFixed(2)})` : ''}`;
259 266 }
260 267 },
... ... @@ -328,6 +335,7 @@
328 335 function handleProfitModal() {}
329 336 // 打开图片或 PDF
330 337 function openPic(url: string) {
  338 + console.log(url,'测试11111111111');
331 339 const baseUrl = url.split('?')[0];
332 340 if (isImageUrl(baseUrl)) {
333 341 window.open('', '', '').document.write(`<!DOCTYPE html>
... ... @@ -347,6 +355,9 @@
347 355 if(data.type == 60){
348 356 showInvoice.value = true;
349 357 mockData.value = data.fieldInfos.deductionUrlFieldVO;
  358 + }else if (data.type == 31){
  359 + showInvoice.value=true;
  360 + mockData.value=data.fieldInfos.invoiceFieldVO;
350 361 }else if(data.type == 30){
351 362 showInvoice.value=false;
352 363 mockData.value=data.fieldInfos.invoiceFieldVO;
... ... @@ -365,13 +376,25 @@
365 376 otherAmount.value = mockData.value.otherAmount?.toFixed(2);
366 377 invoiceNo.value = mockData.value.invoiceNo;
367 378 payee.value = mockData.value.payee;
  379 + if(mockData.value?.deductUrl){
368 380 const match = mockData.value?.deductUrl?.match(/aliyuncs\.com\/(.*?)\?/);
369 381 if (match && match[1]) {
370 382 // 对提取的部分进行解码
  383 + console.log(match,'我是111');
371 384 mockData.value.invoiceName = decodeURIComponent(match[1]);
372 385 } else {
373 386 mockData.value.invoiceName = mockData.value?.deductUrl;
374 387 }
  388 + }else if(mockData.value?.bgUrl){
  389 + const match = mockData.value?.bgUrl?.match(/aliyuncs\.com\/(.*?)\?/);
  390 + if (match && match[1]) {
  391 + // 对提取的部分进行解码
  392 + console.log(match,'我是222');
  393 + mockData.value.invoiceName = decodeURIComponent(match[1]);
  394 + } else {
  395 + mockData.value.invoiceName = mockData.value?.deductUrl;
  396 + }
  397 + }
375 398 }
376 399  
377 400 async function handleTrue() {
... ...
src/views/project/finance/financeProfit/ServiceProfit/ServiceProfit/data.tsx
... ... @@ -272,54 +272,54 @@ export const COLUMNS = [
272 272 return column.record?.developmentProfitRate?.toFixed(2);
273 273 },
274 274 },
275   - {
276   - title: '包装费用合计¥',
277   - dataIndex: 'packetRmbTotalPrice',
278   - width: 150,
279   - customRender: (column) => {
280   - return column.record?.packetRmbTotalPrice?.toFixed(2);
281   - },
282   - },
283   - {
284   - title: '包装费用实际金额¥',
285   - dataIndex: 'packetActualRmbTotalPrice',
286   - width: 160,
287   - customRender: (column) => {
288   - return column.record?.packetActualRmbTotalPrice?.toFixed(2);
289   - },
290   - },
291   - {
292   - title: '实际跟单单价¥',
293   - dataIndex: 'actualOrderRmbPrice',
294   - width: 160,
295   - customRender: (column) => {
296   - return column.record?.actualOrderRmbPrice?.toFixed(2);
297   - },
298   - },
299   - {
300   - title: '实际跟单单价折算美金¥',
301   - dataIndex: 'actualOrderPrice',
302   - width: 190,
303   - customRender: (column) => {
304   - return column.record?.actualOrderPrice?.toFixed(2);
305   - },
306   - },
307   - {
308   - title: '包装费用收益¥',
309   - dataIndex: 'packetProfitRmbPrice',
310   - width: 150,
311   - customRender: (column) => {
312   - return column.record?.packetProfitRmbPrice?.toFixed(2);
313   - },
314   - },
315   - {
316   - title: '综合收益¥',
317   - dataIndex: 'comprehensiveProfit',
318   - width: 120,
319   - customRender: (column) => {
320   - return column.record?.comprehensiveProfit?.toFixed(2);
321   - },
322   - },
  275 + // {
  276 + // title: '包装费用合计¥',
  277 + // dataIndex: 'packetRmbTotalPrice',
  278 + // width: 150,
  279 + // customRender: (column) => {
  280 + // return column.record?.packetRmbTotalPrice?.toFixed(2);
  281 + // },
  282 + // },
  283 + // {
  284 + // title: '包装费用实际金额¥',
  285 + // dataIndex: 'packetActualRmbTotalPrice',
  286 + // width: 160,
  287 + // customRender: (column) => {
  288 + // return column.record?.packetActualRmbTotalPrice?.toFixed(2);
  289 + // },
  290 + // },
  291 + // {
  292 + // title: '实际跟单单价¥',
  293 + // dataIndex: 'actualOrderRmbPrice',
  294 + // width: 160,
  295 + // customRender: (column) => {
  296 + // return column.record?.actualOrderRmbPrice?.toFixed(2);
  297 + // },
  298 + // },
  299 + // {
  300 + // title: '实际跟单单价折算美金¥',
  301 + // dataIndex: 'actualOrderPrice',
  302 + // width: 190,
  303 + // customRender: (column) => {
  304 + // return column.record?.actualOrderPrice?.toFixed(2);
  305 + // },
  306 + // },
  307 + // {
  308 + // title: '包装费用收益¥',
  309 + // dataIndex: 'packetProfitRmbPrice',
  310 + // width: 150,
  311 + // customRender: (column) => {
  312 + // return column.record?.packetProfitRmbPrice?.toFixed(2);
  313 + // },
  314 + // },
  315 + // {
  316 + // title: '综合收益¥',
  317 + // dataIndex: 'comprehensiveProfit',
  318 + // width: 120,
  319 + // customRender: (column) => {
  320 + // return column.record?.comprehensiveProfit?.toFixed(2);
  321 + // },
  322 + // },
323 323 {
324 324 title: '文件',
325 325 dataIndex: 'fileUrl',
... ...
src/views/project/order/InvoiceCreate.vue
... ... @@ -9,10 +9,10 @@
9 9 @visible-change="handleShow"
10 10 >
11 11 <div>
12   - <div style="font-size: 15px">Invoice编号</div>
  12 + <div style="font-size: 15px"><span style="color: red">*</span>Invoice编号</div>
13 13 <a-textarea v-model:value="Input1" placeholder="请输入" auto-size />
14 14 <div style="margin: 16px 0"></div>
15   - <div>报关单(请上传PDF格式)</div
  15 + <div><span style="color: red">*</span>报关单(请上传PDF格式)</div
16 16 ><a-space direction="vertical" style="width: 100%" size="large">
17 17 <a-upload
18 18 v-model:file-list="fileList"
... ... @@ -59,6 +59,17 @@
59 59 error('请勿连续点击生成按钮,需要等待三秒再点击生成');
60 60 return;
61 61 }
  62 + // 校验必填项
  63 + if (!Input1.value.trim()) {
  64 + error('请填写Invoice编号');
  65 + isDisabled.value = false;
  66 + return;
  67 + }
  68 + if (!bgUrl.value) {
  69 + error('请上传报关单(PDF)');
  70 + isDisabled.value = false;
  71 + return;
  72 + }
62 73 isDisabled.value = true;
63 74 setTimeout(() => {
64 75 isDisabled.value = false;
... ...