feat: 样式修改

master
李小林 6 months ago
parent 98ed3168be
commit 0af551fe52
  1. 2
      src/layout/components/AppMain/index.vue
  2. 2
      src/layout/components/NavBar/index.vue
  3. 9
      src/layout/components/Sidebar/components/SidebarMenu.vue
  4. 2
      src/layout/components/Sidebar/components/SidebarMenuItem.vue
  5. 5
      src/layout/components/TagsView/index.vue
  6. 8
      src/styles/variables.scss
  7. 2
      src/views/craft-order/broadband/delete-broadband-internet/index.vue
  8. 2
      src/views/craft-order/broadband/enable-broadband-internet/index.vue
  9. 2
      src/views/craft-order/broadband/update-broadband-internet-mode/index.vue
  10. 2
      src/views/craft-order/broadband/update-broadband-internet-password/index.vue
  11. 2
      src/views/craft-order/broadband/update-broadband-internet/index.vue
  12. 2
      src/views/craft-order/broadband/update-broadband-max-number/index.vue
  13. 2
      src/views/craft-order/cloud-box/delete-cloud/index.vue
  14. 2
      src/views/craft-order/cloud-box/enable-cloud/index.vue
  15. 2
      src/views/craft-order/iptv/delete-iptv/index.vue
  16. 2
      src/views/craft-order/iptv/enable-iptv/index.vue
  17. 4
      src/views/craft-order/tyslzw/delete-tyslzw/index.vue
  18. 61
      src/views/craft-order/tyslzw/enable-tyslzw/index.vue
  19. 488
      src/views/craft-order/tyslzw/model-tyslzw/index.vue
  20. 2
      src/views/craft-order/voip/delete-voip/index.vue
  21. 2
      src/views/craft-order/voip/enable-voip/index.vue
  22. 2
      src/views/craft-order/voip/tree-diagram/index.vue
  23. 2
      src/views/craft-order/voip/update-voip-password/index.vue
  24. 25
      src/views/family/operate/fault-management/components/WiredIsNotAvailable.vue
  25. 56
      src/views/family/operate/order/components/OrderInfoEdit.vue
  26. 4
      src/views/family/operate/order/components/OrderLog.vue
  27. 2
      src/views/personal/index.vue
  28. 4
      src/views/system/user/index.vue

@ -27,7 +27,7 @@ const cachedViews = computed(() => useTagsViewStore().cachedViews); // 缓存页
width: 100%; width: 100%;
min-height: calc(100vh - $navbar-height); min-height: calc(100vh - $navbar-height);
overflow: hidden; overflow: hidden;
background-color: var(--el-bg-color-page); background-color: var(--menu-background);
} }
.hasTagsView .app-main { .hasTagsView .app-main {

@ -13,6 +13,6 @@
@apply flex-x-between; @apply flex-x-between;
height: $navbar-height; height: $navbar-height;
background: var(--el-bg-color); background: var(--menu-background);
} }
</style> </style>

