diff --git a/src/components/XyTable/index.vue b/src/components/XyTable/index.vue
index 1d34edb..fb192bc 100644
--- a/src/components/XyTable/index.vue
+++ b/src/components/XyTable/index.vue
@@ -201,6 +201,9 @@ export default {
{
tableItem.filter(i => !i.hidden).map((item, index) => {
+ if ($scopedSlots[item.prop]) {
+ return $scopedSlots[item.prop](item, index);
+ }
//自定义表格内容
if (item.customFn) {
return (
diff --git a/src/views/contract/contractEdit.vue b/src/views/contract/contractEdit.vue
index 8504f19..cabcd69 100644
--- a/src/views/contract/contractEdit.vue
+++ b/src/views/contract/contractEdit.vue
@@ -1,862 +1,879 @@
-
-
-
-
-
+
+
+
+
+
+
-
-
-
- {
- planSelect.year = e
- getBudgets()
- }"
- >
-
-
-
-
- {
- planSelect.type = e[e.length - 1] || '';
- getBudgets();
- }"
- />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
{
- planSelect.page = e;
- getBudgets();
- }
- "
- />
-
-
- nextStep()"
- >下一步
-
-
-
-
-
-
-
-
- 查看已选预算计划
-
-
- 已使用框架协议
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+ {
+ planSelect.year = e
+ getBudgets()
+ }"
+ >
+
+
+
+
+ {
+ planSelect.type = e[e.length - 1] || '';
+ getBudgets();
+ }"
/>
-
-
-
-
- (无需采购流程,如水电邮寄费等)
-
+
-
-
+
+
+
+
+
+
+
+
+
+
{
+ planSelect.page = e;
+ getBudgets();
+ }
+ "
/>
-
-
-
-
-
-
-
+
+
+ nextStep()"
+ >下一步
+
+
-
-
+
+ {
- form.money_way_id = e.length > 0 ? e.toString() : '';
- }
- "
+ row-key="id"
+ border
+ :tree-props="{
+ children: 'notChildren',
+ hasChildren: 'hasChildren',
+ }"
>
-
-
-
+
+
+ 查看已选预算计划
+
+
+ 已使用框架协议
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
-
-
-
-
-
+
+
+ (无需采购流程,如水电邮寄费等)
+
-
-
-
-
-
+
+
+
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
- 请选择关联的框架协议合同
-
-
- {{ i.name.slice(0,17) }}
-
-
-
-
-
-
-
+
+ {
+ form.money_way_id = e.length > 0 ? e.toString() : '';
+ }
+ "
+ >
+
+
+
-
-
-
-
-
+
+
+
+
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
-
- 上一步
- 重置
- nextStep()"
- >提交
-
-
+
+
+
+
+
-
-
-
-
{{ type === 'add' ? '创建' : '编辑' }}完成
-
-
+
+
+
+
+ 请选择类型
+
+
+
@@ -908,9 +942,15 @@ import { getBudget } from "@/api/budget/budget";
import { getInfo } from "@/api/me.js";
import { listdeptNoAuth } from '@/api/system/department'
import { deepCopy } from "@/utils";
+import {
+ listCommonuser
+} from "@/api/common.js";
export default {
data() {
return {
+ showTypes:true,
+ showEdit:false,
+ isWeixiu:false,
myPurchaseType: 1, // 1政府采购 2一般采购
//事前流程
flowIds: [{"name":"政府采购流转","id":71,"type":2},{"name":"公务接待","id":86,"type":1},{"name":"会议费用","id":87,"type":1},{"name":"培训费","id":88,"type":1},{"name":"用印","id":76,"type":1},{"name":"仪器设备维修流转","id":84,"type":1},{"name":"请休假","id":68,"type":1},{"name":"仪器设备购置流转","id":82,"type":1},{"name":"安装、维修流转","id":96,"type":1},{"name":"车船维修保养流转","id":97,"type":1}],
@@ -945,6 +985,7 @@ export default {
group_type: "",
plan_price: 0,
name: "",
+ apply_user_id:'',
contract_plan_links: [],
is_simple: 0,
supply: "",
@@ -962,6 +1003,7 @@ export default {
common_type: ''
},
commonPurchaseTypes: [],
+ commonPurchasePeople:[],
planTypes: [],
departments: [],
purchaseType: [],
@@ -1117,18 +1159,18 @@ export default {
trigger: "blur",
},
],
- money_way_id: [
- {
- validator: (rule, value, callback) => {
- if (!this.hasValue(value)) {
- callback(new Error("必填"));
- } else {
- callback();
- }
- },
- trigger: "change",
- },
- ],
+ // money_way_id: [
+ // {
+ // validator: (rule, value, callback) => {
+ // if (!this.hasValue(value)) {
+ // callback(new Error("必填"));
+ // } else {
+ // callback();
+ // }
+ // },
+ // trigger: "change",
+ // },
+ // ],
contract_plan_links: [
{
validator: (rule, value, callback) => {
@@ -1384,6 +1426,17 @@ export default {
}
},
+ // 一般采购 申购人
+ async getCommonPurchasePeople() {
+ try {
+ this.commonPurchasePeople = (await listCommonuser({
+ page:1,
+ page_size:999
+ }))?.data || []
+ } catch (err) {
+
+ }
+ },
//获取购买方式
async getPurchaseWay() {
this.purchaseWay =
@@ -1703,6 +1756,7 @@ export default {
this.window.top = (window.screen.height - 30 - this.window.height) / 2;
this.window.left = (window.screen.width - 10 - this.window.width) / 2;
this.getCommonPurchaseType();
+ this.getCommonPurchasePeople()
this.getGroupType();
this.getPlanTypes();
this.getDepartment();
@@ -1763,22 +1817,25 @@ export default {
}
})
} else {
- MessageBox.confirm("请选择类型", "提示", {
- confirmButtonText: "预算计划支出",
- cancelButtonText: "一般采购"
- }).then(_ => {
- next(vm => {
- vm.myPurchaseType = 1
- vm.form.is_common_purchase = 0
- })
- }).catch(_ => {
- next(vm => {
- vm.step = 2
- vm.myPurchaseType = 2
- vm.form.is_common_purchase = 1
- vm.form.flow_mod_id = 99
- })
+ next(vm=>{
+ vm.showTypes = true
})
+ // MessageBox.confirm("请选择类型", "提示", {
+ // confirmButtonText: "预算计划支出",
+ // cancelButtonText: "一般采购",
+ // }).then(_ => {
+ // next(vm => {
+ // vm.myPurchaseType = 1
+ // vm.form.is_common_purchase = 0
+ // })
+ // }).catch(_ => {
+ // next(vm => {
+ // vm.step = 2
+ // vm.myPurchaseType = 2
+ // vm.form.is_common_purchase = 1
+ // vm.form.flow_mod_id = 99
+ // })
+ // })
}
}
}
diff --git a/src/views/contract/contractList.vue b/src/views/contract/contractList.vue
index f20a179..d8c117c 100644
--- a/src/views/contract/contractList.vue
+++ b/src/views/contract/contractList.vue
@@ -19,6 +19,26 @@
/>
+
+ 申购人
+
+
+
+
+
流程状态
+
@@ -300,6 +321,31 @@
@delete="(row) => deleteContract(row.id)"
@editor=""
>
+
+
+
+
+
+
+
{{item.flow_title}}
+
+
+ {{field.label}}:{{item.flow_data[field.name]}}
+
+
+
+
+
+
+
+
+
+
+
+
@@ -627,7 +674,7 @@ import oaFiles from './components/oaFiles.vue';
import addContractLedger from '@/views/contract/components/addContractLedger.vue'
import EditContract from './components/EditContract.vue'
import { show } from "@/api/away";
-import {flowStatusConfig} from "@/api/common";
+import {flowStatusConfig,listCommonuser} from "@/api/common";
import {getFundLog} from "@/api/paymentRegistration/fundLog";
let iframe;
export default {
@@ -652,6 +699,7 @@ export default {
isShowIsFramework: true,
userList: ["admin"],
+ commonPurchasePeople:[],
nowContract: {},
window: {
width: 0,
@@ -683,6 +731,7 @@ export default {
//搜索
select: {
keyword: "",
+ apply_user_id:'',
showDatePicker: "",
page: 1,
page_size: 10,
@@ -701,6 +750,7 @@ export default {
},
selectCopy: {
keyword: "",
+ apply_user_id:'',
showDatePicker: "",
page: 1,
page_size: 10,
@@ -752,7 +802,7 @@ export default {
label: "合同编号",
width: 200,
prop: 'number',
- align: 'center'
+ align: 'center',
},
{
label: "合同类型",
@@ -936,59 +986,7 @@ export default {
}
}
},
- {
- label: "采购形式",
- width: 120,
- prop: "purchase_type.value",
- formatter: (cell, data, value) => {
- return value ? value : "无";
- },
- },
- {
- label: "项目类型",
- width: 120,
- prop: "type",
- formatter: (cell, data, value) => {
- switch (value) {
- case 1:
- return "服务";
- break;
- case 2:
- return "货物";
- break;
- case 3:
- return "工程";
- break;
- default:
- return "无";
- }
- }
- },
- {
- label: "事前流程",
- prop: "flow_mod_id",
- width: 200,
- hidden: !/contractAll/g.test(this.$route.path),
- customFn:row => {
- return (
-
-
-
- {
- this.flowIds.find(i => i.id === row.flow_mod_id)?.name
- }
-
- {
- row.is_purchase ? "" : ([{ this.flowStatus.get(row.FLOWSTATUS.other.getStatus()) ?? '待申请' }])
- }
-
- {
- (!row.is_purchase && row.FLOWSTATUS.other.getStatus() > 1) ? (
this.toOaDetail('other',row)}}>查看) : ""
- }
-
- )
- }
- },
+
{
label: "采购流程",
multiHd: [
@@ -1087,6 +1085,74 @@ export default {
},
],
},
+ {
+ label: "申购人",
+ width: 120,
+ prop: "apply_user.name",
+ },
+ {
+ label: "承办人",
+ width: 120,
+ prop: "undertake_user.name",
+ },
+ {
+ label: "摘要",
+ width: 240,
+ prop: "contract_flow_links",
+ },
+ {
+ label: "采购形式",
+ width: 120,
+ prop: "purchase_type.value",
+ formatter: (cell, data, value) => {
+ return value ? value : "无";
+ },
+ },
+ {
+ label: "项目类型",
+ width: 120,
+ prop: "type",
+ formatter: (cell, data, value) => {
+ switch (value) {
+ case 1:
+ return "服务";
+ break;
+ case 2:
+ return "货物";
+ break;
+ case 3:
+ return "工程";
+ break;
+ default:
+ return "无";
+ }
+ }
+ },
+ {
+ label: "事前流程",
+ prop: "flow_mod_id",
+ width: 200,
+ hidden: !/contractAll/g.test(this.$route.path),
+ customFn:row => {
+ return (
+
+
+
+ {
+ this.flowIds.find(i => i.id === row.flow_mod_id)?.name
+ }
+
+ {
+ row.is_purchase ? "" : ([{ this.flowStatus.get(row.FLOWSTATUS.other.getStatus()) ?? '待申请' }])
+ }
+
+ {
+ (!row.is_purchase && row.FLOWSTATUS.other.getStatus() > 1) ? (
this.toOaDetail('other',row)}}>查看) : ""
+ }
+
+ )
+ }
+ },
{
label: "组织形式",
width: 120,
@@ -1467,6 +1533,17 @@ export default {
};
},
methods: {
+ // 一般采购 申购人
+ async getCommonPurchasePeople() {
+ try {
+ this.commonPurchasePeople = (await listCommonuser({
+ page:1,
+ page_size:999
+ }))?.data || []
+ } catch (err) {
+
+ }
+ },
printFlow (row) {
let id;
if (row.purchase_last_flow_id) {
@@ -1869,6 +1946,7 @@ export default {
var url = "/api/ht/contract/index?is_auth=1&token=" + tokens;
Object.entries({
...this.select,
+ apply_user_id:this.select.apply_user_id?this.select.apply_user_id:'',
start_plan_price: this.select['start_plan_price'] ? this.select.start_plan_price : '',
end_plan_price: this.select['end_plan_price'] ? this.select.end_plan_price : ''
}).forEach(([key, value], item) => {
@@ -1888,6 +1966,7 @@ export default {
const res = await getContract({
is_auth: 1,
...this.select,
+ apply_user_id:this.select.apply_user_id?this.select.apply_user_id:'',
start_plan_price: this.select['start_plan_price'] ? this.select.start_plan_price : '',
end_plan_price: this.select['end_plan_price'] ? this.select.end_plan_price : ''
},noloading);
@@ -2240,6 +2319,7 @@ export default {
this.window.top = (window.screen.height - 30 - this.window.height) / 2;
this.window.left = (window.screen.width - 10 - this.window.width) / 2;
let that = this;
+ this.getCommonPurchasePeople()
getInfo()
.then((response) => {
console.log(response);
diff --git a/src/views/contract/seeContract.vue b/src/views/contract/seeContract.vue
index ccc9397..d025922 100644
--- a/src/views/contract/seeContract.vue
+++ b/src/views/contract/seeContract.vue
@@ -19,6 +19,26 @@
/>
+
+ 申购人
+
+
+
+
+
@@ -275,6 +295,31 @@
@delete="(row) => deleteContract(row.id)"
@editor=""
>
+
+
+
+
+
+
+
{{item.flow_title}}
+
+
+ {{field.label}}:{{item.flow_data[field.name]}}
+
+
+
+
+
+
+
+
+
+
+
{
- return value ? value : "无";
- },
- },
- {
- label: "项目类型",
- width: 120,
- prop: "type",
- formatter: (cell, data, value) => {
- switch (value) {
- case 1:
- return "服务";
- break;
- case 2:
- return "货物";
- break;
- case 3:
- return "工程";
- break;
- default:
- return "无";
- }
- }
- },
+
{
label: "事前流程",
prop: "flow_mod_id",
@@ -869,6 +891,49 @@ export default {
},
],
},
+ {
+ label: "申购人",
+ width: 120,
+ prop: "apply_user.name",
+ },
+ {
+ label: "承办人",
+ width: 120,
+ prop: "undertake_user.name",
+ },
+ {
+ label: "摘要",
+ width: 240,
+ prop: "contract_flow_links",
+ },
+ {
+ label: "采购形式",
+ width: 120,
+ prop: "purchase_type.value",
+ formatter: (cell, data, value) => {
+ return value ? value : "无";
+ },
+ },
+ {
+ label: "项目类型",
+ width: 120,
+ prop: "type",
+ formatter: (cell, data, value) => {
+ switch (value) {
+ case 1:
+ return "服务";
+ break;
+ case 2:
+ return "货物";
+ break;
+ case 3:
+ return "工程";
+ break;
+ default:
+ return "无";
+ }
+ }
+ },
{
label: "组织形式",
width: 120,
@@ -1246,6 +1311,17 @@ export default {
};
},
methods: {
+ // 一般采购 申购人
+ async getCommonPurchasePeople() {
+ try {
+ this.commonPurchasePeople = (await listCommonuser({
+ page:1,
+ page_size:999
+ }))?.data || []
+ } catch (err) {
+
+ }
+ },
printFlow (row) {
let id;
if (row.purchase_last_flow_id) {
@@ -1641,6 +1717,7 @@ export default {
page: this.select.pageIndex,
is_auth: 1,
...this.select,
+ apply_user_id:this.select.apply_user_id?this.select.apply_user_id:'',
},noloading);
delete this.select.id;
@@ -2009,6 +2086,7 @@ export default {
};
},
created() {
+ this.getCommonPurchasePeople()
this.getCommonPurchaseType();
this.getPurchaseType();
this.getDepartment();