zouyu
3 天以前 72780bc3f7a4b47ebba49f28f4ffe219c14349ba
src/views/business/unpass/components/OAProcess.vue
@@ -11,7 +11,8 @@
      <el-timeline style="height: 80vh; overflow-y: scroll">
        <el-timeline-item
          placement="top"
          v-for="node in nodes"
          v-for="node in isOldData?oldNodes:newNodes"
          v-if="(node.classType && node.classType===classType) || node.classType==='-1'"
          :key="node.id"
          :timestamp="node.name"
          :icon="node.hasData ? 'el-icon-check' : 'el-icon-time'"
@@ -29,7 +30,7 @@
                <span class="value">{{ node.time || "-" }}</span>
              </div>
              <div class="detail-item">
                <span class="label">{{node.name && node.name==='1检验员'?'不合格描述:':'处理意见:'}}</span>
                <span class="label">{{node.infoTitle}}</span>
                <span class="value">{{ node.info || "-" }}</span>
              </div>
            </div>
@@ -52,16 +53,23 @@
      type: Boolean,
      default: () => false,
    },
    isOldData:{
      type: Boolean,
      default: () => true,
    }
  },
  data() {
    // 这里存放数据
    return {
      isShow: this.OAProcess,
      nodes: [
      //旧流程节点
      oldNodes: [
        {
          id: 1,
          name: "1检验员",
          classType: '-1',
          info: "",
          infoTitle:"不合格情况描述:",
          time: "",
          operator: "",
          operation: "",
@@ -70,6 +78,8 @@
        {
          id: 2,
          name: "2检测主管确认",
          classType: '-1',
          infoTitle:"处理意见:",
          info: "",
          time: "",
          operator: "",
@@ -79,6 +89,8 @@
        {
          id: 3,
          name: "3物流部确认",
          classType: '-1',
          infoTitle:"处理意见:",
          info: "",
          time: "",
          operator: "",
@@ -88,6 +100,8 @@
        {
          id: 4,
          name: "4产品工程师处理意见",
          classType: '-1',
          infoTitle:"处理意见:",
          info: "",
          time: "",
          operator: "",
@@ -97,6 +111,8 @@
        {
          id: 5,
          name: "5.总工或者副经理的处理意见",
          classType: '-1',
          infoTitle:"处理意见:",
          info: "",
          time: "",
          operator: "",
@@ -106,6 +122,8 @@
        {
          id: 6,
          name: "6质量部处理意见",
          classType: '-1',
          infoTitle:"处理意见:",
          info: "",
          time: "",
          operator: "",
@@ -115,6 +133,8 @@
        {
          id: 7,
          name: "7质量部经理",
          classType: '-1',
          infoTitle:"处理意见:",
          info: "",
          time: "",
          operator: "",
@@ -124,6 +144,8 @@
        {
          id: 8,
          name: "8核算员",
          classType: '-1',
          infoTitle:"处理意见:",
          info: "",
          time: "",
          operator: "",
@@ -133,6 +155,8 @@
        {
          id: 9,
          name: "9物流部索赔结果",
          classType: '-1',
          infoTitle:"处理意见:",
          info: "",
          time: "",
          operator: "",
@@ -140,11 +164,137 @@
          hasData: false,
        },
      ],
      //新流程节点
      newNodes:[
        {
          id: 1,
          classType: "-1",
          name: "1申请",
          info: "",
          infoTitle:"不合格情况描述:",
          time: "",
          operator: "",
          operation: "",
          hasData: false,
        },
        {
          id: 2,
          classType: "-1",
          name: "2质量经理",
          info: "",
          infoTitle:"对不合格产品的处理要求:",
          time: "",
          operator: "",
          operation: "",
          hasData: false,
        },
        {
          id: 3,
          classType: "0",
          name: "3工艺(一类不合格)",
          infoTitle:"改进要求:",
          info: "",
          time: "",
          operator: "",
          operation: "",
          hasData: false,
        },
        {
          id: 4,
          classType: "1",
          name: "3工艺(二类不合格)",
          infoTitle:"改进要求:",
          info: "",
          time: "",
          operator: "",
          operation: "",
          hasData: false,
        },
        {
          id: 5,
          classType: "0",
          name: "4技术经理(一类不合格)",
          info: "",
          infoTitle:"措施要求:",
          time: "",
          operator: "",
          operation: "",
          hasData: false,
        },
        {
          id: 6,
          classType: "1",
          name: "4技术经理(二类不合格)",
          info: "",
          infoTitle:"措施要求:",
          time: "",
          operator: "",
          operation: "",
          hasData: false,
        },
        {
          id: 7,
          classType: "0",
          name: "5核算(一类不合格)",
          info: "",
          infoTitle:"索赔要求(人民币RMB¥):",
          time: "",
          operator: "",
          operation: "",
          hasData: false,
        },
        {
          id: 8,
          classType: "1",
          name: "5总经理(二类不合格)",
          info: "",
          infoTitle:"最终处理意见:",
          time: "",
          operator: "",
          operation: "",
          hasData: false,
        },
        // {
        //   id: 9,
        //   classType: "0",
        //   name: "6归档(一类不合格)",
        //   info: "",
        //   infoTitle:"处理意见:",
        //   time: "",
        //   operator: "",
        //   operation: "",
        //   hasData: false,
        // },
        {
          id: 10,
          classType: "1",
          name: "6核算(二类不合格)",
          info: "",
          infoTitle:"索赔要求(人民币RMB¥):",
          time: "",
          operator: "",
          operation: "",
          hasData: false,
        },
        // {
        //   id: 11,
        //   classType: "1",
        //   name: "7归档(二类不合格)",
        //   info: "",
        //   infoTitle:"处理意见:",
        //   time: "",
        //   operator: "",
        //   operation: "",
        //   hasData: false,
        // },
      ],
      classType:null,
    };
  },
  // 方法集合
  methods: {
    getInfo(id,unqualifiedDesc) {
    getInfo(id,unqualifiedDesc,classType) {
      if(classType)this.classType = classType;
      getOaFlow({
        id: id,
      })
@@ -153,10 +303,11 @@
            const data = res.data;
            if (data.length > 0) {
              data.forEach((item) => {
                const node = this.nodes.find((n) => n.name === item.nodeName);
                const nodes = this.isOldData ? this.oldNodes : this.newNodes;
                const node = nodes.find((n) => n.name === item.nodeName);
                if (node) {
                  node.time = item.approvalDate + " " + item.approvalTime;
                  if(item.nodeName && item.nodeName==="1检验员"){
                  if(item.nodeName && ['1检验员','1申请'].includes(item.nodeName)){
                    node.info=unqualifiedDesc;
                  }else{
                    node.info = item.approvalOpinion;
@@ -210,7 +361,7 @@
  font-weight: 500;
  color: #606266;
  margin-right: 8px;
  min-width: 90px;
  min-width: 110px;
}
.value {