diff --git a/src/api/contract/contractApplyAuditOrdersApi.js b/src/api/contract/contractApplyAuditOrdersApi.js new file mode 100644 index 0000000..4768cab --- /dev/null +++ b/src/api/contract/contractApplyAuditOrdersApi.js @@ -0,0 +1,97 @@ +import request from '@/utils/request' + +// 查询合同任务列表 +export function queryContractTask(params) { + return new Promise((resolve, reject) => { + request({ + url: '/contract/queryContractTask', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 合同审批 +export function needAuditContract(data) { + return new Promise((resolve, reject) => { + request({ + url: '/contract/needAuditContract', + method: 'post', + data + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 查询工作流下一节点 +export function listWorkflowNextNode(params) { + return new Promise((resolve, reject) => { + request({ + url: '/workflow.listWorkflowNextNode', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 查询工作流步骤人员 +export function listWorkflowStepStaffs(params) { + return new Promise((resolve, reject) => { + request({ + url: '/workflow.listWorkflowStepStaffs', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 查询员工信息 +export function queryStaffInfos(params) { + return new Promise((resolve, reject) => { + request({ + url: '/query.staff.infos', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 查询组织树 +export function listOrgTree(params) { + return new Promise((resolve, reject) => { + request({ + url: '/org.listOrgTree', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/api/resource/allocationStorehouseAuditOrdersApi.js b/src/api/resource/allocationStorehouseAuditOrdersApi.js new file mode 100644 index 0000000..cbbc04d --- /dev/null +++ b/src/api/resource/allocationStorehouseAuditOrdersApi.js @@ -0,0 +1,53 @@ +import request from '@/utils/request' +import { getCommunityId } from '@/api/community/communityApi' + +// 获取调拨仓库审核订单列表 +export function listAllocationStoreAuditOrders(params) { + return new Promise((resolve, reject) => { + request({ + url: '/resourceStore.listAllocationStoreAuditOrders', + method: 'get', + params: { + ...params, + communityId: getCommunityId() + } + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 获取工作流步骤员工 +export function listWorkflowStepStaffs(params) { + return new Promise((resolve, reject) => { + request({ + url: '/workflow.listWorkflowStepStaffs', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 审核订单信息 +export function auditOrderInfo(data) { + return new Promise((resolve, reject) => { + request({ + url: '/resourceStore.auditAllocationStoreAuditOrder', + method: 'post', + data + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/api/resource/allocationStorehouseEnterApi.js b/src/api/resource/allocationStorehouseEnterApi.js new file mode 100644 index 0000000..0d4c730 --- /dev/null +++ b/src/api/resource/allocationStorehouseEnterApi.js @@ -0,0 +1,33 @@ +import request from '@/utils/request' + +// 获取调拨入库列表 +export function listAllocationStorehouses(params) { + return new Promise((resolve, reject) => { + request({ + url: '/resourceStore.listAllocationStorehouses', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 提交调拨入库 +export function allocationStoreEnter(data) { + return new Promise((resolve, reject) => { + request({ + url: '/resourceStore.allocationStoreEnter', + method: 'post', + data + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/api/resource/contractChangeAuditOrdersApi.js b/src/api/resource/contractChangeAuditOrdersApi.js new file mode 100644 index 0000000..8e5b006 --- /dev/null +++ b/src/api/resource/contractChangeAuditOrdersApi.js @@ -0,0 +1,81 @@ +import request from '@/utils/request' + +// 查询合同变更任务列表 +export function queryContractChangeTask(params) { + return new Promise((resolve, reject) => { + request({ + url: '/contract/queryContractChangeTask', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 审批合同变更计划 +export function needAuditContractPlan(data) { + return new Promise((resolve, reject) => { + request({ + url: '/contract/needAuditContractPlan', + method: 'post', + data + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 查询组织树 +export function listOrgTree(params) { + return new Promise((resolve, reject) => { + request({ + url: '/org.listOrgTree', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 查询员工信息 +export function queryStaffInfos(params) { + return new Promise((resolve, reject) => { + request({ + url: '/query.staff.infos', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 查询工作流下一节点 +export function listWorkflowNextNode(params) { + return new Promise((resolve, reject) => { + request({ + url: '/workflow.listWorkflowNextNode', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/api/resource/editAllocationStorehouseApplyApi.js b/src/api/resource/editAllocationStorehouseApplyApi.js new file mode 100644 index 0000000..69dae63 --- /dev/null +++ b/src/api/resource/editAllocationStorehouseApplyApi.js @@ -0,0 +1,97 @@ +import request from '@/utils/request' + +// 获取调拨申请列表 +export function listAllocationStorehouseApply(params) { + return new Promise((resolve, reject) => { + request({ + url: '/resourceStore.listAllocationStorehouseApplys', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 获取调拨物品列表 +export function listAllocationStorehouses(params) { + return new Promise((resolve, reject) => { + request({ + url: '/resourceStore.listAllocationStorehouses', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 获取仓库列表 +export function listStorehouses(params) { + return new Promise((resolve, reject) => { + request({ + url: '/resourceStore.listStorehouses', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 获取物品列表 +export function listResourceStores(params) { + return new Promise((resolve, reject) => { + request({ + url: '/resourceStore.listResourceStores', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 获取物品类型列表 +export function listResourceStoreTypes(params) { + return new Promise((resolve, reject) => { + request({ + url: '/resourceStoreType.listResourceStoreTypes', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} + +// 更新调拨申请 +export function updateAllocationStorehouse(data) { + return new Promise((resolve, reject) => { + request({ + url: '/resourceStore.updateAllocationStorehouse', + method: 'post', + data + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/api/resource/myItemOutAuditOrdersApi.js b/src/api/resource/myItemOutAuditOrdersApi.js new file mode 100644 index 0000000..6eac1af --- /dev/null +++ b/src/api/resource/myItemOutAuditOrdersApi.js @@ -0,0 +1,21 @@ +import request from '@/utils/request' + +/** + * 获取待审核订单列表 + * @param {Object} params 查询参数 + * @returns {Promise} 返回Promise对象 + */ +export function getCollectionAuditOrder(params) { + return new Promise((resolve, reject) => { + request({ + url: '/collection/getCollectionAuditOrder', + method: 'get', + params + }).then(response => { + const res = response.data + resolve(res) + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/api/resource/resourceOutManageApi.js b/src/api/resource/resourceOutManageApi.js new file mode 100644 index 0000000..38ac612 --- /dev/null +++ b/src/api/resource/resourceOutManageApi.js @@ -0,0 +1,47 @@ +import request from '@/utils/request' + +/** + * Get purchase apply list + * @param {Object} params + * @param {number} params.page - Page number + * @param {number} params.row - Page size + * @param {string} params.applyOrderId - Apply order ID + * @param {string} params.resOrderType - Resource order type + * @returns {Promise} + */ +export function listPurchaseApplys(params) { + return new Promise((resolve, reject) => { + request({ + url: '/purchaseApply.listPurchaseApplys', + method: 'get', + params + }).then(response => { + resolve(response.data) + }).catch(error => { + reject(error) + }) + }) +} + +/** + * Submit resource out + * @param {Object} data - Resource out data + * @param {string} data.applyOrderId - Apply order ID + * @param {string} data.taskId - Task ID + * @param {string} data.resOrderType - Resource order type + * @param {Array} data.purchaseApplyDetailVo - Purchase apply details + * @returns {Promise} + */ +export function submitResourceOut(data) { + return new Promise((resolve, reject) => { + request({ + url: '/collection/resourceOut', + method: 'post', + data + }).then(response => { + resolve(response.data) + }).catch(error => { + reject(error) + }) + }) +} \ No newline at end of file diff --git a/src/components/contract/flowAudit.vue b/src/components/contract/flowAudit.vue new file mode 100644 index 0000000..da08969 --- /dev/null +++ b/src/components/contract/flowAudit.vue @@ -0,0 +1,173 @@ + + + + + + {{ $t('flowAudit.auditInfo') }} + + + + + + + + + + + + + + + + + + + {{ $t('flowAudit.select') }} + + + + + + {{ $t('common.submit') }} + + + {{ $t('common.cancel') }} + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/i18n/contractI18n.js b/src/i18n/contractI18n.js index e966979..2e2d5a7 100644 --- a/src/i18n/contractI18n.js +++ b/src/i18n/contractI18n.js @@ -10,6 +10,8 @@ import { messages as contractChangeDetailMessages } from '../views/contract/cont import { messages as expirationContractManageMessages } from '../views/contract/expirationContractManageLang' import { messages as contractDetailMessages } from '../views/contract/contractDetailLang.js' import { messages as contractChangeDetailsMessages } from '../views/contract/contractChangeDetailsLang' +import { messages as contractApplyAuditOrdersMessages } from '../views/contract/contractApplyAuditOrdersLang' +import { messages as contractChangeAuditOrdersMessages } from '../views/contract/contractChangeAuditOrdersLang.js' export const messages ={ en:{ @@ -25,6 +27,8 @@ export const messages ={ ...expirationContractManageMessages.en, ...contractDetailMessages.en, ...contractChangeDetailsMessages.en, + ...contractApplyAuditOrdersMessages.en, + ...contractChangeAuditOrdersMessages.en, }, zh:{ ...contractTypeManageMessages.zh, @@ -39,5 +43,7 @@ export const messages ={ ...expirationContractManageMessages.zh, ...contractDetailMessages.zh, ...contractChangeDetailsMessages.zh, + ...contractApplyAuditOrdersMessages.zh, + ...contractChangeAuditOrdersMessages.zh, } } \ No newline at end of file diff --git a/src/i18n/resourceI18n.js b/src/i18n/resourceI18n.js index 7817a98..8f77ceb 100644 --- a/src/i18n/resourceI18n.js +++ b/src/i18n/resourceI18n.js @@ -34,6 +34,12 @@ import { messages as myAuditOrdersMessages } from '../views/resource/myAuditOrde import { messages as resourceEnterManageMessages } from '../views/resource/resourceEnterManageLang' import { messages as editPurchaseApplyMessages } from '../views/resource/editPurchaseApplyLang' +import { messages as myItemOutAuditOrdersMessages } from '../views/resource/myItemOutAuditOrdersLang' +import { messages as resourceOutManageMessages } from '../views/resource/resourceOutManageLang' +import { messages as allocationStorehouseAuditOrdersMessages } from '../views/resource/allocationStorehouseAuditOrdersLang' +import { messages as editAllocationStorehouseApplyMessages } from '../views/resource/editAllocationStorehouseApplyLang' +import { messages as allocationStorehouseEnterMessages } from '../views/resource/allocationStorehouseEnterLang' + export const messages = { en: { ...resourceAuditFlowMessages.en, @@ -70,6 +76,11 @@ export const messages = { ...myAuditOrdersMessages.en, ...resourceEnterManageMessages.en, ...editPurchaseApplyMessages.en, + ...myItemOutAuditOrdersMessages.en, + ...resourceOutManageMessages.en, + ...allocationStorehouseAuditOrdersMessages.en, + ...editAllocationStorehouseApplyMessages.en, + ...allocationStorehouseEnterMessages.en, }, zh: { ...resourceAuditFlowMessages.zh, @@ -106,5 +117,10 @@ export const messages = { ...myAuditOrdersMessages.zh, ...resourceEnterManageMessages.zh, ...editPurchaseApplyMessages.zh, + ...myItemOutAuditOrdersMessages.zh, + ...resourceOutManageMessages.zh, + ...allocationStorehouseAuditOrdersMessages.zh, + ...editAllocationStorehouseApplyMessages.zh, + ...allocationStorehouseEnterMessages.zh, } } \ No newline at end of file diff --git a/src/router/contractRouter.js b/src/router/contractRouter.js index ccf9c3e..13af793 100644 --- a/src/router/contractRouter.js +++ b/src/router/contractRouter.js @@ -54,4 +54,14 @@ export default [ name: '/views/contract/contractChangeDetails', component: () => import('@/views/contract/contractChangeDetailsList.vue') }, + { + path: '/pages/admin/contractApplyAuditOrders', + name: '/pages/admin/contractApplyAuditOrders', + component: () => import('@/views/contract/contractApplyAuditOrdersList.vue') + }, + { + path: '/pages/admin/contractChangeAuditOrders', + name: '/pages/admin/contractChangeAuditOrders', + component: () => import('@/views/contract/contractChangeAuditOrdersList.vue') + }, ] \ No newline at end of file diff --git a/src/router/resourceRouter.js b/src/router/resourceRouter.js index 516b94e..1a18e71 100644 --- a/src/router/resourceRouter.js +++ b/src/router/resourceRouter.js @@ -160,5 +160,30 @@ export default [ name: '/pages/resource/editPurchaseApply', component: () => import('@/views/resource/editPurchaseApplyList.vue') }, + { + path: '/pages/admin/myItemOutAuditOrders', + name: '/pages/admin/myItemOutAuditOrders', + component: () => import('@/views/resource/myItemOutAuditOrdersList.vue') + }, + { + path: '/pages/admin/resourceOutManage', + name: '/pages/admin/resourceOutManage', + component: () => import('@/views/resource/resourceOutManageList.vue') + }, + { + path: '/pages/admin/allocationStorehouseAuditOrders', + name: '/pages/admin/allocationStorehouseAuditOrders', + component: () => import('@/views/resource/allocationStorehouseAuditOrdersList.vue') + }, + { + path: '/pages/resource/editAllocationStorehouseApply', + name: '/pages/resource/editAllocationStorehouseApply', + component: () => import('@/views/resource/editAllocationStorehouseApplyList.vue') + }, + { + path:'/pages/resource/allocationStorehouseEnter', + name:'/pages/resource/allocationStorehouseEnter', + component: () => import('@/views/resource/allocationStorehouseEnterList.vue') + }, ] \ No newline at end of file diff --git a/src/views/contract/contractApplyAuditOrdersLang.js b/src/views/contract/contractApplyAuditOrdersLang.js new file mode 100644 index 0000000..9afa276 --- /dev/null +++ b/src/views/contract/contractApplyAuditOrdersLang.js @@ -0,0 +1,62 @@ +export const messages = { + en: { + contractApplyAuditOrders: { + draftPendingList: 'Draft Pending List', + contractCode: 'Contract Code', + contractName: 'Contract Name', + contractType: 'Contract Type', + contractStatus: 'Contract Status', + createTime: 'Create Time', + operation: 'Operation', + view: 'View', + audit: 'Audit', + finish: 'Finish', + processEnd: 'Process End' + }, + flowAudit: { + auditInfo: 'Audit Information', + auditStatus: 'Audit Status', + pleaseAudit: 'Please Audit', + agree: 'Agree', + reject: 'Reject', + reason: 'Reason', + requiredReason: 'Required, please fill in the reason', + staff: 'Staff', + selectNextHandler: 'Required, please select next handler', + select: 'Select', + auditStatusRequired: 'Audit status cannot be empty', + reasonRequired: 'Reason content cannot be empty', + reasonMaxLength: 'Reason content cannot exceed 200 characters' + }, + }, + zh: { + contractApplyAuditOrders: { + draftPendingList: '起草待办单', + contractCode: '合同编号', + contractName: '合同名称', + contractType: '合同类型', + contractStatus: '合同状态', + createTime: '创建时间', + operation: '操作', + view: '查看', + audit: '审批', + finish: '结束', + processEnd: '处理结束' + }, + flowAudit: { + auditInfo: '审核信息', + auditStatus: '审核状态', + pleaseAudit: '请审核', + agree: '同意', + reject: '拒绝', + reason: '原因', + requiredReason: '必填,请填写原因', + staff: '员工', + selectNextHandler: '必填,请选择下一处理人', + select: '选择', + auditStatusRequired: '审核状态不能为空', + reasonRequired: '原因内容不能为空', + reasonMaxLength: '原因内容不能超过200字' + }, + } +} \ No newline at end of file diff --git a/src/views/contract/contractApplyAuditOrdersList.vue b/src/views/contract/contractApplyAuditOrdersList.vue new file mode 100644 index 0000000..9555e66 --- /dev/null +++ b/src/views/contract/contractApplyAuditOrdersList.vue @@ -0,0 +1,176 @@ + + + + + + + {{ $t('contractApplyAuditOrders.draftPendingList') }} + + + + + + + + + + + + {{ $t('contractApplyAuditOrders.view') }} + + + {{ $t('contractApplyAuditOrders.audit') }} + + + {{ $t('contractApplyAuditOrders.finish') }} + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/views/contract/contractChangeAuditOrdersLang.js b/src/views/contract/contractChangeAuditOrdersLang.js new file mode 100644 index 0000000..be17a57 --- /dev/null +++ b/src/views/contract/contractChangeAuditOrdersLang.js @@ -0,0 +1,32 @@ +export const messages = { + en: { + contractChangeAuditOrders: { + title: 'Change To-do List', + contractCode: 'Contract Number', + contractName: 'Contract Name', + contractType: 'Contract Type', + contractStatus: 'Contract Status', + createTime: 'Create Time', + operation: 'Operation', + view: 'View', + audit: 'Audit', + finish: 'Finish', + processEnd: 'Process End' + }, + }, + zh: { + contractChangeAuditOrders: { + title: '变更待办单', + contractCode: '合同编号', + contractName: '合同名称', + contractType: '合同类型', + contractStatus: '合同状态', + createTime: '创建时间', + operation: '操作', + view: '查看', + audit: '审批', + finish: '结束', + processEnd: '处理结束' + }, + } +} \ No newline at end of file diff --git a/src/views/contract/contractChangeAuditOrdersList.vue b/src/views/contract/contractChangeAuditOrdersList.vue new file mode 100644 index 0000000..9a1f650 --- /dev/null +++ b/src/views/contract/contractChangeAuditOrdersList.vue @@ -0,0 +1,164 @@ + + + + + + + {{ $t('contractChangeAuditOrders.title') }} + + + + + + + + + + + + + {{ $t('contractChangeAuditOrders.view') }} + + + {{ $t('contractChangeAuditOrders.audit') }} + + + {{ $t('contractChangeAuditOrders.finish') }} + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/views/oa/newOaWorkflowDoingList.vue b/src/views/oa/newOaWorkflowDoingList.vue index 60be8ca..7f74bf6 100644 --- a/src/views/oa/newOaWorkflowDoingList.vue +++ b/src/views/oa/newOaWorkflowDoingList.vue @@ -120,10 +120,10 @@ export default { this.$router.push(url) }, _toGoA(item) { - this.$router.push(`/form.html#/pages/property/newOaWorkflow?flowId=${item.flowId}&switchValue=newOaWorkflowUndo`) + this.$router.push(`/views/oa/newOaWorkflow?flowId=${item.flowId}&switchValue=newOaWorkflowUndo`) }, _toGoB(item) { - this.$router.push(`/form.html#/pages/property/newOaWorkflow?flowId=${item.flowId}&switchValue=newOaWorkflowFinish`) + this.$router.push(`/views/oa/newOaWorkflow?flowId=${item.flowId}&switchValue=newOaWorkflowFinish`) }, async _listNewOaWorkflows() { try { diff --git a/src/views/resource/allocationStorehouseAuditOrdersLang.js b/src/views/resource/allocationStorehouseAuditOrdersLang.js new file mode 100644 index 0000000..54a95b1 --- /dev/null +++ b/src/views/resource/allocationStorehouseAuditOrdersLang.js @@ -0,0 +1,36 @@ +export const messages = { + en: { + allocationStorehouseAuditOrders: { + title: 'Pending Orders', + back: 'Back', + refresh: 'Refresh', + scheduleNo: 'Schedule No', + allocationCount: 'Allocation Count', + applicant: 'Applicant', + status: 'Status', + time: 'Time', + operation: 'Operation', + view: 'View', + edit: 'Edit', + allocation: 'Allocation', + approve: 'Approve' + } + }, + zh: { + allocationStorehouseAuditOrders: { + title: '待办单', + back: '返回', + refresh: '刷新', + scheduleNo: '调度编号', + allocationCount: '调拨数量', + applicant: '申请人', + status: '状态', + time: '时间', + operation: '操作', + view: '查看', + edit: '修改', + allocation: '调拨', + approve: '审批' + } + } +} \ No newline at end of file diff --git a/src/views/resource/allocationStorehouseAuditOrdersList.vue b/src/views/resource/allocationStorehouseAuditOrdersList.vue new file mode 100644 index 0000000..8d53e75 --- /dev/null +++ b/src/views/resource/allocationStorehouseAuditOrdersList.vue @@ -0,0 +1,214 @@ + + + + + + + {{ $t('allocationStorehouseAuditOrders.title') }} + + + + {{ $t('allocationStorehouseAuditOrders.back') }} + + + + {{ $t('allocationStorehouseAuditOrders.refresh') }} + + + + + + + + + + + + + + + {{ $t('allocationStorehouseAuditOrders.view') }} + + + {{ $t('allocationStorehouseAuditOrders.edit') }} + + + {{ $t('allocationStorehouseAuditOrders.allocation') }} + + + {{ $t('allocationStorehouseAuditOrders.approve') }} + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/views/resource/allocationStorehouseEnterLang.js b/src/views/resource/allocationStorehouseEnterLang.js new file mode 100644 index 0000000..d50cfe2 --- /dev/null +++ b/src/views/resource/allocationStorehouseEnterLang.js @@ -0,0 +1,52 @@ +export const messages = { + en: { + allocationStorehouseEnter: { + title: 'Allocation Warehouse Entry', + applyId: 'Apply ID: ', + resourceType: 'Resource Type', + resourceName: 'Resource Name', + specification: 'Specification', + resourceCode: 'Resource Code', + fixedResource: 'Fixed Resource', + transferredWarehouse: 'Transferred Warehouse', + returnPerson: 'Return Person', + originalWarehouse: 'Original Warehouse', + targetWarehouse: 'Target Warehouse', + originalStock: 'Original Stock', + transferQuantity: 'Transfer Quantity', + actualQuantity: 'Actual Quantity', + quantityPlaceholder: 'Required, please enter the transfer quantity', + submit: 'Submit', + fetchError: 'Failed to fetch allocation data', + selectItemsWarning: 'Please select items to transfer', + quantityWarning: 'Please enter valid quantity for all selected items', + submitSuccess: 'Operation successful', + submitError: 'Operation failed' + } + }, + zh: { + allocationStorehouseEnter: { + title: '调拨入库', + applyId: '单号:', + resourceType: '物品类型', + resourceName: '物品名称', + specification: '物品规格', + resourceCode: '物品编码', + fixedResource: '固定物品', + transferredWarehouse: '被调仓库', + returnPerson: '退还人', + originalWarehouse: '原仓库', + targetWarehouse: '目标仓库', + originalStock: '原库存', + transferQuantity: '调拨数量', + actualQuantity: '实际数量', + quantityPlaceholder: '必填,请填写调拨数量', + submit: '提交', + fetchError: '获取调拨数据失败', + selectItemsWarning: '请选择调拨物品', + quantityWarning: '请为所有选中物品填写有效数量', + submitSuccess: '操作成功', + submitError: '操作失败' + } + } +} \ No newline at end of file diff --git a/src/views/resource/allocationStorehouseEnterList.vue b/src/views/resource/allocationStorehouseEnterList.vue new file mode 100644 index 0000000..b41c321 --- /dev/null +++ b/src/views/resource/allocationStorehouseEnterList.vue @@ -0,0 +1,187 @@ + + + + + {{ $t('allocationStorehouseEnter.title') }} + + + + + + + + {{ $t('allocationStorehouseEnter.applyId') }}{{ allocationStorehouseEnterInfo.applyId }} + + + + + + + + + {{ scope.row.parentRstName }} > {{ scope.row.rstName }} + + + + + + {{ scope.row.specName || '-' }} + + + + + + + {{ allocationStorehouseEnterInfo.applyType == '10000' || allocationStorehouseEnterInfo.applyType == + '30000' ? scope.row.shaName : allocationStorehouseEnterInfo.startUserName }} + + + + + + + {{ scope.row.originalStock }}{{ scope.row.unitCodeName }} + + + + + {{ scope.row.stock }}{{ scope.row.applyType == 20000 ? scope.row.miniUnitCodeName : + scope.row.unitCodeName }} + + + + + + + + + + + + + + + + + {{ $t('allocationStorehouseEnter.submit') }} + + + + + + + + + + \ No newline at end of file diff --git a/src/views/resource/editAllocationStorehouseApplyLang.js b/src/views/resource/editAllocationStorehouseApplyLang.js new file mode 100644 index 0000000..dabd964 --- /dev/null +++ b/src/views/resource/editAllocationStorehouseApplyLang.js @@ -0,0 +1,58 @@ +export const messages = { + en: { + editAllocationStorehouseApply: { + title: 'Allocation Application', + back: 'Back', + applyRemark: 'Application Description', + remarkPlaceholder: 'Required, please fill in the application description', + purchaseItems: 'Purchase Items', + select: 'Select', + resourceType: 'Resource Type', + resourceName: 'Resource Name', + specification: 'Specification', + isFixed: 'Fixed Resource', + sourceWarehouse: 'Source Warehouse', + referencePrice: 'Reference Price', + selectPrice: 'Select Price', + stock: 'Stock', + targetWarehouse: 'Target Warehouse', + selectTargetWarehouse: 'Required, select target warehouse', + allocationQuantity: 'Allocation Quantity', + allocationQuantityPlaceholder: 'Required, fill in allocation quantity', + operation: 'Operation', + cancelAllocation: 'Cancel Allocation', + submit: 'Submit', + noPurchaseItems: 'No purchase items selected', + updateSuccess: 'Update successful', + updateFailed: 'Update failed' + } + }, + zh: { + editAllocationStorehouseApply: { + title: '调拨申请', + back: '返回', + applyRemark: '申请说明', + remarkPlaceholder: '必填,请填写申请说明', + purchaseItems: '采购物品', + select: '选择', + resourceType: '物品类型', + resourceName: '物品名称', + specification: '物品规格', + isFixed: '固定物品', + sourceWarehouse: '源仓库', + referencePrice: '参考价格', + selectPrice: '请选择价格', + stock: '库存', + targetWarehouse: '目标仓库', + selectTargetWarehouse: '必填,请选择目标仓库', + allocationQuantity: '调拨数量', + allocationQuantityPlaceholder: '必填,请填写调拨数量', + operation: '操作', + cancelAllocation: '取消调拨', + submit: '提交', + noPurchaseItems: '未选择采购物品', + updateSuccess: '修改成功', + updateFailed: '修改失败' + } + } +} \ No newline at end of file diff --git a/src/views/resource/editAllocationStorehouseApplyList.vue b/src/views/resource/editAllocationStorehouseApplyList.vue new file mode 100644 index 0000000..bd48b5f --- /dev/null +++ b/src/views/resource/editAllocationStorehouseApplyList.vue @@ -0,0 +1,313 @@ + + + + + {{ $t('editAllocationStorehouseApply.title') }} + + + + {{ $t('editAllocationStorehouseApply.back') }} + + + + + + + + + + + + + + + + + + {{ $t('editAllocationStorehouseApply.purchaseItems') }} + + + + {{ $t('editAllocationStorehouseApply.select') }} + + + + + + + + {{ scope.row.parentRstName || '-' }} > {{ scope.row.rstName || '-' }} + + + + + {{ scope.row.resName }}({{ scope.row.resCode }}) + + + + + {{ scope.row.rssName || '-' }} + + + + + {{ scope.row.isFixedName }} + + + + + {{ scope.row.shaName }} + + + + + + + + + + + + + {{ getTimesStock(scope.row) }}{{ scope.row.unitCodeName }} + + + + + + + + + + + + + + + + {{ scope.row.unitCodeName }} + + + + + + {{ $t('editAllocationStorehouseApply.cancelAllocation') }} + + + + + + + + + + {{ $t('editAllocationStorehouseApply.submit') }} + + + + + + + + + + + \ No newline at end of file diff --git a/src/views/resource/myAuditOrdersList.vue b/src/views/resource/myAuditOrdersList.vue index e7b0b6d..01e177a 100644 --- a/src/views/resource/myAuditOrdersList.vue +++ b/src/views/resource/myAuditOrdersList.vue @@ -104,7 +104,7 @@ export default { this._loadStepStaff() }, _initEvent() { - + }, async _listAuditOrders(_page, _rows) { this.auditOrdersInfo.audit = '1' diff --git a/src/views/resource/myItemOutAuditOrdersLang.js b/src/views/resource/myItemOutAuditOrdersLang.js new file mode 100644 index 0000000..6b7df1d --- /dev/null +++ b/src/views/resource/myItemOutAuditOrdersLang.js @@ -0,0 +1,36 @@ +export const messages = { + en: { + myItemOutAuditOrders: { + title: 'Pending Orders', + back: 'Back', + refresh: 'Refresh', + orderNo: 'Order No', + orderType: 'Order Type', + orderStatus: 'Order Status', + applicant: 'Applicant', + createTime: 'Create Time', + operation: 'Operation', + view: 'View', + edit: 'Edit', + itemDistribution: 'Item Distribution', + audit: 'Audit' + } + }, + zh: { + myItemOutAuditOrders: { + title: '待办单', + back: '返回', + refresh: '刷新', + orderNo: '订单号', + orderType: '订单类型', + orderStatus: '订单状态', + applicant: '申请人', + createTime: '创建时间', + operation: '操作', + view: '查看', + edit: '修改', + itemDistribution: '物品发放', + audit: '审批' + } + } +} \ No newline at end of file diff --git a/src/views/resource/myItemOutAuditOrdersList.vue b/src/views/resource/myItemOutAuditOrdersList.vue new file mode 100644 index 0000000..c0820da --- /dev/null +++ b/src/views/resource/myItemOutAuditOrdersList.vue @@ -0,0 +1,194 @@ + + + + + + + {{ $t('myItemOutAuditOrders.title') }} + + + + {{ $t('myItemOutAuditOrders.back') }} + + + + {{ $t('myItemOutAuditOrders.refresh') }} + + + + + + + + + + + + + + + {{ $t('myItemOutAuditOrders.view') }} + + + {{ $t('myItemOutAuditOrders.edit') }} + + + {{ $t('myItemOutAuditOrders.itemDistribution') }} + + + {{ $t('myItemOutAuditOrders.audit') }} + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/views/resource/resourceOutManageLang.js b/src/views/resource/resourceOutManageLang.js new file mode 100644 index 0000000..30a9428 --- /dev/null +++ b/src/views/resource/resourceOutManageLang.js @@ -0,0 +1,44 @@ +export const messages = { + en: { + resourceOutManage: { + orderId: 'Order ID', + itemType: 'Item Type', + itemName: 'Item Name', + itemSpec: 'Item Specification', + itemCode: 'Item Code', + itemStock: 'Stock', + applyQuantity: 'Apply Quantity', + issueQuantity: 'Issue Quantity', + issueQuantityPlaceholder: 'Required, please enter issue quantity', + remark: 'Remark', + remarkPlaceholder: 'Optional, please enter remark', + submit: 'Submit', + quantityRequired: 'Please enter issue quantity', + insufficientStock: 'Insufficient stock', + submitSuccess: 'Submit success', + submitError: 'Submit failed', + fetchError: 'Failed to fetch data' + } + }, + zh: { + resourceOutManage: { + orderId: '单号', + itemType: '物品类型', + itemName: '物品名称', + itemSpec: '物品规格', + itemCode: '物品编码', + itemStock: '物品库存', + applyQuantity: '申请数量', + issueQuantity: '发放数量', + issueQuantityPlaceholder: '必填,请填写发放数量', + remark: '备注', + remarkPlaceholder: '可填,请填写备注', + submit: '提交', + quantityRequired: '请填写发放数量', + insufficientStock: '库存不足', + submitSuccess: '提交成功', + submitError: '提交失败', + fetchError: '获取数据失败' + } + } +} \ No newline at end of file diff --git a/src/views/resource/resourceOutManageList.vue b/src/views/resource/resourceOutManageList.vue new file mode 100644 index 0000000..6c5710b --- /dev/null +++ b/src/views/resource/resourceOutManageList.vue @@ -0,0 +1,154 @@ + + + + + {{ $t('resourceOutManage.orderId') }}:{{ resourceOutManageInfo.applyOrderId }} + + + + + + + {{ scope.row.rstName || '-' }} + + + + + + {{ scope.row.specName || '-' }} + + + + + + + + + + + + + + + + + + + + + + + {{ $t('resourceOutManage.submit') }} + + + + + + + + + + \ No newline at end of file