@ -64,6 +64,7 @@ function resolvePath(routePath: string) {
</script> </script>
<style lang="scss"> <style lang="scss">
.el-sub-menu__title:hover { .el-sub-menu__title:hover {
border-radius: 8px;
background-color: #e9ecec !important; background-color: #e9ecec !important;
} }
.el-menu-item:hover { .el-menu-item:hover {
@ -72,11 +73,13 @@ function resolvePath(routePath: string) {
} }
.el-menu-item.is-active { .el-menu-item.is-active {
border-radius: 8px; border-radius: 12px;
background-color: var(--el-color-primary-light-8); background-color: #fff;
width: 200px;
margin-left: 10px;
box-shadow: 0 0 27px #0000000d; box-shadow: 0 0 27px #0000000d;
} }
.el-menu-item.is-active:hover { .el-menu-item.is-active:hover {
background-color: var(--el-color-primary-light-9) !important; background-color: #fff !important;
} }
</style> </style>

@ -157,7 +157,6 @@ function resolvePath(routePath: string) {
.el-sub-menu { .el-sub-menu {
overflow: hidden; overflow: hidden;
& > .el-sub-menu__title { & > .el-sub-menu__title {
padding: 0 !important; padding: 0 !important;
@ -173,7 +172,6 @@ function resolvePath(routePath: string) {
.el-menu--collapse { .el-menu--collapse {
width: $sidebar-width-collapsed; width: $sidebar-width-collapsed;
.el-sub-menu { .el-sub-menu {
& > .el-sub-menu__title { & > .el-sub-menu__title {
& > span { & > span {

@ -376,7 +376,8 @@ onMounted(() => {
width: 100%; width: 100%;
height: 50px; height: 50px;
color: #68758e; color: #68758e;
background-color: var(--el-bg-color); background-color: #fcfcfc;
border-radius: 4px;
border: 1px solid var(--el-border-color-light); border: 1px solid var(--el-border-color-light);
box-shadow: 0 1px 1px var(--el-box-shadow-light); box-shadow: 0 1px 1px var(--el-box-shadow-light);
@ -388,7 +389,7 @@ onMounted(() => {
//height: 32px; //height: 32px;
line-height: 25px; line-height: 25px;
cursor: pointer; cursor: pointer;
background-color: #fff; background-color: #fcfcfc;
border: 1px solid var(--el-border-color-light); border: 1px solid var(--el-border-color-light);
border-radius: 6px; border-radius: 6px;
&:hover { &:hover {

@ -1,11 +1,11 @@
/** 全局SCSS变量 */ /** 全局SCSS变量 */
:root { :root {
--menu-background: #fff; --menu-background: #fcfcfc;
--menu-text: #68758e; --menu-text: #68758e;
--menu-active-text: var(--el-menu-active-color); --menu-active-text: var(--el-menu-active-color);
--menu-hover: #263445; --menu-hover: #263445;
--sidebar-logo-background: #000; --sidebar-logo-background: #fcfcfc;
} }
/** 暗黑主题 */ /** 暗黑主题 */
@ -21,9 +21,9 @@ $menu-background: var(--menu-background); // 菜单背景色
$menu-text: var(--menu-text); // 菜单文字颜色 $menu-text: var(--menu-text); // 菜单文字颜色
$menu-active-text: var(--menu-active-text); // 菜单激活文字颜色 $menu-active-text: var(--menu-active-text); // 菜单激活文字颜色
$menu-hover: var(--menu-hover); // 菜单悬停背景色 $menu-hover: var(--menu-hover); // 菜单悬停背景色
$sidebar-logo-background: #fff; // 侧边栏 Logo 背景色 $sidebar-logo-background: var(--menu-background); // 侧边栏 Logo 背景色
$sidebar-width: 210px; // 侧边栏宽度 $sidebar-width: 220px; // 侧边栏宽度
$sidebar-width-collapsed: 54px; // 侧边栏收缩宽度 $sidebar-width-collapsed: 54px; // 侧边栏收缩宽度
$navbar-height: 50px; // 导航栏高度 $navbar-height: 50px; // 导航栏高度
$tags-view-height: 34px; // TagsView 高度 $tags-view-height: 34px; // TagsView 高度

@ -36,6 +36,7 @@
> >
<el-form-item prop="receiveOrderId"> <el-form-item prop="receiveOrderId">
<el-input <el-input
readonly
v-model="formData.receiveOrderId" v-model="formData.receiveOrderId"
placeholder="请输入工单序号" placeholder="请输入工单序号"
/> />
@ -51,6 +52,7 @@
> >
<el-form-item prop="receiveOrderLhs"> <el-form-item prop="receiveOrderLhs">
<el-input <el-input
readonly
v-model="formData.receiveOrderLhs" v-model="formData.receiveOrderLhs"
placeholder="请输入工单受理号" placeholder="请输入工单受理号"
/> />

@ -36,6 +36,7 @@
> >
<el-form-item prop="receiveOrderId"> <el-form-item prop="receiveOrderId">
<el-input <el-input
readonly
v-model="formData.receiveOrderId" v-model="formData.receiveOrderId"
placeholder="请输入工单序号" placeholder="请输入工单序号"
/> />
@ -51,6 +52,7 @@
> >
<el-form-item prop="receiveOrderLhs"> <el-form-item prop="receiveOrderLhs">
<el-input <el-input
readonly
v-model="formData.receiveOrderLhs" v-model="formData.receiveOrderLhs"
placeholder="请输入工单受理号" placeholder="请输入工单受理号"
/> />

@ -36,6 +36,7 @@
> >
<el-form-item prop="receiveOrderId"> <el-form-item prop="receiveOrderId">
<el-input <el-input
readonly
v-model="formData.receiveOrderId" v-model="formData.receiveOrderId"
placeholder="请输入工单序号" placeholder="请输入工单序号"
/> />
@ -51,6 +52,7 @@
> >
<el-form-item prop="receiveOrderLhs"> <el-form-item prop="receiveOrderLhs">
<el-input <el-input
readonly
v-model="formData.receiveOrderLhs" v-model="formData.receiveOrderLhs"
placeholder="请输入工单受理号" placeholder="请输入工单受理号"
/> />

@ -36,6 +36,7 @@
> >
<el-form-item prop="receiveOrderId"> <el-form-item prop="receiveOrderId">
<el-input <el-input
readonly
v-model="formData.receiveOrderId" v-model="formData.receiveOrderId"
placeholder="请输入工单序号" placeholder="请输入工单序号"
/> />
@ -51,6 +52,7 @@
> >
<el-form-item prop="receiveOrderLhs"> <el-form-item prop="receiveOrderLhs">
<el-input <el-input
readonly
v-model="formData.receiveOrderLhs" v-model="formData.receiveOrderLhs"
placeholder="请输入工单受理号" placeholder="请输入工单受理号"
/> />

@ -36,6 +36,7 @@
> >
<el-form-item prop="receiveOrderId"> <el-form-item prop="receiveOrderId">
<el-input <el-input
readonly
v-model="formData.receiveOrderId" v-model="formData.receiveOrderId"
placeholder="请输入工单序号" placeholder="请输入工单序号"
/> />
@ -51,6 +52,7 @@
> >
<el-form-item prop="receiveOrderLhs"> <el-form-item prop="receiveOrderLhs">
<el-input <el-input
readonly
v-model="formData.receiveOrderLhs" v-model="formData.receiveOrderLhs"
placeholder="请输入工单受理号" placeholder="请输入工单受理号"
/> />

@ -36,6 +36,7 @@
> >
<el-form-item prop="receiveOrderId"> <el-form-item prop="receiveOrderId">
<el-input <el-input
readonly
v-model="formData.receiveOrderId" v-model="formData.receiveOrderId"
placeholder="请输入工单序号" placeholder="请输入工单序号"
/> />
@ -51,6 +52,7 @@
> >
<el-form-item prop="receiveOrderLhs"> <el-form-item prop="receiveOrderLhs">
<el-input <el-input
readonly
v-model="formData.receiveOrderLhs" v-model="formData.receiveOrderLhs"
placeholder="请输入工单受理号" placeholder="请输入工单受理号"
/> />

@ -36,6 +36,7 @@
> >
<el-form-item prop="receiveOrderId"> <el-form-item prop="receiveOrderId">
<el-input <el-input
readonly
v-model="formData.receiveOrderId" v-model="formData.receiveOrderId"
placeholder="请输入工单序号" placeholder="请输入工单序号"
/> />
@ -51,6 +52,7 @@
> >
<el-form-item prop="receiveOrderLhs"> <el-form-item prop="receiveOrderLhs">
<el-input <el-input
readonly
v-model="formData.receiveOrderLhs" v-model="formData.receiveOrderLhs"
placeholder="请输入工单受理号" placeholder="请输入工单受理号"
/> />

@ -36,6 +36,7 @@
> >
<el-form-item prop="receiveOrderId"> <el-form-item prop="receiveOrderId">
<el-input <el-input
readonly
v-model="formData.receiveOrderId" v-model="formData.receiveOrderId"
placeholder="请输入工单序号" placeholder="请输入工单序号"
/> />
@ -51,6 +52,7 @@
> >
<el-form-item prop="receiveOrderLhs"> <el-form-item prop="receiveOrderLhs">
<el-input <el-input
readonly
v-model="formData.receiveOrderLhs" v-model="formData.receiveOrderLhs"
placeholder="请输入工单受理号" placeholder="请输入工单受理号"
/> />

@ -36,6 +36,7 @@
> >
<el-form-item prop="receiveOrderId"> <el-form-item prop="receiveOrderId">
<el-input <el-input
readonly
v-model="formData.receiveOrderId" v-model="formData.receiveOrderId"
placeholder="请输入工单序号" placeholder="请输入工单序号"
/> />
@ -51,6 +52,7 @@
> >
<el-form-item prop="receiveOrderLhs"> <el-form-item prop="receiveOrderLhs">
<el-input <el-input
readonly
v-model="formData.receiveOrderLhs" v-model="formData.receiveOrderLhs"
placeholder="请输入工单受理号" placeholder="请输入工单受理号"
/> />

@ -36,6 +36,7 @@
> >
<el-form-item prop="receiveOrderId"> <el-form-item prop="receiveOrderId">
<el-input <el-input
readonly
v-model="formData.receiveOrderId" v-model="formData.receiveOrderId"
placeholder="请输入工单序号" placeholder="请输入工单序号"
/> />
@ -51,6 +52,7 @@
> >
<el-form-item prop="receiveOrderLhs"> <el-form-item prop="receiveOrderLhs">
<el-input <el-input
readonly
v-model="formData.receiveOrderLhs" v-model="formData.receiveOrderLhs"
placeholder="请输入工单受理号" placeholder="请输入工单受理号"
/> />

@ -13,7 +13,7 @@
<div style="display: flex; align-items: center"> <div style="display: flex; align-items: center">
<el-icon size="15"> <Grid /> </el-icon>&nbsp;<span <el-icon size="15"> <Grid /> </el-icon>&nbsp;<span
style="font-weight: 700; font-size: 14px; line-height: 16px" style="font-weight: 700; font-size: 14px; line-height: 16px"
>设备IPTV业务删除工单</span >设备TYSLZW业务删除工单</span
> >
</div> </div>
</template> </template>
@ -36,6 +36,7 @@
> >
<el-form-item prop="receiveOrderId"> <el-form-item prop="receiveOrderId">
<el-input <el-input
readonly
v-model="formData.receiveOrderId" v-model="formData.receiveOrderId"
placeholder="请输入工单序号" placeholder="请输入工单序号"
/> />
@ -51,6 +52,7 @@
> >
<el-form-item prop="receiveOrderLhs"> <el-form-item prop="receiveOrderLhs">
<el-input <el-input
readonly
v-model="formData.receiveOrderLhs" v-model="formData.receiveOrderLhs"
placeholder="请输入工单受理号" placeholder="请输入工单受理号"
/> />

@ -37,6 +37,7 @@
<el-form-item prop="receiveOrderId"> <el-form-item prop="receiveOrderId">
<el-input <el-input
v-model="formData.receiveOrderId" v-model="formData.receiveOrderId"
readonly
placeholder="请输入工单序号" placeholder="请输入工单序号"
/> />
</el-form-item> </el-form-item>
@ -52,6 +53,7 @@
<el-form-item prop="receiveOrderLhs"> <el-form-item prop="receiveOrderLhs">
<el-input <el-input
v-model="formData.receiveOrderLhs" v-model="formData.receiveOrderLhs"
readonly
placeholder="请输入工单受理号" placeholder="请输入工单受理号"
/> />
</el-form-item> </el-form-item>
@ -350,6 +352,34 @@
/> />
</el-form-item> </el-form-item>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item
label="连接类型"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="argsName">
<el-input readonly v-model="formData.list[2].argsName" />
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="参数值"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="argsValue">
<dictionary
type-code="rg_mode"
@change="changRgModel"
v-model="formData.list[2].argsValue"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item <el-descriptions-item
label="网关地址" label="网关地址"
label-align="center" label-align="center"
@ -371,7 +401,10 @@
width="150px" width="150px"
> >
<el-form-item prop="argsValue"> <el-form-item prop="argsValue">
<el-input v-model="formData.list[0].argsValue" /> <el-input
:disabled="routeShow"
v-model="formData.list[0].argsValue"
/>
</el-form-item> </el-form-item>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item <el-descriptions-item
@ -395,7 +428,10 @@
width="150px" width="150px"
> >
<el-form-item prop="argsValue"> <el-form-item prop="argsValue">
<el-input v-model="formData.list[1].argsValue" /> <el-input
:disabled="routeShow"
v-model="formData.list[1].argsValue"
/>
</el-form-item> </el-form-item>
</el-descriptions-item> </el-descriptions-item>
</el-descriptions> </el-descriptions>
@ -419,6 +455,7 @@ defineOptions({
}); });
const ruleFormRef = ref<FormInstance>(); const ruleFormRef = ref<FormInstance>();
const loading = ref<boolean>(false); const loading = ref<boolean>(false);
const routeShow = ref<boolean>(false);
const formData = ref<AddBroadbandForm>({ const formData = ref<AddBroadbandForm>({
operateRemark: "0", operateRemark: "0",
remark3: "4", remark3: "4",
@ -426,7 +463,11 @@ const formData = ref<AddBroadbandForm>({
orderServiceType: "0", orderServiceType: "0",
serviceName: "TYSLZW", serviceName: "TYSLZW",
serviceFlag: "A", serviceFlag: "A",
list: [{ argsName: "ip_address" }, { argsName: "ip_mask" }], list: [
{ argsName: "ip_address", argsValue: "" },
{ argsName: "ip_mask", argsValue: "" },
{ argsName: "rg_mode", argsValue: "1" },
],
}); });
const rules = reactive<FormRules<AddBroadbandForm>>({ const rules = reactive<FormRules<AddBroadbandForm>>({
@ -460,6 +501,15 @@ const rulesParams = (): boolean => {
} }
return true; return true;
}; };
const changRgModel = (value: string) => {
if (value != "0") {
routeShow.value = true;
formData.value.list[0].argsValue = "";
formData.value.list[1].argsValue = "";
} else {
routeShow.value = false;
}
};
function loadDomainOptions() { function loadDomainOptions() {
getDomainOptions().then(({ data }) => { getDomainOptions().then(({ data }) => {
domainOptions.value = data; domainOptions.value = data;
@ -475,7 +525,10 @@ const loadBasicInfo = () => {
const submitForm = async (formEl: FormInstance | undefined) => { const submitForm = async (formEl: FormInstance | undefined) => {
if (!formEl) return; if (!formEl) return;
await formEl.validate((valid, fields) => { await formEl.validate((valid, fields) => {
let flag = rulesParams(); let flag = true;
if (!routeShow.value) {
flag = rulesParams();
}
if (valid && flag) { if (valid && flag) {
confirm("确认手动提交开通TYSLZW工单吗", () => { confirm("确认手动提交开通TYSLZW工单吗", () => {
loading.value = true; loading.value = true;

@ -0,0 +1,488 @@
<template>
<div class="app-container">
<el-scrollbar height="600">
<el-card shadow="never">
<el-form
:model="formData"
ref="ruleFormRef"
:rules="rules"
v-loading="loading"
>
<el-descriptions :column="3" border>
<template #title>
<div style="display: flex; align-items: center">
<el-icon size="15"> <Grid /> </el-icon>&nbsp;<span
style="font-weight: 700; font-size: 14px; line-height: 16px"
>设备TYSLZW业务修改模式工单</span
>
</div>
</template>
<template #extra>
<el-button
type="primary"
:icon="Position"
style="margin-right: 8px"
@click="submitForm(ruleFormRef)"
>保存</el-button
>
</template>
<el-descriptions-item
label="工单序号"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="receiveOrderId">
<el-input
readonly
v-model="formData.receiveOrderId"
placeholder="请输入工单序号"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="工单受理号"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="receiveOrderLhs">
<el-input
readonly
v-model="formData.receiveOrderLhs"
placeholder="请输入工单受理号"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="操作类型"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="operateRemark">
<dictionary
type-code="order_operate"
v-model="formData.operateRemark"
placeholder="请选择操作类型"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="工单业务类型"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="orderServiceType">
<dictionary
:disabled="true"
type-code="order_service_type"
v-model="formData.orderServiceType"
placeholder="请选择工单业务类型"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="设备接入类型"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="remark3">
<dictionary
type-code="device_access_type"
v-model="formData.remark3"
placeholder="请选择设备接入类型"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="系统管理域"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="systemDomain">
<el-tree-select
v-model="formData.systemDomain"
placeholder="请选择所属管理域"
:data="domainOptions"
filterable
clearable
check-strictly
:render-after-expand="false"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="AD编号"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="adNo">
<el-input v-model="formData.adNo" placeholder="请输入AD编号" />
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="设备标识"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="devSnoOui">
<el-input
v-model="formData.devSnoOui"
placeholder="请输入设备标识"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="光口逻辑号"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="userSnNo">
<el-input
v-model="formData.userSnNo"
placeholder="请输入光口逻辑号"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="PPPOE账号"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="pppoeAccount">
<el-input
v-model="formData.pppoeAccount"
placeholder="请输入PPPOE账号"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="虚拟标志"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="dummyFlag">
<dictionary
type-code="dummy_flag"
v-model="formData.dummyFlag"
placeholder="请选择虚拟标志"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="企业管理域"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="corporation">
<el-input
v-model="formData.corporation"
placeholder="请输入企业管理域"
/>
</el-form-item>
</el-descriptions-item>
</el-descriptions>
<el-descriptions :column="3" border style="margin-top: 5px">
<template #title>
<div style="display: flex; align-items: center">
<el-icon size="15"> <Grid /> </el-icon>&nbsp;<span
style="font-weight: 700; font-size: 14px; line-height: 16px"
>客户信息</span
>
</div>
</template>
<el-descriptions-item
label="客户名称"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="customerNameNew">
<el-input
v-model="formData.customerNameNew"
placeholder="请输入客户名称"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="客户地址"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="customerAddrNew">
<el-input
v-model="formData.customerAddrNew"
placeholder="请输入客户地址"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="联系人信息"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="contactPersonNew">
<el-input
v-model="formData.contactPersonNew"
placeholder="请输入联系人信息"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="联系人电话"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="phone">
<el-input
v-model="formData.phone"
placeholder="请输入联系人电话"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="客户类型"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="orderCustomerKind">
<dictionary
type-code="order_custom_type"
v-model="formData.orderCustomerKind"
placeholder="请选择客户类型"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="备注"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="remark">
<el-input v-model="formData.remark" />
</el-form-item>
</el-descriptions-item>
</el-descriptions>
<el-descriptions :column="2" border style="margin-top: 5px">
<template #title>
<div style="display: flex; align-items: center">
<el-icon size="15"> <Grid /> </el-icon>&nbsp;<span
style="font-weight: 700; font-size: 14px; line-height: 16px"
>
工单业务参数信息</span
>
</div>
</template>
<el-descriptions-item
label="业务名称"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="serviceName">
<el-input readonly v-model="formData.serviceName" />
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="业务名称"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="serviceFlag">
<dictionary
:disabled="true"
type-code="service_flag"
v-model="formData.serviceFlag"
/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="连接类型"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="argsName">
<el-input readonly v-model="formData.list[0].argsName" />
</el-form-item>
</el-descriptions-item>
<el-descriptions-item
label="参数值"
label-align="center"
align="center"
label-class-name="my-label"
class-name="my-content"
width="150px"
>
<el-form-item prop="argsValue">
<dictionary
type-code="rg_mode"
v-model="formData.list[0].argsValue"
/>
</el-form-item>
</el-descriptions-item>
</el-descriptions>
</el-form>
</el-card>
</el-scrollbar>
</div>
</template>
<script setup lang="ts">
import { Grid, Position } from "@element-plus/icons-vue";
import { AddBroadbandForm } from "@/api/craft-order/types";
import { getDomainOptions } from "@/api/domain";
import { addTYSLZW, getBasicInfo } from "@/api/craft-order";
import { FormInstance, FormRules } from "element-plus";
import { confirm } from "@/utils/confirm";
defineOptions({
name: "ModelTyslzw",
inheritAttrs: false,
});
const ruleFormRef = ref<FormInstance>();
const loading = ref<boolean>(false);
const formData = ref<AddBroadbandForm>({
operateRemark: "0",
remark3: "4",
dummyFlag: "1",
orderServiceType: "3",
serviceName: "TYSLZW",
serviceFlag: "M",
list: [{ argsName: "rg_mode", argsValue: "1" }],
});
const rules = reactive<FormRules<AddBroadbandForm>>({
userSnNo: [{ required: true, message: "请填写光口逻辑号", trigger: "blur" }],
systemDomain: [
{ required: true, message: "请选择系统管理域", trigger: "blur" },
],
orderCustomerKind: [
{ required: true, message: "请选择客户类型", trigger: "blur" },
],
});
const domainOptions = ref<OptionType[]>([]);
function loadDomainOptions() {
getDomainOptions().then(({ data }) => {
domainOptions.value = data;
});
}
const loadBasicInfo = () => {
getBasicInfo().then(({ data }) => {
formData.value.receiveOrderId = data.receiveOrderId;
formData.value.receiveOrderLhs = data.receiveOrderLhs;
formData.value.systemDomain = data.systemDomain;
});
};
const rulesParams = (): boolean => {
let modelArgsValue = formData.value.list[0].argsValue;
if (modelArgsValue === undefined || modelArgsValue === "") {
ElMessage({
message: "请输入网关地址的参数值",
duration: 1000,
type: "error",
});
return false;
}
return true;
};
const submitForm = async (formEl: FormInstance | undefined) => {
if (!formEl) return;
await formEl.validate((valid, fields) => {
let flag = rulesParams();
if (valid && flag) {
confirm("确认手动提交删修改YSLZW模式工单吗", () => {
loading.value = true;
addTYSLZW(formData.value)
.then(() => {
ElMessage({
message: "操作成功",
duration: 1000,
type: "success",
});
})
.finally(() => {
loading.value = false;
});
});
}
});
};
onMounted(() => {
loadDomainOptions();
loadBasicInfo();
});
</script>
<style scoped>
:deep(.my-label) {
width: 60px !important;
background: var(--el-color-white) !important;
}
:deep(.el-card__body) {
padding: 10px 5px;
}
:deep(.el-form-item--default) {
margin-bottom: 0;
}
</style>

@ -36,6 +36,7 @@
> >
<el-form-item prop="receiveOrderId"> <el-form-item prop="receiveOrderId">
<el-input <el-input
readonly
v-model="formData.receiveOrderId" v-model="formData.receiveOrderId"
placeholder="请输入工单序号" placeholder="请输入工单序号"
/> />
@ -51,6 +52,7 @@
> >
<el-form-item prop="receiveOrderLhs"> <el-form-item prop="receiveOrderLhs">
<el-input <el-input
readonly
v-model="formData.receiveOrderLhs" v-model="formData.receiveOrderLhs"
placeholder="请输入工单受理号" placeholder="请输入工单受理号"
/> />

@ -36,6 +36,7 @@
> >
<el-form-item prop="receiveOrderId"> <el-form-item prop="receiveOrderId">
<el-input <el-input
readonly
v-model="formData.receiveOrderId" v-model="formData.receiveOrderId"
placeholder="请输入工单序号" placeholder="请输入工单序号"
/> />
@ -51,6 +52,7 @@
> >
<el-form-item prop="receiveOrderLhs"> <el-form-item prop="receiveOrderLhs">
<el-input <el-input
readonly
v-model="formData.receiveOrderLhs" v-model="formData.receiveOrderLhs"
placeholder="请输入工单受理号" placeholder="请输入工单受理号"
/> />

@ -36,6 +36,7 @@
> >
<el-form-item prop="receiveOrderId"> <el-form-item prop="receiveOrderId">
<el-input <el-input
readonly
v-model="formData.receiveOrderId" v-model="formData.receiveOrderId"
placeholder="请输入工单序号" placeholder="请输入工单序号"
/> />
@ -51,6 +52,7 @@
> >
<el-form-item prop="receiveOrderLhs"> <el-form-item prop="receiveOrderLhs">
<el-input <el-input
readonly
v-model="formData.receiveOrderLhs" v-model="formData.receiveOrderLhs"
placeholder="请输入工单受理号" placeholder="请输入工单受理号"
/> />

@ -36,6 +36,7 @@
> >
<el-form-item prop="receiveOrderId"> <el-form-item prop="receiveOrderId">
<el-input <el-input
readonly
v-model="formData.receiveOrderId" v-model="formData.receiveOrderId"
placeholder="请输入工单序号" placeholder="请输入工单序号"
/> />
@ -51,6 +52,7 @@
> >
<el-form-item prop="receiveOrderLhs"> <el-form-item prop="receiveOrderLhs">
<el-input <el-input
readonly
v-model="formData.receiveOrderLhs" v-model="formData.receiveOrderLhs"
placeholder="请输入工单受理号" placeholder="请输入工单受理号"
/> />

@ -415,7 +415,7 @@
class-name="my-content" class-name="my-content"
width="150px" width="150px"
> >
{{ getDhcpResult["IpAddress"] }} {{ dhcpResult["IpAddress"] }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item <el-descriptions-item
label="MAC地址" label="MAC地址"
@ -425,7 +425,7 @@
class-name="my-content" class-name="my-content"
width="150px" width="150px"
> >
{{ getDhcpResult["MacAddress"] }} {{ dhcpResult["MacAddress"] }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item <el-descriptions-item
label="地址来源" label="地址来源"
@ -434,7 +434,7 @@
label-class-name="my-label" label-class-name="my-label"
class-name="my-content" class-name="my-content"
width="150px" width="150px"
>{{ getDhcpResult["AddressSource"] }} >{{ dhcpResult["AddressSource"] }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item <el-descriptions-item
label-align="center" label-align="center"
@ -513,6 +513,7 @@ const pingDNS = ref<any>({});
const lan = ref<any>({}); const lan = ref<any>({});
const loading = ref<boolean>(false); const loading = ref<boolean>(false);
const loadingPing = ref<boolean>(false); const loadingPing = ref<boolean>(false);
const dhcpResult = ref<any>({});
const getServiceDetailInfo = (remote: string) => { const getServiceDetailInfo = (remote: string) => {
loading.value = true; loading.value = true;
faultServiceStatus(prop.devId, remote) faultServiceStatus(prop.devId, remote)
@ -526,6 +527,7 @@ const getServiceDetailInfo = (remote: string) => {
break; break;
case "LanActiveQuery": case "LanActiveQuery":
lan.value = data; lan.value = data;
getDhcpResult();
break; break;
} }
}) })
@ -547,29 +549,28 @@ function getLanValue(index?: string) {
} }
} }
} }
// eslint-disable-next-line vue/return-in-computed-property
const getDhcpResult = computed(() => { const getDhcpResult = () => {
let active = lan.value["Active"]; let active = lan.value["Active"];
let addressSource = lan.value["AddressSource"]; let addressSource = lan.value["AddressSource"];
let ipAddress = lan.value["ipAddress"]; let ipAddress = lan.value["ipAddress"];
let macAddress = lan.value["MACAddress"]; let macAddress = lan.value["MACAddress"];
if (active === undefined) { if (active === undefined) {
return { IpAddress: "", MacAddress: "", AddressSource: "" }; return;
} }
let tmpIpAddress: string[] = ipAddress.split("#"); let tmpIpAddress: string[] = ipAddress.split("#");
let tmpMacAddress: string[] = macAddress.split("#"); let tmpMacAddress: string[] = macAddress.split("#");
let tmpAddressSource: string[] = addressSource.split("#"); let tmpAddressSource: string[] = addressSource.split("#");
let tmpActive: string[] = active.split("#"); let tmpActive: string[] = active.split("#");
for (let i = 0; i < tmpActive.length; i++) { for (let i = 0; i < tmpActive.length; i++) {
if (tmpActive[i] === "true" && tmpAddressSource[i] === "DHCP") { if (tmpActive[i] === "true" && tmpAddressSource[i] === "DHCP") {
return { dhcpResult.value["IpAddress"] = tmpIpAddress[i];
IpAddress: tmpIpAddress[i], dhcpResult.value["MacAddress"] = tmpMacAddress[i];
MacAddress: tmpMacAddress[i], dhcpResult.value["AddressSource"] = tmpAddressSource[i];
AddressSource: tmpAddressSource[i],
};
} }
} }
}); };
const getPingResult = (remote: string) => { const getPingResult = (remote: string) => {
loadingPing.value = true; loadingPing.value = true;
pingDNSResult(prop.devId, remote) pingDNSResult(prop.devId, remote)

@ -37,8 +37,18 @@
v-hasPerm="['order:detail:update']" v-hasPerm="['order:detail:update']"
>修改</el-button >修改</el-button
> >
<el-button type="primary" @click="skipOperate" v-hasPerm="['order:detail:operate:maintain']">设备操作维护</el-button> <el-button
<el-button type="primary" @click="openOrderLog" v-hasPerm="['order:detail:log']">工单日志</el-button> type="primary"
@click="skipOperate"
v-hasPerm="['order:detail:operate:maintain']"
>设备操作维护</el-button
>
<el-button
type="primary"
@click="openOrderLog"
v-hasPerm="['order:detail:log']"
>工单日志</el-button
>
</div> </div>
<el-card shadow="never" v-loading="loading"> <el-card shadow="never" v-loading="loading">
<el-scrollbar height="500"> <el-scrollbar height="500">
@ -186,26 +196,26 @@
> >
{{ orderInfo.pppoeAccount }} {{ orderInfo.pppoeAccount }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item <!-- <el-descriptions-item-->
label="BANDAccess" <!-- label="BANDAccess"-->
label-align="center" <!-- label-align="center"-->
align="center" <!-- align="center"-->
label-class-name="my-label" <!-- label-class-name="my-label"-->
class-name="my-content" <!-- class-name="my-content"-->
width="150px" <!-- width="150px"-->
> <!-- >-->
{{ orderInfo.bandAccess }} <!-- {{ orderInfo.bandAccess }}-->
</el-descriptions-item> <!-- </el-descriptions-item>-->
<el-descriptions-item <!-- <el-descriptions-item-->
label="IPTVAccess" <!-- label="IPTVAccess"-->
label-align="center" <!-- label-align="center"-->
align="center" <!-- align="center"-->
label-class-name="my-label" <!-- label-class-name="my-label"-->
class-name="my-content" <!-- class-name="my-content"-->
width="150px" <!-- width="150px"-->
> <!-- >-->
{{ orderInfo.iptvAccess }} <!-- {{ orderInfo.iptvAccess }}-->
</el-descriptions-item> <!-- </el-descriptions-item>-->
<el-descriptions-item <el-descriptions-item
label="逻辑ID" label="逻辑ID"
label-align="center" label-align="center"
@ -474,7 +484,7 @@ onMounted(() => {
<style scoped> <style scoped>
:deep(.my-label) { :deep(.my-label) {
width: 60px !important; width: 70px !important;
background: var(--el-color-white) !important; background: var(--el-color-white) !important;
} }
:deep(.el-scrollbar__thumb) { :deep(.el-scrollbar__thumb) {

@ -6,7 +6,7 @@
width="1000" width="1000"
> >
<div class="any-table"> <div class="any-table">
<el-table :data="tableData" v-loading="loading" border> <el-table :data="tableData" max-height="300" v-loading="loading" border>
<el-table-column <el-table-column
label="操作时间" label="操作时间"
prop="logTime" prop="logTime"
@ -16,7 +16,7 @@
<el-table-column <el-table-column
label="执行结果" label="执行结果"
prop="logCode" prop="logCode"
width="100" width="180"
align="center" align="center"
/> />
<el-table-column label="详细信息" prop="logContent" align="center" /> <el-table-column label="详细信息" prop="logContent" align="center" />

@ -1,7 +1,7 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<div class="flex justify-between"> <div class="flex justify-between">
<div class="card mr-1 ml-3"> <div class="card mr-1">
<div> <div>
<el-image <el-image
class="parent-img" class="parent-img"

@ -3,9 +3,9 @@
<div class="app-container"> <div class="app-container">
<el-row :gutter="20"> <el-row :gutter="20">
<!-- 部门树 --> <!-- 部门树 -->
<el-col :lg="4" :xs="24" class="mb-[12px]"> <el-col :lg="4" :xs="24">
<dept-tree <dept-tree
style="border-radius: 8px; margin-left: 5px" style="border-radius: 8px"
v-model="queryParams.deptId" v-model="queryParams.deptId"
@node-click="handleQuery" @node-click="handleQuery"
/> />

Loading…
Cancel
Save