1
This commit is contained in:
parent
e4a2b5373f
commit
75d5066b62
@ -872,7 +872,7 @@ onBeforeUnmount(() => {
|
||||
<AlertDialogContent class="fixed left-1/2 top-1/2 z-[70] w-[92vw] max-w-md -translate-x-1/2 -translate-y-1/2 rounded-lg border bg-background p-5 shadow-xl">
|
||||
<AlertDialogTitle class="text-base font-semibold">确认删除服务</AlertDialogTitle>
|
||||
<AlertDialogDescription class="mt-2 text-sm text-muted-foreground">
|
||||
将删除“{{ pendingDeleteServiceName }}”是否继续?
|
||||
将逻辑删除“{{ pendingDeleteServiceName }}”,已填写的数据不会清楚,重新勾选后会恢复,是否继续?
|
||||
</AlertDialogDescription>
|
||||
<div class="mt-4 flex items-center justify-end gap-2">
|
||||
<AlertDialogCancel as-child>
|
||||
|
||||
304
src/sql.ts
304
src/sql.ts
@ -9,7 +9,6 @@ const toFiniteNumber = (value: unknown) => {
|
||||
const num = Number(value)
|
||||
return Number.isFinite(num) ? num : 0
|
||||
}
|
||||
hideInIndustrySelector: true
|
||||
export const majorList = {
|
||||
0: { code: 'E1', name: '交通运输工程通用专业',hideInIndustrySelector: true , maxCoe: null, minCoe: null, defCoe: null, desc: '', isRoad: true, isRailway: true, isWaterway: true, order: 1, hasCost: false, hasArea: false },
|
||||
1: { code: 'E1-1', name: '征地(用海)补偿', maxCoe: null, minCoe: null, defCoe: 1, desc: '适用于交通建设项目征地(用海)补偿的施工图预算、招标工程量清单及清单预算(或最高投标限价)、清理概算(仅限铁路工程)、合同(工程)结算和造价鉴定、计算工程量、工程变更费用咨询、工程成本测(核)算', isRoad: true, isRailway: true, isWaterway: true, order: 2, hasCost: true, hasArea: true },
|
||||
@ -326,6 +325,303 @@ export function getBasicFeeFromScale(scaleValue: unknown, scaleType: 'cost' | 'a
|
||||
}
|
||||
|
||||
|
||||
//demo
|
||||
let data1 = {
|
||||
name: 'test001',
|
||||
writer: '张三',// 编制人
|
||||
reviewer: '李四',// 复核人
|
||||
date: '2021-09-24',// 编制日期
|
||||
industry: 0,// 0为公路工程,1为铁路工程,2为水运工程
|
||||
fee: 10000,
|
||||
scaleCost: 100000,// scale的cost的合计数
|
||||
scale: [// 规模信息
|
||||
{
|
||||
major: 0,
|
||||
cost: 100000,
|
||||
area: 200,
|
||||
},
|
||||
{
|
||||
major: 1,
|
||||
cost: 100000,
|
||||
area: 200,
|
||||
},
|
||||
],
|
||||
serviceCoes: [// 项目咨询分类系数
|
||||
{
|
||||
serviceid: 0,
|
||||
coe: 1.1,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
{
|
||||
serviceid: 1,
|
||||
coe: 1.2,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
],
|
||||
majorCoes: [// 项目工程专业系数
|
||||
{
|
||||
majorid: 0,
|
||||
coe: 1.1,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
{
|
||||
majorid: 1,
|
||||
coe: 1.2,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
],
|
||||
contracts: [// 合同段信息
|
||||
{
|
||||
name: 'A合同段',
|
||||
serviceFee: 100000,
|
||||
addtionalFee: 0,
|
||||
reserveFee: 0,
|
||||
fee: 10000,
|
||||
scale: [
|
||||
{
|
||||
major: 0,
|
||||
cost: 100000,
|
||||
area: 200,
|
||||
},
|
||||
{
|
||||
major: 1,
|
||||
cost: 100000,
|
||||
area: 200,
|
||||
},
|
||||
],
|
||||
serviceCoes: [// 合同段咨询分类系数
|
||||
{
|
||||
serviceid: 0,
|
||||
coe: 1.1,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
{
|
||||
serviceid: 1,
|
||||
coe: 1.2,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
],
|
||||
majorCoes: [// 合同段工程专业系数
|
||||
{
|
||||
majorid: 0,
|
||||
coe: 1.1,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
{
|
||||
majorid: 1,
|
||||
coe: 1.2,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
],
|
||||
services: [
|
||||
{
|
||||
id: 0,
|
||||
fee: 100000,
|
||||
process: 0,// 工作环节,0为编制,1为审核
|
||||
method1: { // 投资规模法
|
||||
cost: 100000,
|
||||
basicFee: 200,
|
||||
basicFee_basic: 200,
|
||||
basicFee_optional: 0,
|
||||
fee: 250000,
|
||||
det: [
|
||||
{
|
||||
major: 0,
|
||||
cost: 100000,
|
||||
basicFee: 200,
|
||||
basicFormula: '856,000+(1,000,000,000-500,000,000)×1‰',
|
||||
basicFee_basic: 200,
|
||||
optionalFormula: '171,200+(1,000,000,000-500,000,000)×0.2‰',
|
||||
basicFee_optional: 0,
|
||||
serviceCoe: 1.1,
|
||||
majorCoe: 1.2,
|
||||
processCoe: 1,// 工作环节系数(编审系数)
|
||||
proportion: 0.5,// 工作占比
|
||||
fee: 100000,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
],
|
||||
},
|
||||
method2: { // 用地规模法
|
||||
area: 1200,
|
||||
basicFee: 200,
|
||||
basicFee_basic: 200,
|
||||
basicFee_optional: 0,
|
||||
fee: 250000,
|
||||
det: [
|
||||
{
|
||||
major: 0,
|
||||
area: 1200,
|
||||
basicFee: 200,
|
||||
basicFormula: '106,000+(1,200-1,000)×60',
|
||||
basicFee_basic: 200,
|
||||
optionalFormula: '21,200+(1,200-1,000)×12',
|
||||
basicFee_optional: 0,
|
||||
serviceCoe: 1.1,
|
||||
majorCoe: 1.2,
|
||||
processCoe: 1,// 工作环节系数(编审系数)
|
||||
proportion: 0.5,// 工作占比
|
||||
fee: 100000,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
],
|
||||
},
|
||||
method3: { // 工作量法
|
||||
basicFee: 200,
|
||||
fee: 250000,
|
||||
det: [
|
||||
{
|
||||
task: 0,
|
||||
price: 100000,
|
||||
amount: 10,
|
||||
basicFee: 200,
|
||||
serviceCoe: 1.1,
|
||||
fee: 100000,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
{
|
||||
task: 1,
|
||||
price: 100000,
|
||||
amount: 10,
|
||||
basicFee: 200,
|
||||
serviceCoe: 1.1,
|
||||
fee: 100000,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
],
|
||||
},
|
||||
method4: { // 工时法
|
||||
person_num: 10,
|
||||
work_day: 10,
|
||||
fee: 250000,
|
||||
det: [
|
||||
{
|
||||
expert: 0,
|
||||
price: 100000,
|
||||
person_num: 10,
|
||||
work_day: 3,
|
||||
fee: 100000,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
{
|
||||
expert: 1,
|
||||
price: 100000,
|
||||
person_num: 10,
|
||||
work_day: 3,
|
||||
fee: 100000,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
],
|
||||
addtional: [// 附加工作费
|
||||
{
|
||||
type: 0,// 0为费率计取,1为工时法,2为数量单价
|
||||
coe: 0.03,
|
||||
fee: 10000,
|
||||
},
|
||||
{
|
||||
type: 1,// 0为费率计取,1为工时法,2为数量单价
|
||||
fee: 10000,
|
||||
det: [
|
||||
{
|
||||
expert: 0,
|
||||
price: 100000,
|
||||
person_num: 10,
|
||||
work_day: 3,
|
||||
fee: 100000,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
{
|
||||
expert: 1,
|
||||
price: 100000,
|
||||
person_num: 10,
|
||||
work_day: 3,
|
||||
fee: 100000,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: 2,// 0为费率计取,1为工时法,2为数量单价
|
||||
fee: 10000,
|
||||
det: [
|
||||
{
|
||||
name: '×××项',
|
||||
unit: '项',
|
||||
amount: 10,
|
||||
price: 100000,
|
||||
fee: 100000,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
{
|
||||
name: '×××项',
|
||||
unit: '项',
|
||||
amount: 10,
|
||||
price: 100000,
|
||||
fee: 100000,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
],
|
||||
}
|
||||
],
|
||||
reserve: [// 预留费
|
||||
{
|
||||
type: 0,// 0为费率计取,1为工时法,2为数量单价
|
||||
coe: 0.03,
|
||||
fee: 10000,
|
||||
},
|
||||
{
|
||||
type: 1,// 0为费率计取,1为工时法,2为数量单价
|
||||
fee: 10000,
|
||||
det: [
|
||||
{
|
||||
expert: 0,
|
||||
price: 100000,
|
||||
person_num: 10,
|
||||
work_day: 3,
|
||||
fee: 100000,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
{
|
||||
expert: 1,
|
||||
price: 100000,
|
||||
person_num: 10,
|
||||
work_day: 3,
|
||||
fee: 100000,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
type: 2,// 0为费率计取,1为工时法,2为数量单价
|
||||
fee: 10000,
|
||||
det: [
|
||||
{
|
||||
name: '×××项',
|
||||
unit: '项',
|
||||
amount: 10,
|
||||
price: 100000,
|
||||
fee: 100000,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
{
|
||||
name: '×××项',
|
||||
unit: '项',
|
||||
amount: 10,
|
||||
price: 100000,
|
||||
fee: 100000,
|
||||
remark: '',// 用户输入的说明
|
||||
},
|
||||
],
|
||||
}
|
||||
],
|
||||
},
|
||||
],
|
||||
};
|
||||
|
||||
|
||||
|
||||
export async function exportFile(fileName, data) {
|
||||
if (window.showSaveFilePicker) {
|
||||
@ -369,11 +665,11 @@ export async function exportFile(fileName, data) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
async function generateTemplate(data) {
|
||||
try {
|
||||
|
||||
|
||||
console.log(data)
|
||||
// 获取模板
|
||||
let templateExcel = 'template20260226001test010';
|
||||
let templateUrl = `https://oa.zwgczx.com/myExcelTemplate/${templateExcel}.xlsx`;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user