|
|
@@ -125,7 +125,7 @@
|
|
|
@refreshDataList="returnData"
|
|
|
></approval-comments>
|
|
|
<el-dialog
|
|
|
- title="打印采购"
|
|
|
+ title="打印报销单"
|
|
|
:visible.sync="dialogVisible"
|
|
|
:fullscreen="true"
|
|
|
style="padding: 0;margin:0"
|
|
|
@@ -134,63 +134,68 @@
|
|
|
<div ref="print">
|
|
|
<table class="table table-striped table-bordered" align="center" valign="center">
|
|
|
<tr>
|
|
|
- <td style="font-size: 24px;font-weight:bold" class="column" colspan="6">采购表</td>
|
|
|
+ <td style="font-size: 24px;font-weight:bold" class="column" colspan="11">报销单</td>
|
|
|
</tr>
|
|
|
<tr>
|
|
|
- <td class="column" style="width: 10%;">项目</td>
|
|
|
- <td class="column" style="width: 25%;">{{ formList.projectName }}</td>
|
|
|
- <td class="column" style="width: 10%;">供应商</td>
|
|
|
- <td class="column" style="width: 25%;">{{ formList.corpName }}</td>
|
|
|
- <td class="column" style="width: 25%;" colspan="2">日期:{{ formList.fBsdate }}</td>
|
|
|
+ <td class="column" style="width: 6%;">部门</td>
|
|
|
+ <td class="column" colspan="2" style="width: 19%;">{{formList.deptName}}</td>
|
|
|
+ <td class="column" style="width: 9%;">报销方式</td>
|
|
|
+ <td class="column" style="width: 9%;">{{formList.expenseTypeName}}</td>
|
|
|
+ <td class="column" style="width: 9.5%;">业务类型</td>
|
|
|
+ <td class="column" style="width: 9.5%;">{{formList.businessTypeName}}</td>
|
|
|
+ <td class="column" style="width: 9.5%;">制单人</td>
|
|
|
+ <td class="column" style="width: 9.5%;">{{formList.createBy}}</td>
|
|
|
+ <td class="column" style="width: 9.5%;">制单日期</td>
|
|
|
+ <td class="column" style="width: 9.5%;">{{formList.createTime?formList.createTime.slice(0,10):''}}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td class="column">备注</td>
|
|
|
+ <td class="column" colspan="10" style="text-align: left">{{formList.remark}}</td>
|
|
|
</tr>
|
|
|
</table>
|
|
|
<table class="table table-striped table-bordered" align="center" valign="center">
|
|
|
<tr>
|
|
|
- <td class="column" style="width: 15%;border-top: none;">品名</td>
|
|
|
- <td class="column" style="width: 15%;border-top: none;">单价</td>
|
|
|
- <td class="column" style="width: 15%;border-top: none;">采购计划</td>
|
|
|
- <td class="column" style="width: 15%;border-top: none;">实际重量</td>
|
|
|
- <td class="column" style="width: 15%;border-top: none;">金额</td>
|
|
|
- <td class="column" style="width: 20%;border-top: none;">备注</td>
|
|
|
+ <td class="column" style="border-top: none;width: 6%">序号</td>
|
|
|
+ <td class="column" style="border-top: none;width: 9.5%;">费用名称</td>
|
|
|
+ <td class="column" style="border-top: none;width: 9.5%;">金额</td>
|
|
|
+ <td class="column" style="border-top: none;width: 18%;">项目</td>
|
|
|
+ <td class="column" style="border-top: none;width: 9.5%;">所属人员</td>
|
|
|
+ <td class="column" style="border-top: none;width: 19%;" colspan="2">所属部门</td>
|
|
|
+ <td class="column" style="border-top: none;width: 9.5%;">物料</td>
|
|
|
+ <td class="column" style="border-top: none;width: 19%;" colspan="2">备注</td>
|
|
|
</tr>
|
|
|
<tr v-for="(item,index) in contentList" :key="index">
|
|
|
- <td class="column">{{ item.feeName }}</td>
|
|
|
- <td class="column">{{ item.fUnitprice ? Number(item.fUnitprice).toFixed(2) : item.fUnitprice }}</td>
|
|
|
- <td class="column">{{ item.fPurchase }}({{ item.fFeeunitName }})</td>
|
|
|
- <td class="column">{{ item.fQty }}({{ item.fFeeunitName }})</td>
|
|
|
- <td class="column">{{ item.fAmount ? Number(item.fAmount).toFixed(2) : item.fAmount }}</td>
|
|
|
- <td class="column">{{ item.remark }}</td>
|
|
|
+ <td class="column">{{ Number(index)+1 }}</td>
|
|
|
+ <td class="column">{{ item.expenseName }}</td>
|
|
|
+ <td class="column">{{ item.amount ? Number(item.amount).toFixed(2) : item.amount }}</td>
|
|
|
+ <td class="column">{{ item.belongsProjectName }}</td>
|
|
|
+ <td class="column">{{ item.personnelName }}</td>
|
|
|
+ <td class="column" colspan="2">{{ item.departmentName }}</td>
|
|
|
+ <td class="column">{{ item.matterName }}</td>
|
|
|
+ <td class="column" colspan="2">{{ item.remark }}</td>
|
|
|
</tr>
|
|
|
</table>
|
|
|
<table class="table table-striped table-bordered" align="center" valign="center">
|
|
|
<tr>
|
|
|
- <td colspan="6" style="border-top: none;" class="column"></td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td class="column" style="width: 25%;">采购人签字</td>
|
|
|
- <td class="column" style="width: 25%;">厨房主管签字</td>
|
|
|
- <td class="column" style="width: 25%;">验收人签字</td>
|
|
|
- <td class="column" style="width: 25%;">主管签字</td>
|
|
|
+ <td class="column" style="width: 14%;border-top: none">金额合计(小写):</td>
|
|
|
+ <td class="column" colspan="4" style="text-align: left;border-top: none;width: 40%">{{formList.totalAmount?formList.totalAmount.toFixed(2):''}}</td>
|
|
|
+ <td class="column" style="width: 14%;border-top: none">金额合计(大写):</td>
|
|
|
+ <td class="column" colspan="4" style="text-align: left;border-top: none;width: 40%">{{formList.totalAmount?dealBigMoney(formList.totalAmount):''}}</td>
|
|
|
</tr>
|
|
|
<tr>
|
|
|
- <td class="column" style="width: 25%;height: 37px;"></td>
|
|
|
- <td class="column" style="width: 25%;"></td>
|
|
|
- <td class="column" style="width: 25%;"></td>
|
|
|
- <td class="column" style="width: 25%;"></td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td colspan="4"
|
|
|
- style="border-top: none;font-weight:bold;text-align: right;padding-right: 10%;font-size: 16px;"
|
|
|
- class="column"
|
|
|
- >{{ formList.fsbuName }}
|
|
|
- </td>
|
|
|
+ <td class="column" style="width: 15%;border: none">财务:</td>
|
|
|
+ <td class="column" colspan="2" style="text-align: left;border: none;width: 18%"></td>
|
|
|
+ <td class="column" style="width: 15%;border: none">部门经理:</td>
|
|
|
+ <td class="column" colspan="2" style="text-align: left;border: none;width: 18%"></td>
|
|
|
+ <td class="column" style="width: 15%;border: none">总经理:</td>
|
|
|
+ <td class="column" colspan="2" style="text-align: left;border: none;width: 18%"></td>
|
|
|
</tr>
|
|
|
</table>
|
|
|
</div>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
- <el-button @click="dialogVisible = false">取 消</el-button>
|
|
|
- <el-button type="primary" @click="Printing">打印</el-button>
|
|
|
- </span>
|
|
|
+ <el-button @click="dialogVisible = false">取 消</el-button>
|
|
|
+ <el-button type="primary" @click="Printing">打印</el-button>
|
|
|
+ </span>
|
|
|
</el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
@@ -446,8 +451,7 @@ export default {
|
|
|
size: 'mini',
|
|
|
icon: 'el-icon-edit',
|
|
|
name: '新单',
|
|
|
- disabled: false,
|
|
|
- hasPermi: ['anpin:stockControl:anPingApply']
|
|
|
+ disabled: false
|
|
|
},
|
|
|
// {
|
|
|
// type:'warning',
|
|
|
@@ -470,8 +474,7 @@ export default {
|
|
|
size: 'mini',
|
|
|
icon: 'el-icon-c-scale-to-original',
|
|
|
name: '复制新单',
|
|
|
- disabled: false,
|
|
|
- hasPermi: ['anpin:stockControl:generateReceipts']
|
|
|
+ disabled: false
|
|
|
}
|
|
|
],
|
|
|
contentButton: [
|
|
|
@@ -525,13 +528,15 @@ export default {
|
|
|
// icon: 'el-icon-download',
|
|
|
// name: '导出',
|
|
|
// disabled: false
|
|
|
- // }, {
|
|
|
- // type: 'info',
|
|
|
- // size: 'mini',
|
|
|
- // icon: 'el-icon-edit-outline',
|
|
|
- // name: '打印',
|
|
|
- // disabled: false
|
|
|
- // }, {
|
|
|
+ // }
|
|
|
+ , {
|
|
|
+ type: 'info',
|
|
|
+ size: 'mini',
|
|
|
+ icon: 'el-icon-edit-outline',
|
|
|
+ name: '打印',
|
|
|
+ disabled: false
|
|
|
+ }
|
|
|
+ // , {
|
|
|
// type: 'primary',
|
|
|
// size: 'mini',
|
|
|
// icon: 'el-icon-edit-outline',
|
|
|
@@ -798,6 +803,35 @@ export default {
|
|
|
})
|
|
|
},
|
|
|
methods: {
|
|
|
+ /** 数字金额大写转换(可以处理整数,小数,负数) */
|
|
|
+ dealBigMoney(n){
|
|
|
+ let fraction = ['角', '分'];
|
|
|
+ let digit = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'];
|
|
|
+ let unit = [ ['元', '万', '亿'], ['', '拾', '佰', '仟'] ];
|
|
|
+ let head = n < 0? '欠': '';
|
|
|
+ n = Math.abs(n);
|
|
|
+
|
|
|
+ let s = '';
|
|
|
+
|
|
|
+ for (let i = 0; i < fraction.length; i++)
|
|
|
+ {
|
|
|
+ s += (digit[Math.floor(n * 10 * Math.pow(10, i)) % 10] + fraction[i]).replace(/零./, '');
|
|
|
+ }
|
|
|
+ s = s || '整';
|
|
|
+ n = Math.floor(n);
|
|
|
+
|
|
|
+ for (let i = 0; i < unit[0].length && n > 0; i++)
|
|
|
+ {
|
|
|
+ let p = '';
|
|
|
+ for (let j = 0; j < unit[1].length && n > 0; j++)
|
|
|
+ {
|
|
|
+ p = digit[n % 10] + unit[1][j] + p;
|
|
|
+ n = Math.floor(n / 10);
|
|
|
+ }
|
|
|
+ s = p.replace(/(零.)*零$/, '').replace(/^$/, '零') + unit[0][i] + s;
|
|
|
+ }
|
|
|
+ return head + s.replace(/(零.)*零元/, '元').replace(/(零.)+/g, '零').replace(/^整$/, '零元整');
|
|
|
+ },
|
|
|
change(scope) {
|
|
|
console.log(this.contentList)
|
|
|
for (let item in this.contentList) {
|
|
|
@@ -1029,7 +1063,7 @@ export default {
|
|
|
item.disabled = false
|
|
|
}
|
|
|
}else {
|
|
|
- if (item.name == '修改') {
|
|
|
+ if (item.name == '修改' || item.name == '打印') {
|
|
|
item.disabled = false
|
|
|
} else {
|
|
|
item.disabled = true
|
|
|
@@ -1556,7 +1590,7 @@ export default {
|
|
|
this.contentOption.forEach(item => item.disabled = true)
|
|
|
this.contentStyle.forEach(item => item.disabled = true)
|
|
|
this.contentButton.forEach(item => {
|
|
|
- if (item.name == '返回列表' || item.name == '修改') {
|
|
|
+ if (item.name == '返回列表' || item.name == '修改' || item.name == '打印') {
|
|
|
item.disabled = false
|
|
|
} else {
|
|
|
item.disabled = true
|
|
|
@@ -1627,6 +1661,11 @@ export default {
|
|
|
if (rows[index].fId) {
|
|
|
listDelete(rows[index].fId).then(data => {
|
|
|
rows.splice(index, 1)
|
|
|
+ let amount = 0
|
|
|
+ for (let item of rows){
|
|
|
+ amount += item.amount?Number(item.amount):0
|
|
|
+ }
|
|
|
+ this.$set(this.$refs.avatar.form, 'totalAmount', amount.toFixed(2))
|
|
|
this.$message({
|
|
|
type: 'success',
|
|
|
message: '删除成功!'
|
|
|
@@ -1634,6 +1673,11 @@ export default {
|
|
|
})
|
|
|
} else {
|
|
|
rows.splice(index, 1)
|
|
|
+ let amount = 0
|
|
|
+ for (let item of rows){
|
|
|
+ amount += item.amount?Number(item.amount):0
|
|
|
+ }
|
|
|
+ this.$set(this.$refs.avatar.form, 'totalAmount', amount.toFixed(2))
|
|
|
this.$message({
|
|
|
type: 'success',
|
|
|
message: '删除成功!'
|