123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187 |
- import {
- queryAuditList,
- addAudit,
- addAuditNode,
- addFlow,
- queryBoomFlowDetail,
- updateNode,
- queryFlowList,
- queryDingTemplateList,
- saveAuditFlowInfo,
- queryDepV2,
- queryProcessFlows,
- } from '@/services/boom';
- import { queryRole } from '@/services/SysAdmin';
- import { queryProject } from '@/services/PurchaseList';
- import { message } from 'antd';
- function getDepUserTree(data) {
- data.title = `${data.Name}`;
- data.id = data.ID;
- data.value = data.ID;
- // data.selectable = false;
- if (!data.children) data.children = new Array();
- if (data.children) {
- data.children.forEach(item => {
- getDepUserTree(item);
- });
- }
- if (data.Users && data.Users.length !== 0) {
- data.Users.forEach(item => {
- item.title = item.CName;
- item.id = item.ID + '||' + data.ID;
- item.value = item.ID + '||' + data.ID;
- // item.selectable = true;
- item.DepId = data.ID;
- data.children.push(item);
- });
- }
- return data;
- }
- export default {
- namespace: 'flow',
- state: {
- flowDetail: { nodes: [], edges: [] },
- formData: {},
- auditList: [],
- flowList: [],
- projectList: [],
- current: {},
- roleList: [],
- templateList: [],
- depUserTree: [],
- },
- effects: {
- *addFlow({ payload, callback }, { call, put }) {
- const res = yield call(addFlow, payload);
- if (res) {
- message.success('添加成功');
- callback && callback();
- yield put({
- type: 'queryFlowList',
- });
- }
- },
- *getRoleList({ payload }, { call, put }) {
- const response = yield call(queryRole, payload);
- if (response) {
- yield put({
- type: 'save',
- payload: { roleList: response.data.list },
- });
- }
- },
- *queryBoomFlowDetail({ payload }, { call, put }) {
- const data = yield call(queryBoomFlowDetail, payload);
- console.log(data);
- yield put({
- type: 'save',
- payload: { flowDetail: data },
- });
- },
- *queryProject({ callback }, { call, put }) {
- const response = yield call(queryProject);
- if (response) {
- yield put({
- type: 'save',
- payload: {
- projectList: response.data.list,
- },
- });
- }
- },
- *queryFlowList({ payload }, { call, put }) {
- const res = yield call(queryFlowList, payload);
- yield put({
- type: 'save',
- payload: { flowList: res.data },
- });
- },
- *updateNode({ payload }, { call, put }) {
- const data = yield call(updateNode, payload);
- console.log(data);
- message.success('修改成功');
- },
- *queryAuditList({ payload }, { call, put }) {
- const response = yield call(queryAuditList, payload);
- if (response) {
- yield put({
- type: 'save',
- payload: { auditList: response.data },
- });
- }
- },
- *addAudit({ payload, callback }, { call, put }) {
- const response = yield call(addAudit, payload);
- if (response) {
- message.success('新增成功');
- callback && callback();
- yield put({
- type: 'queryAuditList',
- payload: {},
- });
- }
- },
- *addAuditNode({ payload, callback }, { call, put }) {
- const response = yield call(addAuditNode, payload);
- if (response) {
- message.success('操作成功');
- callback && callback();
- }
- },
- *queryDingTemplateList({ payload }, { call, put }) {
- const response = yield call(queryDingTemplateList, payload);
- if (response) {
- yield put({
- type: 'save',
- payload: { templateList: response.data.result },
- });
- }
- },
- *saveAuditFlowInfo({ payload, callback }, { call, put }) {
- const response = yield call(saveAuditFlowInfo, payload);
- if (response) {
- message.success('保存成功');
- callback && callback();
- }
- },
- *fetchDepV2({ payload, callback }, { call, put }) {
- const response = yield call(queryDepV2, { pageSize: 999999 });
- if (response) {
- // const depUserTree = response.data?.list;
- const depUserTree = response.data.list.map(item => {
- return getDepUserTree(item);
- });
- yield put({
- type: 'save',
- payload: { depUserTree },
- });
- }
- },
- *queryProcessFlows({ payload }, { call, put }) {
- const data = yield call(queryProcessFlows, payload);
- if (data && data.length > 0) {
- yield put({
- type: 'save',
- payload: {
- flowDetail: JSON.parse(data[0].process_json),
- formData: JSON.parse(data[0].form_json),
- },
- });
- }
- },
- },
- reducers: {
- save(state, action) {
- return {
- ...state,
- ...action.payload,
- };
- },
- },
- };
|