dldiscuss
Version:
#### 介绍 {**以下是 Gitee 平台说明,您可以替换此简介** Gitee 是 OSCHINA 推出的基于 Git 的代码托管平台(同时支持 SVN)。专为开发者提供稳定、高效、安全的云端软件开发协作平台 无论是个人、团队、或是企业,都能够用 Gitee 实现代码托管、项目管理、协作开发。企业项目请看 [https://gitee.com/enterprises](https://gitee.com/enterprises)}
824 lines • 133 kB
JavaScript
import { defineComponent as j, mergeModels as mt, useModel as gt, ref as w, watch as ne, resolveComponent as b, openBlock as v, createElementBlock as $, createElementVNode as u, createVNode as f, withCtx as y, createTextVNode as pe, toDisplayString as O, Fragment as Z, renderList as be, unref as U, createBlock as L, createCommentVNode as A, pushScopeId as me, popScopeId as ge, computed as ee, onMounted as _e, nextTick as Se, inject as le, onUnmounted as is, withDirectives as ue, vShow as fe, normalizeClass as he, withKeys as Ye, withModifiers as lt, normalizeStyle as vt, reactive as W, onDeactivated as ht, Teleport as rs, onBeforeMount as Me, onActivated as ds, provide as Be } from "vue";
import { useStore as te } from "vuex";
import { ElMessage as H, ElMessageBox as ze } from "element-plus";
import cs from "axios";
import { decrypt as us, storeMessage as fs } from "dl-components";
import { createWebHashHistory as ps, createRouter as ms, useRouter as gs } from "vue-router";
import { useWebSocket as _t, useWindowSize as vs, useDraggable as hs } from "@vueuse/core";
const _s = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1710405697228'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='1455'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='200'%20height='200'%3e%3cpath%20d='M896%201024H128a128.1536%20128.1536%200%200%201-128-128V128a128.1536%20128.1536%200%200%201%20128-128h768a128.1536%20128.1536%200%200%201%20128%20128v768a128.1536%20128.1536%200%200%201-128%20128z%20m-375.9872-204.8h23.68a354.2784%20354.2784%200%200%200%20128.3072-14.4128c35.4048-14.7712%2052.5568-43.52%2054.0416-90.1632a233.6256%20233.6256%200%200%200-64.2048-169.3952%20197.12%20197.12%200%200%200-141.8496-62.0544%20198.8352%20198.8352%200%200%200-144.3072%2064%20227.84%20227.84%200%200%200-61.7472%20167.552c4.5824%2097.536%2071.9616%20104.576%20182.3744%20104.576h23.6544z%20m211.584-271.7696a118.8096%20118.8096%200%200%200-36.4544%205.7856%20232.7552%20232.7552%200%200%201%2052.4544%20155.904%20122.88%20122.88%200%200%201-11.4432%2051.6608h12.0576c67.7376%200%20112.2816-4.6336%20114.1504-66.56a148.0192%20148.0192%200%200%200-40.6784-107.52%20125.1072%20125.1072%200%200%200-90.112-39.296z%20m-435.712%200a126.1824%20126.1824%200%200%200-91.5968%2040.576%20144.5888%20144.5888%200%200%200-39.168%20106.3424c2.9696%2061.9776%2045.7216%2066.56%20115.7376%2066.56h22.0928a124.288%20124.288%200%200%201-12.16-51.6608%20229.0432%20229.0432%200%200%201%2049.4336-153.0112%20119.6032%20119.6032%200%200%200-44.3392-8.832z%20m0-179.2a82.9184%2082.9184%200%200%200-19.0464%202.2272%2082.048%2082.048%200%200%200-51.2%2036.9664%2082.048%2082.048%200%200%200-10.24%2062.4128%2082.2528%2082.2528%200%200%200%2080.3072%2063.616%2082.176%2082.176%200%200%200%2019.0208-2.2272%2082.688%2082.688%200%200%200%2061.44-99.3536%2082.2784%2082.2784%200%200%200-80.2048-63.616z%20m435.712%200a83.1232%2083.1232%200%200%200-19.0464%202.2272%2082.688%2082.688%200%200%200-61.44%2099.3536%2082.2784%2082.2784%200%200%200%2080.2816%2063.6416%2082.2784%2082.2784%200%200%200%2019.0464-2.2272%2082.688%2082.688%200%200%200%2061.44-99.3536%2082.2528%2082.2528%200%200%200-80.2304-63.6416z%20m-211.6352-166.912a130.0992%20130.0992%200%200%200-129.9456%20129.9456%20130.0992%20130.0992%200%200%200%20129.9456%20129.9456%20130.0992%20130.0992%200%200%200%20129.9712-129.9456%20130.0992%20130.0992%200%200%200-129.92-129.9456z'%20fill='%234D9EFC'%20p-id='1456'%3e%3c/path%3e%3c/svg%3e", ys = "Authorization", Je = "web_token", Oe = "web_service", Ke = "web_service_btns", yt = "web_app_key", Fe = "tag_name", Ue = () => sessionStorage[Je], bs = (e) => {
sessionStorage[Je] = e;
}, bt = () => {
sessionStorage.removeItem(Je);
}, Ha = () => sessionStorage[Oe] ? JSON.parse(sessionStorage[Oe]) : [], Is = (e) => {
sessionStorage[Oe] = JSON.stringify(e), ws(e);
}, It = () => {
sessionStorage.removeItem(Oe);
}, Ya = (e) => sessionStorage[Ke] ? JSON.parse(sessionStorage[Ke])["" + e] : {}, ws = (e) => {
let o = {};
const s = (t) => {
t.forEach((r) => {
o[r.serverUrl] = r.btnList, s(r.children);
});
};
s(e), sessionStorage[Ke] = JSON.stringify(o);
}, Ss = (e) => {
sessionStorage[yt] = e;
}, wt = () => {
sessionStorage.removeItem(yt);
}, Ka = () => {
bt(), It(), wt(), window.opener = null, window.open("about:blank", "_top").close();
}, Ds = () => {
bt(), It(), wt(), location.href = location.origin + "/#/login";
};
function St(e, s) {
var s = s || 200, t;
return function() {
var r = this, n = arguments;
t && clearTimeout(t), t = setTimeout(function() {
t = null, e.apply(r, n);
}, s);
};
}
function Cs(e, r) {
var s, t, r = r || 200;
return function() {
var n = this, c = arguments, l = +/* @__PURE__ */ new Date();
s && l - s < r ? (clearTimeout(t), t = setTimeout(function() {
s = l, e.apply(n, c);
}, r)) : (s = l, e.apply(n, c));
};
}
function ie() {
var e = /* @__PURE__ */ new Date(), o = e.getFullYear(), s = e.getMonth() + 1, t = e.getDate(), r = e.getHours(), n = e.getMinutes(), c = e.getSeconds();
return o + "-" + s + "-" + t + " " + r + ":" + n + ":" + c;
}
const xs = [
// 首页
{
path: "",
name: "home",
component: () => import("./index-CJEMsbpx.mjs"),
meta: {
isDefault: !0,
tagName: "首页"
}
},
// 合议列表
{
path: "discussions",
name: "Discussions",
component: () => import("./index-C1TmWU_R.mjs")
},
// 合议进程
{
path: "discussprogress/:id?",
name: "DiscussProgress",
component: () => import("./index-COFuGw9a.mjs")
}
], Ns = [
{
path: "/login",
name: "login",
component: () => import("./index-BpFD6zYn.mjs")
},
// {
// path: '/excel',
// name: 'excel',
// component: () => import('../views/excel/index.vue'),
// },
{
path: "/word",
name: "word",
component: () => import("./index-CqwGwrt_.mjs")
},
{
path: "/auth/:appKey/:token/:disInfoId?/:sysUserId?/:tagName?",
name: "auth",
component: () => import("./index-DkGZyQxK.mjs")
},
{
path: "/discussionAuth",
name: "discussionAuth",
component: () => import("./index-CTYQEvAn.mjs")
},
{
path: "/",
component: () => import("./index-YVld9hCz.mjs"),
children: xs
}
], ja = (e) => V.post("/login", e), ks = (e) => V.post("/login/" + e), qa = () => V.post("/sysUsers/currentUser"), Ja = (e) => V({ url: `/oss/downloadStream?fileKey=${e}`, responseType: "blob" }), Za = (e) => V.get(`/oss/preview?fileKey=${e}`), Ts = (e) => V.post("/sysDeps/tenantDepUserTreeList", e), Dt = (e) => V.post("/disInfo/detail", { id: e }), Ct = (e) => V.post("/disLog/disRecords", e), Ie = (e) => V.post("/disUser/disMember", e), Ze = (e) => V.post("/disUser/batchInsert", e), Us = (e) => V.post("/disUser/batchDel", e), Ms = (e) => V.post("/disUser/batchFinalDel", e), $s = (e) => V.post("/disInfo/finishDisConfirm", e), Ls = (e) => V.post("/disInfo/finishDis", e), Wa = (e) => V.post("/disUser/finalDisConfirmOrCancel", e), re = (e) => V.post("/disLog/saveOrUpdate", e), As = (e) => V.post("/disUser/userConfirmStatus", e), Xa = (e) => V.post("/disUser/detail", e), Vs = (e) => V.post("/disUser/refreshIsRead", e), xt = "3.7.7", Es = xt, Ne = typeof Buffer == "function", it = typeof TextDecoder == "function" ? new TextDecoder() : void 0, rt = typeof TextEncoder == "function" ? new TextEncoder() : void 0, Bs = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=", Te = Array.prototype.slice.call(Bs), Ee = ((e) => {
let o = {};
return e.forEach((s, t) => o[s] = t), o;
})(Te), Fs = /^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/, J = String.fromCharCode.bind(String), dt = typeof Uint8Array.from == "function" ? Uint8Array.from.bind(Uint8Array) : (e) => new Uint8Array(Array.prototype.slice.call(e, 0)), Nt = (e) => e.replace(/=/g, "").replace(/[+\/]/g, (o) => o == "+" ? "-" : "_"), kt = (e) => e.replace(/[^A-Za-z0-9\+\/]/g, ""), Tt = (e) => {
let o, s, t, r, n = "";
const c = e.length % 3;
for (let l = 0; l < e.length; ) {
if ((s = e.charCodeAt(l++)) > 255 || (t = e.charCodeAt(l++)) > 255 || (r = e.charCodeAt(l++)) > 255)
throw new TypeError("invalid character found");
o = s << 16 | t << 8 | r, n += Te[o >> 18 & 63] + Te[o >> 12 & 63] + Te[o >> 6 & 63] + Te[o & 63];
}
return c ? n.slice(0, c - 3) + "===".substring(c) : n;
}, We = typeof btoa == "function" ? (e) => btoa(e) : Ne ? (e) => Buffer.from(e, "binary").toString("base64") : Tt, je = Ne ? (e) => Buffer.from(e).toString("base64") : (e) => {
let s = [];
for (let t = 0, r = e.length; t < r; t += 4096)
s.push(J.apply(null, e.subarray(t, t + 4096)));
return We(s.join(""));
}, Re = (e, o = !1) => o ? Nt(je(e)) : je(e), Rs = (e) => {
if (e.length < 2) {
var o = e.charCodeAt(0);
return o < 128 ? e : o < 2048 ? J(192 | o >>> 6) + J(128 | o & 63) : J(224 | o >>> 12 & 15) + J(128 | o >>> 6 & 63) + J(128 | o & 63);
} else {
var o = 65536 + (e.charCodeAt(0) - 55296) * 1024 + (e.charCodeAt(1) - 56320);
return J(240 | o >>> 18 & 7) + J(128 | o >>> 12 & 63) + J(128 | o >>> 6 & 63) + J(128 | o & 63);
}
}, Os = /[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g, Ut = (e) => e.replace(Os, Rs), ct = Ne ? (e) => Buffer.from(e, "utf8").toString("base64") : rt ? (e) => je(rt.encode(e)) : (e) => We(Ut(e)), xe = (e, o = !1) => o ? Nt(ct(e)) : ct(e), ut = (e) => xe(e, !0), Ps = /[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g, zs = (e) => {
switch (e.length) {
case 4:
var o = (7 & e.charCodeAt(0)) << 18 | (63 & e.charCodeAt(1)) << 12 | (63 & e.charCodeAt(2)) << 6 | 63 & e.charCodeAt(3), s = o - 65536;
return J((s >>> 10) + 55296) + J((s & 1023) + 56320);
case 3:
return J((15 & e.charCodeAt(0)) << 12 | (63 & e.charCodeAt(1)) << 6 | 63 & e.charCodeAt(2));
default:
return J((31 & e.charCodeAt(0)) << 6 | 63 & e.charCodeAt(1));
}
}, Mt = (e) => e.replace(Ps, zs), $t = (e) => {
if (e = e.replace(/\s+/g, ""), !Fs.test(e))
throw new TypeError("malformed base64.");
e += "==".slice(2 - (e.length & 3));
let o, s = "", t, r;
for (let n = 0; n < e.length; )
o = Ee[e.charAt(n++)] << 18 | Ee[e.charAt(n++)] << 12 | (t = Ee[e.charAt(n++)]) << 6 | (r = Ee[e.charAt(n++)]), s += t === 64 ? J(o >> 16 & 255) : r === 64 ? J(o >> 16 & 255, o >> 8 & 255) : J(o >> 16 & 255, o >> 8 & 255, o & 255);
return s;
}, Xe = typeof atob == "function" ? (e) => atob(kt(e)) : Ne ? (e) => Buffer.from(e, "base64").toString("binary") : $t, Lt = Ne ? (e) => dt(Buffer.from(e, "base64")) : (e) => dt(Xe(e).split("").map((o) => o.charCodeAt(0))), At = (e) => Lt(Vt(e)), Gs = Ne ? (e) => Buffer.from(e, "base64").toString("utf8") : it ? (e) => it.decode(Lt(e)) : (e) => Mt(Xe(e)), Vt = (e) => kt(e.replace(/[-_]/g, (o) => o == "-" ? "+" : "/")), qe = (e) => Gs(Vt(e)), Hs = (e) => {
if (typeof e != "string")
return !1;
const o = e.replace(/\s+/g, "").replace(/={0,2}$/, "");
return !/[^\s0-9a-zA-Z\+/]/.test(o) || !/[^\s0-9a-zA-Z\-_]/.test(o);
}, Et = (e) => ({
value: e,
enumerable: !1,
writable: !0,
configurable: !0
}), Bt = function() {
const e = (o, s) => Object.defineProperty(String.prototype, o, Et(s));
e("fromBase64", function() {
return qe(this);
}), e("toBase64", function(o) {
return xe(this, o);
}), e("toBase64URI", function() {
return xe(this, !0);
}), e("toBase64URL", function() {
return xe(this, !0);
}), e("toUint8Array", function() {
return At(this);
});
}, Ft = function() {
const e = (o, s) => Object.defineProperty(Uint8Array.prototype, o, Et(s));
e("toBase64", function(o) {
return Re(this, o);
}), e("toBase64URI", function() {
return Re(this, !0);
}), e("toBase64URL", function() {
return Re(this, !0);
});
}, Ys = () => {
Bt(), Ft();
}, Ks = {
version: xt,
VERSION: Es,
atob: Xe,
atobPolyfill: $t,
btoa: We,
btoaPolyfill: Tt,
fromBase64: qe,
toBase64: xe,
encode: xe,
encodeURI: ut,
encodeURL: ut,
utob: Ut,
btou: Mt,
decode: qe,
isValid: Hs,
fromUint8Array: Re,
toUint8Array: At,
extendString: Bt,
extendUint8Array: Ft,
extendBuiltins: Ys
}, js = ps();
var Ge = ms({
history: js,
routes: Ns
});
Ge.beforeEach(async (e, o, s) => {
e.fullPath.indexOf("/auth") >= 0 && e.params.appKey && e.params.appKey != "" && e.params.token && e.params.token != "" ? qs(e.params) : Ue() ? (await Js(), s()) : e.name === "login" ? s() : s({ name: "login" });
});
const qs = async (e) => {
bs(e.token), Ss(e.appKey);
let o = await ks(e.appKey);
sessionStorage.setItem("oldPathName", location.pathname), o = JSON.parse(us(o)), Is(o), e.disInfoId && e.disInfoId != "" && e.sysUserId && e.sysUserId != "" && e.tagName && e.tagName != "" ? Zs(e) : Ge.push({ name: "home" });
}, Js = async () => {
const e = sessionStorage.getItem("oldPathName"), o = location.pathname;
!location.href.includes("localhost") && e && e !== o && (sessionStorage.setItem("oldPathName", location.pathname), location.href = location.origin);
}, Zs = async (e) => {
let o = Ks.decode(e.tagName);
await Vs({
disInfoId: e.disInfoId,
sysUserId: e.sysUserId
}), Ge.push({
path: `/discussprogress/${e.disInfoId}`,
query: {
tagName: o
}
});
}, Qe = cs.create({
baseURL: "/middle",
timeout: 6e7
// 模型跑数时间比较长
});
Qe.interceptors.request.use(
(e) => {
if (Ue()) {
e.headers[ys] = Ue();
let o = Ge.currentRoute.value.query.tagName;
o && (e.headers[Fe] = encodeURI(o));
}
return e;
},
(e) => Promise.reject(e)
);
Qe.interceptors.response.use(
(e) => {
if (e.status === 200 && e.data.res !== void 0 && e.data.res !== !0)
return e.data.code === "E220118" || H({
message: e.data.msg,
showClose: !0,
type: "error",
duration: 2e3
}), Promise.reject(e);
if (e.data instanceof Blob)
return e.data;
if (e.config.headers.res)
return e;
if (e.config.url == "/priModelFile/runTest" && e.data.msg)
try {
JSON.parse(e.data.msg).forEach((s) => {
fs({
notice: !0,
type: "warning",
code: s.code,
msg: s.msg,
time: parseInt(String((/* @__PURE__ */ new Date()).getTime() / 1e3)),
tagName: e.config.headers[Fe] ? decodeURI(e.config.headers[Fe]) : e.headers[Fe]
});
});
} catch {
}
return e.data.data;
},
(e) => {
if (e.response && e.response.status === 401)
H({
message: "登录超时,请重新登录",
type: "error",
grouping: !0
}), Ds();
else
return e.message.indexOf("timeout") > -1 ? H.error("请求超时") : e.message.indexOf("Network") > -1 ? H.error("网络连接错误") : H.error(e.message), Promise.reject(e);
}
);
const V = Qe, Ws = (e) => V.post("/disInfo/disContent", e), Qa = (e) => V.post("/disInfo/detailFromPrice", e), Xs = (e) => V.post("/disInfo/detailByRecordId", e), et = (e) => V.post("/disGroup/saveOrUpdate", e), Qs = (e) => V.post("/disGroup/pageListAll", e), Pe = (e) => V.post("/disGroupMsg/pageList", e), Rt = (e) => V.post("/disGroup/detailAndUsers", e), en = (e) => V.post("/disUser/refreshIsRead", e), ft = (e) => V.post("/disUser/cancelReview", e), e0 = "data:image/svg+xml,%3csvg%20t='1710417591843'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='14334'%20width='200'%20height='200'%3e%3cpath%20d='M944.951334%20875.009893L777.542121%20707.703008c48.605976-64.978515%2077.564905-145.306286%2077.564904-232.797042%200-215.401219-174.776856-389.973419-390.280404-389.973419C249.425402%2085.034876%2074.750874%20259.607075%2074.750874%20475.008294S249.425402%20864.981713%20464.92895%20864.981713c97.825922%200%20186.953932-36.224243%20255.411612-95.574698l165.055661%20165.055661c8.18627%208.18627%2018.930748%2012.381733%2029.777555%2012.381733%2010.846807%200%2021.488958-4.195463%2029.777556-12.381733%2016.372539-16.474868%2016.372539-43.080244%200-59.452783z%20m-480.022384-94.039772c-168.841811%200-306.268812-137.222344-306.268812-306.064155s137.427001-305.961827%20306.268812-305.961827S771.197762%20306.268812%20771.197762%20475.008294s-137.427001%20305.961827-306.268812%20305.961827z'%20p-id='14335'%20fill='%23666666'%3e%3c/path%3e%3c/svg%3e", t0 = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1710416604657'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='10397'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='200'%20height='200'%3e%3cpath%20d='M0%200h1024v1024H0z'%20fill='%23FFFFFF'%20fill-opacity='0'%20p-id='10398'%3e%3c/path%3e%3cpath%20d='M959.264%20855.278c8.412%2015.543%202.632%2034.962-12.91%2043.374-75.481%2040.855-129.204%2061.457-165.428%2061.457-13.944%200-27.64-2.785-42.225-7.951l-1.474-0.529-0.9-0.328-1.77-0.658-1.741-0.664-1.297-0.507-1.728-0.69-1.302-0.532-1.756-0.733-1.34-0.572-1.827-0.795-1.41-0.624-1.941-0.874-2.026-0.927-2.125-0.987-2.816-1.325-3.65-1.74-6.127-2.958-6.122-2.967-2.04-0.978-1.98-0.94-1.924-0.901-1.867-0.864-1.812-0.828-1.76-0.79-1.144-0.507-1.675-0.731-1.628-0.696-1.058-0.445-1.04-0.429-1.018-0.414-1-0.4-0.982-0.384-0.963-0.37-0.945-0.356-0.929-0.34-0.912-0.328-0.895-0.312-0.88-0.3-0.865-0.285-0.851-0.271-0.836-0.258-0.823-0.245-0.81-0.232-0.995-0.271-0.976-0.252-0.958-0.231-0.942-0.212-0.742-0.156-0.732-0.144-0.724-0.132-0.715-0.12-0.707-0.108-0.699-0.097-0.692-0.086-0.687-0.074-0.68-0.063-0.338-0.028-0.672-0.047c-0.334-0.02-0.667-0.038-0.999-0.05l-0.661-0.02c-0.33-0.008-0.658-0.012-0.986-0.012l-0.465%200.001-0.952%200.013-0.979%200.025-0.5%200.018-1.02%200.044-1.048%200.057-1.076%200.07-1.103%200.082-1.13%200.095-0.575%200.052-1.171%200.114-1.199%200.126-1.226%200.14-0.623%200.074-1.266%200.158c-0.427%200.055-0.858%200.112-1.294%200.17l-1.32%200.184-0.671%200.097-1.361%200.202-1.389%200.216c-0.233%200.036-0.468%200.074-0.704%200.112l-2.153%200.356-0.731%200.125-1.483%200.26-1.509%200.271-1.536%200.285-1.562%200.298-1.59%200.31-1.616%200.323-2.474%200.508-2.533%200.536-2.594%200.565-1.762%200.392-1.788%200.405-2.731%200.632-2.791%200.66-3%200.725-1.524%200.374-3.096%200.772c-1.565%200.394-3.154%200.8-4.767%201.218l-3.259%200.85-1.653%200.438-3.356%200.898-2.272%200.617-1.147%200.313-3.484%200.962-3.547%200.993-3.611%201.024-2.443%200.7-1.232%200.356-3.738%201.088-1.893%200.556-3.833%201.135-1.94%200.579-4.92%201.483-5.017%201.532-2.034%200.627-4.115%201.277-4.178%201.308-2.112%200.666-4.271%201.356-4.333%201.388-4.394%201.419-4.456%201.45-2.251%200.738-4.549%201.498-2.297%200.76-4.64%201.546-2.342%200.785c-16.756%205.62-34.895-3.406-40.516-20.161-5.621-16.756%203.405-34.895%2020.16-40.516l5.06-1.692%204.996-1.657%204.93-1.623%202.44-0.8%204.831-1.571%202.392-0.773%204.735-1.521%204.67-1.487c3.864-1.224%207.662-2.413%2011.393-3.567l4.445-1.367%204.381-1.333%203.96-1.192c1.311-0.392%202.613-0.78%203.907-1.163l3.853-1.135c3.826-1.12%207.573-2.197%2011.24-3.231l3.97-1.111%202.508-0.693%202.482-0.68%202.456-0.664%202.43-0.652%203.6-0.95%202.366-0.616%202.342-0.602%202.316-0.588%202.29-0.575%202.267-0.56%202.24-0.546%202.215-0.532%202.19-0.518%202.165-0.505%202.14-0.49%202.114-0.476%202.09-0.462%202.065-0.448%202.04-0.435%202.015-0.42%201.99-0.406%201.965-0.392%201.941-0.378%201.916-0.365%200.949-0.176%201.879-0.344%201.854-0.329%200.918-0.16%201.818-0.307%201.793-0.294c0.296-0.048%200.592-0.096%200.887-0.142l1.756-0.273%201.732-0.26%201.708-0.245%200.845-0.117%201.671-0.224%200.826-0.107%201.635-0.203%201.611-0.19%201.587-0.174%201.562-0.162%201.538-0.147%200.76-0.068%201.503-0.126%201.478-0.112%201.455-0.098%200.718-0.044%201.419-0.077%201.395-0.063%201.371-0.05a128.54%20128.54%200%200%201%203.971-0.062c13.258%200%2026.338%202.56%2040.162%207.306l1.79%200.624%201.78%200.639%201.182%200.436%201.182%200.444%201.184%200.454%201.189%200.464%201.195%200.475%200.6%200.242%201.21%200.493%201.22%200.507%201.235%200.52%201.25%200.536%201.27%200.55%201.29%200.568%201.313%200.585%202.017%200.91%202.08%200.956%201.426%200.661%202.203%201.034%202.286%201.084%203.19%201.529%207.252%203.514%202.347%201.131%203.004%201.434%202.163%201.021%202.089%200.975%201.352%200.626%201.97%200.9%201.902%200.857%201.837%200.814%201.774%200.773%201.15%200.491%201.123%200.474%201.098%200.456%201.074%200.438%201.05%200.421%201.028%200.404%201.746%200.666%201.208%200.445%200.943%200.337%200.925%200.322%201.354%200.453%200.88%200.283%200.865%200.267%200.848%200.253%200.834%200.238%200.82%200.224%200.807%200.21c0.267%200.067%200.531%200.132%200.794%200.195l0.782%200.182%200.387%200.086%200.767%200.162%200.756%200.149%200.375%200.07%200.743%200.129%200.735%200.117%200.728%200.104%200.721%200.093%200.359%200.042%200.89%200.092%200.885%200.074c0.235%200.018%200.47%200.034%200.704%200.047l0.7%200.036%200.35%200.015%200.874%200.023%200.872%200.008c10.405%200%2026.164-3.928%2046.836-11.82l2.156-0.83a406.89%20406.89%200%200%200%202.191-0.86l2.226-0.887%202.26-0.915%201.144-0.469%202.312-0.958%201.17-0.49%202.364-1a554.583%20554.583%200%200%200%204.83-2.086l2.467-1.085%201.246-0.554%202.517-1.128%202.552-1.156%201.288-0.59%202.602-1.198c0.873-0.405%201.751-0.814%202.635-1.228l2.669-1.256%201.347-0.638%202.718-1.299c0.912-0.437%201.83-0.88%202.752-1.327l2.785-1.355%201.405-0.689%202.834-1.398%203.544-1.765a1046.76%201046.76%200%200%200%2015.144-7.741l3.478-1.82%201.755-0.925%203.864-2.048c2.592-1.38%205.216-2.788%207.873-4.226%2015.542-8.412%2034.961-2.632%2043.374%2012.91zM768%2064c17.673%200%2032%2014.328%2032%2032.001v298.476c-18.936%203.069-37.128%2011.823-51.827%2026.263l-0.62%200.613L505.83%20663.076l-0.6%200.606A96%2096%200%200%200%20480.4%20708.4l-0.196%200.831-22.846%2098.323-0.193%200.855a71.984%2071.984%200%200%200-0.615%2027.744l0.155%200.861-0.237%200.08c-50.267%2016.862-77.346%2071.281-60.483%20121.547%200.153%200.455%200.308%200.908%200.467%201.36H192c-17.673%200-32-14.328-32-32.001V428h268c53.02%200%2096-42.98%2096-96V64h244z%20m70.063%20402.608l46.67%2046.669c12.496%2012.497%2012.496%2032.758%200%2045.255L643.008%20800.254a32%2032%200%200%201-15.385%208.543L529.3%20831.642a8%208%200%200%201-9.603-9.603l22.845-98.323a32%2032%200%200%201%208.542-15.386L792.81%20466.607c12.496-12.497%2032.758-12.497%2045.254%200z%20m46.67%20137.179c7.81%207.81%207.81%2020.473%200%2028.284l-98.996%2098.995c-7.81%207.81-20.473%207.81-28.284%200-7.81-7.81-7.81-20.474%200-28.284l98.995-98.995c7.81-7.81%2020.474-7.81%2028.284%200zM460%2064v268c0%2017.673-14.327%2032-32%2032H160L460%2064z'%20fill='%23666666'%20p-id='10399'%3e%3c/path%3e%3c/svg%3e", Ot = "data:image/svg+xml,%3csvg%20t='1710417313633'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='12108'%20width='200'%20height='200'%3e%3cpath%20d='M875.5%20717.2h-84v-84c0-23.6-18.4-42-42-42s-42%2018.4-42%2042v84h-84c-23.6%200-42%2018.4-42%2042s18.4%2042%2042%2042h84v84c0%2023.6%2018.4%2042%2042%2042s42-18.4%2042-42v-84h84c23.6%200%2042-18.4%2042-42s-18.3-42-42-42zM245.2%20339c0%20139.2%20112.9%20252.1%20252.1%20252.1S749.4%20478.2%20749.4%20339%20636.5%2086.9%20497.3%2086.9c-139.1%200-252.1%20112.9-252.1%20252.1z%20m0%200'%20p-id='12109'%20fill='%23666666'%3e%3c/path%3e%3cpath%20d='M615.5%20612.1c-36.8-13.1-76.2-21-118.2-21-186.5%200-336.2%20149.7-336.2%20336.2h378.2c-26.3-34.1-42-78.8-42-126.1%200.1-84%2047.3-154.9%20118.2-189.1z%20m0%200'%20p-id='12110'%20fill='%23666666'%3e%3c/path%3e%3c/svg%3e", He = "data:image/svg+xml,%3csvg%20t='1710494402597'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='4160'%20width='200'%20height='200'%3e%3cpath%20d='M512.002082%200C229.382031%200%200.237391%20229.14464%200.237391%20511.764692c0%20174.074128%2086.947522%20327.832597%20219.761454%20420.281755%2025.883932-90.133557%2091.287193-158.031504%20180.287937-189.033916%203.706629-1.295238%207.454906-2.519675%2011.24483-3.681641%200.599724-0.183249%201.191119-0.383157%201.795008-0.562241a325.358734%20325.358734%200%200%201%2027.058392-6.867676c0.932904-0.195743%201.874138-0.370663%202.807042-0.558076a344.820619%20344.820619%200%200%201%2014.722398-2.619629%20350.905321%20350.905321%200%200%201%2010.428538-1.453499c1.25359-0.158261%202.498851-0.329015%203.756606-0.470617a354.782705%20354.782705%200%200%201%2014.168485-1.357709h51.705393c4.756146%200.354004%209.453986%200.820456%2014.122673%201.34938%201.320226%200.154096%202.627958%200.33318%203.939855%200.49977a344.791466%20344.791466%200%200%201%2014.393382%202.099035c3.415096%200.574736%206.805204%201.199448%2010.166159%201.869974%201.149471%200.229061%202.315602%200.441464%203.456744%200.683019%209.008358%201.894962%2017.825137%204.131434%2026.446174%206.709415%201.066176%200.316521%202.115694%200.662196%203.177705%200.991211%203.223518%200.99954%206.426212%202.044893%209.591423%203.140223%2089.283947%2030.881634%20154.903776%2098.837888%20180.900156%20189.146364%20132.722308-92.465818%20219.603194-246.16598%20219.603194-420.173472C1023.762609%20229.140475%20794.622134%200%20512.002082%200z%20m0%20725.320666c-130.373388%200-236.491262-103.560716-240.743473-232.897081-0.145766-0.091625-0.291533-0.16659-0.437299-0.258215-4.993537-93.35291%2043.813188-165.06577%20105.59728-206.971502%200.358169-0.24572%200.703843-0.49977%201.062012-0.741325%202.357249-1.582606%204.747817-3.081916%207.138384-4.577063%200.937069-0.58723%201.853315-1.199448%202.798713-1.770019%2038.040842-23.106043%2079.896597-35.179658%20116.717167-34.47998%202.619629-0.08746%205.230928-0.199908%207.871381-0.199908%202.507181%200%204.976878%200.112448%207.4674%200.187414%2028.237017-0.487276%2059.406019%206.534495%2089.562986%2020.21154a241.022512%20241.022512%200%200%201%2061.725785%2039.377728c50.226906%2043.088521%2086.589353%20107.846246%2082.18721%20188.963115l-0.199908%200.116613c-4.185575%20129.398836-110.328438%20233.038683-240.747638%20233.038683z'%20fill='%23A0D9F6'%20p-id='4161'%3e%3c/path%3e%3cpath%20d='M376.414425%20285.193868c0.354004-0.241556%200.703843-0.503935%201.062012-0.741325-0.358169%200.241556-0.703843%200.49977-1.062012%200.741325zM519.465317%20243.612987c-2.490522-0.074966-4.960219-0.187414-7.467399-0.187414-2.640453%200-5.251752%200.112448-7.871381%200.199908%202.52384%200.049977%205.043514%200.104119%207.517377%200.270709a156.265649%20156.265649%200%200%201%207.821403-0.283203zM472.27868%20386.726351c-46.307874%2081.237647-124.763467%20153.204557-201.024236%20105.697234%204.252212%20129.336365%20110.370085%20232.897081%20240.743474%20232.897081%20130.4192%200%20236.566227-103.639847%20240.747638-233.038683-63.724866%2039.660931-230.814705-17.875114-280.466876-105.555632zM384.614821%20279.87548c0.937069-0.583065%201.857479-1.199448%202.798714-1.770019-0.949563%200.574736-1.861644%201.186954-2.798714%201.770019zM609.028303%20263.824527a260.296983%20260.296983%200%200%201%2061.725785%2039.377728%20241.139125%20241.139125%200%200%200-61.725785-39.377728z'%20fill='%23FCE9EA'%20p-id='4162'%3e%3c/path%3e%3cpath%20d='M453.974597%20729.360475zM610.498461%20738.656201c1.066176%200.316521%202.115694%200.662196%203.177705%200.99121-1.062012-0.329015-2.111529-0.67469-3.177705-0.99121zM440.380847%20731.900973c0.932904-0.195743%201.874138-0.370663%202.807043-0.558076-0.937069%200.187414-1.878303%200.362333-2.807043%200.558076zM411.527447%20739.33089c0.599724-0.183249%201.191119-0.383157%201.795008-0.562241-0.603889%200.179084-1.195284%200.378992-1.795008%200.562241zM566.164679%20728.702444zM623.263425%20742.787634c0.732996%200.25405%201.457663%200.512264%202.18233%200.770479a119.432585%20119.432585%200%200%201-10.457692%2022.110667c17.142118%2026.396196%2012.83993%20141.48911-12.91906%20123.397429l-45.095932-31.756232-44.979318-31.639619%202.956974-2.078211c-0.982881%200.024989-1.965763%200.074966-2.956974%200.074966-1.032858%200-2.053223-0.054142-3.077752-0.079131l2.961139%202.082376-44.979319%2031.639619-45.095931%2031.756232c-25.900591%2018.124999-30.190285-97.405213-12.877413-123.534866a119.286819%20119.286819%200%200%201-10.357737-21.914923c0.570571-0.204073%201.136977-0.408146%201.711713-0.603889-89.000744%2030.998247-154.404005%2098.900359-180.287938%20189.033916%2082.820253%2057.652658%20183.457313%2091.482936%20292.003238%2091.482936%20108.616725%200%20209.316257-33.876091%20292.161498-91.59122-25.983886-90.308476-91.603714-158.268895-180.891826-189.150529zM580.595543%20731.263766c1.149471%200.229061%202.315602%200.441464%203.456744%200.68302-1.141142-0.241556-2.303108-0.458123-3.456744-0.68302zM468.338825%20727.273934c1.25359-0.154096%202.498851-0.329015%203.756606-0.470617-1.257755%200.141602-2.503016%200.312356-3.756606%200.470617zM552.091982%20726.790823c1.320226%200.149931%202.627958%200.33318%203.939856%200.49977-1.311897-0.162425-2.615464-0.34151-3.939856-0.49977z'%20fill='%23CFE07D'%20p-id='4163'%3e%3c/path%3e%3cpath%20d='M408.928642%20765.527179c3.440085-5.189281%207.729779-6.87184%2012.877412-3.252671l45.095932%2031.756231%2042.01818%2029.557243c1.028694%200.024989%202.044893%200.07913%203.077752%200.079131%200.991211%200%201.974092-0.049977%202.956973-0.074966l42.022345-29.561408%2045.095932-31.756231c5.172622-3.652487%209.47481-1.911621%2012.91906%203.390107a119.307643%20119.307643%200%200%200%2010.457691-22.110666l-2.18233-0.770479a307.358677%20307.358677%200%200%200-9.591423-3.140223c-1.062012-0.329015-2.111529-0.67469-3.177705-0.991211a327.35365%20327.35365%200%200%200-26.446174-6.709415c-1.141142-0.241556-2.307272-0.453958-3.456744-0.683019a331.80577%20331.80577%200%200%200-24.559541-3.969009c-1.311897-0.16659-2.619629-0.349839-3.939855-0.49977a367.755907%20367.755907%200%200%200-14.122673-1.34938h-51.705393a354.782705%20354.782705%200%200%200-14.168485%201.357709c-1.257755%200.141602-2.503016%200.316521-3.756606%200.470617a337.67807%20337.67807%200%200%200-25.150936%204.073128c-0.937069%200.187414-1.878303%200.362333-2.807042%200.558076a328.678041%20328.678041%200%200%200-27.058392%206.867676c-0.603889%200.179084-1.195284%200.378992-1.795008%200.562241-3.789924%201.157801-7.538201%202.386403-11.24483%203.681641-0.570571%200.195743-1.141142%200.399816-1.711713%200.603889a119.361784%20119.361784%200%200%200%2010.353573%2021.910759z'%20fill='%23FEFEFE'%20p-id='4164'%3e%3c/path%3e%3cpath%20d='M602.073168%20762.274508l-45.095932%2031.756231-42.022345%2029.561408-2.956973%202.078211%2044.979318%2031.639619%2045.095932%2031.756232c25.758989%2018.091681%2030.061178-97.001232%2012.91906-123.397429-3.440085-5.305894-7.742273-7.04676-12.91906-3.394272zM421.806054%20762.274508c-5.147633-3.619169-9.437327-1.93661-12.877412%203.252671-17.312873%2026.129652-13.023179%20141.659865%2012.877412%20123.534865l45.095932-31.756232%2044.979319-31.639618-2.961139-2.082376-42.01818-29.557243-45.095932-31.752067z'%20fill='%237EA701'%20p-id='4165'%3e%3c/path%3e%3cpath%20d='M472.27868%20386.726351c49.65217%2087.680518%20216.742009%20145.216563%20280.466876%20105.555632l0.199908-0.116613c4.402143-81.116869-31.964469-145.874594-82.187211-188.963115a260.51355%20260.51355%200%200%200-61.725785-39.377728c-30.156967-13.677045-61.325969-20.698816-89.562986-20.21154-2.627958%200.045812-5.247587%200.108284-7.821404%200.283203%208.337833%2029.51976-8.267032%2088.263583-39.369398%20142.830161z'%20fill='%23F7B970'%20p-id='4166'%3e%3c/path%3e%3cpath%20d='M472.27868%20386.726351c31.102366-54.570742%2047.711396-113.3104%2039.369398-142.830161a148.931522%20148.931522%200%200%200-7.517376-0.270709c-36.82057-0.699678-78.676325%2011.373937-116.717167%2034.47998-0.941234%200.570571-1.861644%201.186954-2.798714%201.770019-2.390567%201.495146-4.781135%202.994456-7.138384%204.577063-0.358169%200.241556-0.703843%200.49977-1.062012%200.741325-61.784092%2041.905732-110.590817%20113.618592-105.59728%20206.971502%200.145766%200.091625%200.291533%200.16659%200.437299%200.258215%2076.260769%2047.507323%20154.716362-24.459587%20201.024236-105.697234z'%20fill='%23FBCE77'%20p-id='4167'%3e%3c/path%3e%3c/svg%3e", s0 = (e) => (me("data-v-ae8a6f29"), e = e(), ge(), e), o0 = { class: "tree-transfer" }, a0 = { class: "left-tree" }, n0 = /* @__PURE__ */ s0(() => /* @__PURE__ */ u("div", { class: "tree-tit" }, "选择合议人", -1)), l0 = { class: "list" }, i0 = { class: "tree-box" }, r0 = { class: "right-tree" }, d0 = { class: "tree-tit" }, c0 = { class: "list" }, u0 = /* @__PURE__ */ j({
__name: "transfer",
props: /* @__PURE__ */ mt({
fromData: {
//左侧树的数据
type: Array,
default: () => []
},
// 默认选中的节点,不可进行操作,或者直接就是不可操作的节点
defaultChecked: {
type: Array,
default: () => []
}
}, {
modelValue: { required: !0, default: [] },
modelModifiers: {}
}),
emits: ["update:modelValue"],
setup(e) {
const o = e, s = gt(e, "modelValue"), t = w(""), r = w([]), n = () => {
s.value = [...o.defaultChecked], x.value = o.defaultChecked.map((m) => i[m]).filter((m) => !!m), l.value.setCheckedKeys(o.defaultChecked, !0);
}, c = async (m) => {
const g = s.value.filter((_) => _ !== m.id);
x.value = x.value.filter((_) => _.id !== m.id), l.value.setCheckedKeys(g, !0), s.value = g;
}, l = w([]), D = w([]), x = w([]), S = () => {
var m, g;
s.value = (m = l.value) == null ? void 0 : m.getCheckedKeys(!0, !1).filter((_) => !!i[_]), x.value = (g = l.value) == null ? void 0 : g.getCheckedNodes(!0, !1).filter((_) => !!i[_.id]);
};
let i = {};
const a = () => {
console.log(o.fromData), D.value = JSON.parse(JSON.stringify(o.fromData));
const m = [...D.value];
for (; m.length; ) {
const g = m.pop();
g.type === 1 && g.type !== void 0 && (i[g.id] = g), g.children && g.children.length && m.push(...g.children);
}
};
let p = () => {
r.value = [.../* @__PURE__ */ new Set([...o.defaultChecked, ...s.value])], s.value = [...r.value], x.value = r.value.map((m) => i[m]).filter((m) => !!m);
}, d = w({});
const I = () => {
console.log(o.defaultChecked), console.log("treeMap", i), o.defaultChecked.forEach((m) => {
d.value[m] = !0, i[m] && (i[m].disabled = !0);
});
}, h = () => {
a(), I(), p();
};
ne(
() => o.fromData,
(m) => {
m.length && h();
},
{
deep: !0,
immediate: !0
}
), ne(
() => s.value,
(m) => {
console.log(m, o.defaultChecked);
},
{
deep: !0,
immediate: !0
}
);
const k = (m, g) => m ? (g.label ? g.label : g.dataCatalogueName).includes(m) : !0;
return ne(t, (m) => {
l.value.filter(m);
}), (m, g) => {
const _ = b("el-input"), C = b("el-tree"), P = b("el-scrollbar"), z = b("CloseBold"), T = b("el-icon");
return v(), $("div", o0, [
u("div", a0, [
n0,
u("div", l0, [
f(_, {
modelValue: t.value,
"onUpdate:modelValue": g[0] || (g[0] = (N) => t.value = N),
class: "input",
placeholder: "输入人员名称"
}, null, 8, ["modelValue"]),
u("div", i0, [
f(P, null, {
default: y(() => [
f(C, {
ref_key: "treeRef",
ref: l,
data: D.value,
"show-checkbox": "",
"node-key": "id",
"default-checked-keys": r.value,
"filter-node-method": k,
onCheck: S
}, null, 8, ["data", "default-checked-keys"])
]),
_: 1
})
])
])
]),
u("div", r0, [
u("div", d0, [
pe(O("已选:" + x.value.length) + " ", 1),
u("span", {
class: "tree-tit-icon",
onClick: n
}, "清空")
]),
u("div", c0, [
f(P, null, {
default: y(() => [
(v(!0), $(Z, null, be(x.value, (N) => (v(), $("div", {
key: N.id,
class: "item"
}, [
pe(O(N.label) + " ", 1),
U(d)[N.id] ? A("", !0) : (v(), L(T, { key: 0 }, {
default: y(() => [
f(z, {
onClick: (R) => c(N)
}, null, 8, ["onClick"])
]),
_: 2
}, 1024))
]))), 128))
]),
_: 1
})
])
])
]);
};
}
}), X = (e, o) => {
const s = e.__vccOpts || e;
for (const [t, r] of o)
s[t] = r;
return s;
}, $e = /* @__PURE__ */ X(u0, [["__scopeId", "data-v-ae8a6f29"]]), f0 = /* @__PURE__ */ j({
__name: "index",
props: {
show: {
type: Boolean,
default: !1
},
id: {
// 合议id
type: [Number, String],
default: ""
},
groupId: {
type: [Number, String],
default: ""
}
},
emits: ["saved", "canceled"],
setup(e, { emit: o }) {
const s = e, t = o, r = te(), n = ee(() => r.state.userInfo.id), c = w({
sysUserIdList: []
}), l = w(), D = w(), x = w([]), S = {
disContentEdit: [
{
required: !0,
message: "请填写修改内容"
}
],
sysUserIdList: [
{
required: !0,
message: "请选择人员"
}
]
}, i = async () => {
const h = await Ie({
disInfoId: s.id,
limit: 999999,
pageNum: 1
});
x.value = h.rows.map((k) => ({ id: k.sysUserId, label: k.userName + "(" + k.email + ")", type: 1 }));
};
let a = !1;
const p = async () => {
a || (a = !0, l.value.validate((h) => {
h && et({ sysUserIdList: c.value.sysUserIdList, id: s.groupId }).then(() => {
H.success("保存成功"), t("saved"), a = !1;
}).catch(() => {
a = !1;
});
}));
}, d = () => {
t("canceled"), l.value.resetFields();
}, I = async () => {
D.value.setLoading(!0), s.groupId ? Rt({ id: s.groupId }).then((h) => {
h.sysUserIdList = h.sysUserList.map((k) => k.id), c.value = h, D.value.setLoading(!1), i();
}).catch(() => {
D.value.setLoading(!1);
}) : D.value.setLoading(!1);
};
return _e(() => {
I();
}), (h, k) => {
const m = b("el-form-item"), g = b("el-form"), _ = b("dl-edit");
return v(), L(_, {
ref_key: "viewEdit",
ref: D,
show: e.show,
title: "添加成员",
width: "55%",
onCancel: d,
onSave: p
}, {
default: y(() => [
f(g, {
ref_key: "ruleForm",
ref: l,
model: c.value,
rules: S,
"label-width": "auto"
}, {
default: y(() => [
f(m, {
label: "成员:",
prop: "sysUserIdList"
}, {
default: y(() => [
x.value.length ? (v(), L($e, {
key: 0,
modelValue: c.value.sysUserIdList,
"onUpdate:modelValue": k[0] || (k[0] = (C) => c.value.sysUserIdList = C),
fromData: x.value,
defaultChecked: [n.value]
}, null, 8, ["modelValue", "fromData", "defaultChecked"])) : A("", !0)
]),
_: 1
})
]),
_: 1
}, 8, ["model"])
]),
_: 1
}, 8, ["show"]);
};
}
}), p0 = (e) => (me("data-v-2b82d7de"), e = e(), ge(), e), m0 = { class: "content" }, g0 = ["onClick"], v0 = /* @__PURE__ */ p0(() => /* @__PURE__ */ u("div", { class: "avatar" }, [
/* @__PURE__ */ u("img", { src: He })
], -1)), h0 = { class: "mid-content" }, _0 = { class: "top" }, y0 = { class: "name" }, b0 = { class: "time" }, I0 = ["innerHTML"], w0 = /* @__PURE__ */ j({
__name: "index",
props: {
show: {
type: Boolean,
default: !1
},
id: {
// 群组id
type: [Number, String],
default: ""
}
},
emits: ["canceled", "saved", "clickMsgToPosition"],
setup(e, { emit: o }) {
const s = e, t = o, r = w([]), n = {}, c = w(), l = w(""), D = w({
disGroupId: s.id,
pageNum: 1,
limit: 999999
}), x = () => {
t("saved");
}, S = () => {
t("canceled");
}, i = async () => {
await a(), Se(() => {
c.value.setScrollTop(c.value.wrapRef.scrollHeight);
});
}, a = async (h = null) => {
const k = await Pe({ ...D.value, content: h });
r.value = k.rows, r.value.forEach((m) => {
n[m.id] = !0;
});
}, p = () => {
a(l.value);
}, d = St(async ({ scrollTop: h }) => {
if (h <= 20) {
D.value.pageNum++;
const k = await Pe(D.value), m = [];
k.rows.forEach((_) => {
n[_.id] || (m.push(_), n[_.id] = !0);
}), r.value = [...m, ...r.value];
const g = c.value.wrapRef.scrollHeight;
Se(() => {
const _ = c.value.wrapRef.scrollHeight - g;
_ > 0 && c.value.setScrollTop(_);
});
}
}), I = (h) => {
t("clickMsgToPosition", h.id);
};
return _e(() => {
i();
}), (h, k) => {
const m = b("el-input"), g = b("el-scrollbar"), _ = b("dl-edit");
return v(), L(_, {
ref: "viewEdit",
class: "group-dialog",
fullScreenVisible: !1,
footerVisible: !1,
show: e.show,
title: "历史消息",
width: "55%",
onCancel: S,
onSave: x
}, {
default: y(() => [
f(m, {
modelValue: l.value,
"onUpdate:modelValue": k[0] || (k[0] = (C) => l.value = C),
placeholder: "搜索",
size: "large",
onInput: p
}, null, 8, ["modelValue"]),
u("div", m0, [
f(g, {
ref_key: "scrollbar",
ref: c,
onScroll: U(d)
}, {
default: y(() => [
(v(!0), $(Z, null, be(r.value, (C, P) => (v(), $("div", {
key: P,
class: "msg-item",
onClick: (z) => I(C)
}, [
v0,
u("div", h0, [
u("div", _0, [
u("span", y0, O(C.sysUserName), 1),
u("span", b0, O(C.sendTime), 1)
]),
u("div", {
class: "msg",
innerHTML: C.content
}, null, 8, I0)
])
], 8, g0))), 128))
]),
_: 1
}, 8, ["onScroll"])
])
]),
_: 1
}, 8, ["show"]);
};
}
}), S0 = /* @__PURE__ */ X(w0, [["__scopeId", "data-v-2b82d7de"]]), Le = (e) => (me("data-v-cec898b3"), e = e(), ge(), e), D0 = { class: "header" }, C0 = { class: "title ellipsis" }, x0 = { class: "icons" }, N0 = ["innerHTML"], k0 = /* @__PURE__ */ Le(() => /* @__PURE__ */ u("span", { class: "mid" }, "修改为", -1)), T0 = ["innerHTML"], U0 = ["id"], M0 = { class: "avatar" }, $0 = /* @__PURE__ */ Le(() => /* @__PURE__ */ u("img", { src: He }, null, -1)), L0 = [
$0
], A0 = { class: "mid-content" }, V0 = { class: "top" }, E0 = { class: "time" }, B0 = ["innerHTML"], F0 = { class: "avatar" }, R0 = /* @__PURE__ */ Le(() => /* @__PURE__ */ u("img", { src: He }, null, -1)), O0 = [
R0
], P0 = { class: "footer" }, z0 = { class: "input-box" }, G0 = ["contenteditable", "onKeydown", "onKeyup"], H0 = { class: "select-member select-member-dom" }, Y0 = /* @__PURE__ */ Le(() => /* @__PURE__ */ u("div", { class: "title select-member-dom" }, "选择成员", -1)), K0 = ["onClick"], j0 = /* @__PURE__ */ Le(() => /* @__PURE__ */ u("div", { class: "avatar select-member-dom" }, [
/* @__PURE__ */ u("img", { src: He })
], -1)), q0 = { class: "name select-member-dom" }, J0 = /* @__PURE__ */ j({
__name: "index",
props: {
groupTitle: {
type: String,
default: ""
},
show: {
type: Boolean,
default: !1
},
id: {
// 讨论组id
type: [String, Number],
default: ""
},
disInfoId: {
// 合议id
required: !0,
type: [String, Number],
default: ""
}
},
emits: ["closed", "goPosition"],
setup(e, { emit: o }) {
const s = te(), t = e, r = le("getDiscussIdFromClauseId"), n = o, c = ee(() => {
var M;
return (M = s.state.userInfo) == null ? void 0 : M.id;
}), l = ee(() => {
var M;
return (M = s.state.userInfo) == null ? void 0 : M.userName;
}), D = w(!1), x = w(), S = () => {
D.value = !1, p({
disGroupTitle: N.value.disGroupTitle
});
}, i = () => {
d(N.value.createUser) && !q.value && ve.value && (D.value = !0, Se(() => {
x.value.focus();
}));
}, a = () => {
ze.confirm("确定结束当前讨论组?", "消息", {
confirmButtonText: "确认",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
re({
disInfoId: t.disInfoId,
sysUserId: c.value,
content: `将【${N.value.disGroupTitle}】结束`,
sourceTabName: "团队动态",
logDate: ie()
}), p({
status: "1"
}).then(() => {
oe(), n("closed");
});
}).catch(() => {
});
}, p = async (M) => {
try {
await et({ ...M, id: t.id });
} catch (F) {
console.log(F);
}
}, d = (M) => M - 0 === c.value - 0;
let I = w();
const h = () => {
const M = location.hostname === "localhost", ae = location.protocol === "https:" ? "wss" : "ws", ce = location.port ? `:${location.port}` : "";
return M ? "ws://192.168.1.242:8999/websocketImserver/" : `${ae}://${location.hostname}${ce}/websocketImserver/`;
}, k = () => {
I.value = _t(`${h()}${c.value}/${t.id}?token=${Ue()}`, {
// heartbeat: { message: 'ping', interval: 1000, pongTimeout: 1000 },
autoReconnect: {
retries: 10,
delay: 1e3,
onFailed() {
console.error("重连失败");
}
},
onMessage: (M, F) => {
const ae = JSON.parse(F.data);
T[ae.id] || (_.value.push(ae), Se(() => {
C.value.setScrollTop(C.value.wrapRef.scrollHeight);
}));
}
});
}, m = w(!1), g = w(!1), _ = w([]), C = w(), P = w({
disGroupId: t.id,
pageNum: 1,
limit: 999999
}), z = () => {
g.value = !g.value;
}, T = {}, N = w({ sysUserList: [], disGroupTitle: "", status: "1" }), R = w(!1), G = w();
let E = null;
const q = ee(() => N.value.status === "1"), B = ee(() => N.value.sysUserList.some((M) => M.id === c.value)), De = le("statusObj"), ve = ee(() => !De.isEnd);
let K = !0;
const de = () => {
if (K = !1, E = null, R.value = !1, !G.value.innerText.trim()) {
G.value.innerHTML = "", K = !0;
return;
}
const F = Array.from(
new Set(Array.from(G.value.querySelectorAll("span[user-id]")).map((ce) => Number(ce.getAttribute("user-id"))))
), ae = {
disGroupId: t.id,
refDisGroupLogId: "",
sysUserId: c.value,
sysUserName: l.value,
content: G.value.innerHTML,
refSysUserIdList: F
};
I.value.send(JSON.stringify(ae)), G.value.innerHTML = "", K = !0;
}, se = () => {
n("closed");
}, ye = async () => {
const M = await Pe(P.value);
_.value = M.rows, _.value.forEach((F) => {
T[F.id] = !0;
}), Se(() => {
C.value.setScrollTop(C.value.wrapRef.scrollHeight);
});
}, oe = async () => {
const M = await Rt({ id: t.id });
N.value = M;
}, Ht = St(async ({ scrollTop: M }) => {
if (M <= 20) {
P.value.pageNum++;
const F = await Pe(P.value), ae = [];
F.rows.forEach((Q) => {
T[Q.id] || (ae.push(Q), T[Q.id] = !0);
}), _.value = [...ae, ..._.value];
const ce = C.value.wrapRef.scrollHeight;
Se(() => {
const Q = C.value.wrapRef.scrollHeight - ce;
Q > 0 && C.value.setScrollTop(Q);
});
}
}), Yt = (M) => {
M.preventDefault(), K && de();
}, Kt = (M) => {
}, jt = (M) => {
M.data === "@" && (Jt(), R.value = !0);
}, qt = (M) => {
const F = document.createElement("span");
F.style.color = "#1890ff", F.innerHTML = `@${M.userName} `, F.setAttribute("user-id", M.id), F.setAttribute("contenteditable", "false"), Zt();
const ce = window.getSelection().getRangeAt(0);
ce.insertNode(F), ce.setStartAfter(F);
const Q = F.previousSibling;
var Ve = Q.textContent;
Q.textContent = Ve.substring(0, Ve.length - 1), E = null, R.value = !1;
};
function Jt() {
E = window.getSelection().getRangeAt(0);
}
function Zt() {
var M = window.getSelection();
M.removeAllRanges(), E && M.addRange(E);
}
const Ae = w(!1), Wt = (M) => {
Ae.value = !0;
}, st = () => {
Ae.value = !1;
}, Xt = () => {
st(), oe();
}, Qt = () => {
n("goPosition", N.value);
}, ke = w(!1), es = () => {
ke.value = !0;
}, ts = () => {
ot();
}, ot = () => {
ke.value = !1;
}, at = w(), ss = (M) => {
const F = at.value.querySelector(`#msg-${M}`);
F.classList.add("liang"), setTimeout(() => {
F.classList.remove("liang");
}, 1e3), F.scrollIntoView({
behavior: "smooth",
block: "